Files
my-rook-config/.github/workflows/integration-test-helm-suite.yaml
T
subhamkrai fb13b5cad0 ci: run tmate session only on PR
run tmate only for `pull_request` event and
remove for other events. As during release
when tests fail it takes extra 30 min to fail the
test or someone manually has to end the test
which is painfully especially during release time.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-09-27 19:52:37 +05:30

70 lines
2.2 KiB
YAML

name: Integration test CephHelmSuite
on:
pull_request:
branches:
- master
- release-*
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}
jobs:
TestCephHelmSuite:
if: ${{ github.event_name == 'pull_request' && github.ref != 'refs/heads/master' && !contains(github.event.pull_request.labels.*.name, 'skip-ci') }}
runs-on: ubuntu-18.04
strategy:
fail-fast: false
matrix:
kubernetes-versions : ['v1.16.15', 'v1.22.2']
steps:
- name: checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: setup golang
uses: actions/setup-go@v2
with:
go-version: 1.16
- name: setup minikube
uses: manusa/actions-setup-minikube@v2.3.1
with:
minikube version: 'v1.18.1'
kubernetes version: ${{ matrix.kubernetes-versions }}
start args: --memory 6g --cpus=2
github token: ${{ secrets.GITHUB_TOKEN }}
- name: remove read permission from kube config file
run: sudo chmod go-r ~/.kube/config
- name: print k8s cluster status
run: tests/scripts/github-action-helper.sh print_k8s_cluster_status
- name: use local disk
run: tests/scripts/github-action-helper.sh use_local_disk_for_integration_test
- name: build rook
run: tests/scripts/github-action-helper.sh build_rook
- name: TestCephHelmSuite
run: |
tests/scripts/minikube.sh helm
tests/scripts/helm.sh up
export DEVICE_FILTER=$(lsblk|awk '/14G/ {print $1}'| head -1)
SKIP_TEST_CLEANUP=false SKIP_CLEANUP_POLICY=false go test -v -timeout 1800s -failfast -run CephHelmSuite github.com/rook/rook/tests/integration
- name: Artifact
uses: actions/upload-artifact@v2
if: failure()
with:
name: ceph-helm-suite-artifact
path: /home/runner/work/rook/rook/tests/integration/_output/tests/
- name: setup tmate session for debugging when event is PR
if: failure() && github.event_name == 'pull_request'
uses: mxschmitt/action-tmate@v3
timeout-minutes: 60