Skip to content
Snippets Groups Projects
  1. May 17, 2020
    • Michal Nasiadka's avatar
      CI: Add ansible-lint to tox · d8f31e0a
      Michal Nasiadka authored
      * Reworked tox pep8 into linters job, that runs:
        - pep8
        - bandit
        - bashate
        - doc8
        - yamllint
        - ansible-lint (validate-all-files.py + ansible-lint)
      
      * Skip E701 - missing galaxy_info in meta and E602 see [1].
      * Skip E301 and E503 - followup later in a separate change
      * Added ansible-role-jobs to zuul.d/project.yaml which will run
        openstack-tox-linters job in check queue
      * Fixed remaining style issue
      * Made tox and docs reference the new env for linters
      * Dropped pype environment (not supported)
      
      [1]: https://github.com/ansible/ansible-lint/issues/457
      
      Change-Id: I494b4b151804aac8173120e6c6e42bc2fdb00234
      d8f31e0a
  2. Apr 20, 2020
  3. Apr 09, 2020
  4. Mar 19, 2020
  5. Mar 13, 2020
  6. Mar 10, 2020
  7. Mar 09, 2020
  8. Mar 06, 2020
  9. Mar 03, 2020
    • Mark Goddard's avatar
      CentOS 8: CI: Add upgrade job · 29f223c0
      Mark Goddard authored
      Test upgrade from CentOS 8 train to CentOS 8 master.
      
      Change-Id: Ibff2c7f8844dec4758945cbc7aa8df80d70a3dfd
      Partially-Implements: blueprint centos-rhel-8
      29f223c0
  10. Feb 20, 2020
    • Michal Nasiadka's avatar
      CI: Add linuxbridge jobs · f7bc4d78
      Michal Nasiadka authored
      global_physnet_mtu needs to be set in neutron.conf, because linuxbridge-agent
      discovers underlying vxlan0 interface mtu and returns an error when creating
      vxlan port
      
      CentOS8 job will not be added, because CentOS 8 iptables-ebtables package
      is missing broute (--among-src) tables support required for linuxbridge agent,
      see [1].
      
      [1]: https://bugzilla.redhat.com/show_bug.cgi?id=1720637
      
      Change-Id: I6b12f7ba95401d3342359c57ceeee8bec8aefe49
      f7bc4d78
  11. Feb 14, 2020
  12. Feb 11, 2020
  13. Feb 10, 2020
    • Radosław Piliszek's avatar
      CI: Fix deploy guide jobs · 2564b391
      Radosław Piliszek authored
      This fixes files relevant for them because k-a uses common files
      for both docs and deploy guide.
      We need this to finally get rid of Rocky mentions despite our
      recent fixes to docs.
      
      Change-Id: I46c564f3d3e53c54148186fbadfd7380c4f2fd30
      2564b391
  14. Feb 06, 2020
    • Radosław Piliszek's avatar
      CentOS 8: Add deploy jobs in CI · 287adab0
      Radosław Piliszek authored
      Adds new CI job definitions for CentOS 8:
      
      - kolla-ansible-centos8-source
      - kolla-ansible-centos8-binary
      - kolla-ansible-centos8-source-ceph-ansible
      - kolla-ansible-centos8-source-cinder-lvm
      - kolla-ansible-centos8-source-mariadb
      - kolla-ansible-centos8-source-bifrost
      - kolla-ansible-centos8-source-zun
      - kolla-ansible-centos8-source-swift
      - kolla-ansible-centos8-source-scenario-nfv
      - kolla-ansible-centos8-source-ironic
      - kolla-ansible-centos8-binary-ironic
      - kolla-ansible-centos8-source-masakari
      - kolla-ansible-centos8-source-cells
      
      The following jobs are added to the check pipeline:
      
      - kolla-ansible-centos8-source
      - kolla-ansible-centos8-binary
      - kolla-ansible-centos8-source-cinder-lvm
      - kolla-ansible-centos8-source-mariadb
      - kolla-ansible-centos8-source-zun
      - kolla-ansible-centos8-source-swift
      - kolla-ansible-centos8-source-scenario-nfv
      - kolla-ansible-centos8-source-ironic
      - kolla-ansible-centos8-binary-ironic
      - kolla-ansible-centos8-source-cells
      
      The following jobs are not yet passing so are not added to the check
      pipeline:
      
      - kolla-ansible-centos8-source-ceph-ansible
      - kolla-ansible-centos8-source-bifrost
      - kolla-ansible-centos8-source-masakari
      
      The kolla-ansible-centos8-source job is added to the gate.
      
      Upgrade jobs will be added when CentOS 8 support exists in Train.
      
      Depends-On: https://review.opendev.org/704337
      Depends-On: https://review.opendev.org/704848
      Depends-On: https://review.opendev.org/704965
      
      
      
      Co-Authored-By: default avatarMark Goddard <mark@stackhpc.com>
      
      Change-Id: Ibd806feee71721b122b77d7eff33228ca1cc2853
      Partially-Implements: blueprint centos-rhel-8
      287adab0
  15. Feb 05, 2020
  16. Jan 27, 2020
    • Radosław Piliszek's avatar
      CI: Refactor base jobs · beed12f3
      Radosław Piliszek authored
      Since Zuul was restarted after applying [1], we can keep relevant
      files listings in the base jobs per scenario without blocking
      periodic job runs.
      This greatly simplifies the jobs and project definitions.
      
      [1] https://review.opendev.org/678273
      
      Change-Id: If2e4fff6a514e6174709c2fc9f76b103f81a54ae
      beed12f3
  17. Jan 24, 2020
  18. Dec 19, 2019
  19. Dec 10, 2019
    • Radosław Piliszek's avatar
      CI: Test Swift · 7714ea72
      Radosław Piliszek authored
      Partially-implements: blueprint kolla-deployment-scenario-testing
      Change-Id: I82266829dba47eac81f440a53706c2e9064b8e62
      7714ea72
  20. Nov 26, 2019
    • Radosław Piliszek's avatar
      CI: Refactor a lot · a2fc6841
      Radosław Piliszek authored
      Separate upgrade logic to is_upgrade job var and rename
      scenarios to match.
      
      Rename "ACTION" to "SCENARIO" (as it is a scenario).
      
      Separate testing of dashboard (aka Horizon) and increase
      its timeout to 5 minutes (CentOS 7 slow as always).
      
      Separate initialization of core OpenStack.
      
      Use gate setup script from ./tests/
      
      Remove useless tox setupenv.
      
      Do not deploy Heat when not really necessary.
      
      Change-Id: I4fca319ccc3de7188f8b7b44c9c71321e3899467
      a2fc6841
  21. Nov 19, 2019
  22. Nov 07, 2019
  23. Oct 16, 2019
    • Doug Szumski's avatar
      Support multiple nova cells · 78a828ef
      Doug Szumski authored
      
      This patch adds initial support for deploying multiple Nova cells.
      
      Splitting a nova-cell role out from the Nova role allows a more granular
      approach to deploying and configuring Nova services.
      
      A new enable_cells flag has been added that enables the support of
      multiple cells via the introduction of a super conductor in addition to
      cell-specific conductors. When this flag is not set (the default), nova
      is configured in the same manner as before - with a single conductor.
      
      The nova role now deploys the global services:
      
      * nova-api
      * nova-scheduler
      * nova-super-conductor (if enable_cells is true)
      
      The nova-cell role handles services specific to a cell:
      
      * nova-compute
      * nova-compute-ironic
      * nova-conductor
      * nova-libvirt
      * nova-novncproxy
      * nova-serialproxy
      * nova-spicehtml5proxy
      * nova-ssh
      
      This patch does not support using a single cell controller for managing
      more than one cell. Support for sharing a cell controller will be added
      in a future patch.
      
      This patch should be backwards compatible and is tested by existing CI
      jobs. A new CI job has been added that tests a multi-cell environment.
      
      ceph-mon has been removed from the play hosts list as it is not
      necessary - delegate_to does not require the host to be in the play.
      
      Documentation will be added in a separate patch.
      
      Partially Implements: blueprint support-nova-cells
      Co-Authored-By: default avatarMark Goddard <mark@stackhpc.com>
      Change-Id: I810aad7d49db3f5a7fd9a2f0f746fd912fe03917
      78a828ef
    • Radosław Piliszek's avatar
      Implement IPv6 support in the control plane · bc053c09
      Radosław Piliszek authored
      Introduce kolla_address filter.
      Introduce put_address_in_context filter.
      
      Add AF config to vars.
      
      Address contexts:
      - raw (default): <ADDR>
      - memcache: inet6:[<ADDR>]
      - url: [<ADDR>]
      
      Other changes:
      
      globals.yml - mention just IP in comment
      
      prechecks/port_checks (api_intf) - kolla_address handles validation
      
      3x interface conditional (swift configs: replication/storage)
      
      2x interface variable definition with hostname
      (haproxy listens; api intf)
      
      1x interface variable definition with hostname with bifrost exclusion
      (baremetal pre-install /etc/hosts; api intf)
      
      neutron's ml2 'overlay_ip_version' set to 6 for IPv6 on tunnel network
      
      basic multinode source CI job for IPv6
      
      prechecks for rabbitmq and qdrouterd use proper NSS database now
      
      MariaDB Galera Cluster WSREP SST mariabackup workaround
      (socat and IPv6)
      
      Ceph naming workaround in CI
      TODO: probably needs documenting
      
      RabbitMQ IPv6-only proto_dist
      
      Ceph ms switch to IPv6 mode
      
      Remove neutron-server ml2_type_vxlan/vxlan_group setting
      as it is not used (let's avoid any confusion)
      and could break setups without proper multicast routing
      if it started working (also IPv4-only)
      
      haproxy upgrade checks for slaves based on ipv6 addresses
      
      TODO:
      
      ovs-dpdk grabs ipv4 network address (w/ prefix len / submask)
      not supported, invalid by default because neutron_external has no address
      No idea whether ovs-dpdk works at all atm.
      
      ml2 for xenapi
      Xen is not supported too well.
      This would require working with XenAPI facts.
      
      rp_filter setting
      This would require meddling with ip6tables (there is no sysctl param).
      By default nothing is dropped.
      Unlikely we really need it.
      
      ironic dnsmasq is configured IPv4-only
      dnsmasq needs DHCPv6 options and testing in vivo.
      
      KNOWN ISSUES (beyond us):
      
      One cannot use IPv6 address to reference the image for docker like we
      currently do, see: https://github.com/moby/moby/issues/39033
      (docker_registry; docker API 400 - invalid reference format)
      workaround: use hostname/FQDN
      
      RabbitMQ may fail to bind to IPv6 if hostname resolves also to IPv4.
      This is due to old RabbitMQ versions available in images.
      IPv4 is preferred by default and may fail in the IPv6-only scenario.
      This should be no problem in real life as IPv6-only is indeed IPv6-only.
      Also, when new RabbitMQ (3.7.16/3.8+) makes it into images, this will
      no longer be relevant as we supply all the necessary config.
      See: https://github.com/rabbitmq/rabbitmq-server/pull/1982
      
      For reliable runs, at least Ansible 2.8 is required (2.8.5 confirmed
      to work well). Older Ansible versions are known to miss IPv6 addresses
      in interface facts. This may affect redeploys, reconfigures and
      upgrades which run after VIP address is assigned.
      See: https://github.com/ansible/ansible/issues/63227
      
      Bifrost Train does not support IPv6 deployments.
      See: https://storyboard.openstack.org/#!/story/2006689
      
      
      
      Change-Id: Ia34e6916ea4f99e9522cd2ddde03a0a4776f7e2c
      Implements: blueprint ipv6-control-plane
      Signed-off-by: default avatarRadosław Piliszek <radoslaw.piliszek@gmail.com>
      bc053c09
  24. Oct 04, 2019
  25. Aug 16, 2019
    • Radosław Piliszek's avatar
      CI: Zun jobs · d4de1d75
      Radosław Piliszek authored
      - Test Zun on CentOS too
      - Make etcd change also trigger Zun jobs (like kuryr and zun)
      - Test multinode Zun deployments instead of AIO
        (more likely to break)
      - In Zun scenario, stop configuring docker for legacy swarm mode
        (Zun is no swarm)
      - Separate test-zun.sh testing script
      - Show appcontainer to see which node it has been started on
      
      Change-Id: I289b1009fe00aedb9b78cbd83298b14da5fd9670
      Depends-On: https://review.opendev.org/676736
      
      
      Signed-off-by: default avatarRadosław Piliszek <radoslaw.piliszek@gmail.com>
      d4de1d75
  26. Aug 14, 2019
  27. Jul 16, 2019
  28. Jul 03, 2019
  29. Jun 27, 2019
  30. Jun 11, 2019
    • Mark Goddard's avatar
      Add CI job for ironic · 845040ad
      Mark Goddard authored
      Adds four new CI jobs for testing centos/ubuntu binary/source deploys
      with ironic enabled. These are run only when there are changes to the
      ironic role.
      
      Performs some simple testing by creating a node using the fake-hardware
      hardware type and creating a server.
      
      Change-Id: Ie669e57ce2af53257b4ca05f45193cb73f48827a
      Depends-On: https://review.opendev.org/664011
      845040ad
  31. Jun 10, 2019
  32. Jun 03, 2019
    • Mark Goddard's avatar
      Test Ceph upgrade in CI · 78ee0287
      Mark Goddard authored
      Add CI jobs for testing an upgrade of a multinode system with Ceph
      enabled. As for the existing upgrade job, we upgrade from the previous
      release to the current release.
      
      Change-Id: I931772ca4c63757769467a57c80dc0726a11167a
      Depends-On: https://review.opendev.org/658163
      78ee0287
  33. May 09, 2019
  34. Apr 10, 2019
  35. Mar 27, 2019
    • Mark Goddard's avatar
      Test upgrades in CI · c23c9b2c
      Mark Goddard authored
      This patch adds two new jobs:
      
      * kolla-ansible-centos-source-upgrade
      * kolla-ansible-ubuntu-source-upgrade
      
      These jobs first deploy a control plane using the previous release of
      Kolla Ansible, then upgrade to the current release.
      
      Because we can't change the branch of the git repository on the Zuul
      executor, we change the branch of the kolla-ansible repository on the
      primary node to the branch of the previous release, in this case
      stable/rocky. A new remote-template role has been added that supports
      generating templates using a remote template source, to generate config
      files using the previous kolla-ansible branch.
      
      If the change being tested depends on a kolla change for the current
      branch, then we build images. Rather than using the current
      kolla-ansible version to tag the images, we now tag them with
      change_<gerrit change ID>. This is because the version of kolla-ansible
      will change from the previous release to the current one as we upgrade
      the system.
      
      Finally, it should be noted that the 'previous_release' variable in the
      Zuul config needs to be updated with each release, since this sets the
      release of kolla-ansible that is installed initially.
      
      Depends-On: https://review.openstack.org/645089/
      Depends-On: https://review.openstack.org/644250/
      Depends-On: https://review.openstack.org/645816/
      Depends-On: https://review.openstack.org/645840/
      Change-Id: If301e0affcd55360fefe3b105f023ae5c47b0853
      c23c9b2c
  36. Mar 01, 2019
    • Mark Goddard's avatar
      Add cinder-lvm CI job · c41c9a0c
      Mark Goddard authored
      Tests Cinder with an LVM/iSCSI backend, including attaching a volume to
      an instance.
      
      Change-Id: I6963b5e81d7ac88dd1bdfb94b62d9d63028b9786
      c41c9a0c
  37. Feb 27, 2019
Loading