Skip to content

Release argo-cd-v2.8.0-rc1-kbst.0 #1901

Release argo-cd-v2.8.0-rc1-kbst.0

Release argo-cd-v2.8.0-rc1-kbst.0 #1901

Workflow file for this run

name: Build
on:
push:
branches:
- "*" # run for branches
tags:
- "*" # run for tags
env:
TERRAFORM_VERSION: "1.3.4"
jobs:
#
#
# Build artifacts
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3.0.0
# Run builder
- name: Run builder
uses: ./.github/actions/builder
# Upload artifacts
- name: 'Upload artifacts'
uses: actions/upload-artifact@v3.0.0
with:
name: _dist
path: _dist/*.zip
#
#
# Test `kustomize build`
test-terraform:
runs-on: ubuntu-latest
steps:
# Checkout
- uses: actions/checkout@v3.0.0
# Setup Terraform
- name: Setup Terraform
uses: hashicorp/setup-terraform@v1.3.2
with:
terraform_wrapper: false
terraform_version: "${{ env.TERRAFORM_VERSION }}"
# Run tests
- name: Run tests
run: make test-terraform
#
#
# Test `kustomize build`
test-kustomize:
runs-on: ubuntu-latest
strategy:
matrix:
kustomize-version: ["4.5.2"]
needs: build
steps:
# Checkout
- uses: actions/checkout@v3.0.0
# Download build artifacts
- name: 'Download build-artifacts'
uses: actions/download-artifact@v3.0.0
with:
name: _dist
path: _dist
# Build image
- name: Build image
env:
DOCKER_BUILDKIT: 1
run: docker build --build-arg KUSTOMIZE_VERSION=${{ matrix.kustomize-version }} -t test-kustomize:${{ matrix.kustomize-version }} test/kustomize/
# Run tests
- name: Run tests
run: docker run -v `pwd`/_dist:/_dist test-kustomize:${{ matrix.kustomize-version }}
#
#
# Test deploy to k3d
test-k3d:
runs-on: ubuntu-latest
needs: build
steps:
# Checkout
- uses: actions/checkout@v3.0.0
# Setup k3d
- name: Setup k3d
uses: rinx/setup-k3d@v0.0.3
with:
skipClusterCreation: true
- name: Create k3d cluster
run: make k3d
# Download build artifacts
- name: 'Download build-artifacts'
uses: actions/download-artifact@v2
with:
name: _dist
path: _dist
# Build test image
- name: Build test image
run: docker build -t test-k3d test/k3d/
# Deploy to cluster
- name: Run test container
run: docker run --network host --rm -v `pwd`/_dist:/_dist -v $HOME/.kube/config:/opt/test/.kubeconfig test-k3d
#
#
#
publish:
runs-on: ubuntu-latest
needs: [test-kustomize, test-k3d, test-terraform]
steps:
# Download build artifacts
- name: 'Download build-artifacts'
uses: actions/download-artifact@v3.0.0
with:
name: _dist
path: _dist
# Upload archive
- uses: google-github-actions/setup-gcloud@v0.5.1
with:
service_account_key: ${{ secrets.GCLOUD_AUTH }}
- run: gsutil -m cp _dist/*.zip gs://dev.catalog.kubestack.com
#
#
# Promote tagged releases
# from `dev.catalog.kubestack.com` to `catalog.kubestack.com`
promote:
runs-on: ubuntu-latest
needs: publish
# promote only for tags
if: startsWith(github.ref, 'refs/tags/')
steps:
# Setup gcloud CLI
- uses: google-github-actions/setup-gcloud@v0.5.1
with:
service_account_key: ${{ secrets.GCLOUD_AUTH }}
# Promote archive
- run: |
export NAME=$(echo $GITHUB_REF | sed -e "s#^refs/tags/##")
set +e
while true
do
gsutil cp gs://dev.catalog.kubestack.com/${NAME}.zip gs://catalog.kubestack.com/${NAME}.zip &&\
gsutil cp gs://dev.catalog.kubestack.com/module-${NAME}.zip gs://catalog.kubestack.com/module-${NAME}.zip &&\
break
sleep 15
done
# Check promotion
- name: Check promotion
run: |
export NAME=$(echo $GITHUB_REF | sed -e "s#^refs/tags/##")
wget https://storage.googleapis.com/catalog.kubestack.com/${NAME}.zip
wget https://storage.googleapis.com/catalog.kubestack.com/module-${NAME}.zip