Files
my-rook-config/.github/workflows/unit-test.yml
T
harshitasao fb697fb0f7 ci: github action pin dependencies
The openSSF scorecard report warns that the github actions are not pinned by hash.

This PR aims at improving this by pinning the github actions by hash.

Signed-off-by: harshitasao <harshitasao@gmail.com>
2024-08-15 19:06:30 +05:30

67 lines
1.9 KiB
YAML

name: Unit tests
on:
push:
tags:
- v*
branches:
- master
- release-*
pull_request:
branches:
- master
- release-*
workflow_dispatch:
inputs:
version:
type: string
required: false
description: "Version of jq to install"
default: "1.7"
defaults:
run:
# reference: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#using-a-specific-shell
shell: bash --noprofile --norc -eo pipefail -x {0}
# cancel the in-progress workflow when PR is refreshed.
concurrency:
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
permissions:
contents: read
jobs:
unittests:
runs-on: ubuntu-22.04
if: "!contains(github.event.pull_request.labels.*.name, 'skip-ci')"
steps:
- name: checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
fetch-depth: 0
- uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
with:
go-version: "1.22"
- name: Setup jq
uses: dcarbone/install-jq-action@8867ddb4788346d7c22b72ea2e2ffe4d514c7bcb # v2.1.0
with:
version: "${{ inputs.version }}"
- name: run unit tests
run: |
export ROOK_UNIT_JQ_PATH="$(which jq)"
# AZURE_EXTENSION_DIR is set in GH action runners and affects Azure KMS unit tests; unset it
unset AZURE_EXTENSION_DIR
GOPATH=$(go env GOPATH) make -j $(nproc) test | tee output.txt
- name: check mds liveness probe script ran successfully
run: |
if grep "skipping mds liveness probe script unit tests because jq binary location is not known" output.txt
then
echo "jq not found, fail the test"
exit 1
fi