release(v0.31.0): prepare release #45
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
# THIS FILE WAS AUTOMATICALLY GENERATED, PLEASE DO NOT EDIT. | |
# | |
# Generated on 2024-02-28T11:30:58Z by kres latest. | |
name: default | |
concurrency: | |
group: ${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
"on": | |
push: | |
branches: | |
- main | |
- release-* | |
tags: | |
- v* | |
pull_request: | |
branches: | |
- main | |
- release-* | |
jobs: | |
default: | |
permissions: | |
actions: read | |
contents: write | |
issues: read | |
packages: write | |
pull-requests: read | |
runs-on: | |
- self-hosted | |
- generic | |
if: (!startsWith(github.head_ref, 'renovate/') && !startsWith(github.head_ref, 'dependabot/')) | |
outputs: | |
labels: ${{ steps.retrieve-pr-labels.outputs.result }} | |
services: | |
buildkitd: | |
image: moby/buildkit:v0.12.5 | |
options: --privileged | |
ports: | |
- 1234:1234 | |
volumes: | |
- /var/lib/buildkit/${{ github.repository }}:/var/lib/buildkit | |
- /usr/etc/buildkit/buildkitd.toml:/etc/buildkit/buildkitd.toml | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://localhost:1234 | |
timeout-minutes: 1 | |
- name: js | |
run: | | |
make js | |
- name: unit-tests-frontend | |
run: | | |
make unit-tests-frontend | |
- name: frontend | |
run: | | |
make frontend | |
- name: base | |
run: | | |
make base | |
- name: unit-tests-client | |
run: | | |
make unit-tests-client | |
- name: unit-tests-client-race | |
run: | | |
make unit-tests-client-race | |
- name: unit-tests | |
run: | | |
make unit-tests | |
- name: unit-tests-race | |
run: | | |
make unit-tests-race | |
- name: omni | |
run: | | |
make omni | |
- name: lint | |
run: | | |
make lint | |
- name: Login to registry | |
if: github.event_name != 'pull_request' | |
uses: docker/login-action@v3 | |
with: | |
password: ${{ secrets.GITHUB_TOKEN }} | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
- name: image-omni | |
run: | | |
make image-omni | |
- name: push-omni | |
if: github.event_name != 'pull_request' | |
env: | |
PUSH: "true" | |
run: | | |
make image-omni | |
- name: push-omni-latest | |
if: github.event_name != 'pull_request' | |
env: | |
PUSH: "true" | |
run: | | |
make image-omni TAG=latest | |
- name: omni-integration-test | |
run: | | |
make omni-integration-test | |
- name: omnictl | |
run: | | |
make omnictl | |
- name: run-integration-test | |
env: | |
AUTH0_TEST_PASSWORD: ${{ secrets.AUTH0_TEST_PASSWORD }} | |
AUTH0_TEST_USERNAME: ${{ secrets.AUTH0_TEST_USERNAME }} | |
INTEGRATION_RUN_E2E_TEST: "true" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|Auth/|DefaultCluster/ | |
WITH_DEBUG: "true" | |
run: | | |
sudo -E make run-integration-test | |
- name: Retrieve PR labels | |
id: retrieve-pr-labels | |
uses: actions/github-script@v7 | |
with: | |
retries: "3" | |
script: | | |
if (context.eventName != "pull_request") { return "[]" } | |
const resp = await github.rest.issues.get({ | |
issue_number: context.issue.number, | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
}) | |
return resp.data.labels.map(label => label.name) | |
- name: Generate executable list | |
run: | | |
find _out -type f -executable > _out/executable-artifacts | |
- name: save-artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: artifacts | |
path: |- | |
_out | |
!_out/etcd | |
!_out/secondary-storage/** | |
retention-days: "5" | |
- name: save-talos-logs-artifacts | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: talos-logs | |
path: ~/.talos/clusters/**/*.log | |
retention-days: "5" | |
- name: Generate Checksums | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
sha256sum _out/omnictl-* _out/omni-* > _out/sha256sum.txt | |
sha512sum _out/omnictl-* _out/omni-* > _out/sha512sum.txt | |
- name: release-notes | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
make release-notes | |
- name: Release | |
if: startsWith(github.ref, 'refs/tags/') | |
uses: crazy-max/ghaction-github-release@v2 | |
with: | |
body_path: _out/RELEASE_NOTES.md | |
draft: "true" | |
files: |- | |
_out/omnictl-* | |
_out/omni-* | |
_out/sha*.txt | |
e2e-backups: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-backups') | |
needs: | |
- default | |
services: | |
buildkitd: | |
image: moby/buildkit:v0.12.5 | |
options: --privileged | |
ports: | |
- 1234:1234 | |
volumes: | |
- /var/lib/buildkit/${{ github.repository }}:/var/lib/buildkit | |
- /usr/etc/buildkit/buildkitd.toml:/etc/buildkit/buildkitd.toml | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://localhost:1234 | |
timeout-minutes: 1 | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts | |
path: _out | |
- name: Fix artifact permissions | |
run: | | |
xargs -a _out/executable-artifacts -I {} chmod +x {} | |
- name: run-integration-test | |
env: | |
AUTH0_TEST_PASSWORD: ${{ secrets.AUTH0_TEST_PASSWORD }} | |
AUTH0_TEST_USERNAME: ${{ secrets.AUTH0_TEST_USERNAME }} | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|EtcdBackupAndRestore | |
WITH_DEBUG: "true" | |
run: | | |
sudo -E make run-integration-test | |
- name: save-talos-logs-artifacts | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: talos-logs-e2e-backups | |
path: ~/.talos/clusters/**/*.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-scaling: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-scaling') | |
needs: | |
- default | |
services: | |
buildkitd: | |
image: moby/buildkit:v0.12.5 | |
options: --privileged | |
ports: | |
- 1234:1234 | |
volumes: | |
- /var/lib/buildkit/${{ github.repository }}:/var/lib/buildkit | |
- /usr/etc/buildkit/buildkitd.toml:/etc/buildkit/buildkitd.toml | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://localhost:1234 | |
timeout-minutes: 1 | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts | |
path: _out | |
- name: Fix artifact permissions | |
run: | | |
xargs -a _out/executable-artifacts -I {} chmod +x {} | |
- name: run-integration-test | |
env: | |
AUTH0_TEST_PASSWORD: ${{ secrets.AUTH0_TEST_PASSWORD }} | |
AUTH0_TEST_USERNAME: ${{ secrets.AUTH0_TEST_USERNAME }} | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|RollingUpdateParallelism/|ForcedMachineRemoval/|ReplaceControlPlanes/|ConfigPatching/ | |
WITH_DEBUG: "true" | |
run: | | |
sudo -E make run-integration-test | |
- name: save-talos-logs-artifacts | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: talos-logs-e2e-scaling | |
path: ~/.talos/clusters/**/*.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-short: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-short') | |
needs: | |
- default | |
services: | |
buildkitd: | |
image: moby/buildkit:v0.12.5 | |
options: --privileged | |
ports: | |
- 1234:1234 | |
volumes: | |
- /var/lib/buildkit/${{ github.repository }}:/var/lib/buildkit | |
- /usr/etc/buildkit/buildkitd.toml:/etc/buildkit/buildkitd.toml | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://localhost:1234 | |
timeout-minutes: 1 | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts | |
path: _out | |
- name: Fix artifact permissions | |
run: | | |
xargs -a _out/executable-artifacts -I {} chmod +x {} | |
- name: run-integration-test | |
env: | |
AUTH0_TEST_PASSWORD: ${{ secrets.AUTH0_TEST_PASSWORD }} | |
AUTH0_TEST_USERNAME: ${{ secrets.AUTH0_TEST_USERNAME }} | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|TalosImageGeneration/|ImmediateClusterDestruction/|DefaultCluster/|EncryptedCluster/|SinglenodeCluster/|Auth/ | |
WITH_DEBUG: "true" | |
run: | | |
sudo -E make run-integration-test | |
- name: save-talos-logs-artifacts | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: talos-logs-e2e-short | |
path: ~/.talos/clusters/**/*.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-templates: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-templates') | |
needs: | |
- default | |
services: | |
buildkitd: | |
image: moby/buildkit:v0.12.5 | |
options: --privileged | |
ports: | |
- 1234:1234 | |
volumes: | |
- /var/lib/buildkit/${{ github.repository }}:/var/lib/buildkit | |
- /usr/etc/buildkit/buildkitd.toml:/etc/buildkit/buildkitd.toml | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://localhost:1234 | |
timeout-minutes: 1 | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts | |
path: _out | |
- name: Fix artifact permissions | |
run: | | |
xargs -a _out/executable-artifacts -I {} chmod +x {} | |
- name: run-integration-test | |
env: | |
AUTH0_TEST_PASSWORD: ${{ secrets.AUTH0_TEST_PASSWORD }} | |
AUTH0_TEST_USERNAME: ${{ secrets.AUTH0_TEST_USERNAME }} | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|ClusterTemplate/ | |
WITH_DEBUG: "true" | |
run: | | |
sudo -E make run-integration-test | |
- name: save-talos-logs-artifacts | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: talos-logs-e2e-templates | |
path: ~/.talos/clusters/**/*.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-upgrades: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-upgrades') | |
needs: | |
- default | |
services: | |
buildkitd: | |
image: moby/buildkit:v0.12.5 | |
options: --privileged | |
ports: | |
- 1234:1234 | |
volumes: | |
- /var/lib/buildkit/${{ github.repository }}:/var/lib/buildkit | |
- /usr/etc/buildkit/buildkitd.toml:/etc/buildkit/buildkitd.toml | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://localhost:1234 | |
timeout-minutes: 1 | |
- name: Download artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: artifacts | |
path: _out | |
- name: Fix artifact permissions | |
run: | | |
xargs -a _out/executable-artifacts -I {} chmod +x {} | |
- name: run-integration-test | |
env: | |
AUTH0_TEST_PASSWORD: ${{ secrets.AUTH0_TEST_PASSWORD }} | |
AUTH0_TEST_USERNAME: ${{ secrets.AUTH0_TEST_USERNAME }} | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/ | |
WITH_DEBUG: "true" | |
run: | | |
sudo -E make run-integration-test | |
- name: save-talos-logs-artifacts | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: talos-logs-e2e-upgrades | |
path: ~/.talos/clusters/**/*.log | |
retention-days: "5" | |
continue-on-error: true |