Skip to content

Losing my mind slightly #21

Losing my mind slightly

Losing my mind slightly #21

Workflow file for this run

name: Build Ubuntu Controller
on:
release:
types: [created]
permissions:
contents: write
jobs:
build-ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
- name: Build
working-directory: ./alpha_snake
run: |
uv run cargo build --release
- name: Create build directory
working-directory: ./alpha_snake
run: |
mkdir -p ./build/ubuntu_build
cp ./target/release/libalpha_snake.so ./build/ubuntu_build/alpha_snake.so
cp ./python/player/*.py ./build/ubuntu_build/
- name: Get Git commit hash
id: git_hash
run: echo "hash=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- name: Get release version
id: version
run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
- name: Create zip archive
working-directory: ./alpha_snake
run: |
cd build
zip -r alphasnake_${{ steps.version.outputs.version }}.zip ubuntu_build/
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: alphasnake_${{ steps.version.outputs.version }}.zip
path: ./alpha_snake/build/alphasnake_${{ steps.version.outputs.version }}.zip
retention-days: 10
- name: Attach to release
uses: softprops/action-gh-release@v1
with:
files: ./alpha_snake/build/alphasnake_${{ steps.version.outputs.version }}.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}