into a single combined integration-test-setup-cluster-resources
workflow. This ensures that the same gha runner preparation, go version,
etc. is used for both the canary and integration tests.
(cherry picked from commit c5bfe3a)
Change from the original version:
- Keep the test target k8s versions as are.
Signed-off-by: Joshua Hoblitt <josh@hoblitt.com>
Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
69 lines
2.4 KiB
YAML
69 lines
2.4 KiB
YAML
name: Integration test CephObjectSuite
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- release-*
|
|
paths-ignore:
|
|
- "Documentation/**"
|
|
- "design/**"
|
|
|
|
defaults:
|
|
run:
|
|
# reference: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell
|
|
shell: bash --noprofile --norc -eo pipefail -x {0}
|
|
|
|
# cancel the in-progress workflow when PR is refreshed.
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
|
|
cancel-in-progress: true
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
TestCephObjectSuite:
|
|
if: ${{ github.event_name == 'pull_request' && github.ref != 'refs/heads/master' && !contains(github.event.pull_request.labels.*.name, 'skip-ci') }}
|
|
runs-on: ubuntu-22.04
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
kubernetes-versions: ["v1.29.15", "v1.34.0"]
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: consider debugging
|
|
uses: ./.github/workflows/tmate_debug
|
|
with:
|
|
use-tmate: ${{ secrets.USE_TMATE }}
|
|
debug-ci: ${{ contains(github.event.pull_request.labels.*.name, 'debug-ci') }}
|
|
|
|
- name: setup cluster resources
|
|
uses: ./.github/workflows/integration-test-setup-cluster-resources
|
|
with:
|
|
kubernetes-version: ${{ matrix.kubernetes-version }}
|
|
|
|
- name: TestCephObjectSuite
|
|
run: |
|
|
tests/scripts/github-action-helper.sh collect_udev_logs_in_background
|
|
export DEVICE_FILTER=$(tests/scripts/github-action-helper.sh find_extra_block_dev)
|
|
SKIP_CLEANUP_POLICY=false go test -v -timeout 2400s -failfast -run CephObjectSuite github.com/rook/rook/tests/integration
|
|
|
|
- name: collect common logs
|
|
if: always()
|
|
run: |
|
|
export LOG_DIR="/home/runner/work/rook/rook/tests/integration/_output/tests/"
|
|
export CLUSTER_NAMESPACE="object-ns"
|
|
export OPERATOR_NAMESPACE="object-ns-system"
|
|
tests/scripts/collect-logs.sh
|
|
|
|
- name: Artifact
|
|
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
|
if: failure()
|
|
with:
|
|
name: ceph-object-suite-artifact-${{ matrix.kubernetes-version }}
|
|
path: /home/runner/work/rook/rook/tests/integration/_output/tests/
|