Skip to content

functional-objectstorage #771

functional-objectstorage

functional-objectstorage #771

name: functional-objectstorage
on:
pull_request:
paths:
- '**objectstorage**'
schedule:
- cron: '0 0 */3 * *'
jobs:
functional-objectstorage:
strategy:
fail-fast: false
matrix:
include:
- name: "master"
openstack_version: "master"
ubuntu_version: "22.04"
additional_services: "openstack-cli-server"
- name: "caracal"
openstack_version: "stable/2024.1"
ubuntu_version: "22.04"
additional_services: ""
- name: "bobcat"
openstack_version: "stable/2023.2"
ubuntu_version: "22.04"
additional_services: ""
- name: "antelope"
openstack_version: "stable/2023.1"
ubuntu_version: "22.04"
additional_services: ""
runs-on: ubuntu-${{ matrix.ubuntu_version }}
name: Deploy OpenStack ${{ matrix.name }} with Swift and run objectstorage acceptance tests
steps:
- name: Checkout Gophercloud
uses: actions/checkout@v4
- name: Deploy devstack
uses: EmilienM/devstack-action@e82a9cbead099cba72f99537e82a360c3e319c69
with:
branch: ${{ matrix.openstack_version }}
conf_overrides: |
SWIFT_ENABLE_TEMPURLS=True
SWIFT_TEMPURL_KEY=secretkey
[[post-config|\$SWIFT_CONFIG_PROXY_SERVER]]
[filter:versioned_writes]
allow_object_versioning = true
enabled_services: 's-account,s-container,s-object,s-proxy,${{ matrix.additional_services }}'
- name: Checkout go
uses: actions/setup-go@v5
with:
go-version: '^1.20'
- name: Run Gophercloud acceptance tests
run: ./script/acceptancetest
env:
DEVSTACK_PATH: ${{ github.workspace }}/devstack
PACKAGE: "./internal/acceptance/openstack/objectstorage/..."
OS_BRANCH: ${{ matrix.openstack_version }}
- name: Generate logs on failure
run: ./script/collectlogs
if: failure()
- name: Upload logs artifacts on failure
if: failure()
uses: actions/upload-artifact@v4
with:
name: functional-objectstorage-${{ matrix.name }}
path: /tmp/devstack-logs/*