Esta página explica a definição de tipo de build da SLSA V1.0 para o Google Builder.
Parâmetros externos
A tabela a seguir mostra os tipos de parâmetros externos que podem ser usados em uma definição de Workflow PipelineRun e Workflow TaskRun. A menos que indicado de outra forma, todos os parâmetros são obrigatórios.
| Campo | Tipo | Detalhes |
|---|---|---|
|
runSpec |
objeto |
A especificação PipelineRun completa. |
|
buildConfigSource |
objeto |
A especificação de buildConfigSource completa. |
Especificação do PipelineRun
| Campo | Tipo | Detalhes |
|---|---|---|
|
pipelineRef/taskRef |
objeto |
De onde a pipelineSpec/taskSpec foi lida. Esse campo só será preenchido se a pipelineSpec tiver sido referenciada de uma fonte remota. Padrão: |
|
pipelineSpec/taskSpec |
objeto |
Especificação de pipeline/tarefa inline, não extraída de uma origem remota usando pipelineRef/taskRef. [Opcional]. |
|
params |
[object] |
Mapeamento de nomes e valores de parâmetros fornecidos ao pipeline. Os valores podem ser do tipo string, matriz ou objeto. Padrão: Observação: no caso de um fluxo de trabalho acionado, esse campo também vai conter alguns parâmetros fornecidos pelo sistema de acionamento do Cloud Build, além dos parâmetros configurados pelo usuário na definição do fluxo de trabalho. |
|
espaços de trabalho |
[object] |
Os espaços de trabalho contêm um conjunto de vinculações que precisam corresponder aos nomes declarados no pipeline. Padrão: |
|
timeouts/timeout |
objeto |
Tempo após o qual o pipeline expira. É possível definir tempos limite para pipeline, tarefas e finalmente. Eles são relacionados pela fórmula Timeouts.pipeline Timeouts.tasks + Timeouts.finally. |
Especificação de buildConfigSource
| Campo | Tipo | Detalhes |
|---|---|---|
|
ref |
objeto |
Será um dos seguintes valores:
|
|
repositório |
string |
O URI do repositório do Git ou do repositório de imagens |
|
caminho |
string |
O caminho no repositório do Git ou o nome do recurso no pacote de imagem. |
Parâmetros internos
Os parâmetros internos são fornecidos pelo builder para o processo de build.
| Campo | Tipo | Detalhes |
|---|---|---|
| tekton-pipelines-feature-flags | objeto | Flags de recursos de configuração do Tekton usadas para o build. Elas são
configuradas pelo builder e são úteis para a reprodutibilidade. |
| systemParameters | objeto | Uma lista de pares de nome e valor para substituições de sistema padrão fornecidas pelo GCB. |
Dependências resolvidas
O campo resolvedDependencies precisa conter entradas
que identifiquem a referência resolvida correspondente a
externalParameters.configRef. Essa é a referência ao pipeline, no caso de uma especificação de PipelineRun, ou à tarefa, no caso de uma especificação de TaskRun.
As dependências resolvidas podem conter outros artefatos que são entradas para
o build, usando o campo name para indicar o tipo do artefato:
- Para pipelines remotos, use
name: pipeline. - Para tarefas remotas, use
name: pipelineTask. - Para uma referência resolvida a uma etapa ou imagem de contêiner de arquivo secundário, o campo
nameé opcional. No caso do campodigest, mesmo que a imagem seja referenciada por tag, o resumo da imagem precisa ser incluído. - Para outros artefatos de entrada usados para o build, como o código-fonte, use
name: inputs/result. A sugestão de tipo é usada para os resultados da tarefa.
O exemplo a seguir contém informações sobre todos os tipos de dependências resolvidas:
"resolvedDependencies": [
{
"name": "pipeline",
"uri": "git+https://github.com/octocat/hello-world.git",
"digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"},
},
{
"name": "pipelineTask",
"uri": "git+https://github.com/octocat/hello-world.git",
"digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"},
},
{
"uri": "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/git-init",
"digest": {
"sha256": "28ff94e63e4058afc3f15b4c11c08cf3b54fa91faa646a4bbac90380cd7158df"},
},
{
"name": "inputs/result",
"uri": "git+https://github.com/octocat/hello-world.git",
"digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"},
}
]
RunDetails
| Campo | Detalhes |
|---|---|
| builder | Contém um subcampo id que identifica a plataforma de build que
executou a operação e preencheu essa origem. Ele também contém
o nível SLSA. O valor esperado de id é um dos seguintes:
|
| metadados | Metadados adicionais sobre essa execução específica do build.
O invocationId mostra o URL do build, como
https://cloudbuild.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/pipelineRuns/BUILD_ID.
Os campos startedOn e finishedOn
contêm os carimbos de data/hora de quando o build foi iniciado e concluído.
|
| subprodutos | Um objeto results.Contém os TaskRunResults produzidos pela PipelineRun. O conteúdo é codificado em Base64. |