Skip to content

Commit dab7c43

Browse files
author
Imran
committedApr 14, 2022
Microservice app
0 parents  commit dab7c43

File tree

228 files changed

+26989
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

228 files changed

+26989
-0
lines changed
 

‎Dockerfile

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
FROM node:14 AS ui-build
2+
WORKDIR /usr/src/app
3+
COPY client/ ./client/
4+
RUN cd client && npm install && npm run build
5+
6+
FROM node:14 AS server-build
7+
WORKDIR /usr/src/app
8+
COPY nodeapi/ ./nodeapi/
9+
RUN cd nodeapi && npm install
10+
11+
FROM node:14
12+
WORKDIR /usr/src/app/
13+
COPY --from=server-build /usr/src/app/nodeapi/ ./
14+
COPY --from=ui-build /usr/src/app/client/dist ./client/dist
15+
RUN ls
16+
EXPOSE 4200
17+
EXPOSE 5000
18+
CMD ["/bin/sh", "-c", "cd /usr/src/app/ && npm start"]

‎Jenkinsfile

+126
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
pipeline {
2+
agent any
3+
4+
environment {
5+
clientRegistry = "repository.k8sengineers.com/apexrepo/client"
6+
booksRegistry = "repository.k8sengineers.com/apexrepo/books"
7+
mainRegistry = "repository.k8sengineers.com/apexrepo/main"
8+
registryCredential = 'NexusRepoLogin'
9+
cartRegistry = "https://repository.k8sengineers.com"
10+
}
11+
12+
stages {
13+
14+
stage('Build Angular Image') {
15+
when { changeset "client/*"}
16+
steps {
17+
18+
script {
19+
dockerImage = docker.build( clientRegistry + ":$BUILD_NUMBER", "./client/")
20+
}
21+
22+
}
23+
24+
}
25+
26+
stage('Deploy Angular Image') {
27+
when { changeset "client/*"}
28+
steps{
29+
script {
30+
docker.withRegistry( cartRegistry, registryCredential ) {
31+
dockerImage.push("$BUILD_NUMBER")
32+
dockerImage.push('latest')
33+
}
34+
}
35+
}
36+
}
37+
38+
stage('Kubernetes Deploy Angular') {
39+
when { changeset "client/*"}
40+
steps {
41+
withCredentials([file(credentialsId: 'CartWheelKubeConfig1', variable: 'config')]){
42+
sh """
43+
export KUBECONFIG=\${config}
44+
pwd
45+
helm upgrade kubekart kkartchart --install --set "kkartcharts-frontend.image.client.tag=${BUILD_NUMBER}" --namespace kart
46+
"""
47+
}
48+
}
49+
}
50+
51+
stage('Build books Image') {
52+
when { changeset "javaapi/*"}
53+
steps {
54+
55+
script {
56+
dockerImage = docker.build( booksRegistry + ":$BUILD_NUMBER", "./javaapi/")
57+
}
58+
59+
}
60+
61+
}
62+
63+
stage('Deploy books Image') {
64+
when { changeset "javaapi/*"}
65+
steps{
66+
script {
67+
docker.withRegistry( cartRegistry, registryCredential ) {
68+
dockerImage.push("$BUILD_NUMBER")
69+
dockerImage.push('latest')
70+
}
71+
}
72+
}
73+
}
74+
75+
stage('Kubernetes books Deploy') {
76+
when { changeset "javaapi/*"}
77+
steps {
78+
withCredentials([file(credentialsId: 'CartWheelKubeConfig1', variable: 'config')]){
79+
sh """
80+
export KUBECONFIG=\${config}
81+
pwd
82+
helm upgrade kubekart kkartchart --install --set "kkartcharts-backend.image.books.tag=${BUILD_NUMBER}" --namespace kart
83+
"""
84+
}
85+
}
86+
}
87+
88+
stage('Build Main Image') {
89+
when { changeset "nodeapi/*"}
90+
steps {
91+
92+
script {
93+
sh " sed -i 's/localhost/emongo/g' nodeapi/config/keys.js"
94+
dockerImage = docker.build( mainRegistry + ":$BUILD_NUMBER", "./nodeapi/")
95+
}
96+
97+
}
98+
99+
}
100+
101+
stage('Deploy Main Image') {
102+
when { changeset "nodeapi/*"}
103+
steps{
104+
script {
105+
docker.withRegistry( cartRegistry, registryCredential ) {
106+
dockerImage.push("$BUILD_NUMBER")
107+
dockerImage.push('latest')
108+
}
109+
}
110+
}
111+
}
112+
113+
stage('Kubernetes Main Deploy') {
114+
when { changeset "nodeapi/*"}
115+
steps {
116+
withCredentials([file(credentialsId: 'CartWheelKubeConfig1', variable: 'config')]){
117+
sh """
118+
export KUBECONFIG=\${config}
119+
pwd
120+
helm upgrade kubekart kkartchart --install --set "kkartcharts-backend.image.main.tag=${BUILD_NUMBER}" --namespace kart
121+
"""
122+
}
123+
}
124+
}
125+
}
126+
}

0 commit comments

Comments
 (0)
Please sign in to comment.