release(v0.44.1): prepare release #2107
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-10-30T17:18:04Z by kres 6d3cad4. | |
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 | |
- omni | |
if: (!startsWith(github.head_ref, 'renovate/') && !startsWith(github.head_ref, 'dependabot/')) | |
outputs: | |
labels: ${{ steps.retrieve-pr-labels.outputs.result }} | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: coverage | |
uses: codecov/codecov-action@v4 | |
with: | |
files: _out/coverage-unit-tests-client.txt,_out/coverage-unit-tests.txt | |
token: ${{ secrets.CODECOV_TOKEN }} | |
timeout-minutes: 3 | |
- name: acompat | |
run: | | |
make acompat | |
- name: integration-test | |
run: | | |
make integration-test | |
- 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-integration-test | |
run: | | |
make image-integration-test | |
- name: push-omni-integration-test | |
if: github.event_name != 'pull_request' | |
env: | |
PLATFORM: linux/amd64,linux/arm64 | |
PUSH: "true" | |
run: | | |
make image-integration-test | |
- name: push-omni-integration-test-latest | |
if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' | |
env: | |
PLATFORM: linux/amd64,linux/arm64 | |
PUSH: "true" | |
run: | | |
make image-integration-test IMAGE_TAG=latest | |
- name: omni | |
run: | | |
make omni | |
- 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: | |
PLATFORM: linux/amd64,linux/arm64 | |
PUSH: "true" | |
run: | | |
make image-omni | |
- name: push-omni-latest | |
if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' | |
env: | |
PLATFORM: linux/amd64,linux/arm64 | |
PUSH: "true" | |
run: | | |
make image-omni IMAGE_TAG=latest | |
- name: omnictl | |
run: | | |
make omnictl | |
- name: run-integration-test | |
env: | |
INTEGRATION_RUN_E2E_TEST: "true" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|Auth/|DefaultCluster/ | |
RUN_TALEMU_TESTS: "true" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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 | |
!~/.talos/clusters/**/swtpm.log | |
retention-days: "5" | |
- name: Generate Checksums | |
if: startsWith(github.ref, 'refs/tags/') | |
run: | | |
cd _out | |
sha256sum omnictl-* omni-* > sha256sum.txt | |
sha512sum omnictl-* omni-* > 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 | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|EtcdBackupAndRestore | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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 | |
!~/.talos/clusters/**/swtpm.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-forced-removal: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-forced-removal') | |
needs: | |
- default | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|ForcedMachineRemoval/|ReplaceControlPlanes/|ConfigPatching/|KubernetesNodeAudit/ | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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-forced-removal | |
path: |- | |
~/.talos/clusters/**/*.log | |
!~/.talos/clusters/**/swtpm.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 | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|RollingUpdateParallelism | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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 | |
!~/.talos/clusters/**/swtpm.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 | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|TalosImageGeneration/|ImmediateClusterDestruction/|DefaultCluster/|EncryptedCluster/|SinglenodeCluster/|Auth/ | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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 | |
!~/.talos/clusters/**/swtpm.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-short-secureboot: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-short-secureboot') | |
needs: | |
- default | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
ENABLE_SECUREBOOT: "true" | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|TalosImageGeneration/|ImmediateClusterDestruction/|DefaultCluster/|EncryptedCluster/|SinglenodeCluster/|Auth/ | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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-secureboot | |
path: |- | |
~/.talos/clusters/**/*.log | |
!~/.talos/clusters/**/swtpm.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 | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|ClusterTemplate/ | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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 | |
!~/.talos/clusters/**/swtpm.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 | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/ | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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 | |
!~/.talos/clusters/**/swtpm.log | |
retention-days: "5" | |
continue-on-error: true | |
e2e-workload-proxy: | |
runs-on: | |
- self-hosted | |
- omni | |
if: contains(fromJSON(needs.default.outputs.labels), 'integration/e2e') || contains(fromJSON(needs.default.outputs.labels), 'integration/e2e-workload-proxy') | |
needs: | |
- default | |
steps: | |
- name: gather-system-info | |
id: system-info | |
uses: kenchan0130/actions-system-info@v1.3.0 | |
continue-on-error: true | |
- name: print-system-info | |
run: | | |
MEMORY_GB=$((${{ steps.system-info.outputs.totalmem }}/1024/1024/1024)) | |
OUTPUTS=( | |
"CPU Core: ${{ steps.system-info.outputs.cpu-core }}" | |
"CPU Model: ${{ steps.system-info.outputs.cpu-model }}" | |
"Hostname: ${{ steps.system-info.outputs.hostname }}" | |
"NodeName: ${NODE_NAME}" | |
"Kernel release: ${{ steps.system-info.outputs.kernel-release }}" | |
"Kernel version: ${{ steps.system-info.outputs.kernel-version }}" | |
"Name: ${{ steps.system-info.outputs.name }}" | |
"Platform: ${{ steps.system-info.outputs.platform }}" | |
"Release: ${{ steps.system-info.outputs.release }}" | |
"Total memory: ${MEMORY_GB} GB" | |
) | |
for OUTPUT in "${OUTPUTS[@]}";do | |
echo "${OUTPUT}" | |
done | |
continue-on-error: true | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Unshallow | |
run: | | |
git fetch --prune --unshallow | |
- name: Set up Docker Buildx | |
id: setup-buildx | |
uses: docker/setup-buildx-action@v3 | |
with: | |
driver: remote | |
endpoint: tcp://buildkit-amd64.ci.svc.cluster.local:1234 | |
timeout-minutes: 10 | |
- name: Mask secrets | |
run: | | |
echo "$(sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | "::add-mask::" + .value')" | |
- name: Set secrets for job | |
run: | | |
sops -d .secrets.yaml | yq -e '.secrets | to_entries[] | .key + "=" + .value' >> "$GITHUB_ENV" | |
- 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: | |
INTEGRATION_RUN_E2E_TEST: "false" | |
INTEGRATION_TEST_ARGS: --test.run CleanState/|WorkloadProxy | |
RUN_TALEMU_TESTS: "false" | |
TALEMU_TEST_ARGS: --test.run ImmediateClusterDestruction/|EncryptedCluster/|SinglenodeCluster/|ScaleUpAndDown/|ScaleUpAndDownMachineClassBasedMachineSets/|TalosUpgrades/|KubernetesUpgrades/|MaintenanceDowngrade/|ClusterTemplate/|ScaleUpAndDownAutoProvisionMachineSets/ | |
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-workload-proxy | |
path: |- | |
~/.talos/clusters/**/*.log | |
!~/.talos/clusters/**/swtpm.log | |
retention-days: "5" | |
continue-on-error: true |