Publish Release #45
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: Publish Release | |
on: | |
create: | |
tags: | |
- v* | |
env: | |
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
IMAGE: stono/kconmon | |
jobs: | |
config: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set env | |
run: echo ::set-env name=VERSION::${GITHUB_REF#refs/tags/v} | |
- name: Echo env | |
run: | | |
if [ -z "$VERSION" ]; then | |
echo "ERROR: Version was not set" | |
exit 1 | |
fi | |
echo Target version: $VERSION | |
docker: | |
needs: config | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Set env | |
run: echo ::set-env name=VERSION::${GITHUB_REF#refs/tags/v} | |
- name: Pull image | |
run: VERSION=latest docker-compose pull controller | |
- name: Build image | |
run: docker-compose build controller | |
- name: Log into registry | |
run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u stono --password-stdin | |
- name: Push 0.0.0 image | |
run: docker-compose push controller | |
helm: | |
needs: config | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Set env | |
run: echo ::set-env name=VERSION::${GITHUB_REF#refs/tags/v} | |
- name: Package Helm | |
run: | | |
cd ./helmfile/charts/kconmon | |
helm package --version=$VERSION . | |
mv kconmon*.tgz kconmon-chart.tgz | |
- name: Upload the helm chart | |
uses: actions/upload-artifact@v1 | |
with: | |
name: helm-chart | |
path: ./helmfile/charts/kconmon/kconmon-chart.tgz | |
release: | |
needs: | |
- docker | |
- helm | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set output | |
id: set_output | |
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/v} | |
- name: Create Release | |
id: create_release | |
uses: actions/create-release@v1 | |
with: | |
tag_name: ${{ steps.set_output.outputs.VERSION }} | |
release_name: ${{ steps.set_output.outputs.VERSION }} | |
draft: false | |
prerelease: false | |
- name: Download helm chart | |
uses: actions/download-artifact@v1 | |
with: | |
name: helm-chart | |
- name: Upload Release Asset | |
id: upload-release-asset | |
uses: actions/upload-release-asset@v1 | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ./helm-chart/kconmon-chart.tgz | |
asset_name: helm-chart.tgz | |
asset_content_type: application/gzip |