name: CI
on:
push:
branches: [main]
tags: ['v*']
pull_request:
branches: [main]
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Build
run: cargo build --release
- name: Upload nightly binary
uses: actions/upload-artifact@v4
with:
name: sshkeyman-nightly-x86_64-linux
path: target/release/sshkeyman
release:
needs: build
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: Build release
run: cargo build --release
- name: Create tarball
run: |
cp target/release/sshkeyman .
tar czf sshkeyman-x86_64-linux.tar.gz sshkeyman static locales
- name: Upload to Release
uses: softprops/action-gh-release@v2
with:
files: |
sshkeyman-x86_64-linux.tar.gz