Prepare for next version 1.19.0 #1131
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Kind Integration Tests | |
on: | |
push: | |
branches: | |
- master | |
- 1.10.x | |
pull_request: | |
branches: [master] | |
jobs: | |
build_docker_images: | |
name: Build Docker Images | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out code into the Go module directory | |
uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Set version value | |
id: vars | |
run: | | |
echo "version=$(make version)" >> $GITHUB_OUTPUT | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Build and push | |
id: docker_build | |
uses: docker/build-push-action@v3 | |
with: | |
file: Dockerfile | |
context: . | |
push: false | |
tags: k8ssandra/cass-operator:v${{ steps.vars.outputs.version }} | |
platforms: linux/amd64 | |
outputs: type=docker,dest=/tmp/k8ssandra-cass-operator.tar | |
cache-from: type=local,src=/tmp/.buildx-cache | |
cache-to: type=local,dest=/tmp/.buildx-cache | |
- name: Build and push | |
uses: docker/build-push-action@v3 | |
with: | |
file: logger.Dockerfile | |
push: false | |
tags: k8ssandra/system-logger:v${{ steps.vars.outputs.version }} | |
outputs: type=docker,dest=/tmp/k8ssandra-system-logger.tar | |
platforms: linux/amd64 | |
cache-from: type=local,src=/tmp/.buildx-cache | |
cache-to: type=local,dest=/tmp/.buildx-cache | |
- name: Upload cass-operator image | |
uses: actions/upload-artifact@v3 | |
with: | |
name: cass-operator | |
path: /tmp/k8ssandra-cass-operator.tar | |
- name: Upload system-logger image | |
uses: actions/upload-artifact@v3 | |
with: | |
name: system-logger | |
path: /tmp/k8ssandra-system-logger.tar | |
# This job is only for tests that don't run or don't pass against 4.0 yet | |
kind_311_tests: | |
needs: build_docker_images | |
strategy: | |
matrix: | |
integration_test: | |
- upgrade_operator # Test is not setup to run against 4.0 | |
- additional_seeds #TODO: Fails against C* 4.0, fix in https://github.com/k8ssandra/cass-operator/issues/459 | |
- scale_down_unbalanced_racks #TODO: Fails against C* 4.0 and DSE 6.8, fix in https://github.com/k8ssandra/cass-operator/issues/459 | |
runs-on: ubuntu-latest | |
env: | |
CGO_ENABLED: 0 | |
M_INTEG_DIR: ${{ matrix.integration_test }} | |
M_SERVER_VERSION: 3.11.15 | |
M_SERVER_TYPE: cassandra | |
steps: | |
- uses: actions/checkout@v3 | |
if: github.event_name == 'pull_request' | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- uses: actions/checkout@v3 | |
if: github.event_name != 'pull_request' | |
- uses: ./.github/actions/run-integ-test | |
with: | |
integration_test: ${{ matrix.integration_test }} | |
- name: Archive k8s logs | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: k8s-logs-${{ matrix.integration_test }} | |
path: ./build/kubectl_dump | |
# This job is only for tests that don't run or don't pass against 4.1 yet | |
kind_40_tests: | |
needs: build_docker_images | |
strategy: | |
matrix: | |
version: | |
- "4.0.10" | |
integration_test: | |
- cdc_successful # OSS only | |
- config_fql | |
runs-on: ubuntu-latest | |
env: | |
CGO_ENABLED: 0 | |
M_INTEG_DIR: ${{ matrix.integration_test }} | |
steps: | |
- uses: actions/checkout@v3 | |
if: github.event_name == 'pull_request' | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- uses: actions/checkout@v3 | |
if: github.event_name != 'pull_request' | |
- uses: ./.github/actions/run-integ-test | |
with: | |
integration_test: ${{ matrix.integration_test }} | |
- name: Archive k8s logs | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: k8s-logs-${{ matrix.integration_test }} | |
path: ./build/kubectl_dump | |
kind_dse_tests: | |
needs: build_docker_images | |
strategy: | |
matrix: | |
version: | |
- "6.8.39" | |
integration_test: | |
- cdc_successful | |
include: | |
- version: 6.8.39 | |
serverImage: datastax/dse-mgmtapi-6_8:6.8.39-ubi8 # DSE 6.8.39 | |
serverType: dse | |
integration_test: "cdc_successful" | |
fail-fast: true | |
runs-on: ubuntu-latest | |
env: | |
CGO_ENABLED: 0 | |
M_INTEG_DIR: ${{ matrix.integration_test }} | |
M_SERVER_VERSION: ${{ matrix.version }} | |
M_SERVER_IMAGE: ${{ matrix.serverImage }} | |
M_SERVER_TYPE: ${{ matrix.serverType }} | |
steps: | |
- uses: actions/checkout@v3 | |
if: github.event_name == 'pull_request' | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- uses: actions/checkout@v3 | |
if: github.event_name != 'pull_request' | |
- uses: ./.github/actions/run-integ-test | |
with: | |
integration_test: ${{ matrix.integration_test }} | |
- name: Archive k8s logs | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: k8s-logs-smoke_test-${{ matrix.version }} | |
path: ./build/kubectl_dump | |
kind_int_tests: | |
needs: build_docker_images | |
strategy: | |
matrix: | |
version: | |
- "4.1.2" | |
integration_test: | |
# Single worker tests: | |
- additional_serviceoptions | |
- additional_volumes | |
# - delete_node_terminated_container # This does not test any operator behavior | |
- podspec_simple | |
# - smoke_test_oss # Converted to test_all_the_things, see below job | |
# - smoke_test_dse # Converted to test_all_the_things, see below job | |
# - terminate | |
# - timeout_prestop_termination | |
# - upgrade_operator # See kind_311_tests job, Only works for 3.11 right now | |
- webhook_validation | |
# Three worker tests: | |
- canary_upgrade | |
# - config_change_condition # config_change takes care of testing the same | |
#- cdc_successful # OSS only | |
# - delete_node_lost_readiness # DSE specific behavior | |
- host_network | |
- internode-encryption-generated | |
#- no_infinite_reconcile # smoke_test_* should take care of this | |
- node_replace | |
- nodeport_service | |
- rolling_restart | |
- rolling_restart_with_override | |
# - stop_resume | |
- superuser-secret-generated | |
- superuser-secret-provided | |
- test_bad_config_and_fix | |
- test_mtls_mgmt_api | |
# More than 3 workers tests: | |
- add_racks | |
#- additional_seeds #TODO: Fails against C* 4.0, fix in https://github.com/k8ssandra/cass-operator/issues/459 | |
- cluster_wide_install | |
- config_change | |
- config_secret | |
# - multi_cluster_management | |
#- oss_test_all_the_things # This is now the smoke test, see kind_smoke_tests job | |
- scale_down | |
# - scale_down_not_enough_space # Not enough stable test | |
#- scale_down_unbalanced_racks #TODO: Fails against C* 4.0 and DSE, fix in https://github.com/k8ssandra/cass-operator/issues/459 | |
- scale_up | |
- scale_up_stop_resume | |
- seed_selection | |
#- config_fql # OSS only | |
- decommission_dc | |
# - stop_resume_scale_up # Odd insufficient CPU issues in kind+GHA | |
# let other tests continue to run | |
# even if one fails | |
fail-fast: false | |
runs-on: ubuntu-latest | |
env: | |
CGO_ENABLED: 0 | |
M_INTEG_DIR: ${{ matrix.integration_test }} | |
M_SERVER_VERSION: ${{ matrix.version }} | |
steps: | |
- uses: actions/checkout@v3 | |
if: github.event_name == 'pull_request' | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- uses: actions/checkout@v3 | |
if: github.event_name != 'pull_request' | |
- uses: ./.github/actions/run-integ-test | |
with: | |
integration_test: ${{ matrix.integration_test }} | |
- name: Archive k8s logs | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: k8s-logs-${{ matrix.integration_test }}-${{ matrix.version }} | |
path: ./build/kubectl_dump | |
kind_smoke_tests: | |
needs: build_docker_images | |
strategy: | |
matrix: | |
version: | |
- "3.11.15" | |
- "4.0.10" | |
- "4.1.2" | |
- "6.8.39" | |
integration_test: | |
- test_all_the_things | |
include: | |
- version: 6.8.39 | |
serverImage: datastax/dse-mgmtapi-6_8:6.8.39-ubi8 # DSE 6.8.39 | |
serverType: dse | |
integration_test: "test_all_the_things" | |
fail-fast: true | |
runs-on: ubuntu-latest | |
env: | |
CGO_ENABLED: 0 | |
M_INTEG_DIR: ${{ matrix.integration_test }} | |
M_SERVER_VERSION: ${{ matrix.version }} | |
M_SERVER_IMAGE: ${{ matrix.serverImage }} | |
M_SERVER_TYPE: ${{ matrix.serverType }} | |
steps: | |
- uses: actions/checkout@v3 | |
if: github.event_name == 'pull_request' | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- uses: actions/checkout@v3 | |
if: github.event_name != 'pull_request' | |
- uses: ./.github/actions/run-integ-test | |
with: | |
integration_test: ${{ matrix.integration_test }} | |
- name: Archive k8s logs | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: k8s-logs-smoke_test-${{ matrix.version }} | |
path: ./build/kubectl_dump |