Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
c374c08
updated
EmmanuelAudu May 21, 2023
3db2a49
jenkinsfile added
EmmanuelAudu May 22, 2023
f9cc60b
jenkinsfile updated
EmmanuelAudu May 22, 2023
181bee4
git checkout created
EmmanuelAudu May 23, 2023
acf957b
git checkout created
EmmanuelAudu May 23, 2023
4421857
git checkout created
EmmanuelAudu May 23, 2023
e1fd5e8
git checkout created
EmmanuelAudu May 23, 2023
0551f4e
git checkout created
EmmanuelAudu May 23, 2023
852d5c8
mvn test added
EmmanuelAudu May 23, 2023
b7cf3dc
Update pom.xml
EmmanuelAudu May 23, 2023
5e3f23f
pom updated
EmmanuelAudu May 23, 2023
66cdbba
pom updated
EmmanuelAudu May 23, 2023
c51dd96
pom updated
EmmanuelAudu May 23, 2023
116c4dc
Update Jenkinsfile
EmmanuelAudu May 23, 2023
0bc387f
Update Jenkinsfile
EmmanuelAudu May 23, 2023
e5099b2
Maven Integration Test added
EmmanuelAudu May 23, 2023
7cc0530
static code analysis
EmmanuelAudu May 24, 2023
0606fe5
static code analysis
EmmanuelAudu May 24, 2023
e889516
static code analysis
EmmanuelAudu May 24, 2023
12b985b
static code analysis
EmmanuelAudu May 24, 2023
35c8507
static code analysis
EmmanuelAudu May 24, 2023
7ccfea8
quality gate
EmmanuelAudu May 24, 2023
d425266
maven build stage added
EmmanuelAudu May 24, 2023
793cbb9
docker build
EmmanuelAudu May 24, 2023
e9d3c23
docker build
EmmanuelAudu May 24, 2023
02b6eeb
docker build
EmmanuelAudu May 24, 2023
b49f031
docker build
EmmanuelAudu May 24, 2023
e60be34
docker build
EmmanuelAudu May 24, 2023
b6c80a7
image scan with trivy added
EmmanuelAudu May 25, 2023
50419f9
docker image push stage
EmmanuelAudu May 25, 2023
02f707a
docker image push stage
EmmanuelAudu May 25, 2023
c02c8f9
updated pom file
EmmanuelAudu May 25, 2023
20aa784
updated pom file
EmmanuelAudu May 25, 2023
d4a1754
updated pom file
EmmanuelAudu May 25, 2023
2883851
quality gate updated
EmmanuelAudu May 25, 2023
d4a7294
Update Jenkinsfile
EmmanuelAudu May 25, 2023
d427f7a
Update Jenkinsfile
EmmanuelAudu May 25, 2023
31e88b7
Update Jenkinsfile
EmmanuelAudu May 25, 2023
44a71e6
Update Jenkinsfile
EmmanuelAudu May 25, 2023
10f02a2
Update Jenkinsfile
EmmanuelAudu May 25, 2023
c97c586
testing quality gate
EmmanuelAudu May 26, 2023
d41b29e
testing quality gate
EmmanuelAudu May 26, 2023
bc62ce4
commit
EmmanuelAudu May 26, 2023
8126e68
commit
EmmanuelAudu May 26, 2023
b870885
Update Jenkinsfile
EmmanuelAudu May 26, 2023
6e5771a
Update Jenkinsfile
EmmanuelAudu May 26, 2023
c55494c
Update Jenkinsfile
EmmanuelAudu May 26, 2023
a0c5c27
Update Jenkinsfile
EmmanuelAudu May 26, 2023
52799f2
updated
EmmanuelAudu May 29, 2023
a3fe57b
updated
EmmanuelAudu May 30, 2023
07e7681
updated
EmmanuelAudu May 30, 2023
80cd587
updated
EmmanuelAudu May 30, 2023
ba60ad8
updated
EmmanuelAudu May 30, 2023
c46f079
Added ECR
EmmanuelAudu May 30, 2023
ca28c1a
image cleanup
EmmanuelAudu Jun 2, 2023
e9e3c05
image cleanup
EmmanuelAudu Jun 2, 2023
35ae0a0
image cleanup
EmmanuelAudu Jun 2, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"java.configuration.updateBuildConfiguration": "interactive",
"java.compile.nullAnalysis.mode": "automatic"
}
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM openjdk:8-jdk-alpine
WORKDIR /app
COPY ./target/*.jar /app.jar
CMD ["java", "-jar", "app.jar"]
CMD [ "java", "-jar", "app.jar" ]
153 changes: 76 additions & 77 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,106 +7,105 @@ pipeline{
parameters{

choice(name: 'action', choices: 'create\ndelete', description: 'Choose create/Destroy')
string(name: 'ImageName', description: "name of the docker build", defaultValue: 'javapp')
string(name: 'ImageTag', description: "tag of the docker build", defaultValue: 'v1')
string(name: 'DockerHubUser', description: "name of the Application", defaultValue: 'vikashashoke')
string(name: 'ImageName', description: 'name of the docker build', defaultValue: 'javapp')
string(name: 'ImageTag', description: 'tag of the docker build', defaultValue: 'v1')
string(name: 'DockerHubUser', description: 'name of Application', defaultValue: 'emmaochai')
}

stages{

stage('Git Checkout'){
when { expression { params.action == 'create' } }
stages{

stage("Git Checkout"){
when { expression { params.action == 'create' } }

steps{
gitCheckout(
branch: "main",
url: "https://github.com/vikash-kumar01/mrdevops_java_app.git"
)
branch: "devops",
url: "https://github.com/EmmanuelAudu/java_ap.git"
)

}
}
stage('Unit Test maven'){

when { expression { params.action == 'create' } }

stage("Unit Test Maven"){
when { expression { params.action == 'create' } }
steps{
script{
mvnTest()
}
}
}
stage("Integration Test Maven"){
when { expression { params.action == 'create' } }
steps{
script{

mvnTest()
}
script{
mvnIntegrationTest()
}
}
}
stage('Integration Test maven'){
when { expression { params.action == 'create' } }
}
stage("Static code analysis: Sonarqube"){
when { expression { params.action == 'create' } }
steps{
script{

mvnIntegrationTest()
}
}
}
stage('Static code analysis: Sonarqube'){
when { expression { params.action == 'create' } }
steps{
script{

def SonarQubecredentialsId = 'sonarqube-api'
script{

def SonarQubecredentialsId = 'sonar-api'
statiCodeAnalysis(SonarQubecredentialsId)
}
}
}
}
stage('Quality Gate Status Check : Sonarqube'){
when { expression { params.action == 'create' } }
}
stage("Quality Gate Status Check: Sonarqube"){
when { expression { params.action == 'create' } }
steps{
script{
def SonarQubecredentialsId = 'sonarqube-api'
script{

def SonarQubecredentialsId = 'sonar-api'
QualityGateStatus(SonarQubecredentialsId)
}
}
}
}
stage('Maven Build : maven'){
when { expression { params.action == 'create' } }
}
stage("Maven Build: maven"){
when { expression { params.action == 'create' } }
steps{
script{

mvnBuild()
}
script{
mvnBuild()
}
}
}
stage('Docker Image Build'){
when { expression { params.action == 'create' } }
}
stage("Docker Image Build"){
when { expression { params.action == 'create' } }
steps{
script{

dockerBuild("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
script{
dockerBuild("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
}
}
stage('Docker Image Scan: trivy '){
when { expression { params.action == 'create' } }
}
stage("Docker Image Scan: trivy"){
when { expression { params.action == 'create' } }
steps{
script{

dockerImageScan("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
script{
dockerImageScan("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
}
}
stage('Docker Image Push : DockerHub '){
when { expression { params.action == 'create' } }
}
stage("Docker Image Push: DockerHub"){
when { expression { params.action == 'create' } }
steps{
script{

dockerImagePush("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
script{
dockerImagePush("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
}
}
stage('Docker Image Cleanup : DockerHub '){
when { expression { params.action == 'create' } }
}
stage("Docker Image Cleanup: DockerHub"){
when { expression { params.action == 'create' } }
steps{
script{

dockerImageCleanup("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
script{
dockerImageCleanup("${params.ImageName}","${params.ImageTag}","${params.DockerHubUser}")
}
}
}
}
}
}
}
Loading