Limpar histórico de compilação do Jenkins (limpar compilação ontem)

Limpar histórico de compilação do Jenkins (limpar compilação ontem)

Preciso limpar e limpar o histórico de construção do Jenkins:Ontem-2 dias atrás-Todas as compilações. Como posso fazer isso no Jenkins?

Responder1

  • Exclua uma compilação do Jenkins via GUI.

    Acesse a compilação que deseja excluir e clique no botão no canto superior direito.  Delete this build  

    insira a descrição da imagem aqui

  • Se você precisar limpar o histórico de compilação do Jenkins e redefinir onúmero da compilaçãode volta a 1, você pode executar um script simples no Jenkins Script Console.fonte

    1. Vá para JenkinsConsole de scripts.

      Vá para a página inicial do Jenkins ->Gerenciar Jenkins->Console de scripts.

      insira a descrição da imagem aqui

    2. Execute este script para limpar e redefinir.

      Copie e cole este script na área de texto do Console Script e altere "copy_folder"para o nome do projeto que você precisa para limpar o histórico. Em seguida, clique noCorrerbotão.

      def jobName = "copy_folder"  
      def job = Jenkins.instance.getItem(jobName)  
      job.getBuilds().each { it.delete() }  
      job.nextBuildNumber = 1   
      job.save()
      

      Se você estiver usando pipeline ou pastas multibranch, a segunda linha do script acima deverá ser modificada assim:

      def jobName = "path/to/your/jenkins/pipeline/master"
      def job = Jenkins.getInstance().getItemByFullName(jobName, Job.class)
      

Outra maneira de remover compilações ou trabalhos antigos é pela linha de comando.

Faça login na linha de comando do Jenkins.

Para remover um trabalho inteiro e construir o histórico, remova a pasta do trabalho, por exemplo:

rm -rf jobs/jobname

Para ver o histórico de construção:

$ls jobs/nome do trabalho/builds

1409 1411 1413 1415 1417 1419 1421 1423 1425
923 963 974 985 lastFailedBuild lastSuccessfulBuild  
última compilação sem sucesso 1191 1334 1348 1379 1381 1383
1406 1408 1410 1412 1414 1416 1418 1420 1422 1424
913 962 973 978 987 últimoStableBuild últimoUnstableBuild
legadoIds

Para remover compilações selecionadas, remova o diretório do número da compilação, por exemplo:

rm -rf jobs/jobname/builds/97* jobs/jobname/builds/13*

Não se esqueça do último passose estiver removendo ou editando arquivos no Jenkins.

Depois de remover trabalhos ou compilações do sistema de arquivos, você precisa ir paraGerenciar Jenkinsna GUI do Jenkins e clique emRecarregar configuração do disco.

Nota: O diretório inicial do Jenkins pode estar em /var/jenkins_homeou /var/lib/jenkinsem outro local.

Responder2

A explicação acima é incrível. Abrange as diferentes formas de limpar a história, empregos, etc.

Apenas uma ideia baseada no acima: agrupar as instruções de linha de comando para remoção com um trabalho Jenkins e parametrizar os números de compilação, por exemplo, especificar um CSV em um parâmetro de trabalho e analisá-lo no script de shell associado ao trabalho para remover as compilações direcionadas . E/ou adicione um parâmetro de caixa de seleção DELETE_ALL_BUILDS e marque-o com uma instrução IF no script - se selecionado, remova todas as compilações. Você também pode parametrizar o nome do trabalho, por exemplo, fornecer um parâmetro chamado JOB_NAME, e interpolar o valor no script, por exemplo:

rm -rf jobs/${JOB_NAME}/builds/${BUILD_NUM}*

Responder3

Você deve ser um administrador do Jenkins para executar esta tarefa. Abaixo está um exemplo do trabalho 305 do Jenkins.

  • Abra o Jenkins → selecione o branch que você precisa ser excluído → selecione Histórico de construção
  • Opção Histórico de compilação → Selecione o círculo vermelho do erro de compilação (#305)
        Opção Histórico de construção
  • Erro de trabalho do Jenkins→ Selecione Excluir compilação:
        Opção Excluir compilação
  • Mensagem de confirmação antes de excluir → Selecione Sim para excluir.
        Mensagem de confirmação antes de excluir

Responder4

# cd to your Jenkins install directory with the userid that has "permissions"

sudo bash     ( if you have to )

# My installation is like this, so go wherever you placed yours:

cd /reps/jenkins/home/jobs/TestPlaywrightSuite/builds 

# Touch these two files to exclude from the auto search below
#   but since these are regular files, they should be excluded from
#   the find command anyway
touch permalinks
touch legacyids

# find directories older than 7 days and delete on one command

find . -type d -mtime +7 -exec rm -rf {} \;

informação relacionada