Commit Graph

43 Commits

Author SHA1 Message Date
Zuul 071b5f3236 Merge "Bump kubernetes version to 1.28" 2023-10-11 19:59:07 +00:00
Roman Dobosz eae38b9559 Bump kubernetes version to 1.28
Change-Id: I921b165092c9bf81d7223933c508eda6c9eae935
Depends-On: https://review.opendev.org/c/openstack/kuryr-kubernetes/+/896008
2023-10-11 12:19:30 +02:00
Michał Dulko a3130bf641 Bump jobs base to Ubuntu 22.04 Jammy
DevStack stopped accepting Ubuntu 20.04 Focal, so we need to bump the
version we use to Jammy. This commit does so.

Change-Id: I7b227dfb29b49ff6a561209938a2c263f5dd2f90
2023-09-21 11:02:42 +02:00
Roman Dobosz fa62887fe1 Bump kubernetes to version 1.27.
Change-Id: I7876322b48ca28edf54629dc27551c2dd00f921b
2023-07-24 11:14:17 +02:00
Ayumu Ueha 430ae62e4f Bump Kubernetes and cri-o version to 1.26
Change-Id: I477f1bb1fefd211b4f5e43ec4182967c89d0f106
2023-07-14 11:48:26 +00:00
Roman Dobosz 6b4992e585 Turn on pod security context on master.
Change-Id: If982af87ddd1fe41670a42fe23a8e11490f4a100
2023-03-21 06:58:48 +01:00
Roman Dobosz 5fb8104abf Bump cri-o version.
We recently bumped Kubernetes version to 1.25.x, but we forgot to do
this on cri-o as well.

Change-Id: If57888d6f48fad904bf4c7cdd5bc6c70233b95be
Depends-On: https://review.opendev.org/c/openstack/devstack-plugin-container/+/866130
2022-12-02 08:56:14 +01:00
Zuul e6e91c531e Merge "Clean up unused and duplicated jobs" 2022-07-21 13:11:05 +00:00
Michał Dulko 2f7df16997 Disable linuxbridge on the OVS gates
For some reason linuxbridge was set as mechanism driver in OVS gates.
This commit disables that as linuxbridge became experimental in Neutron
and gates fail.

Change-Id: I2dd5c7f19af73badae49d2509efb0016335e6c9e
2022-07-06 12:55:17 +02:00
Maysa Macedo 6aed6916a2 Clean up unused and duplicated jobs
Change-Id: I2374bad29e19bf4a699b500c058b9f0bd4dc9217
2022-06-27 12:34:25 +02:00
Michał Dulko d65720cf74 Force kvm and host-passthrough for Amphora jobs
We face general instability of the Amphora jobs that we have. A while
ago we've made sure that these jobs are scheduled on the clouds that
support nested virtualization in order to boost performance of the
Amphora LB VMs. Now it turns out we haven't configured DevStack to
actually use kvm instead of qemu, so it's possible that we were still
running these jobs with software virtualization.

This commit attempts to reconfigure DevStack to actually use kvm and
nested virtualization.

Change-Id: I57f70c1cb140d4fa54d13b6c759a0179d8adb7b4
2022-06-14 10:21:24 +02:00
Rodolfo Alonso Hernandez 4a8a636613 [OVN] Pin OVS version for OVN v21.06.0
According to [1], the needed version for OVN v21.06.0 is
a4b04276ab5934d087669ff2d191a23931335c87

[1]4b0a02635f

Related-Bug: #1967472
Change-Id: I73a11d4a02c811366c177fa31d02599e247fea3a
2022-03-20 10:08:21 +00:00
Zuul bb0f4dcc08 Merge "Run *all* Amphora jobs with nested virtualization" 2022-03-17 14:47:08 +00:00
Maysa Macedo aff4b03dcc Bump OVN and OVS versions
There is a issue[1] with the old versions we were using,
let's attempt to bump them.

[1] https://bugs.launchpad.net/neutron/+bug/1964339

Change-Id: I4a9a9f877c2a0aea2bf3e43e179afedb653b8464
2022-03-16 11:59:42 +00:00
Michał Dulko e8592cd86c Run *all* Amphora jobs with nested virtualization
In I950e81d3f9f23493f26d9f824d3052ed375ae62b I've forced the jobs
explicitly saying "amphora" to run on clouds with nested virtualization
enabled. I however omitted the jobs that are not having "amphora" in the
name - defaults, IPv6 and OVS jobs. This commit fixes this.

Change-Id: I1e70118bb9c7d80e78806c3319c95af7efd01a08
2022-03-10 10:42:34 +01:00
Roman Dobosz 96473406d9 Make gates to use CRI-O on devstack by default.
Also, added gate job for docker backed version.

