Rode o Lockpick no CI
Verifique o seu site com um Pulse quando publicar uma release, e faça o build falhar quando houver achados graves em aberto.
A CLI roda em qualquer CI que tenha Node.js 20.9 ou mais recente. Um Pulse no CI usa uma verificação Pulse da sua cota mensal a cada vez, igual a iniciá-lo no Lockpick, então rode-o quando publicar, e não em cada push.
Escreva o workflow
No seu repositório, com a CLI conectada:
lockpick ci init <site>Ele grava .github/workflows/lockpick.yml. O workflow roda quando você publica uma release e quando você o inicia pela aba Actions. Ele executa um Pulse no site, espera o resultado e falha quando os achados abertos são high ou de gravidade maior. Ele fixa a versão da CLI com que foi escrito.
--fail-on critical,high,mediumoulowdefine a linha de corte.--dry-runimprime o workflow sem gravá-lo.--file <path>grava em outro lugar, e--forcesubstitui um arquivo existente.
Se a CLI estiver conectada a um endereço local, ci init avisa você: os runners do GitHub só conseguem acessar um endereço público do Lockpick. Passe --host com esse endereço.
Adicione a chave
O workflow lê a chave do segredo do repositório LOCKPICK_KEY. Use uma chave com permissão para iniciar verificações Pulse.
gh secret set LOCKPICK_KEYFalhe com achados em qualquer lugar
O --fail-on funciona em qualquer comando que termina com uma verificação concluída: lockpick pulse, lockpick recheck, lockpick watch, lockpick deep start e lockpick findings. O lockpick ci check <run-id> aplica a regra a uma verificação que já terminou, sem iniciar outra nem usar a sua cota, e também pode falhar pela idade (--max-age-hours) ou pela cobertura (--min-coverage). Quando os achados abertos atingem a linha, o comando termina com o código 8, então qualquer CI pode interromper o build:
lockpick pulse <site> --fail-on high --timeout 900No CI, a CLI imprime uma linha sempre que o estado de uma verificação muda, em vez de uma linha de progresso ao vivo, e --json imprime apenas o resultado. Defina FORCE_COLOR=1 para ter cor em um log que a mostre.
Códigos de saída da CLI e do script de release
A CLI e o script de verificação de release independente usam contratos de saída diferentes. Confira qual deles o seu job executa.
| Resultado | CLI lockpick | Script de verificação de release independente |
|---|---|---|
| Concluído dentro do limite de achados | 0 | 0 |
| Os achados abertos atingiram o limite | 8 | 1 |
| A verificação falhou ou ocorreu outro erro | Veja códigos de saída da CLI | 1 |
O script de verificação de release usa uma chave de CI limitada a um site (LOCKPICK_CI_KEY); a CLI usa LOCKPICK_KEY e as permissões que você aprovou.
Isto foi útil?