Run script generate-gitmodules.py to sync with governace repository to
add new repositories and remove retired ones.
Change-Id: Ia42b717ad242958ba4a9689ac814c956f460712f
* Update glean from branch 'master'
- Add container build jobs
The dib-nodepool-functional-* tests have switched to using containers
(Ieaf07438c145ba609d4d7b9a055e91b894eca6d9) so we need to build the
containers before running these jobs.
Change-Id: Iea977f51b67dd1bb938fe689b75deac43a480625
* Update glean from branch 'master'
- Drop release test
This is required by Ieaf07438c145ba609d4d7b9a055e91b894eca6d9 which
switches the dib jobs to build using the nodepool container. We
haven't fully established what a release job looks like with the
siblings container just yet.
Change-Id: I6b05044e4dda3201b8897801f88c1beff400ea26
* Update glean from branch 'master'
- Merge "changes for alpine compatibility"
- changes for alpine compatibility
Alpine Linux 'mount' will fail to mount an iso9660 filesystem without
an explicit type, so we modify glean.sh to pass `-t <type>` for both
vfat and iso9660 filesystem types. We fall back to the default
behavior for unknown types.
Alpine Linux requires `#!/sbin/openrc-run` instead of
`#!/sbin/runscript` in init scripts.
Change-Id: I1a75cf6185d6bc42e77721368ca6930f7ef3f793
* Update glean from branch 'master'
- write one resolv config
When systemd-resolved is enabled dns info is only written to
/etc/systemd/resolved.conf. If systemd-resolved is not enabled dns info is
only written to /etc/resolv.conf. We do not write to /etc/resolv.conf
if systemd-resolved is enabled because /etc/resolv.conf is a symlink pointing
to ../run/systemd/resolve/stub-resolv.conf. This target file does not exist
before systemd-resolved is run so glean would fail with:
'FileNotFoundError: [Errno 2] No such file or directory: '/etc/resolv.conf'
Change-Id: I644e0b50cfb7bb00a108160b99c0c1359d6a9dd4
Signed-off-by: Matthew Thode <mthode@mthode.org>
* Update glean from branch 'master'
- Merge "Fix a handful of bugs in config-drive processing"
- Fix a handful of bugs in config-drive processing
1. When pulling VLAN info from config-drive, `vlan_link` not
referencing to any of the existent L2 interfaces could
cause previous interface properties to be applied to the next
interface or cause Glean to crash
2. System configs writing error could cause Glean to crash
3. When pulling VLAN info from config-drive, L2 addresses may
not be properly collected despite required `vlan_id`
field is properly present
Also, deprecated `log.warn` replaced with `log.warning`.
Change-Id: I8dd2edec148150ce735f347fc455323a6581131c
* Update glean from branch 'master'
- Switch to Fedora 30 jobs
Fedora 29 is EOL, switch to Fedora 30 for fedora job.
Change-Id: Id4c666d552f4f20cc85a082cb40a42d087eecf17
* Update glean from branch 'master'
- Remove trusty job
Trusty nodes are getting removed from OpenDev infrastructure, remove
them here as well.
Change-Id: I5ef7e6677fcdbad57ed30887b1c677fbb8f292df
* Update glean from branch 'master'
- Move opensuse jobs to experimental for now
Change I71823236731583e28fddcceb71f44d09b58664a4 moved opensuse to
experimental in dib since those jobs need further work, move them to
experimental here as well since the jobs do not work on bionic where
they are now run.
Change-Id: I7bca912c9ce340ccd7eceae3294d007942366224
* Update glean from branch 'master'
- Add support for SLES
On SLE 15 SP1:
``distro.linux_distribution(full_distribution_name=False)``
returns ``('sles', '15.1', 'n/a')``.
"sles" should be considered equivalent to "suse" and any openSUSE
variant for the purpose of network configuration, so this change ensures
that _is_suse handles it.
Depends-on: https://review.opendev.org/696989
Change-Id: Ie123b8bd875b401d88235af6d241bad84415fc3d
* Update glean from branch 'master'
- Do not bring up udev assigned interfaces
The extant code is designed to loop over every device in
/sys/class/net and bringing the interface "up" to see if it valid and
something that should be configured.
As described inline, if we bring "up" an interface it can accept an RA
and get an ipv6 address assigned by the kernel. NetworkManager will
then refuse to further configure the interface, leaving the host
generally without ipv4 networking.
The per-interface loop only actually happens on older platforms that
don't use systemd. On systemd, glean is called for each interface
individually by udev rules. However, we fall into the old code path,
just with one interface to work with, rather than all of them.
Thus this initial hack detects that case (by noting we were passed the
interface explicitly) and short-circuits activity check; it just
assumes that if udev asked (and it's not of a device type we don't
support), then the interface should be configured. The interface will
*not* be put into the "up" state.
We should follow-on this change with a removal of this loop and
cleaning up the non udev/systemd activation paths. However, this
depends on a few longer term things:
- removing Trusty support (which still hangs on by the skin of its
teeth in OpenStack Infra, so we need to be not building nodes there)
- evaluating what Gentoo is doing in the non-systemd case.
- making sure bifrost doesnt' depend on this (likely only other user?)
In the mean time, this should fix the race conditions we've been
seeing on system+network-manager platforms.
Change-Id: I6ce51a8755e1892d3010eefd365fbad6bcec137b
* Update glean from branch 'master'
- Update testing to opensuse 15
This is an alias to the latest stable "openSUSE 15.x" release
which simplifies the amount of work needed for adaping testing
going forward.
Depends-On: https://review.opendev.org/679367
Change-Id: Ia947534774f9bf0f7a75f46130c3c114c673a6ae
* Update glean from branch 'master'
- Sync when writing the file
Glean does not attempt to do os.fsync after writing files, which
is not safe in Python since Python does not guarantee the file
being written even if it is closed on Python level.
This might result in ifup complaining with unknown interface as
the file is still in cache.
Depends-On: https://review.opendev.org/677796
Change-Id: I05fd94662c409660857d4bc66b9f6354ac21496a
* Update glean from branch 'master'
- Add a nodepool job based on releases
To avoid breaking systems that depend on released versions of
dib/glean (eg, nodepool), add one non-src nodepool job.
Depends-On: https://review.opendev.org/670859
Change-Id: I6d93d9924064ab3f564daaa11c1b21539d002aab
* Update glean from branch 'master'
- Merge "Enable RAs with gentoo when using dhcpv6-stateless"
- Enable RAs with gentoo when using dhcpv6-stateless
We need RAs when using dhcpv6-stateless interfaces but we had disabled
them because they didn't match the slaac type. Update this to handle the
dhcpv6-stateless case too.
Change-Id: Id394a7b0fb5a04fe09d9b8ed709adc75ab2f2a33
* Update glean from branch 'master'
- network-manager: add network-pre dependencies
In I3d379d35e7b000f32c3f6cc197c8aaafebc683fb we found that just having
network-pre.target was not sufficient to get the interfaces to come
up, and found emperically using local-fs.target made things work in CI
and on our hosts [1]. However, it always seemed to be a race
condition; the same .qcow2 run in another cloud environment would
reliably configure its interfaces in one provider but not another.
However, we now have yet antoher new cloud environment where we are
still seeing races between updating the config files and starting
NetworkManager. It seems clear now that we also need to add
dependencies on network-pre.target
The key learning here might be that we required the
After=local-fs.target all along, to make sure we could write the files
to disk, but we should have kept the network-pre dependencies. So
restore these values.
[1] https://review.opendev.org/#/c/618964/9..17/glean/init/glean-nm%2540.service
Depends-On: https://review.opendev.org/670102
Change-Id: Ib650d4c4303535205a62600e2c8657eae45dc4a4
* Update glean from branch 'master'
- Replace nodepool func jobs
These are new nodepool functional jobs designed to give more
flexibility to the DIB/clean projects to define what they need
to test. Otherwise, they behave very similarly to the current
nodepool functional jobs
Depends-On: https://review.opendev.org/667221
Change-Id: If38342448e65f4b48d3bc5d2e8362fd3e36eba9b
* Update glean from branch 'master'
- Add .zuul.yaml
Move the project-pipeline definitions into this repo rather than
project-config.
Change-Id: I5f6414dd95bb74e189bb2e3fbaf15566a2d36e49
* Update glean from branch 'master'
- Pin sphinx
Sphinx<2 is required for python2 now. This is copied from the
OpenStack requirements file under the assumption the good versions
have been worked out there.
Change-Id: I5df018b89680b236840a915384cd8341081991bc
Depends-On: https://review.opendev.org/667228
- OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:
http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.htmlhttp://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html
Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
* Update glean from branch 'master'
- Ignore Wireguard interfaces
The Wireguard interfaces should not be managed by Glean as they
are usually configured manually (and they are mainly tunnel
interfaces).
They do present themselves with a permanent address however, which
means the only way to ignore them is by using the ignored list.
Change-Id: Ie0c2b56d78620f6ee562b42de6249b1efd37558e
* Update glean from branch 'master'
- Use openstackdocstheme.
Oslosphinx seems to no longer work and is breaking our docs builds.
Switch to openstackdocstheme instead.
Change-Id: I72600ce84cb04bfa8350b273c030ae3914f7de40
* Update glean from branch 'master'
- Merge "write dns info to networkd"
- write dns info to networkd
Write dns info to networkd so it can be consumed by resolved if resolved
is enabled.
Change-Id: Ia7b55e9a538cc6f060bc08da85123d7bb3a4f73e