chore(deps): update golang docker tag to v1.23 (backplane-2.5) #265
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: Go | |
on: | |
workflow_dispatch: {} | |
push: | |
branches: | |
- main | |
- release-* | |
- backplane-* | |
pull_request: | |
branches: | |
- main | |
- release-* | |
- backplane-* | |
env: | |
# Common versions | |
GO_VERSION: '1.20' | |
GO_REQUIRED_MIN_VERSION: '' | |
jobs: | |
build: | |
name: build | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout code | |
uses: actions/checkout@v2 | |
- name: install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: build | |
run: make build | |
unit: | |
name: unit | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout code | |
uses: actions/checkout@v2 | |
- name: install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: unit | |
run: make test | |
- name: report coverage | |
uses: codecov/codecov-action@v3 | |
with: | |
files: ./cover.out | |
flags: unit | |
name: unit | |
verbose: true | |
fail_ci_if_error: false | |
integration: | |
name: integration | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout code | |
uses: actions/checkout@v2 | |
- name: install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: integration | |
run: make test-integration | |
e2e: | |
name: e2e | |
runs-on: ubuntu-latest | |
steps: | |
- name: add permisson to docker.sock | |
run: sudo chown runner:docker /var/run/docker.sock | |
if: ${{ env.ACT }} # this step only runs locally when using the https://github.com/nektos/act to debug the e2e | |
- name: checkout code | |
uses: actions/checkout@v2 | |
- name: install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Install clusteradm | |
run: curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/v0.8.0/install.sh | bash | |
- name: Create k8s Kind Cluster | |
uses: helm/[email protected] | |
- name: Prepare OCM testing environment | |
run: | | |
clusteradm init --bundle-version='v0.13.0' --output-join-command-file join.sh --wait | |
sh -c "$(cat join.sh) loopback --force-internal-endpoint-lookup --bundle-version='v0.13.0'" | |
clusteradm accept --clusters loopback --wait 30 | |
kubectl wait --for=condition=ManagedClusterConditionAvailable managedcluster/loopback | |
- name: Build image | |
run: | | |
make images | |
kind load docker-image quay.io/open-cluster-management/managed-serviceaccount:latest --name chart-testing | |
- name: Install latest managed-serviceaccount | |
run: | | |
helm install \ | |
-n open-cluster-management-addon --create-namespace \ | |
managed-serviceaccount charts/managed-serviceaccount/ \ | |
--set tag=latest \ | |
--set featureGates.ephemeralIdentity=true \ | |
--set enableAddOnDeploymentConfig=true | |
- name: Run e2e test | |
run: make test-e2e GENKGO_ARGS='--ginkgo.label-filter='\''!template-install'\''' | |
e2e-addon-template: | |
name: e2e-addon-template | |
runs-on: ubuntu-latest | |
steps: | |
- name: add permisson to docker.sock | |
run: sudo chown runner:docker /var/run/docker.sock | |
if: ${{ env.ACT }} # this step only runs locally when using the https://github.com/nektos/act to debug the e2e | |
- name: checkout code | |
uses: actions/checkout@v2 | |
- name: install Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Install clusteradm | |
run: curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/v0.8.0/install.sh | bash | |
- name: Create k8s Kind Cluster | |
uses: helm/[email protected] | |
- name: Prepare OCM testing environment | |
run: | | |
clusteradm init --bundle-version='v0.13.0' --output-join-command-file join.sh --wait | |
sh -c "$(cat join.sh) loopback --force-internal-endpoint-lookup --bundle-version='v0.13.0'" | |
clusteradm accept --clusters loopback --wait 30 | |
kubectl wait --for=condition=ManagedClusterConditionAvailable managedcluster/loopback | |
- name: Build image | |
run: | | |
make images | |
kind load docker-image quay.io/open-cluster-management/managed-serviceaccount:latest --name chart-testing | |
- name: Install latest managed-serviceaccount | |
run: | | |
helm install \ | |
-n open-cluster-management-addon --create-namespace \ | |
managed-serviceaccount charts/managed-serviceaccount/ \ | |
--set tag=latest \ | |
--set featureGates.ephemeralIdentity=true \ | |
--set enableAddOnDeploymentConfig=true \ | |
--set hubDeployMode=AddOnTemplate \ | |
--set targetCluster=loopback | |
- name: Run e2e test | |
run: | | |
make test-e2e GENKGO_ARGS='--ginkgo.label-filter='\''!ephemeral&&!install'\''' | |
# run ephemeral tests after non-ephemeral and non-install tests to wait for the addon agent to be steady | |
make test-e2e GENKGO_ARGS='--ginkgo.label-filter=ephemeral' | |
# run install tests after non-ephemeral tests since it may cause the addon agent to be restarted | |
make test-e2e GENKGO_ARGS='--ginkgo.label-filter=install' |