diff --git a/Jenkinsfile b/Jenkinsfile index f76052563..2264ffb21 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,9 +1,11 @@ -// Merge request pipeline + pipeline { agent any + environment { NEXUS_CREDS = credentials('nexus-cred') - NEXUS_DOCKER_REPO_MR = '34.241.46.54:8085' + NEXUS_DOCKER_REPO_MR = '34.245.131.115:8085' + NEXUS_DOCKER_REPO_MAIN = '34.245.131.115:8084' } tools { @@ -11,6 +13,7 @@ pipeline { } stages { + // Merge request pipeline stage('Checkstyle') { steps{ echo 'Running gradle checkstyle' @@ -53,60 +56,44 @@ pipeline { } stage('Docker Push (MR)') { steps { - echo 'Pushing Image to docker hub' + echo 'Pushing Image to docker repo' sh 'docker push $NEXUS_DOCKER_REPO_MR/spring-petclinic:${GIT_COMMIT}' } } - } - post { - always { - cleanWs() + // Main branch pipeline + stage('Docker Build (Main)') { + when { + branch 'main' + } + steps { + echo 'Building docker Image' + sh 'docker build -t $NEXUS_DOCKER_REPO_MAIN/spring-petclinic:${GIT_COMMIT} .' + } } - } -} - -// Main branch pipeline -pipeline { - agent any - - environment { - NEXUS_CREDS = credentials('nexus-cred') - NEXUS_DOCKER_REPO_MAIN = '34.241.46.54:8084' - } - - stage('Docker Build (Main)') { - when { - branch 'main' - } - steps { - echo 'Building docker Image' - sh 'docker build -t $NEXUS_DOCKER_REPO_MAIN/spring-petclinic:${GIT_COMMIT} .' - } - } - stage('Docker Login') { - when { - branch 'main' - } - steps { - echo 'Nexus Docker Repository Login' - script{ - withCredentials([usernamePassword(credentialsId: 'nexus-cred', usernameVariable: 'USER', passwordVariable: 'PASS' )]){ - sh 'echo $PASS | docker login -u $USER --password-stdin $NEXUS_DOCKER_REPO_MAIN' + stage('Docker Login') { + when { + branch 'main' + } + steps { + echo 'Nexus Docker Repository Login' + script{ + withCredentials([usernamePassword(credentialsId: 'nexus-cred', usernameVariable: 'USER', passwordVariable: 'PASS' )]){ + sh 'echo $PASS | docker login -u $USER --password-stdin $NEXUS_DOCKER_REPO_MAIN' + } } } } - } - stage('Docker Push (Main)') { - when { - branch 'main' - } - steps { - echo 'Pushing Image to docker hub' - sh 'docker push $NEXUS_DOCKER_REPO_MAIN/spring-petclinic:${GIT_COMMIT}' + stage('Docker Push (Main)') { + when { + branch 'main' + } + steps { + echo 'Pushing Image to docker repo' + sh 'docker push $NEXUS_DOCKER_REPO_MAIN/spring-petclinic:${GIT_COMMIT}' + } } } - post { always { cleanWs() diff --git a/jenkins assesment.TXT b/jenkins assesment.TXT deleted file mode 100644 index 0eb1c7e3b..000000000 --- a/jenkins assesment.TXT +++ /dev/null @@ -1,40 +0,0 @@ -jenkins assesment: - -3 kontenery na EC2 -> jenkins-docker, jenkins-blueocean, nexus - -!!! Pobranie klucza do EC2 !!! - -EC2 - security groups + t6 type: - ssh -i C:\lokalizacja_klucza\jenkins-assesement-ec2.pem ec2-user@ec2-3-252-205-41.eu-west-1.compute.amazonaws.com - -Po uruchomieniu EC2: - docker start nexus - docker start jenkins-blueocean - docker run \/ - -!!!!!!!! zmieniaj IP w env w JenkinsFile (GitHub), daemon.json (EC2), docker:dind dodaj --insecure-registries !!!!!!!!!!!! - ----------------------------- -W jenkinsie: -add creds - github, nexus - -!!! create github token !!! - ----------------------------- -Serwer Jenkinsa na EC2: - -Nexus: - sudo docker run -d -p 8081-8085:8081-8085 --name nexus -v nexus-data:/nexus-data sonatype/nexus3 - -Jenkins Docker: - sudo docker run --name jenkins-docker --rm --detach --privileged --network jenkins --network-alias docker --env DOCKER_TLS_CERTDIR=/certs --volume jenkins-docker-certs:/certs/client --volume jenkins-data:/var/jenkins_home --publish 2376:2376 docker:dind --insecure-registry 54.195.172.42:8085 --insecure-registry 54.195.172.42:8084 --storage-driver overlay2 - -Jenkins Blueocean: - dockerfile z dokumentacji jenkinsa + run blueocean - https://www.jenkins.io/doc/book/installing/docker/ - - - - - -