diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 5a69c298e1..af99d9b602 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -127,98 +127,4 @@ jobs: --config .github/ct.yaml \ --helm-extra-set-args="--set=image.tag=${{ matrix.version }}" \ --skip-missing-values \ - --charts=charts/redpanda - - test-redpanda-nightly: - name: Run ct tests for ci values matching ${{ matrix.testvaluespattern }} for Redpanda nightly build - strategy: - matrix: - testvaluespattern: - - '0[1-3]*' - - '0[4-6]*' - - '0[7-9]*' - - '1[0-2]*' - fail-fast: true - runs-on: ubuntu-22.04 - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - run: | - git checkout main - git checkout - - - - name: Set up for matrix - run: | - echo bash -O extglob -c "rm -v charts/redpanda/ci/!(${{ matrix.testvaluespattern }})" - bash -O extglob -c "rm -v charts/redpanda/ci/!(${{ matrix.testvaluespattern }})" - - - uses: actions/setup-go@v4 - with: - go-version: '>=1.20.4' - - run: go install github.com/joejulian/docker-tag-list@latest - - - name: Get latest nightly tag - id: latestTag - run: | - echo "TAG=$( - docker-tag-list -c '~0.0.0-0' --latest -r redpandadata/redpanda-nightly | sed 's/-a..64$//' - ) >> $GITHUB_OUTPUT - - - name: Set up Helm - uses: azure/setup-helm@v3 - with: - version: v3.11.1 - - - name: Set up chart-testing - uses: joejulian/chart-testing-action@v2.3.1-1 - with: - version: v3.8.0-1 - - - name: Create kind cluster - uses: helm/kind-action@v1.5.0 - with: - config: .github/kind.yaml - - - name: Check kind config worked - run: kubectl get nodes - - - name: Annotate nodes for rack awareness - run: .github/annotate_kind_nodes.sh chart-testing - - #===== Required Test Files === start - - - name: Create tls helm templates - if: steps.list-changed.outputs.changed == 'true' - run: | - .github/create_tls.sh "random-domain" - - - name: Create sasl secret templates - if: steps.list-changed.outputs.changed == 'true' - run: | - .github/create-sasl-secret.sh "some-users" - - - name: Move tls files to template - if: steps.list-changed.outputs.changed == 'true' - run: | - mv external-tls-secret.yaml charts/redpanda/templates/ - cp .github/external-service.yaml charts/redpanda/templates/ - mv some-users-updated.yaml charts/redpanda/templates - - #===== Required Test Files === end - - - name: install cert-manager - run: | - helm repo add jetstack https://charts.jetstack.io && - helm install cert-manager --namespace cert-manager \ - --create-namespace --version v1.11.0 jetstack/cert-manager \ - --set installCRDs=true --wait --wait-for-jobs - - - name: Run chart-testing install - run: | - ct install \ - --config .github/ct.yaml \ - --helm-extra-set-args="--set=image.tag=${{ steps.latestTag.outputs.TAG }} --set=image.repository=redpandadata/redpanda-nightly" \ - --skip-missing-values \ --charts=charts/redpanda \ No newline at end of file diff --git a/.github/workflows/nighty_redpanda_tip.yaml b/.github/workflows/nighty_redpanda_tip.yaml new file mode 100644 index 0000000000..5fc4aecf88 --- /dev/null +++ b/.github/workflows/nighty_redpanda_tip.yaml @@ -0,0 +1,116 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# This is to test only the Redpanda Chart Nightly +name: Nightly Lint and Test Redpanda Chart + +on: + schedule: + - cron: '0 1 * * 1-5' # 01:00 AM UTC Monday - Friday + workflow_dispatch: {} +jobs: + test-redpanda-nightly: + name: Run ct tests for ci values matching ${{ matrix.testvaluespattern }} for Redpanda nightly build + strategy: + matrix: + testvaluespattern: + - '0[1-3]*' + - '0[4-6]*' + - '0[7-9]*' + - '1[0-2]*' + fail-fast: true + runs-on: ubuntu-22.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + - run: | + git checkout main + git checkout - + + - name: Set up for matrix + run: | + echo bash -O extglob -c "rm -v charts/redpanda/ci/!(${{ matrix.testvaluespattern }})" + bash -O extglob -c "rm -v charts/redpanda/ci/!(${{ matrix.testvaluespattern }})" + + - uses: actions/setup-go@v4 + with: + go-version: '>=1.20.4' + - run: go install github.com/joejulian/docker-tag-list@latest + + - name: Get latest nightly tag + id: latestTag + run: | + echo "TAG=$( + docker-tag-list -c '~0.0.0-0' --latest -r redpandadata/redpanda-nightly | sed 's/-a..64$//' + )" >> $GITHUB_OUTPUT + + - name: Set up Helm + uses: azure/setup-helm@v3 + with: + version: v3.11.1 + + - name: Set up chart-testing + uses: joejulian/chart-testing-action@v2.3.1-1 + with: + version: v3.8.0-1 + + - name: Create kind cluster + uses: helm/kind-action@v1.5.0 + with: + config: .github/kind.yaml + + - name: Check kind config worked + run: kubectl get nodes + + - name: Annotate nodes for rack awareness + run: .github/annotate_kind_nodes.sh chart-testing + + #===== Required Test Files === start + + - name: Create tls helm templates + if: steps.list-changed.outputs.changed == 'true' + run: | + .github/create_tls.sh "random-domain" + + - name: Create sasl secret templates + if: steps.list-changed.outputs.changed == 'true' + run: | + .github/create-sasl-secret.sh "some-users" + + - name: Move tls files to template + if: steps.list-changed.outputs.changed == 'true' + run: | + mv external-tls-secret.yaml charts/redpanda/templates/ + cp .github/external-service.yaml charts/redpanda/templates/ + mv some-users-updated.yaml charts/redpanda/templates + + #===== Required Test Files === end + + - name: install cert-manager + run: | + helm repo add jetstack https://charts.jetstack.io && + helm install cert-manager --namespace cert-manager \ + --create-namespace --version v1.11.0 jetstack/cert-manager \ + --set installCRDs=true --wait --wait-for-jobs + + - name: Run chart-testing install + run: | + ct install \ + --config .github/ct.yaml \ + --helm-extra-set-args="--set=image.tag=${{ steps.latestTag.outputs.TAG }} --set=image.repository=redpandadata/redpanda-nightly" \ + --skip-missing-values \ + --charts=charts/redpanda \ No newline at end of file