Skip to content

docs: Update basic usage #3

docs: Update basic usage

docs: Update basic usage #3

Workflow file for this run

name: Build
on:
push:
branches:
- master
paths:
- '**.yml'
- lisp/**
- cmds/**
- src/**
- scripts/**
- test/**
- '**.asd'
pull_request:
branches:
- master
paths-ignore:
- '**.md'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
VERSION: 0.1.0
REPO_BIN: 'cl-qob/binaries'
jobs:
build-linux:
runs-on: ubuntu-latest
env:
_EXT: tar.gz
strategy:
fail-fast: false
matrix:
target:
- linux-arm64
- linux-x64
steps:
- uses: actions/checkout@v4
- name: Prepare APT
run: |
sudo apt-get update
- name: Setup SBCL
run: |
sudo apt-get install sbcl
- name: Install Quicklisp
run: |
make install-ql
- name: Building...
run: |
make build
- name: Prepare content...
run: |
mkdir dist
mv bin/qob dist
mv LICENSE dist
mv README.md dist
- name: Change permissions (Unix)
if: contains(fromJSON('["linux-arm64", "linux-x64", "macos-arm64", "macos-x64"]'), matrix.target)
run: |
chmod -R 777 ./dist
- name: Tar dist (Unix)
if: contains(fromJSON('["linux-arm64", "linux-x64", "macos-arm64", "macos-x64"]'), matrix.target)
run: |
tar czf ${{ matrix.target }}.${{ env._EXT }} -C ./dist/ .
cp ${{ matrix.target }}.${{ env._EXT }} qob_${{ env.VERSION }}_${{ matrix.target }}.${{ env._EXT }}
- name: Uploading...
if: github.ref == 'refs/heads/master'
uses: softprops/action-gh-release@v2.0.8
with:
tag_name: ${{ env.VERSION }}
token: ${{ secrets.PAT }}
prerelease: true
files: qob_${{ env.VERSION }}_${{ matrix.target }}.${{ env._EXT }}
#### Prepare to push to `binaries` repository!
- name: Move tar to HOME
run: mv ${{ matrix.target }}.${{ env._EXT }} ~/
- name: Checkout binaries repository
uses: actions/checkout@v4
with:
repository: ${{ env.REPO_BIN }}
persist-credentials: false
fetch-depth: 0
- name: Clean up previous binaries
continue-on-error: true
run: rm -rf qob/${{ matrix.target }}.${{ env._EXT }}
- name: Move binaries to repository
run: mv ~/${{ matrix.target }}.${{ env._EXT }} ./
- name: Set git config
run: |
git config user.name github-actions
git config user.email github-actions@github.com
- name: Commit
continue-on-error: true
run: |
git pull
git add .
git commit -m "Update binairs ${{ matrix.target }}.${{ env._EXT }}"
- name: Push
if: github.ref == 'refs/heads/master'
uses: jcs090218/github-push-action@master
with:
repository: ${{ env.REPO_BIN }}
github_token: ${{ secrets.PAT }}
branch: master
rebase: true
retry: 7
build-macos:
runs-on: macos-latest
env:
_EXT: tar.gz
strategy:
fail-fast: false
matrix:
target:
- macos-arm64
- macos-x64
steps:
- uses: actions/checkout@v4
- name: Install Homebrew
run: |
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- name: Setup SBCL
run: brew install sbcl
- name: Install Quicklisp
run: |
make install-ql
- name: Building...
run: |
make build
- name: Prepare content...
run: |
mkdir dist
mv bin/qob dist
mv lisp dist
mv LICENSE dist
mv README.md dist
- name: Change permissions (Unix)
if: contains(fromJSON('["linux-arm64", "linux-x64", "macos-arm64", "macos-x64"]'), matrix.target)
run: |
chmod -R 777 ./dist
- name: Tar dist (Unix)
if: contains(fromJSON('["linux-arm64", "linux-x64", "macos-arm64", "macos-x64"]'), matrix.target)
run: |
tar czf ${{ matrix.target }}.${{ env._EXT }} -C ./dist/ .
cp ${{ matrix.target }}.${{ env._EXT }} qob_${{ env.VERSION }}_${{ matrix.target }}.${{ env._EXT }}
- name: Uploading...
if: github.ref == 'refs/heads/master'
uses: softprops/action-gh-release@v2.0.8
with:
tag_name: ${{ env.VERSION }}
token: ${{ secrets.PAT }}
prerelease: true
files: qob_${{ env.VERSION }}_${{ matrix.target }}.${{ env._EXT }}
#### Prepare to push to `binaries` repository!
- name: Move tar to HOME
run: mv ${{ matrix.target }}.${{ env._EXT }} ~/
- name: Checkout binaries repository
uses: actions/checkout@v4
with:
repository: ${{ env.REPO_BIN }}
persist-credentials: false
fetch-depth: 0
- name: Clean up previous binaries
continue-on-error: true
run: rm -rf qob/${{ matrix.target }}.${{ env._EXT }}
- name: Move binaries to repository
run: mv ~/${{ matrix.target }}.${{ env._EXT }} ./
- name: Set git config
run: |
git config user.name github-actions
git config user.email github-actions@github.com
- name: Commit
continue-on-error: true
run: |
git pull
git add .
git commit -m "Update binairs ${{ matrix.target }}.${{ env._EXT }}"
- name: Push
if: github.ref == 'refs/heads/master'
uses: jcs090218/github-push-action@master
with:
repository: ${{ env.REPO_BIN }}
github_token: ${{ secrets.PAT }}
branch: master
rebase: true
retry: 7
build-windows:
runs-on: windows-latest
env:
_EXT: zip
strategy:
fail-fast: false
matrix:
target:
- win-arm64
- win-x64
steps:
- uses: actions/checkout@v4
- name: Setup SBCL
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install sbcl
- name: Install Zip
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install zip
- name: Install Quicklisp
run: |
make install-ql
- name: Building...
run: |
make build
- name: Prepare content...
run: |
mkdir dist
mv bin/qob.exe dist
mv lisp dist
mv LICENSE dist
mv README.md dist
- name: Zipping dist (Windows)
working-directory: dist
run: |
zip -r ${{ matrix.target }}.${{ env._EXT }} .
mv ${{ matrix.target }}.${{ env._EXT }} ../
cd ..
cp ${{ matrix.target }}.${{ env._EXT }} qob_${{ env.VERSION }}_${{ matrix.target }}.${{ env._EXT }}
- name: Uploading...
if: github.ref == 'refs/heads/master'
uses: softprops/action-gh-release@v2.0.8
with:
tag_name: ${{ env.VERSION }}
token: ${{ secrets.PAT }}
prerelease: true
files: qob_${{ env.VERSION }}_${{ matrix.target }}.${{ env._EXT }}
#### Prepare to push to `binaries` repository!
- name: Move tar to HOME
run: mv ${{ matrix.target }}.${{ env._EXT }} ~/
- name: Checkout binaries repository
uses: actions/checkout@v4
with:
repository: ${{ env.REPO_BIN }}
persist-credentials: false
fetch-depth: 0
- name: Clean up previous binaries
continue-on-error: true
run: rm -r -force ${{ matrix.target }}.${{ env._EXT }}
- name: Move binaries to repository
run: mv ~/${{ matrix.target }}.${{ env._EXT }} ./
- name: Set git config
run: |
git config user.name github-actions
git config user.email github-actions@github.com
- name: Commit
continue-on-error: true
run: |
git pull
git add .
git commit -m "Update binaries ${{ matrix.target }}.${{ env._EXT }}"
- name: Push
if: github.ref == 'refs/heads/master'
uses: jcs090218/github-push-action@master
with:
repository: ${{ env.REPO_BIN }}
github_token: ${{ secrets.PAT }}
branch: master
rebase: true
retry: 7