| 1 | name: Reusable build |
| 2 | on: |
| 3 | workflow_call: |
| 4 | inputs: |
| 5 | config-path: |
| 6 | description: Where the configuration is |
| 7 | required: true |
| 8 | type: string |
| 9 | debug: |
| 10 | type: boolean |
| 11 | default: false |
| 12 | retries: |
| 13 | type: number |
| 14 | default: 3 |
| 15 | secrets: |
| 16 | token: |
| 17 | description: A token to publish with |
| 18 | required: true |
| 19 | optional-secret: |
| 20 | outputs: |
| 21 | artifact: |
| 22 | description: The artifact that was built |
| 23 | value: ${{ jobs.build.outputs.artifact }} |
| 24 | jobs: |
| 25 | build: |
| 26 | runs-on: ubuntu-latest |
| 27 | outputs: |
| 28 | artifact: ${{ steps.pack.outputs.name }} |
| 29 | steps: |
| 30 | - uses: actions/checkout@v4 |
| 31 | - id: pack |
| 32 | run: echo "name=build-${{ github.sha }}" >> "$GITHUB_OUTPUT" |
| 33 | env: |
| 34 | CONFIG: ${{ inputs.config-path }} |
| 35 | TOKEN: ${{ secrets.token }} |