Skip to content

Always use the .Chart.appVersion by default. #355

Always use the .Chart.appVersion by default.

Always use the .Chart.appVersion by default. #355

Workflow file for this run

name: Continuous Integration
on: [ push, pull_request ]
jobs:
exeuction:
name: Continuous Integration
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Helm
uses: azure/setup-helm@v3
with:
version: v3.13.2
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.21.x
- name: Set up Docker
uses: docker/setup-buildx-action@v3
- name: Docker login
env:
REGISTRY_USER: ${{ github.actor }}
REGISTRY_PASSWORD: ${{ github.token }}
run: |
echo "$REGISTRY_PASSWORD" | docker login -u "$REGISTRY_USER" --password-stdin ghcr.io
- name: Cache
uses: actions/cache@v3
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: "Download dependencies: Binary"
run: |
go mod download
- name: "Test: Binary/Image"
run: |
go run ./build --test
- name: "Build: Binary/Image"
run: |
go run ./build --build
- name: "Build: Helm Chart"
run: |
mkdir -p var
[[ "${GITHUB_REF}" =~ ^refs\/tags\/v.+$ ]] && version="${GITHUB_REF/refs\/tags\/v/}" || version=0.1.0
helm package ./charts/lingress --app-version=v${version} --version=${version} --destination var
mv var/lingress-*.tgz var/lingress-helm-chart.tgz
sha256sum -b var/lingress-helm-chart.tgz | cut -d' ' -f1 > var/lingress-helm-chart.tgz.sha256
tar -xzf var/lingress-helm-chart.tgz lingress/Chart.yaml -O > var/lingress-helm-chart.yaml
- name: "Deploy: Binary/Image"
if: startsWith(github.ref, 'refs/tags/')
run: |
go run ./build --deploy
- name: "Deploy: Assets"
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
draft: true
files: |
var/lingress-helm-chart.tgz
var/lingress-helm-chart.tgz.sha256
var/lingress-helm-chart.yaml
dist/*
generate_release_notes: true
fail_on_unmatched_files: true
- name: "Upload: Artifacts"
uses: actions/upload-artifact@v4
with:
name: assets
path: |
var
!var/profile.cov
dist
retention-days: 5