Skip to content

fix(auth): Add support for auth flags. #386

fix(auth): Add support for auth flags.

fix(auth): Add support for auth flags. #386

Workflow file for this run

name: go tests
on:
# workflow_dispatch:
# workflow_run:
# workflows:
# - "Check and Update Package Version"
# types:
# - completed
# branches:
# - "*"
push:
branches:
- '*'
jobs:
build:
runs-on: kfutil-runner-set
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
- name: Install dependencies
run: go mod download && go mod tidy
- name: Install Azure CLI
run: |
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
az --version
# 10.x.x
kf_10_x_x:
runs-on: kfutil-runner-set
needs:
- build
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Run tests
run: echo "Running tests for KF 10.x.x"
### Store Type Tests
Test_StoreTypes_KFC_10_5_0:
runs-on: kfutil-runner-set
needs:
- build
- kf_10_x_x
environment: "KFC_10_5_0_CLEAN"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
KEYFACTOR_PASSWORD: ${{ secrets.KEYFACTOR_PASSWORD }}
KEYFACTOR_USERNAME: ${{ secrets.KEYFACTOR_USERNAME }}
KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
KEYFACTOR_AUTH_HOSTNAME: ${{ vars.KEYFACTOR_AUTH_HOSTNAME }}
KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Run tests
run: |
unset KFUTIL_DEBUG
go test -timeout 20m -v ./cmd -run "^Test_StoreTypes*"
### Store Tests
Test_Stores_KFC_10_5_0:
runs-on: kfutil-runner-set
needs:
- build
- kf_10_x_x
# - Test_StoreTypes_KFC_10_5_0
environment: "KFC_10_5_0"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
KEYFACTOR_PASSWORD: ${{ secrets.KEYFACTOR_PASSWORD }}
KEYFACTOR_USERNAME: ${{ secrets.KEYFACTOR_USERNAME }}
KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
KEYFACTOR_AUTH_HOSTNAME: ${{ vars.KEYFACTOR_AUTH_HOSTNAME }}
KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Run tests
run: go test -timeout 20m -v ./cmd -run "^Test_Stores_*"
### PAM Tests
Test_PAM_KFC_10_5_0:
runs-on: kfutil-runner-set
needs:
- build
- kf_10_x_x
# - Test_StoreTypes_KFC_10_5_0
environment: "KFC_10_5_0"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
KEYFACTOR_PASSWORD: ${{ secrets.KEYFACTOR_PASSWORD }}
KEYFACTOR_USERNAME: ${{ secrets.KEYFACTOR_USERNAME }}
KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
KEYFACTOR_AUTH_HOSTNAME: ${{ vars.KEYFACTOR_AUTH_HOSTNAME }}
KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Display working directory
run: |
pwd
ls -ltr
ls -ltr ./artifacts/pam
- name: Run tests
run: |
unset KFUTIL_DEBUG
go test -timeout 20m -v ./cmd -run "^Test_PAM*"
### PAM Tests AKV Auth Provider
Test_AKV_PAM_KFC_10_5_0:
runs-on: self-hosted
needs:
- Test_PAM_KFC_10_5_0
environment: "KFC_10_5_0"
env:
SECRET_NAME: "command-config-1050-az"
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Install dependencies
run: go mod download && go mod tidy
- name: Get secret from Azure Key Vault
run: |
. ./examples/auth/akv/akv_auth_v2.sh
cat $HOME/.keyfactor/command_config.json
- name: Install kfutil
run: |
echo "Installing kfutil on self-hosted runner"
make install
- name: Run tests
run: |
go test -timeout 20m -v ./cmd -run "^Test_PAM*"
# ## KFC 11.x.x
# kf_11_x_x:
# runs-on: kfutil-runner-set
# needs:
# - build
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Run tests
# run: echo "Running tests for KF 11.x.x"
#
# ### Store Type Tests
# Test_StoreTypes_KFC_11_1_2:
# runs-on: kfutil-runner-set
# needs:
# - build
# - kf_11_x_x
# env:
# SECRET_NAME: "command-config-1112-clean"
# KEYFACTOR_HOSTNAME: "int1112-test-clean.kfdelivery.com"
# KEYFACTOR_DOMAIN: "command"
# KEYFACTOR_USERNAME: ${{ secrets.LAB_USERNAME }}
# KEYFACTOR_PASSWORD: ${{ secrets.LAB_PASSWORD }}
# GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Run tests
# run: |
# unset KFUTIL_DEBUG
# go test -timeout 20m -v ./cmd -run "^Test_StoreTypes*"
#
#
# ### Store Tests
# Test_Stores_KFC_11_1_2:
# runs-on: kfutil-runner-set
# needs:
# - build
# - kf_11_x_x
# - Test_StoreTypes_KFC_11_1_2
# env:
# SECRET_NAME: "command-config-1112"
# KEYFACTOR_HOSTNAME: "integrations1112-lab.kfdelivery.com"
# KEYFACTOR_DOMAIN: "command"
# KEYFACTOR_USERNAME: ${{ secrets.LAB_USERNAME }}
# KEYFACTOR_PASSWORD: ${{ secrets.LAB_PASSWORD }}
# GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
# - name: Run tests
# run: go test -timeout 20m -v ./cmd -run "^Test_Stores_*"
#
# ### PAM Tests
# Test_PAM_KFC_11_1_2:
# runs-on: kfutil-runner-set
# needs:
# - build
# - kf_11_x_x
# - Test_StoreTypes_KFC_11_1_2
# env:
# SECRET_NAME: "command-config-1112"
# KEYFACTOR_HOSTNAME: "integrations1112-lab.kfdelivery.com"
# KEYFACTOR_DOMAIN: "command"
# KEYFACTOR_USERNAME: ${{ secrets.LAB_USERNAME }}
# KEYFACTOR_PASSWORD: ${{ secrets.LAB_PASSWORD }}
# GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
# - name: Run tests
# run: |
# unset KFUTIL_DEBUG
# go test -timeout 20m -v ./cmd -run "^Test_PAM*"
#
#
# ### PAM Tests AKV Auth Provider
# Test_AKV_PAM_KFC_11_1_2:
# runs-on: self-hosted
# needs:
# - Test_PAM_KFC_11_1_2
# env:
# SECRET_NAME: "command-config-1112-az"
# steps:
# - name: Checkout code
# uses: actions/checkout@v4
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: "1.21"
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
# - name: Install dependencies
# run: go mod download && go mod tidy
# - name: Get secret from Azure Key Vault
# run: |
# . ./examples/auth/akv/akv_auth.sh
# cat $HOME/.keyfactor/command_config.json
# - name: Install kfutil
# run: |
# make install
# - name: Run tests
# run: |
# go test -timeout 20m -v ./cmd -run "^Test_PAM*"
## KFC 12.x.x
kf_12_x_x:
runs-on: kfutil-runner-set
needs:
- build
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Run tests
run: echo "Running tests for KF 12.x.x"
### Store Type Tests
# Test_StoreTypes_KFC_12_3_0:
# runs-on: kfutil-runner-set
# needs:
# - build
# - kf_12_x_x
# environment: "KFC_12_3_0_CLEAN"
# env:
# GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
# KEYFACTOR_PASSWORD: ${{ secrets.KEYFACTOR_PASSWORD }}
# KEYFACTOR_USERNAME: ${{ secrets.KEYFACTOR_USERNAME }}
# KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
# KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
# KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
# steps:
# - name: Check out code
# uses: actions/checkout@v4
#
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: 1.23
#
# - name: Get Public IP
# run: curl -s https://api.ipify.org
#
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
#
# - name: Run tests
# run: |
# unset KFUTIL_DEBUG
# go test -timeout 20m -v ./cmd -run "^Test_StoreTypes*"
Test_StoreTypes_KFC_12_3_0_OAUTH:
runs-on: kfutil-runner-set
needs:
- build
- kf_12_x_x
environment: "KFC_12_3_0_OAUTH_CLEAN"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
KEYFACTOR_AUTH_CLIENT_ID: ${{ secrets.KEYFACTOR_AUTH_CLIENT_ID }}
KEYFACTOR_AUTH_CLIENT_SECRET: ${{ secrets.KEYFACTOR_AUTH_CLIENT_SECRET }}
KEYFACTOR_AUTH_TOKEN_URL: ${{ vars.KEYFACTOR_AUTH_TOKEN_URL }}
KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
KEYFACTOR_AUTH_HOSTNAME: ${{ vars.KEYFACTOR_AUTH_HOSTNAME }}
KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Run tests
run: |
unset KFUTIL_DEBUG
go test -timeout 20m -v ./cmd -run "^Test_StoreTypes*"
### Store Tests
# Test_Stores_KFC_12_3_0:
# runs-on: kfutil-runner-set
# needs:
# - build
# - kf_12_x_x
# - Test_StoreTypes_KFC_12_3_0
# environment: "KFC_12_3_0"
# env:
# GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
# KEYFACTOR_PASSWORD: ${{ secrets.KEYFACTOR_PASSWORD }}
# KEYFACTOR_USERNAME: ${{ secrets.KEYFACTOR_USERNAME }}
# KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
# KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
# KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
# steps:
# - name: Check out code
# uses: actions/checkout@v4
#
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: 1.23
#
# - name: Get Public IP
# run: curl -s https://api.ipify.org
#
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
#
# - name: Run tests
# run: go test -timeout 20m -v ./cmd -run "^Test_Stores_*"
Test_Stores_KFC_12_3_0_OAUTH:
runs-on: kfutil-runner-set
needs:
- build
- kf_12_x_x
# - Test_StoreTypes_KFC_12_3_0_OAUTH
environment: "KFC_12_3_0_OAUTH"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
KEYFACTOR_AUTH_CLIENT_ID: ${{ secrets.KEYFACTOR_AUTH_CLIENT_ID }}
KEYFACTOR_AUTH_CLIENT_SECRET: ${{ secrets.KEYFACTOR_AUTH_CLIENT_SECRET }}
KEYFACTOR_AUTH_TOKEN_URL: ${{ vars.KEYFACTOR_AUTH_TOKEN_URL }}
KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
KEYFACTOR_AUTH_HOSTNAME: ${{ vars.KEYFACTOR_AUTH_HOSTNAME }}
KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Run tests
run: go test -timeout 20m -v ./cmd -run "^Test_Stores_*"
### PAM Tests
# Test_PAM_KFC_12_3_0:
# runs-on: kfutil-runner-set
# needs:
# - build
# - kf_12_x_x
# - Test_StoreTypes_KFC_12_3_0
# environment: "KFC_12_3_0"
# env:
# GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
# KEYFACTOR_PASSWORD: ${{ secrets.KEYFACTOR_PASSWORD }}
# KEYFACTOR_USERNAME: ${{ secrets.KEYFACTOR_USERNAME }}
# KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
# KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
# KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
# steps:
# - name: Check out code
# uses: actions/checkout@v4
#
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: 1.23
#
# - name: Get Public IP
# run: curl -s https://api.ipify.org
#
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
#
# - name: Run tests
# run: |
# unset KFUTIL_DEBUG
# go test -timeout 20m -v ./cmd -run "^Test_PAM*"
Test_PAM_KFC_12_3_0_OAUTH:
runs-on: kfutil-runner-set
needs:
- build
- kf_12_x_x
# - Test_StoreTypes_KFC_12_3_0_OAUTH
environment: "KFC_12_3_0_OAUTH"
env:
GITHUB_TOKEN: ${{ secrets.V2BUILDTOKEN}}
KEYFACTOR_AUTH_CONFIG_B64: ${{ secrets.KEYFACTOR_AUTH_CONFIG_B64 }}
KEYFACTOR_AUTH_CLIENT_ID: ${{ secrets.KEYFACTOR_AUTH_CLIENT_ID }}
KEYFACTOR_AUTH_CLIENT_SECRET: ${{ secrets.KEYFACTOR_AUTH_CLIENT_SECRET }}
KEYFACTOR_AUTH_TOKEN_URL: ${{ vars.KEYFACTOR_AUTH_TOKEN_URL }}
KEYFACTOR_HOSTNAME: ${{ vars.KEYFACTOR_HOSTNAME }}
KEYFACTOR_AUTH_HOSTNAME: ${{ vars.KEYFACTOR_AUTH_HOSTNAME }}
KEYFACTOR_SKIP_VERIFY: ${{ vars.KEYFACTOR_SKIP_VERIFY }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Display working directory
run: |
pwd
ls -ltr
ls -ltr ./artifacts/pam
- name: Run tests
run: |
unset KFUTIL_DEBUG
go test -timeout 20m -v ./cmd -run "^Test_PAM*"
### PAM Tests AKV Auth Provider
# Test_AKV_PAM_KFC_12_3_0:
# runs-on: self-hosted
# needs:
# - Test_PAM_KFC_12_3_0
# environment: "KFC_12_3_0"
# env:
# SECRET_NAME: "command-config-1230-az"
# steps:
# - name: Check out code
# uses: actions/checkout@v4
#
# - name: Set up Go
# uses: actions/setup-go@v5
# with:
# go-version: 1.23
#
# - name: Get Public IP
# run: curl -s https://api.ipify.org
#
# - name: Set up private repo access for go get
# run: |
# git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
#
# - name: Install dependencies
# run: go mod download && go mod tidy
#
# - name: Get secret from Azure Key Vault
# run: |
# . ./examples/auth/akv/akv_auth.sh
# cat $HOME/.keyfactor/command_config.json
#
# - name: Install kfutil
# run: |
# make install
# - name: Run tests
# run: |
# go test -timeout 20m -v ./cmd -run "^Test_PAM*"
Test_AKV_PAM_KFC_12_3_0_OAUTH:
runs-on: self-hosted
needs:
- Test_PAM_KFC_12_3_0_OAUTH
environment: "KFC_12_3_0_OAUTH"
env:
SECRET_NAME: "command-config-1230-oauth-az"
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Install dependencies
run: go mod download && go mod tidy
- name: Get secret from Azure Key Vault
run: |
. ./examples/auth/akv/akv_auth.sh
cat $HOME/.keyfactor/command_config.json
- name: Install kfutil
run: |
make install
- name: Run tests
run: |
go test -timeout 20m -v ./cmd -run "^Test_PAM*"
# Package Tests
Test_Kfutil_pkg:
runs-on: kfutil-runner-set
needs:
- build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
- name: Check out code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.23
- name: Get Public IP
run: curl -s https://api.ipify.org
- name: Set up private repo access for go get
run: |
git config --global url."https://$GITHUB_TOKEN:[email protected]/".insteadOf "https://github.com/"
- name: Install dependencies
run: go mod download && go mod tidy
# Run the tests with coverage found in the pkg directory
- name: Run tests
run: go test -timeout 20m -v -cover ./pkg/...