update #16
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lint and Testing | |
on: | |
push: | |
pull_request: | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Setup go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: "^1" | |
- name: Checkout repository | |
uses: actions/checkout@v3 | |
- name: Setup golangci-lint | |
uses: golangci/golangci-lint-action@v3 | |
with: | |
version: latest | |
args: --verbose --timeout 20m | |
- uses: hadolint/hadolint-action@v3.1.0 | |
name: hadolint for Dockerfile | |
with: | |
dockerfile: docker/Dockerfile | |
testing: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Create k8s Kind Cluster | |
uses: helm/kind-action@v1.8.0 | |
- name: check kubectl version | |
run: | | |
kubectl version -o yaml --client | |
- name: get k8s info | |
id: k8s_info | |
run: | | |
kubectl create namespace test-namespace | |
kubectl apply -f testdata/serviceAccount.yaml | |
echo K8S_SERVER=$(kubectl config view --raw --minify --flatten -o jsonpath='{.clusters[].cluster.server}') >> $GITHUB_OUTPUT | |
echo K8S_CA_CERT=$(kubectl config view --raw --minify --flatten -o jsonpath='{.clusters[].cluster.certificate-authority-data}') >> $GITHUB_OUTPUT | |
echo K8S_TOKEN=$(kubectl get secret deploy -n test-namespace -o jsonpath='{.data.token}' | base64 -d) >> $GITHUB_OUTPUT | |
- name: Setup go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: "^1.21" | |
- name: testing | |
env: | |
K8S_SERVER: ${{ steps.k8s_info.outputs.K8S_SERVER }} | |
K8S_CA_CERT: ${{ steps.k8s_info.outputs.K8S_CA_CERT }} | |
K8S_TOKEN: ${{ steps.k8s_info.outputs.K8S_TOKEN }} | |
run: | | |
make test | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v3 |