add PriorityClass (#148) #38
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: push-with-lifecycle-manager | |
env: | |
DOCKER_IMAGE: "europe-docker.pkg.dev/kyma-project/prod/nats-manager" | |
E2E_LOG_LEVEL: debug | |
KYMA_STABILITY: "unstable" | |
KYMA: "./hack/kyma" | |
on: | |
push: | |
branches: [ "main" ] | |
jobs: | |
e2e: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install k3d tools | |
run: | | |
make -C hack/ci/ install-k3d-tools | |
- name: Install Kyma CLI & setup k3d cluster using kyma CLI | |
run: | | |
make kyma | |
make -C hack/ci/ create-k3d | |
kubectl version | |
kubectl cluster-info | |
- name: Deploy lifecycle-manager | |
run: | | |
make -C hack/ci/ install-lifecycle-manager | |
- name: Wait for the 'post-nats-manager-build' job to succeed | |
uses: kyma-project/wait-for-commit-status-action@2b3ffe09af8b6f40e1213d5fb7f91a7bd41ffb20 | |
with: | |
context: "post-nats-manager-build" | |
commit_ref: "${{ github.sha }}" | |
timeout: 600000 # 10 minutes in milliseconds | |
# The check interval is kept long otherwise it will exhaust the GitHub rate limit (More info: https://docs.github.com/en/rest/overview/resources-in-the-rest-api?apiVersion=2022-11-28#rate-limiting) | |
check_interval: 60000 # 1 minute in milliseconds | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
GITHUB_OWNER: "${{ github.repository_owner }}" | |
GITHUB_REPO: "nats-manager" | |
- name: Wait for the 'post-nats-module-build' job to succeed | |
id: wait-nats-module-build | |
uses: kyma-project/wait-for-commit-status-action@2b3ffe09af8b6f40e1213d5fb7f91a7bd41ffb20 | |
with: | |
context: "post-nats-module-build" | |
commit_ref: "${{ github.sha }}" | |
timeout: 600000 # 10 minutes in milliseconds | |
# The check interval is kept long otherwise it will exhaust the GitHub rate limit (More info: https://docs.github.com/en/rest/overview/resources-in-the-rest-api?apiVersion=2022-11-28#rate-limiting) | |
check_interval: 60000 # 1 minute in milliseconds | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
GITHUB_OWNER: "${{ github.repository_owner }}" | |
GITHUB_REPO: "nats-manager" | |
- name: Download & validate NATS module template | |
env: | |
COMMIT_STATUS_JSON: "${{ steps.wait-nats-module-build.outputs.json }}" | |
run: | | |
make -C hack/ci/ download-module-template | |
kubectl apply -f module-template.yaml --dry-run=client | |
- name: Install & enable NATS module template | |
run: | | |
make -C hack/ci/ install-module-template | |
make -C hack/ci/ enable-module-without-default-cr | |
make -C hack/ci/ verify-kyma | |
- name: Setup & test NATS CR | |
run: | | |
make e2e-setup | |
- name: Run NATS bench | |
run: | | |
go install github.com/nats-io/natscli/nats@latest | |
export PATH=$HOME/go/bin:$PATH | |
make e2e-bench | |
- name: Test NATS-server | |
run: | | |
make e2e-nats-server | |
- name: Cleanup NATS CR | |
run: | | |
make e2e-cleanup | |
e2e-upgrade-fast-channel: # This job tests the upgrade of NATS module from latest release from fast channel to current commit. | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install k3d tools | |
run: | | |
make -C hack/ci/ install-k3d-tools | |
- name: Install Kyma CLI & setup k3d cluster using kyma CLI | |
run: | | |
make kyma | |
make -C hack/ci/ create-k3d | |
kubectl version | |
kubectl cluster-info | |
- name: Deploy lifecycle-manager | |
run: | | |
make -C hack/ci/ install-lifecycle-manager | |
- name: Install latest released module template from fast channel & enable NATS module | |
run: | | |
make -C hack/ci/ install-latest-module-template-fast | |
make -C hack/ci/ enable-module-without-default-cr | |
make -C hack/ci/ verify-kyma | |
- name: Setup & test NATS CR | |
run: | | |
make e2e-setup | |
- name: Wait for the 'post-nats-manager-build' job to succeed | |
uses: kyma-project/wait-for-commit-status-action@2b3ffe09af8b6f40e1213d5fb7f91a7bd41ffb20 | |
with: | |
context: "post-nats-manager-build" | |
commit_ref: "${{ github.sha }}" | |
timeout: 600000 # 10 minutes in milliseconds | |
# The check interval is kept long otherwise it will exhaust the GitHub rate limit (More info: https://docs.github.com/en/rest/overview/resources-in-the-rest-api?apiVersion=2022-11-28#rate-limiting) | |
check_interval: 60000 # 1 minute in milliseconds | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
GITHUB_OWNER: "${{ github.repository_owner }}" | |
GITHUB_REPO: "nats-manager" | |
- name: Wait for the 'post-nats-module-build' job to succeed | |
id: wait-nats-module-build | |
uses: kyma-project/wait-for-commit-status-action@2b3ffe09af8b6f40e1213d5fb7f91a7bd41ffb20 | |
with: | |
context: "post-nats-module-build" | |
commit_ref: "${{ github.sha }}" | |
timeout: 600000 # 10 minutes in milliseconds | |
# The check interval is kept long otherwise it will exhaust the GitHub rate limit (More info: https://docs.github.com/en/rest/overview/resources-in-the-rest-api?apiVersion=2022-11-28#rate-limiting) | |
check_interval: 60000 # 1 minute in milliseconds | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
GITHUB_OWNER: "${{ github.repository_owner }}" | |
GITHUB_REPO: "nats-manager" | |
- name: Download & install the new NATS module template from current commit | |
env: | |
PR_NUMBER: "${{ github.event.number }}" | |
COMMIT_STATUS_JSON: "${{ steps.wait-nats-module-build.outputs.json }}" | |
run: | | |
make -C hack/ci/ download-module-template | |
make -C hack/ci/ install-module-template | |
make -C hack/ci/ verify-kyma | |
- name: Wait for new changes to be reflected | |
# Waits for NATS-manager image to be updated and NATS CR readiness. | |
env: | |
COMMIT_SHA: "${{ github.sha }}" | |
run: | | |
export DOCKER_TAG="$(date +v%Y%m%d)-$(echo ${COMMIT_SHA} | head -c 8)" | |
export MANAGER_IMAGE="${DOCKER_IMAGE}:${DOCKER_TAG}" | |
make e2e-setup | |
- name: Run NATS bench | |
run: | | |
go install github.com/nats-io/natscli/nats@latest | |
export PATH=$HOME/go/bin:$PATH | |
make e2e-bench | |
- name: Test NATS-server | |
run: | | |
make e2e-nats-server | |
- name: Cleanup NATS CR | |
run: | | |
make e2e-cleanup |