IBM Cloud Docs
Scripts Comuns

Scripts Comuns

Alguns estágios executam scripts padrão se eles não forem especificados no arquivo YAML config do DevSecOps.

Esses scripts fazem parte de uma biblioteca commons, que pode ser usada como fonte para copiar código a partir e customizá-los para casos de borda específicos para adotantes. Esta biblioteca também serve como exemplo de alguns mecânicos de pipeline.

Todo script incluído na biblioteca commons executa as seguintes ações:

  • Iterados sobre ativos (repos ou artefatos).
  • Executa o job scan / check.
  • Coleta provas usando o script collect-evidence.

Para ver qual script está rodando, examine os logs de um estágio que está executando um script padrão. Por exemplo, os scripts padrão que estão em execução em scan-artifact:

=== Executing custom script for stage 'scan-artifact' ===

The custom script can be viewed using the following link: '<SCRIPT URL>'

You can customize this stage in your pipeline config. For more information, see [Custom scripts](/docs/devsecops?topic=devsecops-custom-scripts).

The script(s) used in this stage can be found at the following location(s):

- path: scan-artifact
  repo: <REPO URL>
  sha: b0fff29d715e0f9a33b3c84e649777cfb9d40738
- path: icr-va
  repo: <REPO URL>
  sha: de693814ba2bd992941b432fc71111efb54e2b27

Using the following defaults for stage "scan-artifact":

scan-artifact:
  image: icr.io/continuous-delivery/pipeline/pipeline-base-image:2.12@sha256:ff4053b0bca784d6d105fee1d008cfb20db206011453071e86b69ca3fde706a4
  dind: false
  abort_on_failure: false
  image_pull_policy: IfNotPresent
  script: |
    #!/bin/sh

    "/opt/commons/scan-artifact/scan.sh"

Esta mensagem tem três partes:

  1. A primeira linha mostra a URL de script exata atualmente em execução, apontando para ele em um nível de commit.

  2. A segunda parte é uma lista de caminhos, repos e hashes de confirmação que são importados para a imagem de base do pipeline durante a construção. Eles não são retirados desses repos em tempo de execução. Essas informações melhoram a rastreabilidade pública do que exatamente está incluído no pipeline.

  3. A terceira parte é a configuração padrão que é usada como o YAML config. Você pode pegar este trecho YAML e incluê-lo em seu arquivo DevSecOps config YAML. Esta ação substitui a config padrão com a sua mas ainda usa o script padrão a partir da imagem base. Este método é útil se você quiser implementar algumas outras verificações antes das inadimplentes.

Essas informações são exibidas para ajudar os adotantes a identificar os scripts que estão em execução em estágios por padrão. Em seguida, eles podem inspecionar os scripts, entender o que eles fazem, copiar o script em sua coleção de scripts e atualizá-los para encaixar seus casos de uso.