Add attestation file as a release artifact

Aberta
#1,653 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
48/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
github-actions, go
Domínio
release, security

Direção de pesquisa

The issue does not name a workflow or release configuration file. Start by locating the repository's release workflow and how it currently produces and attaches release artifacts; the body’s example shows the intended artifact name and verification flow. Done when releases include a downloadable attestation bundle usable with the shown gh attestation verify command without a GitHub login.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

enhancement needs triage

Please add attestation file as a release artifact to enable verification without a requirement for GH login. Backround discussion @ https://github.com/cli/cli/issues/11803

This attestation file artifact is not to be confused with the Release attestation (json) file that GH automagically adds to your releases. The latter is not usable for attestation verification, or at least not without a login.

Example of how it works once implemented:

$ wget https://github.com/pypdfium2-team/pypdfium2/releases/download/5.9.0/pypdfium2-5.9.0.tar.gz
$ wget https://github.com/pypdfium2-team/pypdfium2/releases/download/5.9.0/pypdfium2-attestation.json
$ gh attestation trusted-root > trusted_root.jsonl   # This `gh attestation` flag does not require a GH login
$ gh attestation verify pypdfium2-5.9.0.tar.gz -R pypdfium2-team/pypdfium2 --bundle pypdfium2-attestation.json --custom-trusted-root trusted_root.jsonl
Loaded digest sha256:db1274bd27844db6fda17ef1dbcd0026c47d357437058d838e98060c0da9e92e for file://pypdfium2-5.9.0.tar.gz
Loaded 1 attestations from pypdfium2-attestation.json

The following policy criteria will be enforced:
- Predicate type must match:................ https://slsa.dev/provenance/v1
- Source Repository Owner URI must match:... https://github.com/pypdfium2-team
- Source Repository URI must match:......... https://github.com/pypdfium2-team/pypdfium2
- Subject Alternative Name must match regex: (?i)^https://github.com/pypdfium2-team/pypdfium2/
- OIDC Issuer must match:................... https://token.actions.githubusercontent.com

✓ Verification succeeded!

The following 1 attestation matched the policy criteria

- Attestation #1
  - Build repo:..... pypdfium2-team/pypdfium2
  - Build workflow:. .github/workflows/main.yaml@refs/heads/main
  - Signer repo:.... pypdfium2-team/pypdfium2
  - Signer workflow: .github/workflows/main.yaml@refs/heads/main
Linguagem predominante
Go
Estrelas
4.3k
Forks
320
Merge médio
2d 3h
PRs com merge (30d)
11

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de smallstep/cli

Todas as issues de smallstep/cli

Issues semelhantes

Mais issues de Go

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.