Change-Id: I6e22d5617038e5c20dcbbca2b110d2a312cedbd3
2021-11-17 11:10:41 +01:00
Maysa Macedo 80ab92c5ab Increase tempest timeout
The recent bump of Amphora image makes
the loadbalancer requires more time to
move to running.

Change-Id: I4ed13d2782df17eb518db1031b773288b080be42
2021-11-03 12:52:16 +00:00
Maysa Macedo bb41c3889d Move jobs to use Ubuntu Focal
According to the docs[0] Ubuntu Focal is the
version supported for Xena. This commit
updates the jobs and the Amphora image.

[0] https://governance.openstack.org/tc/reference/runtimes/xena.html
Depends-On: https://review.opendev.org/c/openstack/kuryr-kubernetes/+/812154

Change-Id: I869040d9b05ef3d1cded5f91e1634214b83fd348
2021-10-06 08:32:24 +00:00
Roman Dobosz 2085524f33 Switch gates to OVN by default.
Also, rearrange tests files.

Job hierarchy looks as follows:

- kuryr-kubernetes-base (base tempest job)
  - kuryr-kubernetes-base-ovn (derived from base for neutron OVN)
    - kuryr-kubernetes-tempest-amphora
    - kuryr-kubernetes-octavia-base (ovn-octavia-provider)
      - kuryr-kubernetes-tempest (alias for the parent,
        used in projects kuryr-tempest-plugin and os-vif)
      - kuryr-kubernetes-tempest-ovn-provider-ovn (alias for the parent,
        used in project ovn-octavia-provider)
      - kuryr-kubernetes-tempest-systemd
        - kuryr-kubernetes-tempest-centos-7 (this one is probably
          broken)
      - kuryr-kubernetes-tempest-defaults (default settings for
        kuryr-kubernetes, so OVN + amphora + default set of handlers,
        default subnet and sg drivers)
      - kuryr-kubernetes-tempest-ipv6
      - kuryr-kubernetes-tempest-dual-stack
      - kuryr-kubernetes-tempest-lower-constraints
      - kuryr-kubernetes-tempest-l2
      - kuryr-kubernetes-tempest-pools-namespace
      - kuryr-kubernetes-tempest-crio (currently broken)
      - kuryr-kubernetes-tempest-multinode
        - kuryr-kubernetes-tempest-multinode-ha
  - kuryr-kubernetes-base-ovs (derived from base for neutron OVS)
    - kuryr-kubernetes-octavia-base-ovs (amphora)
      - kuryr-kubernetes-tempest-ipv6-ovs
      - kuryr-kubernetes-tempest-amphora-ovs
      - kuryr-kubernetes-tempest-multinode-ovs
- kuryr-kubernetes-e2e-np (base devstack job)

For convenience, tempest jobs are in two files: one for multinode jobs,
and one for one node jobs. Network policy job is in its own file, since
it have different parent (devstack).

Change-Id: I198f138feb9bd7b6cc659ac8cd788cddd5be9439
2021-09-16 12:23:09 +02:00
Sunday Mgbogu 990ba608d6 Add Octavia Tempest Plugin
Octavia Tempest Plugin is required to call Octavia API on Kuryr-
Tempest-Plugin.

Change-Id: If00c3af9ee8689f05eecf5370758edb50775d381
2021-08-10 12:48:22 +00:00
Roman Dobosz c56e465c7e Fix multinode gate.
Make separate variations for OVN and OVS networking.

Change-Id: I425e7fe1d220b5f760bd5514c853d3e377190d82
2021-07-30 07:57:26 +02:00
Roman Dobosz 11a34d0e5d Enable multinode gate.
This patch provides an implementation for joining node to the Kubernetes
cluster by using `kubeadm join` command.

Change-Id: I71d2b99e0c92a12c4e64395f6c4dafa4b69f168f
Depends-On: Ife21874c0a71ba07723094c0f880aabcf5825b77
2021-05-24 13:25:11 +02:00
Roman Dobosz c034b0060e Use kubeadm for installing Kubernetes on devstack.
Till now, for installing kuryr-kubernetes and one of the crucial service
- kubernetes, there has been used manual method for installing it in
specified version. Over time it became a burden to follow requirements
and constraints, therefore decision has been made to use recommended way
of installing Kubernetes - kubeadm. In this patch devstack installation
of the kuryr-kubernetes and its dependences has been heavily reworked.

Other than that, OpenShift related functions has been removed, since
they were all outdated and non-working for the long time.

