2022-02-18 01:47:35 +00:00
|
|
|
name: cli
|
2023-01-05 10:37:41 +01:00
|
|
|
|
2023-06-30 13:44:57 +02:00
|
|
|
permissions: {}
|
|
|
|
|
2022-02-18 01:47:35 +00:00
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
2023-06-20 14:04:06 +02:00
|
|
|
- 'main'
|
|
|
|
- 'release*'
|
2022-02-18 01:47:35 +00:00
|
|
|
pull_request:
|
|
|
|
branches:
|
|
|
|
- 'main'
|
|
|
|
- 'release*'
|
|
|
|
|
2023-01-06 16:24:55 +01:00
|
|
|
concurrency:
|
|
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
2022-02-18 01:47:35 +00:00
|
|
|
jobs:
|
|
|
|
cli-test:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
2023-09-05 09:27:02 +00:00
|
|
|
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
|
2023-01-05 16:52:52 +01:00
|
|
|
- name: Setup build env
|
|
|
|
uses: ./.github/actions/setup-build-env
|
2023-08-30 22:44:51 +02:00
|
|
|
timeout-minutes: 10
|
2022-02-18 01:47:35 +00:00
|
|
|
with:
|
2023-01-05 16:52:52 +01:00
|
|
|
build-cache-key: cli-test
|
2023-01-05 10:37:41 +01:00
|
|
|
- name: Setup TEST_GIT_BRANCH
|
2022-02-18 01:47:35 +00:00
|
|
|
run: |
|
|
|
|
if [[ ${{ github.event_name }} == "push" ]]
|
|
|
|
then
|
2023-06-20 14:04:06 +02:00
|
|
|
echo "TEST_GIT_BRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV
|
2022-02-18 01:47:35 +00:00
|
|
|
elif [[ ${{ github.event_name }} == "pull_request" ]]
|
|
|
|
then
|
2023-06-20 14:04:06 +02:00
|
|
|
echo "TEST_GIT_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV
|
2022-02-18 01:47:35 +00:00
|
|
|
fi
|
2023-01-05 10:37:41 +01:00
|
|
|
- name: Test CLI
|
|
|
|
run: |
|
2023-04-07 14:10:53 +02:00
|
|
|
VERSION=${{ github.ref_name }} make test-cli
|
2023-01-05 10:37:41 +01:00
|
|
|
- name: Test CLI (failures)
|
|
|
|
run: |
|
2022-08-30 17:30:28 +02:00
|
|
|
CLI_PATH=$PWD/cmd/cli/kubectl-kyverno/kubectl-kyverno
|
2022-02-18 01:47:35 +00:00
|
|
|
$CLI_PATH test ./test/cli/test-fail/missing-policy && exit 1 || exit 0
|
|
|
|
$CLI_PATH test ./test/cli/test-fail/missing-rule && exit 1 || exit 0
|
|
|
|
$CLI_PATH test ./test/cli/test-fail/missing-resource && exit 1 || exit 0
|
2023-09-14 21:04:55 +02:00
|
|
|
|
|
|
|
kubectl-validate-cli-test:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac # v4.0.0
|
|
|
|
- name: Setup build env
|
|
|
|
uses: ./.github/actions/setup-build-env
|
|
|
|
timeout-minutes: 10
|
|
|
|
with:
|
|
|
|
build-cache-key: cli-test
|
|
|
|
- name: Setup TEST_GIT_BRANCH
|
|
|
|
run: |
|
|
|
|
if [[ ${{ github.event_name }} == "push" ]]
|
|
|
|
then
|
|
|
|
echo "TEST_GIT_BRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV
|
|
|
|
elif [[ ${{ github.event_name }} == "pull_request" ]]
|
|
|
|
then
|
|
|
|
echo "TEST_GIT_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV
|
|
|
|
fi
|
|
|
|
- name: Test CLI
|
|
|
|
run: |
|
|
|
|
KYVERNO_KUBECTL_VALIDATE=true VERSION=${{ github.ref_name }} make test-cli
|
|
|
|
- name: Test CLI (failures)
|
|
|
|
run: |
|
|
|
|
CLI_PATH=$PWD/cmd/cli/kubectl-kyverno/kubectl-kyverno
|
|
|
|
KYVERNO_KUBECTL_VALIDATE=true $CLI_PATH test ./test/cli/test-fail/missing-policy && exit 1 || exit 0
|
|
|
|
KYVERNO_KUBECTL_VALIDATE=true $CLI_PATH test ./test/cli/test-fail/missing-rule && exit 1 || exit 0
|
|
|
|
KYVERNO_KUBECTL_VALIDATE=true $CLI_PATH test ./test/cli/test-fail/missing-resource && exit 1 || exit 0
|