name: "Build Release Binary" run-name: "Build Release: ${{ inputs.tag_name }}" on: # Allows triggering from another workflow workflow_call: inputs: tag_name: description: 'Git tag to build (e.g., v1.0.0)' required: true type: string workflow_dispatch: # Enables manual triggering inputs: tag_name: description: 'Git tag to build (e.g., v1.0.0)' required: true type: string jobs: build-release: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 env: GIT_DEFAULT_HASH: sha256 with: # If triggered manually, use the input tag. # If triggered by push, GITHUB_REF_NAME is the tag. ref: ${{ inputs.tag_name || gitea.ref_name }} - name: Setup Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 - name: Build Release Binary run: cargo build --release - name: Upload Artifact uses: actions/upload-artifact@v3 with: name: nyanit-${{ inputs.tag_name || gitea.ref_name }} path: target/release/nyanit