feat(action): attestation/create - Create attestation with PR map update
- Dominant language
- Shell
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Parent Epic
Part of #22 (Atomic Release Pipeline Actions)
## Priority
P0 - Core attestation functionality needed by all workflows
## Description
Create a composite action that wraps `actions/attest-build-provenance` with a consistent interface matching our other attestation actions.
This provides a unified API for generating attestations and automatically updates the PR attestation map.
## Inputs
| Input | Required | Default | Description |
|-------|----------|---------|-------------|
| `subject-name` | Yes | - | Name for the attestation subject |
| `subject-digest` | Yes | - | SHA256 digest of the subject |
| `pr-number` | No | - | PR number to update attestation map |
| `check-name` | No | - | Check name for attestation map entry |
| `push-to-registry` | No | `false` | Push attestation to GHCR |
| `token` | No | `github.token` | GitHub token |
## Outputs
| Output | Description |
|--------|-------------|
| `attestation-id` | The generated attestation ID |
| `bundle-path` | Path to the attestation bundle |
## Usage Example
```yaml
- uses: arustydev/gha/actions/attestation/create@v1
id: attest
with:
subject-name: "my-chart-v1.2.3"
subject-digest: ${{ steps.digest.outputs.digest }}
pr-number: ${{ github.event.pull_request.number }}
check-name: "lint-test"
```
## Implementation Notes
- Wraps `actions/attest-build-provenance@v2`
- Optionally calls `attestation/update-pr-map` if pr-number provided
- Provides consistent interface with other attestation actions
## Source Reference
Used throughout helm-charts workflows:
- `validate-contribution-pr.yaml`
- `validate-atomic-chart-pr.yaml`
- `release-atomic-chart.yaml`
Contributor guide
Assessment
This issue has not been assessed yet.