github.com/vnpaycloud-console/gophercloud/v2@v2.0.5/.github/workflows/functional-workflow.yaml (about) 1 name: functional-workflow 2 on: 3 pull_request: 4 paths: 5 - '**workflow**' 6 schedule: 7 - cron: '0 0 */3 * *' 8 jobs: 9 functional-workflow: 10 strategy: 11 fail-fast: false 12 matrix: 13 include: 14 - name: "master" 15 openstack_version: "master" 16 ubuntu_version: "22.04" 17 mistral_plugin_version: "master" 18 additional_services: "openstack-cli-server" 19 - name: "dalmatian" 20 openstack_version: "stable/2024.2" 21 ubuntu_version: "22.04" 22 mistral_plugin_version: "stable/2024.2" 23 additional_services: "openstack-cli-server" 24 - name: "caracal" 25 openstack_version: "stable/2024.1" 26 ubuntu_version: "22.04" 27 mistral_plugin_version: "stable/2024.1" 28 additional_services: "" 29 - name: "bobcat" 30 openstack_version: "stable/2023.2" 31 ubuntu_version: "22.04" 32 # Devstack support is broken with Mistral v2023.2, and requires 2 patches: 33 # * https://github.com/openstack/mistral/commit/e343ccb078d8ba261ac70afca93f4358589730d3 34 # * https://github.com/openstack/mistral/commit/ecdeadeb7a1aa87cba2cdb0c1a2bb1ffc4aabf25 35 mistral_plugin_version: "ecdeadeb7a1aa87cba2cdb0c1a2bb1ffc4aabf25" 36 additional_services: "" 37 runs-on: ubuntu-${{ matrix.ubuntu_version }} 38 name: Deploy OpenStack ${{ matrix.name }} with Mistral and run workflow acceptance tests 39 steps: 40 - name: Checkout Gophercloud 41 uses: actions/checkout@v4 42 - name: Deploy devstack 43 uses: EmilienM/devstack-action@e82a9cbead099cba72f99537e82a360c3e319c69 44 with: 45 branch: ${{ matrix.openstack_version }} 46 conf_overrides: | 47 enable_plugin mistral https://github.com/openstack/mistral ${{ matrix.mistral_plugin_version }} 48 enabled_services: "mistral,mistral-api,mistral-engine,mistral-executor,mistral-event-engine,${{ matrix.additional_services }}" 49 - name: Checkout go 50 uses: actions/setup-go@v5 51 with: 52 go-version: '^1.23' 53 - name: Run Gophercloud acceptance tests 54 run: ./script/acceptancetest 55 env: 56 DEVSTACK_PATH: ${{ github.workspace }}/devstack 57 PACKAGE: "./internal/acceptance/openstack/workflow/..." 58 OS_BRANCH: ${{ matrix.openstack_version }} 59 - name: Generate logs on failure 60 run: ./script/collectlogs 61 if: failure() 62 - name: Upload logs artifacts on failure 63 if: failure() 64 uses: actions/upload-artifact@v4 65 with: 66 name: functional-workflow-${{ matrix.name }}-${{ github.run_id }} 67 path: /tmp/devstack-logs/*