diff --git a/.github/workflows/flux-diff.yaml b/.github/workflows/flux-diff.yaml index 036294b6c29c0..19af429accab6 100644 --- a/.github/workflows/flux-diff.yaml +++ b/.github/workflows/flux-diff.yaml @@ -46,32 +46,19 @@ jobs: ref: "${{ github.event.repository.default_branch }}" path: default - - name: Setup Workflow Tools - uses: jdx/mise-action@v2 - env: - GITHUB_TOKEN: "${{ steps.app-token.outputs.token }}" - with: - mise_toml: | - [tools] - python = "3.12" - "aqua:astral-sh/uv" = "latest" - "aqua:fluxcd/flux2" = "latest" - "aqua:helm/helm" = "latest" - "aqua:kubernetes-sigs/kustomize" = "latest" - "pipx:flux-local" = "latest" - - name: Diff Resources - shell: bash - run: | - flux-local diff ${{ matrix.resources }} \ - --unified 6 \ - --path ${{ github.workspace }}/pull/kubernetes/main/flux \ - --path-orig ${{ github.workspace }}/default/kubernetes/main/flux \ - --strip-attrs "helm.sh/chart,checksum/config,app.kubernetes.io/version,chart" \ - --limit-bytes 10000 \ - --all-namespaces \ - --sources "home-kubernetes" \ - --output-file diff.patch + uses: docker://ghcr.io/allenporter/flux-local:v6.1.1@sha256:3196af20e76a73149be83dc21b63a51e86d3c1fbb2764c2acb5f72d057484344 + with: + args: >- + diff ${{ matrix.resources }} + --unified 6 + --path /github/workspace/pull/kubernetes/main/flux + --path-orig /github/workspace/default/kubernetes/main/flux + --strip-attrs "helm.sh/chart,checksum/config,app.kubernetes.io/version,chart" + --limit-bytes 10000 + --all-namespaces + --sources "home-kubernetes" + --output-file diff.patch - name: Generate Diff id: diff diff --git a/.github/workflows/helm-repository-sync.yaml b/.github/workflows/helm-repository-sync.yaml index e6166d75351e3..897ce55bf80cb 100644 --- a/.github/workflows/helm-repository-sync.yaml +++ b/.github/workflows/helm-repository-sync.yaml @@ -16,6 +16,9 @@ on: branches: ["main"] paths: ["kubernetes/**/helmrelease.yaml"] +env: + HOMEBREW_NO_ANALYTICS: "1" + jobs: sync: name: Helm Repository Sync @@ -34,15 +37,12 @@ jobs: token: "${{ steps.app-token.outputs.token }}" fetch-depth: 0 + - name: Setup Homebrew + uses: Homebrew/actions/setup-homebrew@master + - name: Setup Workflow Tools - uses: jdx/mise-action@v2 - env: - GITHUB_TOKEN: "${{ steps.app-token.outputs.token }}" - with: - mise_toml: | - [tools] - "aqua:fluxcd/flux2" = "latest" - "aqua:mikefarah/yq" = "latest" + shell: bash + run: brew install fluxcd/tap/flux - if: ${{ github.event.inputs.helmRepoNamespace == '' && github.event.inputs.helmRepoName == '' }} name: Get Changed Files diff --git a/.github/workflows/pre-pull-images.yaml b/.github/workflows/pre-pull-images.yaml index 3b93f971ff8fa..11630d6bb9b2f 100644 --- a/.github/workflows/pre-pull-images.yaml +++ b/.github/workflows/pre-pull-images.yaml @@ -14,6 +14,9 @@ concurrency: group: ${{ github.workflow }}-${{ github.event.number || github.ref }} cancel-in-progress: true +env: + HOMEBREW_NO_ANALYTICS: "1" + jobs: default-images: name: Default Images @@ -34,29 +37,15 @@ jobs: token: "${{ steps.app-token.outputs.token }}" ref: "${{ github.event.repository.default_branch }}" - - name: Setup Workflow Tools - uses: jdx/mise-action@v2 - env: - GITHUB_TOKEN: "${{ steps.app-token.outputs.token }}" - with: - mise_toml: | - [tools] - python = "3.12" - "aqua:astral-sh/uv" = "latest" - "aqua:fluxcd/flux2" = "latest" - "aqua:helm/helm" = "latest" - "aqua:kubernetes-sigs/kustomize" = "latest" - "aqua:mikefarah/yq" = "latest" - "pipx:flux-local" = "latest" - - name: Gather Images - shell: bash - run: | - flux-local get cluster \ - --path ${{ github.workspace }}/kubernetes/main/flux \ - --enable-images \ - --output yaml \ - --output-file images.yaml + uses: docker://ghcr.io/allenporter/flux-local:v6.1.1@sha256:3196af20e76a73149be83dc21b63a51e86d3c1fbb2764c2acb5f72d057484344 + with: + args: >- + get cluster + --path /github/workspace/kubernetes/main/flux + --enable-images + --output yaml + --output-file images.yaml - name: Filter Images shell: bash @@ -89,29 +78,15 @@ jobs: with: token: "${{ steps.app-token.outputs.token }}" - - name: Setup Workflow Tools - uses: jdx/mise-action@v2 - env: - GITHUB_TOKEN: "${{ steps.app-token.outputs.token }}" - with: - mise_toml: | - [tools] - python = "3.12" - "aqua:astral-sh/uv" = "latest" - "aqua:fluxcd/flux2" = "latest" - "aqua:helm/helm" = "latest" - "aqua:kubernetes-sigs/kustomize" = "latest" - "aqua:mikefarah/yq" = "latest" - "pipx:flux-local" = "latest" - - name: Gather Images - shell: bash - run: | - flux-local get cluster \ - --path ${{ github.workspace }}/kubernetes/main/flux \ - --enable-images \ - --output yaml \ - --output-file images.yaml + uses: docker://ghcr.io/allenporter/flux-local:v6.1.1@sha256:3196af20e76a73149be83dc21b63a51e86d3c1fbb2764c2acb5f72d057484344 + with: + args: >- + get cluster + --path /github/workspace/kubernetes/main/flux + --enable-images + --output yaml + --output-file images.yaml - name: Filter Images shell: bash @@ -162,14 +137,12 @@ jobs: app-id: "${{ secrets.BOT_APP_ID }}" private-key: "${{ secrets.BOT_APP_PRIVATE_KEY }}" + - name: Setup Homebrew + uses: Homebrew/actions/setup-homebrew@master + - name: Setup Workflow Tools - uses: jdx/mise-action@v2 - env: - GITHUB_TOKEN: "${{ steps.app-token.outputs.token }}" - with: - mise_toml: | - [tools] - "aqua:siderolabs/talos" = "latest" + shell: bash + run: brew install siderolabs/tap/talosctl - name: Pre-pull Image run: talosctl -n $NODE_IP image pull ${{ matrix.images }} diff --git a/.github/workflows/schemas.yaml b/.github/workflows/schemas.yaml index 040fd372e68b0..9f9238c4b7b89 100644 --- a/.github/workflows/schemas.yaml +++ b/.github/workflows/schemas.yaml @@ -34,13 +34,8 @@ jobs: with: token: "${{ steps.app-token.outputs.token }}" - # TODO: Integrate Mise Action - # - The use of kubectl in a subshell in the crd-extractor script doesn't work - # - Does not play nice with wrangler-action - name: Setup Homebrew uses: Homebrew/actions/setup-homebrew@master - with: - stable: true - name: Setup Workflow Tools shell: bash @@ -49,12 +44,12 @@ jobs: - name: Setup Python uses: actions/setup-python@v5 with: - python-version: 3.12.x + python-version: 3.13.x - name: Setup Node uses: actions/setup-node@v4 with: - node-version: 20.x + node-version: 22.x - name: Install Python Dependencies run: uv pip install pyyaml