Skip to content

github workflow

github workflow #7

Workflow file for this run

name: Golang CI
on:
push:
branches:
- '*'
tags:
- 'v*.*.*'
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.21.4
- name: Lint
run: make lint
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.21.4
- name: Build
run: make build
test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.21.4
- name: Test
run: make test
release:
runs-on: ubuntu-latest
needs: build
steps:
- name: Create Release
id: create_release
uses: softprops/action-gh-release@v1
with:
files: |
./dist/haltonika
token: ${{ secrets.GITHUB_TOKEN }}
title: Release ${{ github.run_number }}
body: |
Release notes go here.
if: startsWith(github.ref, 'refs/tags/v')
- name: Upload Release Asset
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./dist/haltonika
asset_name: haltonika-linux64
asset_content_type: application/octet-stream
token: ${{ secrets.GITHUB_TOKEN }}