Uma ação que baixa e extrai artefatos carregados associados a um determinado fluxo de trabalho e confirmação ou outros critérios.
Suponhamos que você tenha um fluxo de trabalho com um trabalho que no final carrega um artefato usando actions/upload-artifact e você deseja fazer download desse artefato em outro fluxo de trabalho que é executado após o primeiro. actions/download-artifact não permitem isso. Por isso decidi criar esta ação. Conhecendo apenas o nome do fluxo de trabalho e o SHA do commit ou outros detalhes, você pode fazer download do artefato carregado anteriormente de diferentes fluxos de trabalho associados a esse commit ou outros critérios e usá-lo.
Se
commitouproubranchourun_idouworkflow_conclusionnão for especificado, o artefato da execução de fluxo de trabalho concluída com êxito mais recente será baixado.
Não especifique pr , commit , branch , run_id juntos ou workflow_conclusion e run_id juntos. Escolha apenas um de cada ou nenhum.
- nome: ID do artefato de download: download-artifact usa: dawidd6/action-download-artifact@v6 com: # Opcional, token GitHub, um token de acesso pessoal com escopo `public_repo` se necessário # Obrigatório, se o artefato for de um diferente repo # Obrigatório, se o repo for privado, é necessário um token de acesso pessoal com escopo `repo` ou token GitHub em um trabalho onde o escopo `action` das permissões está definido como `read` github_token: ${{secrets.GITHUB_TOKEN}} # Opcional, nome ou ID do arquivo de fluxo de trabalho # Se não for especificado, será inferido de run_id (se run_id for especificado) ou será o fluxo de trabalho atual: workflow_name.yml # Se nenhum fluxo de trabalho estiver definido e workflow_search definido como true, então o fluxo de trabalho mais recente correspondente # todos os outros critérios serão pesquisados em vez de usar o fluxo de trabalho atual workflow_search: false # Opcional, o status ou conclusão de um fluxo de trabalho concluído para pesquisar # Pode ser um de um fluxo de trabalho conclusão: # "failure", "success", "neutral", "cancelled", "skipped", "timed_out", "action_required" # Ou um status de fluxo de trabalho: # "completed", "in_progress", "queued" # Use a string vazia ("") para ignorar o status ou conclusão na pesquisa workflow_conclusão: sucesso # Opcional, obterá head commit SHA pr: ${{github.event.pull_request.number}} # Opcional, não há necessidade de especifique se PR é commit: ${{github.event.pull_request.head.sha}} # Opcional, usará o branch especificado. O padrão é todas as ramificações branch: master # Opcional, o padrão é todos os tipos event: push # Opcional, usará a execução de fluxo de trabalho especificada # use ${{ github.event.workflow_run.id }} quando sua ação for executada em um evento workflow_run # e desejar para fazer download do fluxo de trabalho de acionamento, execute run_id: 1122334455 # Opcional, execute o número do fluxo de trabalho run_number: 34 # Opcional, nome do artefato carregado, # fará download de todos os artefatos, caso contrário especificado # e extrai-os nos respectivos subdiretórios # https://github.com/actions/download-artifact#download-all-artifacts # é tratado como uma expressão regular se a entrada name_is_regexp for verdadeira # fará download apenas dos artefatos com um nome que corresponde a esta expressão regular # https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions nome: artefato_name # Opcional, o nome é tratado como um nome regular expressão if set true name_is_regexp: true # Opcional, um diretório onde extrair artefato(s), o padrão é o caminho do diretório atual: extract_here # Opcional, o padrão é o repositório atual: ${{ github.repository }} # Opcional, verifique o fluxo de trabalho executado para saber se ele possui um artefato # então obterá o último artefato disponível do fluxo de trabalho anterior # padrão falso, apenas tente fazer download do último check_artifacts: false # Opcional, procure pela última execução do fluxo de trabalho cujo arquivo armazenado artefato nomeado como na entrada `name` # default false search_artifacts: false # Opcional, escolha ignorar a descompactação do(s) artefato(s) baixado(s) # default false skip_unpack: false # Opcional, escolha como sair da ação se nenhum artefato for encontrado # pode ser um dos seguintes: # "fail", "warn", "ignore" # default fail if_no_artifact_found: fail # Opcional, inclui forks ao procurar por artefatos # default false allow_forks: true A versão v3 desta ação mudou de node16 para node20 como tempo de execução. O nó 20 requer glibc>=2.28 . Se o seu executor auto-hospedado tiver glibc mais antigo, fixe na versão v2 , mas observe que ele não receberá nenhuma atualização.