github.com/gophercloud/gophercloud@v1.14.1/.github/workflows/functional-loadbalancer.yaml (about) 1 name: functional-loadbalancer 2 on: 3 pull_request: 4 paths: 5 - '**loadbalancer**' 6 jobs: 7 functional-loadbalancer: 8 strategy: 9 fail-fast: false 10 matrix: 11 name: ["master"] 12 openstack_version: ["master"] 13 ubuntu_version: ["22.04"] 14 include: 15 - name: "caracal" 16 openstack_version: "stable/2024.1" 17 ubuntu_version: "22.04" 18 - name: "bobcat" 19 openstack_version: "stable/2023.2" 20 ubuntu_version: "22.04" 21 - name: "antelope" 22 openstack_version: "stable/2023.1" 23 ubuntu_version: "22.04" 24 runs-on: ubuntu-${{ matrix.ubuntu_version }} 25 name: Deploy OpenStack ${{ matrix.name }} with Octavia and run loadbalancer acceptance tests 26 steps: 27 - name: Checkout Gophercloud 28 uses: actions/checkout@v4 29 - name: Deploy devstack 30 uses: EmilienM/devstack-action@e82a9cbead099cba72f99537e82a360c3e319c69 31 with: 32 branch: ${{ matrix.openstack_version }} 33 conf_overrides: | 34 enable_plugin octavia https://github.com/openstack/octavia ${{ matrix.openstack_version }} 35 enable_plugin neutron https://github.com/openstack/neutron ${{ matrix.openstack_version }} 36 enabled_services: 'octavia,o-api,o-cw,o-hk,o-hm,o-da,neutron-qos' 37 - name: Checkout go 38 uses: actions/setup-go@v5 39 with: 40 go-version: '^1.15' 41 - name: Run Gophercloud acceptance tests 42 run: ./script/acceptancetest 43 env: 44 DEVSTACK_PATH: ${{ github.workspace }}/devstack 45 ACCEPTANCE_TESTS_FILTER: "^.*loadbalancer.*$" 46 OS_BRANCH: ${{ matrix.openstack_version }} 47 - name: Generate logs on failure 48 run: ./script/collectlogs 49 if: failure() 50 - name: Upload logs artifacts on failure 51 if: failure() 52 uses: actions/upload-artifact@v4 53 with: 54 name: functional-loadbalancer-${{ matrix.name }} 55 path: /tmp/devstack-logs/*