Skip to content

fix: use same glob for oci registry upload #347

fix: use same glob for oci registry upload

fix: use same glob for oci registry upload #347

Workflow file for this run

# Copyright 2025 Nutanix. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
name: checks
on:
push:
pull_request:
types:
- opened
- synchronize
- reopened
permissions:
contents: read
defaults:
run:
shell: bash
jobs:
lint-go:
name: Lint go code
permissions:
pull-requests: write
contents: read
runs-on:
- self-hosted-ncn-docker-medium
steps:
- name: Clone the code
uses: actions/checkout@v4
# See: https://github.com/DeterminateSystems/nix-installer-action/issues/68
- name: Install Nix on self-hosted ARC runners
uses: cachix/install-nix-action@V27
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Install devbox
uses: jetify-com/[email protected]
with:
skip-nix-installation: true
- name: Export golang and golangci-lint versions
id: versions
run: |
echo "golangci-lint=$(devbox run -- golangci-lint version --format short)" >>"${GITHUB_OUTPUT}"
echo "golang=$(devbox run -- go version | grep -o "[[:digit:]]\+.[[:digit:]]\+\(.[[:digit:]]\+\)\?")" >>"${GITHUB_OUTPUT}"
- name: golangci-lint
uses: reviewdog/action-golangci-lint@v2
with:
fail_level: error
reporter: github-pr-review
golangci_lint_version: v${{ steps.versions.outputs.golangci-lint }}
go_version: v${{ steps.versions.outputs.golang }}
golangci_lint_flags: "--config=${{ github.workspace }}/.golangci.yml"
lint-gha:
runs-on:
- self-hosted-ncn-docker-medium
permissions:
pull-requests: write
contents: read
steps:
- name: Check out code
uses: actions/checkout@v4
- name: actionlint
uses: reviewdog/action-actionlint@v1
with:
fail_level: error
reporter: github-pr-review
pre-commit:
runs-on:
- self-hosted-ncn-docker-medium
permissions:
pull-requests: write
contents: read
steps:
- name: Check out code
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
# See: https://github.com/DeterminateSystems/nix-installer-action/issues/68
- name: Install Nix on self-hosted ARC runners
uses: cachix/install-nix-action@V27
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Install devbox
uses: jetify-com/[email protected]
with:
skip-nix-installation: true
- name: Go cache
uses: actions/cache@v4
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Set up pre-commit cache
uses: actions/cache@v4
with:
path: ~/.cache/pre-commit
key: pre-commit-3|${{ hashFiles('.pre-commit-config.yaml') }}
- name: Run pre-commit
run: devbox run -- make pre-commit
env:
SKIP: no-commit-to-branch,golangci-lint,actionlint-system
lint-test-helm:
runs-on:
- self-hosted-ncn-docker-medium
env:
KIND_CLUSTER_NAME: chart-testing
KIND_KUBECONFIG: ct-kind-kubeconfig
GH_TOKEN: ${{ github.token }}
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
# See: https://github.com/DeterminateSystems/nix-installer-action/issues/68
- name: Install Nix on self-hosted ARC runners
uses: cachix/install-nix-action@V27
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Install devbox
uses: jetify-com/[email protected]
with:
skip-nix-installation: true
- name: Run chart-testing (lint)
run: |
devbox run -- make helm-lint
e2e-tests:
runs-on:
- self-hosted-ncn-dind
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
# See: https://github.com/DeterminateSystems/nix-installer-action/issues/68
- name: Install Nix on self-hosted ARC runners
uses: cachix/install-nix-action@V27
with:
github_access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Install devbox
uses: jetify-com/[email protected]
with:
skip-nix-installation: true
- name: Login to Harbor Container Registry
uses: docker/login-action@v3
with:
registry: harbor.eng.nutanix.com
username: ${{ secrets.HARBOR_USER }}
password: ${{ secrets.HARBOR_PASSWORD }}
- name: Run e2e tests
run: |
devbox run -- make test.e2e
env:
NUTANIX_GPU_NAME: "NVIDIA A40-4C"
SSH_PUBLIC_KEY_FOR_TESTS: ${{ vars.SSH_PUBLIC_KEY_FOR_TESTS }}
NUTANIX_USER: ${{ secrets.NUTANIX_USER }}
NUTANIX_PASSWORD: ${{ secrets.NUTANIX_PASSWORD }}
NUTANIX_ENDPOINT: ${{ secrets.NUTANIX_ENDPOINT }}
NUTANIX_PORT: "9440"
NUTANIX_PRISM_ELEMENT_CLUSTER_NAME_CONTROL_PLANE: ${{ secrets.NUTANIX_PRISM_ELEMENT_CLUSTER_NAME_CONTROL_PLANE }}
NUTANIX_PRISM_ELEMENT_CLUSTER_NAME_GPU: ${{ secrets.NUTANIX_PRISM_ELEMENT_CLUSTER_NAME_GPU }}
NUTANIX_SUBNET_NAME: ${{ vars.NUTANIX_SUBNET_NAME }}
NUTANIX_GPU_SUBNET_NAME: ${{ vars.NUTANIX_GPU_SUBNET_NAME }}
VGPU_TOKEN_SECRET: ${{ secrets.VGPU_TOKEN_SECRET }}