Skip to content

Improve AI prompt

Improve AI prompt #206

Workflow file for this run

name: CD
on:
push:
branches:
- main
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: false
permissions:
contents: write
actions: write
packages: write
env:
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
GH_TOKEN: ${{ secrets.GH_TOKEN }}
ACTIONS_RUNTIME_TOKEN: dummy
CARGO_TERM_COLOR: always
jobs:
artifact:
runs-on: ${{ matrix.os }}
continue-on-error: false
strategy:
matrix:
include:
- os: macos-latest
target: x86_64-apple-darwin
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
- os: macos-latest
target: aarch64-apple-darwin
- os: ubuntu-latest
target: x86_64-unknown-linux-musl
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
target: ${{ matrix.target }}
override: true
profile: minimal
- name: Add x86_64-unknown-linux-musl target
if: matrix.target == 'x86_64-unknown-linux-musl'
run: |
rustup target add x86_64-unknown-linux-musl
sudo apt-get update && sudo apt-get install -y musl-tools
- name: Install Dependencies for musl Target
if: matrix.target == 'x86_64-unknown-linux-musl'
run: |
sudo apt-get update
sudo apt-get install -y pkg-config libssl-dev
- name: Build for target
run: |
cargo build \
-Z unstable-options \
--profile dev \
--artifact-dir bin \
--target ${{ matrix.target }}
- name: Upload and compress artifacts
uses: actions/upload-artifact@v4
with:
name: git-ai-${{ matrix.target }}
if-no-files-found: error
path: bin/git-*
release:
runs-on: ubuntu-latest
needs: artifact
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
profile: minimal
- name: Configure git user name
run: git config user.name ${{ github.actor }}
- name: Configure git email
run: git config user.email ${{ github.actor }}@users.noreply.github.com
- name: Install cargo-bump
run: cargo install cargo-bump
- name: Bump version
run: cargo bump patch --git-tag
- name: Commit Version Bump
run: git commit -a --amend --no-edit
- name: New version
id: app
run: echo "version=$(git describe --tags --abbrev=0 HEAD)" >> $GITHUB_OUTPUT
- name: Delete old tag
run: git tag -d ${{ steps.app.outputs.version }}
- name: Create new tag
run: git tag v${{ steps.app.outputs.version }}
- name: Publish to crates.io
run: cargo publish --allow-dirty
- name: Push to origin
run: git push origin HEAD --tags
- name: Download all artifacts
run: gh run download ${{ github.run_id }}
- name: Zip each downloaded directory
run: |
for dir in $(ls -d git-ai-*); do
tar -czf ${dir}.tar.gz ${dir}
done
- name: Uploads compressed artifacts
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ steps.app.outputs.version }}
fail_on_unmatched_files: true
files: git-ai-*.tar.gz