Change-Id: Ife21874c0a71ba07723094c0f880aabcf5825b77
2021-05-21 13:07:21 +02:00
Lucas Alvares Gomes 849fb30f55 Prepare gate for OVN as default in DevStack
The Neutron community is planning on switching the default network
backend in DevStack to OVN soon and to avoid any gate breakages we need
to explicitly enable ML2/OVS where it makes sense.

This patch is enabling ML2/OVS for the non-OVN jobs in the gate. Prior
to this patch the job were enabling the ML2/OVS services such as q-agt
and q-dhcp but it wasn't setting other required options (e.g Q_AGENT).

Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
Change-Id: Iae420403d3d84325830bded8633b2a29430b36bb
2021-04-23 13:10:01 +01:00
Tabitha 65711ea95e Run k8s e2e tests for network policy
Check exactly what tests are failing

Change-Id: I63507d7a4278a046b40d5ac1dfeef260beba9003
2021-02-01 21:01:36 +01:00
Michał Dulko 42d09e288d Enable Neutron to allow taging on port creation
Change-Id: I03cbe3c87c4d9daf3de20ab2d46735749d889f22
2020-11-24 11:44:25 +00:00
Michał Dulko 0fab73b3e8 Increase tempest test timeout to 30 mintues
test_network_policy_add_remove_pod is often not finishing in 20 minutes
in the gate, effectively timing out the tempest default timeout. This
commit increases the timeout to 30 minutes to avoid that.

Change-Id: I3bbac8e90553be9424fa0ecdb4c05e096da8f2d7
2020-11-06 11:35:57 +01:00
Michał Dulko dbda8b2b4f Disable dstat to enable tests on Ubuntu 20.04
Apparently dstat's bug causing it to show that kuryr-daemon is using
1 TB of RAM causes some buffer overflow in Python 3.8. We need to
disable it in order to enable testing on Ubuntu Focal.

Change-Id: Ifacc8c5f3e4a7adc010de75923d69f1df615450a
2020-09-24 15:06:17 +02:00
Michał Dulko c31702ebb8 Fix OVN jobs, expand swap size, fix l-c
This fixes 3 issues in order to unblock CI:

1. OVN job is fixed by updating it's configs to match what Neutron uses
   to configure DevStack with OVN.
2. lower-constraints job will run on Ubuntu Bionic and Python 3.6,
   allowing it to work with deps that don't support 3.8.
3. Swap size in our jobs is set to 8 GBs as recently the default got
   shrinked to 1 GB which is way too little for our Amphora jobs.

Also some additional OVN debugging info will get gathered.

Change-Id: I70c867ac21004586c014e9eb797dbf528dd6e3f2
2020-09-18 16:34:21 +02:00
Michał Dulko e912b2755f Run K8s e2e network policy tests
This commit adds a new gate to run Kubernetes
network policy tests with OVN-Octavia provider.

Depends-On: https://review.opendev.org/#/c/740381/
Depends-On: https://review.opendev.org/#/c/738457/
Change-Id: I766bff754a4632b2833fbe12fc95c5e7c0fead4e
2020-07-13 11:34:18 +02:00
Michał Dulko 2c2b927a5a Disable coredns deployment
Per request from infra cloud providers we need to disable world-facing
DNS that is the coredns and find a way to run it privately on the gate
VMs. Which won't be that easy, as there's unbind bound to 127.0.0.1:53,
but let's see if we'll be able to come up with something.

Meanwhile this change shouldn't hurt too much as we were yet to utilize
the coredns deployment and I think it wasn't even working on the gate.

Change-Id: I0c671b533f2babef172b46c36f62fba929d724c5
2020-03-03 18:19:52 +01:00
Michał Dulko 28b27c5de2 Remove Python 2 support
Ussuri release is the one in which we drop Python 2 support, as its EOL
is pretty close now. This commit does so in kuryr-kubernetes by
removing Python 2 unit test jobs, switching all tempest jobs to Python
3, removing specific jobs for Python 3 and updating Dockerfiles to
centos:8 that includes Python 3 from the box.

Also CentOS 7 job is removed from check queue as it seems it doesn't
play well with Python 3. A CentOS 8 job will get created soon.

Change-Id: Id9983d2fd83cef89e3198b2760816cf4a851008b
2019-11-19 12:34:54 +01:00
OpenDev Sysadmins f59fffaa95 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.html
http://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.
2019-04-19 19:44:54 +00:00
Michał Dulko b35b08724b Switch to CentOS Amphora
Looks like Ubuntu's Amphora is broken, probably due to latest update of
ubuntu-minimal cloud image (which includes cloud-init version bump that
might be the culprit). This commit switches our gates to CentOS amp to
work the problem around until we fix the Ubuntu one.

