Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao executar código groovy no jenkins

Quando eu tento rodar o script presente no vídeo recebo esse erro: Itodo0list0desenvolvimentoEsse é o resultado do console:

Started by user Leonardo Oliveira Freitas
[Pipeline] Start of Pipeline (hide)
[Pipeline] node
Running on Jenkins in /var/lib/jenkins/workspace/todo-list-desenvolvimento
[Pipeline] {
[Pipeline] withEnv
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Carregando o ENV de desenvolvimento)
[Pipeline] configFileProvider
provisioning config files...
not able to provide the file [ManagedFile: id=<id do seu arquivo de desenvolvimento>, targetLocation=null, variable=env], can't be resolved by any provider - maybe it got deleted by an administrator?
[Pipeline] // configFileProvider
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Derrubando o container antigo)
Stage "Derrubando o container antigo" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Subindo o container novo)
Stage "Subindo o container novo" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Notificando o usuario)
Stage "Notificando o usuario" skipped due to earlier failure(s)
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: not able to provide the file [ManagedFile: id=<id do seu arquivo de desenvolvimento>, targetLocation=null, variable=env], can't be resolved by any provider - maybe it got deleted by an administrator?
Finished: FAILURE

Eu tentei trocar o env por env-dev, no entanto o resultado é o mesmo.

Aqui está o groovy script:

    pipeline {
        environment {
            dockerImage = "${image}"
        }
        agent any

        stages {
            stage('Carregando o ENV de desenvolvimento') {
                steps {
                    configFileProvider([configFile(fileId: '<id do seu arquivo de desenvolvimento>', variable: 'env')]) {
                        sh 'cat $env > .env-dev'
                    }
                }
            }
            stage('Derrubando o container antigo') {
                steps {
                    script {
                        try {
                            sh 'docker rm -f django-todolist-dev'
                        } catch (Exception e) {
                            sh "echo $e"
                        }
                    }
                }
            }        
            stage('Subindo o container novo') {
                steps {
                    script {
                        try {
                            sh 'docker run -d -p 81:8000 -v /var/run/mysqld/mysqld.sock:/var/run/mysqld/mysqld.sock -v /var/lib/jenkins/workspace/jenkins-todo-list-desenvolvimento/.env:/usr/src/app/to_do/.env --name=django-todolist-dev ' + dockerImage + ':latest'
                        } catch (Exception e) {
                            slackSend (color: 'error', message: "[ FALHA ] Não foi possivel subir o container - ${BUILD_URL} em ${currentBuild.duration}s", tokenCredentialId: 'slack-token')
                            sh "echo $e"
                            currentBuild.result = 'ABORTED'
                            error('Erro')
                        }
                    }
                }
            }
            stage('Notificando o usuario') {
                steps {
                    slackSend (color: 'good', message: '[ Sucesso ] O novo build esta disponivel em: http://192.168.33.10:81/ ', tokenCredentialId: 'slack-token')
                }
            }
        }
    }
1 resposta
solução!

Eu descobri o erro kkkk Tá bem explicito onde está: <id do seu arquivo de desenvolvimento> substitua pelo ‘id’ do arquivo de configuração Iconfig file management