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

     1  name: functional-baremetal
     2  on:
     3    pull_request:
     4      paths:
     5        - '**baremetal**'
     6    schedule:
     7      - cron: '0 0 */3 * *'
     8  jobs:
     9    functional-baremetal:
    10      strategy:
    11        fail-fast: false
    12        matrix:
    13          name: ["master"]
    14          openstack_version: ["master"]
    15          ubuntu_version: ["20.04"]
    16          include:
    17            - name: "zed"
    18              openstack_version: "stable/zed"
    19              ubuntu_version: "20.04"
    20            - name: "yoga"
    21              openstack_version: "stable/yoga"
    22              ubuntu_version: "20.04"
    23            - name: "xena"
    24              openstack_version: "stable/xena"
    25              ubuntu_version: "20.04"
    26            - name: "wallaby"
    27              openstack_version: "stable/wallaby"
    28              ubuntu_version: "20.04"
    29            - name: "victoria"
    30              openstack_version: "stable/victoria"
    31              ubuntu_version: "20.04"
    32            - name: "ussuri"
    33              openstack_version: "stable/ussuri"
    34              ubuntu_version: "18.04"
    35      runs-on: ubuntu-${{ matrix.ubuntu_version }}
    36      name: Deploy OpenStack ${{ matrix.name }} with Ironic and run baremetal acceptance tests
    37      steps:
    38        - name: Checkout Gophercloud
    39          uses: actions/checkout@v3
    40        - name: Deploy devstack
    41          uses: EmilienM/devstack-action@v0.11
    42          with:
    43            branch: ${{ matrix.openstack_version }}
    44            conf_overrides: |
    45              # pyghmi is not mirrored on github
    46              PYGHMI_REPO=https://opendev.org/x/pyghmi
    47              enable_plugin ironic https://github.com/openstack/ironic ${{ matrix.openstack_version }}
    48              LIBS_FROM_GIT=pyghmi,virtualbmc
    49              FORCE_CONFIG_DRIVE=True
    50              Q_AGENT=openvswitch
    51              Q_ML2_TENANT_NETWORK_TYPE=vxlan
    52              Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch
    53              DEFAULT_INSTANCE_TYPE=baremetal
    54              OVERRIDE_PUBLIC_BRIDGE_MTU=1400
    55              VIRT_DRIVER=ironic
    56              BUILD_TIMEOUT=1800
    57              SERVICE_TIMEOUT=90
    58              GLANCE_LIMIT_IMAGE_SIZE_TOTAL=5000
    59              Q_USE_SECGROUP=False
    60              API_WORKERS=1
    61              IRONIC_BAREMETAL_BASIC_OPS=True
    62              IRONIC_BUILD_DEPLOY_RAMDISK=False
    63              IRONIC_AUTOMATED_CLEAN_ENABLED=False
    64              IRONIC_CALLBACK_TIMEOUT=600
    65              IRONIC_DEPLOY_DRIVER=ipmi
    66              IRONIC_INSPECTOR_BUILD_RAMDISK=False
    67              IRONIC_RAMDISK_TYPE=tinyipa
    68              IRONIC_TEMPEST_BUILD_TIMEOUT=720
    69              IRONIC_TEMPEST_WHOLE_DISK_IMAGE=False
    70              IRONIC_VM_COUNT=1
    71              IRONIC_VM_EPHEMERAL_DISK=1
    72              IRONIC_VM_LOG_DIR=/opt/stack/new/ironic-bm-logs
    73              IRONIC_VM_SPECS_RAM=1024
    74              IRONIC_DEFAULT_DEPLOY_INTERFACE=direct
    75              IRONIC_ENABLED_DEPLOY_INTERFACES=direct
    76              SWIFT_ENABLE_TEMPURLS=True
    77              SWIFT_TEMPURL_KEY=secretkey
    78            enabled_services: 'ir-api,ir-cond,s-account,s-container,s-object,s-proxy,q-svc,q-agt,q-dhcp,q-l3,q-meta,-cinder,-c-sch,-c-api,-c-vol,-c-bak,-ovn,-ovn-controller,-ovn-northd,-q-ovn-metadata-agent'
    79        - name: Checkout go
    80          uses: actions/setup-go@v4
    81          with:
    82            go-version: '^1.15'
    83        - name: Run Gophercloud acceptance tests
    84          run: ./script/acceptancetest
    85          env:
    86            DEVSTACK_PATH: ${{ github.workspace }}/devstack
    87            ACCEPTANCE_TESTS_FILTER: '^.*baremetal(.(?!noauth).*)?$'
    88            OS_BRANCH: ${{ matrix.openstack_version }}
    89        - name: Generate logs on failure
    90          run: ./script/collectlogs
    91          if: failure()
    92        - name: Upload logs artifacts on failure
    93          if: failure()
    94          uses: actions/upload-artifact@v3
    95          with:
    96            name: functional-baremetal-${{ matrix.name }}
    97            path: /tmp/devstack-logs/*