Also the timeout for the jobs is raised to 3 hours because it seems like
building containers in the gate take ages.

Closes-Bug: 1822862
Change-Id: I3650aac01334e924ca64fcc4e79928141e010e5a
2019-04-04 12:33:42 +02:00
Michał Dulko 4b332cf3af Add option to deploy coredns
As a step to improve testing capabilities of our gates, this commit
enhances DevStack with support for deploying coredns in our K8s cluster.
The idea here is to be able to run any tests that are referring to
services by <namespace>.<service-name>, in particular upstream K8s
tests.

The tricky part here is that on gate VM's an instance of unbound DNS is
running on 127.0.0.1:53. As in DevStack-deployed Kuryr pods doesn't
support IPv6, we couldn't just take IPv6 addresses of upstream DNS from
unbound configuration and use them in coredns pods. Instead the coredns
instance is running on host networking and binds to $HOST_IP:53, which
is also used as value of kubelet's --cluster-dns option, while
forwarding any upstream DNS requests to the local unbound instance. This
isn't perfectly how it would be set up in production environment, but
should be close enough for our purposes.

This change only affects DevStack, so it's completely safe from release
point of view. coredns gets enabled only on gates running Kubernetes as
OpenShift gates run openshift-dns already.

Change-Id: Icdab52a6229b2209f58e26e4d885f551883727b5
Partial-Implements: blueprint k8s-upstream-tests
2019-03-15 11:01:12 +01:00
Michał Dulko f4ba0dd6c5 Fixup gate names after LBaaS v2 removal
As Octavia is now the only supported LBaaS option, we can remove
"-octavia" suffix from job names. Also neutron-lbaasv2 is removed from
required projects in base job definition.

Change-Id: I35abbb73249dd907b3b5055287624929b121afb3
Implements: blueprint remove-lbaasv2
2019-02-04 12:53:00 +01:00
Michał Dulko 3e3ed9dbb3 Remove way of running without kuryr-daemon
Deploying without kuryr-daemon is deprecated since Rocky and we
announced that it will be removed in the Rocky release notes. This
commit removes all the code that allows that, updates the documentation,
DevStack plugin and gates definitions.

Implements: blueprint remove-non-daemon

Change-Id: I65598d4a6ecb5c3dfde04dc5fefd7b02fc72a0cb
2019-02-04 12:53:00 +01:00
Michał Dulko 5cf228ad93 Enable ETCD_USE_RAMDISK in Kuryr gates
Option listed above will make the data directory of etcd deployed by
DevStack to be a ramfs RAM disk, which should greatly help with
Kubernetes instability by reducing fsync durations.

Change-Id: I9543c1b7aa41e10b64996b0d705593521f46b8b2
Depends-On: https://review.openstack.org/#/c/626885
2019-01-24 12:07:46 +01:00
Itzik Brown 75f46dbdb1 Add a tempest cloud provider option
Change-Id: Iaff9a1f4d3d8972b3e042f5e7b1d3d9c08fe9fc5
2019-01-03 12:06:59 +02:00
Luis Tomas Bolivar cf96e54bf7 Ensure gates run the latest OVS
Change-Id: If4f98f4a611e852b9a280d14c7517df185518dfc
2019-01-02 13:16:19 +00:00
Itzik Brown 344b02c3d4 Update the kuryr-kubernetes path in devstack
Change-Id: Id8e7d347f05030d57ef34a135ff7ea2a368a42f3
2018-12-10 13:52:44 +02:00
Antoni Segura Puimedon 612296a94f kuryr-tempest-plugin devstack plugin to build kuryr/demo
Using TEMPEST_PLUGINS only installs the tempest code but does
not run the tempest devstack plugin. The tempest devstack plugin
is where we build kuryr/demo from the rootfs in the repo. If this
is not run, we are depending on dockerhub and potentially running
an older image.

Depends-On: Idf2c781591f938a02991af4b7991da19a92e03f2
Change-Id: I2cb58ab038a619f67462271e2db3ed20e9e51ba3
Signed-off-by: Antoni Segura Puimedon <celebdor@gmail.com>
2018-08-01 23:22:45 +02:00
Daniel Mellado c626127e43 Split .zuul.yaml into smaller files
This commit splits .zuul.yaml into smaller yaml files inside .zuul.d
repo for easier handling.

Partially-Implements: blueprint zuulv3-native-gates
Change-Id: I73ac4381eaaf14d515eb45c7020881247428e33a
2018-07-01 08:53:35 +03:00