github.com/leeclow-ops/gophercloud@v1.2.1/.github/workflows/functional-networking.yaml (about)

     1  name: functional-networking
     2  on:
     3    pull_request:
     4      paths:
     5        - '**networking**'
     6    schedule:
     7      - cron: '0 0 */3 * *'
     8  jobs:
     9    functional-networking:
    10      strategy:
    11        fail-fast: false
    12        matrix:
    13          include:
    14            - name: "master"
    15              openstack_version: "master"
    16              ubuntu_version: "20.04"
    17              devstack_conf_overrides: |
    18                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing master
    19                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas master
    20            - name: "zed"
    21              openstack_version: "stable/zed"
    22              ubuntu_version: "20.04"
    23              devstack_conf_overrides: |
    24                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing stable/zed
    25                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas stable/zed
    26            - name: "yoga"
    27              openstack_version: "stable/yoga"
    28              ubuntu_version: "20.04"
    29              devstack_conf_overrides: |
    30                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing stable/yoga
    31                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas stable/yoga
    32            - name: "xena"
    33              openstack_version: "stable/xena"
    34              ubuntu_version: "20.04"
    35              devstack_conf_overrides: |
    36                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing stable/xena
    37                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas stable/xena
    38            - name: "wallaby"
    39              openstack_version: "stable/wallaby"
    40              ubuntu_version: "20.04"
    41              devstack_conf_overrides: |
    42                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing stable/wallaby
    43                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas stable/wallaby
    44            - name: "victoria"
    45              openstack_version: "stable/victoria"
    46              ubuntu_version: "20.04"
    47              devstack_conf_overrides: |
    48                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing stable/victoria
    49                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas stable/victoria
    50            - name: "ussuri"
    51              openstack_version: "stable/ussuri"
    52              ubuntu_version: "18.04"
    53              devstack_conf_overrides: |
    54                enable_plugin neutron-fwaas https://github.com/openstack/neutron-fwaas stable/ussuri
    55                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing stable/ussuri
    56                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas ussuri-eol
    57            - name: "train"
    58              openstack_version: "stable/train"
    59              ubuntu_version: "18.04"
    60              devstack_conf_overrides: |
    61                enable_plugin neutron-fwaas https://github.com/openstack/neutron-fwaas stable/train
    62                enable_plugin neutron-dynamic-routing https://github.com/openstack/neutron-dynamic-routing train-eol
    63                enable_plugin neutron-vpnaas https://github.com/openstack/neutron-vpnaas train-eol
    64      runs-on: ubuntu-${{ matrix.ubuntu_version }}
    65      name: Deploy OpenStack ${{ matrix.name }} with Neutron and run networking acceptance tests
    66      steps:
    67        - name: Checkout Gophercloud
    68          uses: actions/checkout@v3
    69        - name: Deploy devstack
    70          uses: EmilienM/devstack-action@v0.11
    71          with:
    72            branch: ${{ matrix.openstack_version }}
    73            conf_overrides: |
    74              Q_ML2_PLUGIN_EXT_DRIVERS=qos,port_security,dns_domain_keywords
    75              ${{ matrix.devstack_conf_overrides }}
    76            enabled_services: 'neutron-dns,neutron-qos,neutron-segments,neutron-trunk,neutron-uplink-status-propagation,neutron-network-segment-range,neutron-port-forwarding'
    77        - name: Checkout go
    78          uses: actions/setup-go@v4
    79          with:
    80            go-version: '^1.15'
    81        - name: Run Gophercloud acceptance tests
    82          run: ./script/acceptancetest
    83          env:
    84            DEVSTACK_PATH: ${{ github.workspace }}/devstack
    85            ACCEPTANCE_TESTS_FILTER: "^.*networking.*$"
    86            OS_BRANCH: ${{ matrix.openstack_version }}
    87        - name: Generate logs on failure
    88          run: ./script/collectlogs
    89          if: failure()
    90        - name: Upload logs artifacts on failure
    91          if: failure()
    92          uses: actions/upload-artifact@v3
    93          with:
    94            name: functional-networking-${{ matrix.name }}
    95            path: /tmp/devstack-logs/*