Skip to content
Snippets Groups Projects
  1. Feb 14, 2020
  2. Feb 11, 2020
  3. Feb 05, 2020
  4. Jan 28, 2020
    • generalfuzz's avatar
      CI: Add TLS tests · 6404d0e0
      generalfuzz authored
      Add a TLS scenario in zuul to generate self signed certificates and
      to configure TLS to be enabled in the open stack deployment.
      
      Change-Id: If10a23dfa67212e843ef26486c9523074cc920e7
      Partially-Implements: blueprint custom-cacerts
      6404d0e0
  5. Jan 24, 2020
  6. Jan 09, 2020
  7. Jan 08, 2020
    • Mark Goddard's avatar
      Configure Cinder to use lioadm on CentOS/RHEL 8 · 350bb171
      Mark Goddard authored
      In CentOS/RHEL 8 there is no scsi-target-utils package, nor is it
      available in EPEL. It is removed from kolla in [1]. In RHEL 7 and beyond
      the LIO kernel subsystem can be used instead of the tgtd daemon.
      
      This change removes support for the SCSI target daemon on CentOS/RHEL 8.
      The 'tgtd' image is no longer available for CentOS/RHEL 8.
      
      [1] https://review.openstack.org/#/c/613815/5
      
      Change-Id: I718fc16cde2dd177b2a1c2f79b932426034897fe
      Related: blueprint centos-rhel-8
      350bb171
  8. Dec 19, 2019
  9. Dec 10, 2019
  10. Dec 09, 2019
    • Mark Goddard's avatar
      CI: Use python 3 for local kolla-ansible execution · a5408f42
      Mark Goddard authored
      This change switches the CI jobs to use python 3 for local execution of
      the kolla-ansible commands.
      
      For upgrades, we use python 2 for the previous (Train) deploy, then
      reinstall using python 3 for the (Ussuri) upgrade.
      
      NOTE: This is separate from the python interpreter used on remote hosts,
      which is configured via ansible_python_interpreter.
      
      Partially Implements: blueprint python-3
      Related: blueprint drop-py2-support
      
      Change-Id: I5bdc165f68b7bde1f9ef30fe8216f2a44e6d4706
      a5408f42
    • Mark Goddard's avatar
      CI: Move ansible installation & configuration to Ansible · c320077f
      Mark Goddard authored
      Continue to reduce the scope of setup_gate.sh. Allows us to more easily
      select python 2 or 3.
      
      Change-Id: If2eeeacbbbdf58afb765b4a39772b5a1af7b952b
      Partially Implements: blueprint python-3
      c320077f
  11. 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
  12. Nov 18, 2019
  13. Nov 14, 2019
  14. Nov 07, 2019
  15. Oct 16, 2019
    • 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
  16. Oct 07, 2019
    • Mark Goddard's avatar
      CI: Use any_errors_fatal in pre.yml and run.yml · fac16704
      Mark Goddard authored
      This ensures that failure of a single host fails the whole play at that
      task. This can avoid confusing errors such as when the task
      "Assert that the nodepool private IPv4 address is assigned" fails on one
      host, causing subsequent errors on other hosts.
      
      Note that this only affects the Zuul playbooks, not Kolla Ansible's
      playbooks.
      
      Change-Id: I77a6534dd2ddd188f795e17d17a44be249d01f31
      fac16704
  17. Oct 04, 2019
  18. Sep 23, 2019
    • Mark Goddard's avatar
      CI: Reinstate use of Docker registry mirror · 5c9a7983
      Mark Goddard authored
      After modernising docker configuration
      (I1215e04ec15b01c0b43bac8c0e81293f6724f278), we lost our
      registry-mirrors configuration in CI that lets us use a mirror of
      Dockerhub.
      
      This change uses the new docker_custom_config variable to configure the
      registry mirror.
      
      Change-Id: I1430413c12e9d0b59e4f216ff66372de0f3a4f21
      5c9a7983
  19. Sep 19, 2019
  20. Sep 18, 2019
  21. Sep 16, 2019
    • Mark Goddard's avatar
      Add custom filters for checking services · af2e7fd7
      Mark Goddard authored
      These filters can be used to capture a lot of the logic that we
      currently have in 'when' statements, about which services are enabled
      for a particular host.
      
      In order to use these filters, it is necessary to install the
      kolla_ansible python module, and not just the dependencies listed in
      requirements.txt. The CI test and quickstart install from source
      documentation has been updated accordingly.
      
      Ansible is not currently in OpenStack global requirements, so for unit
      tests we avoid a direct dependency on Ansible and provide fakes where
      necessary.
      
      Change-Id: Ib91cac3c28e2b5a834c9746b1d2236a309529556
      af2e7fd7
  22. Sep 14, 2019
  23. Aug 16, 2019
  24. Aug 14, 2019
  25. Jul 26, 2019
  26. Jul 01, 2019
  27. Jun 27, 2019
    • Mark Goddard's avatar
      Fix conditionals in CI playbook · 3b218fd0
      Mark Goddard authored
      These were not templated, so always evaluated to true. This shouldn't be
      causing any issues.
      
      Change-Id: I7b8e407e688ba201c4f7d1a94bbd41af0918e7df
      3b218fd0
  28. 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
  29. 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
  30. Apr 19, 2019
  31. Apr 14, 2019
    • Mark Goddard's avatar
      Fix periodic CI jobs · 2b7a9dc2
      Mark Goddard authored
      Periodic jobs don't have zuul.change defined, since there is no change
      being tested. This causes an early failure when referencing zuul.change
      to set the image tag for built images. In periodic jobs we'll never need
      to build images because there is no dependent kolla change under test.
      
      Change-Id: I6d9d81cf17b7d0d7aaf87cd96418c904c46681f2
      2b7a9dc2
  32. Apr 03, 2019
    • Mark Goddard's avatar
      Check configuration file permissions in CI · 8c4ab41f
      Mark Goddard authored
      Typically, non-executable files should have 660 or 600 and executable
      files and directories should have 770. All should be owned by the
      'config_owner_user' and 'config_owner_group' variables.
      
      This change adds a script to check the owner and permissions of config
      files under /etc/kolla, and runs it at the end of CI jobs.
      
      Change-Id: Icdbabf36e284b9030017a0dc07b9dc81a37758ab
      Related-Bug: #1821579
      8c4ab41f
  33. 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
Loading