diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 303029c..4a263cb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,6 +6,10 @@ stages: - deploy - release +default: + timeout: 15min + interruptible: true + include: - local: .gitlab/ci/snippets.yml - local: .gitlab/ci/rules.yml @@ -62,6 +66,7 @@ snippets: - !reference [.snippets, kubeseal-install] - !reference [.snippets, kubeconform-install] - !reference [.snippets, cosign-install] + - !reference [.snippets, talosctl-install] - !reference [.snippets, helm-install] - !reference [.snippets, kind-install] - !reference [.snippets, terraform-install] diff --git a/.gitlab/ci/snippets.yml b/.gitlab/ci/snippets.yml index a59d5ee..e1d117b 100644 --- a/.gitlab/ci/snippets.yml +++ b/.gitlab/ci/snippets.yml @@ -265,10 +265,28 @@ else echo "Unknown system arch. Default to amd64" fi - curl -sL https://dl.min.io/client/mc/release/linux-${ARCH}/mc -o /usr/local/bin/mc + curl -sL https://dl.min.io/client/mc/release/linux-${ARCH-amd64}/mc -o /usr/local/bin/mc chmod +x /usr/local/bin/mc fi mc --version + talosctl-install: + - | + # Check if talosctl is installed + if ! command -v talosctl > /dev/null; then + echo "Installing talosctl" + if [ "$(uname -m)" = "x86_64" ]; then + ARCH=amd64 + elif [ "$(uname -m)" = "aarch64" ]; then + ARCH=arm64 + else + echo "Unknown system arch. Default to amd64" + fi + TALOSCTL_DEFAULT_VERSION=$(curl -sL https://api.github.com/repos/siderolabs/talos/releases/latest | jq -r .tag_name) + TAILSCALE_VERSION=${TALOSCTL_VERSION-$TALOSCTL_DEFAULT_VERSION} + curl -sL https://github.com/siderolabs/talos/releases/download/v1.8.0-alpha.2/talosctl-linux-${ARCH-amd64} -o /usr/local/bin/talosctl + chmod +x /usr/local/bin/talosctl + fi + talosctl version --client tailscale-install: - | # Check if tailscale is installed diff --git a/README.md b/README.md index b007a2c..aa5ccf7 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,7 @@ Currently sported snippets are: * tflint-install * kubectl-install * cosign-install + * talosctl-install * helm-install * kubeseal-install * kubeconform-install