Skip to content

Commit 090fffb

Browse files
author
Araf Karsh Hamid
committed
Added Kubernetes ConfigMaps, Reduced Service footprint to 62 MB
1 parent 3b6a710 commit 090fffb

File tree

142 files changed

+612
-149
lines changed

Some content is hidden

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

142 files changed

+612
-149
lines changed

src/docker/Input/application.properties renamed to backup/props/application.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# =======================================================================
22
# MS-Vanilla Service Properties
33
# =======================================================================
4-
build.number=213
5-
build.date=Wed Jan 22 10:33:06 IST 2025
4+
build.number=214
5+
build.date=Wed Jan 22 13:25:41 IST 2025
66
# ------------------------------------------------------------------------
77
# Spring Profile
88
# ------------------------------------------------------------------------

src/main/resources/application.properties renamed to backup/props/application.properties.213

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# =======================================================================
22
# MS-Vanilla Service Properties
33
# =======================================================================
4-
build.number=213
5-
build.date=Wed Jan 22 10:33:06 IST 2025
4+
build.number=214
5+
build.date=Wed Jan 22 16:29:36 IST 2025
66
# ------------------------------------------------------------------------
77
# Spring Profile
88
# ------------------------------------------------------------------------
File renamed without changes.

compile

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ echo "Clean up the target folder: mvn clean"
2626
echo "---------------------------------------------------------------------------------------"
2727
mvn clean
2828
# -------------------------------------------------------------------------------------------
29-
echo "Git Commit Count = "`git rev-list HEAD --count`
29+
echo "0. Git Commit Count = "`git rev-list HEAD --count`
3030
echo "---------------------------------------------------------------------------------------"
3131
generateBuildNumber $SERVICE
3232
# -------------------------------------------------------------------------------------------
@@ -41,31 +41,28 @@ then
4141
echo "2.1 Compiling Service > $ORG/$SERVICE :: SUCCESS"
4242
echo "---------------------------------------------------------------------------------------"
4343

44-
echo "2.2 Copy the Fat and Thin jar files and the libs to the Docker Directory (src/docker)"
44+
echo "2.2 Copy $CONTAINER-spring-boot.jar file to the Docker Directory (src/docker)"
4545
cp target/*service*-spring-boot.jar src/docker/Input/$CONTAINER-spring-boot.jar
4646

47-
echo "2.3 Copy the application.properties File to the Docker Directory (src/docker)"
48-
cp src/main/resources/application*properties src/docker/Input
47+
echo "2.3 Copy application.properties File to the Docker Directory (src/docker)"
48+
cp config/application*properties src/docker/Input
4949

50-
echo "2.4 Copy the application.properties File to the Docker Directory (src/docker)"
51-
convert4ConfigMap src/main/resources/application.properties src/kubernetes/Package/default/application.properties
52-
convert4ConfigMap src/main/resources/application-dev.properties src/kubernetes/Package/dev/application-dev.properties
53-
convert4ConfigMap src/main/resources/application-staging.properties src/kubernetes/Package/staging/application-staging.properties
54-
convert4ConfigMap src/main/resources/application-prod.properties src/kubernetes/Package/prod/application-prod.properties
50+
echo "2.4 Copy application.properties File to the Kubernetes Directory (src/kubernetes)"
51+
convert4ConfigMap config/application.properties src/kubernetes/Package/default/application.properties
52+
convert4ConfigMap config/application-dev.properties src/kubernetes/Package/dev/application.properties
53+
convert4ConfigMap config/application-staging.properties src/kubernetes/Package/staging/application.properties
54+
convert4ConfigMap config/application-prod.properties src/kubernetes/Package/prod/application.properties
5555

56-
echo "2.5 Copy the application.properties Files to config directory."
57-
cp src/main/resources/application*properties config
58-
59-
echo "2.6 Copy the logback-spring xml Files to config directory."
56+
echo "2.5 Copy logback-spring xml Files to config directory."
6057
cp src/main/resources/logback-spring*xml config
6158

62-
echo "2.7 Copy the logback-spring xml Files to Docker directory src/docker/"
59+
echo "2.6 Copy logback-spring xml Files to Docker directory src/docker/"
6360
cp src/main/resources/logback-spring*xml src/docker/Input
6461

6562
echo "---------------------------------------------------------------------------------------"
66-
echo "2.8. Building the Container for $ORG/$SERVICE Service ..... "
63+
echo "2.7. Building the Container for $ORG/$SERVICE Service ..... "
6764
echo "---------------------------------------------------------------------------------------"
68-
echo "2.8.1 Docker Build Process Disabled.... Run the build/buildx command separately"
65+
echo "2.7.1 Docker Build Process Disabled.... Run the build/buildx command separately"
6966
#build
7067
echo "---------------------------------------------------------------------------------------"
7168
echo "3. $SERVICE Microservice Build Process Completed Successfully! ........... "

config/application-dev.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ logging.level.root=INFO
99
# =======================================================================
1010
# H2 DB Properties
1111
# =======================================================================
12+
spring.config.activate.on-profile=dev
1213
db.server=mem
1314
db.port=5432
1415
db.name=ms_vanilla_334

config/application-prod.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ logging.level.root=INFO
99
# =======================================================================
1010
# PostgreSQL DB Properties -
1111
# =======================================================================
12+
spring.config.activate.on-profile=prod
1213
db.server=localhost
1314
db.port=5433
1415
db.name=ms_vanilla_334

config/application-staging.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ logging.level.root=INFO
99
# =======================================================================
1010
# PostgreSQL DB Properties -
1111
# =======================================================================
12+
spring.config.activate.on-profile=staging
1213
db.server=localhost
1314
db.port=5433
1415
db.name=ms_vanilla_334

config/application.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# =======================================================================
22
# MS-Vanilla Service Properties
33
# =======================================================================
4-
build.number=213
5-
build.date=Wed Jan 22 10:33:06 IST 2025
4+
build.number=214
5+
build.date=Wed Jan 22 16:30:08 IST 2025
66
# ------------------------------------------------------------------------
77
# Spring Profile
88
# ------------------------------------------------------------------------

generateBuildNumber

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
PROPS_PATH=src/main/resources
88
PROPS_BUILD=app.props.build
99
PROPS_TMPL=app.props.tmpl
10-
PROPS_BACK=$PROPS_PATH/backup
10+
PROPS_BACK=backup/props
1111
PROPS_FILE=application.properties
1212

1313
CURR_BN=`git rev-list HEAD --count`
@@ -18,19 +18,22 @@ fi
1818
PREV_BN=`expr $CURR_BN - 1`
1919

2020
echo "======================================================================="
21+
echo "1. Generate Build No."
22+
echo "-----------------------------------------------------------------------"
2123
echo "Previous Build Number="$PREV_BN
2224
echo "Current Build Number="$CURR_BN
23-
echo "======================================================================="
24-
echo "Taking Properties Backup"
25-
cp $PROPS_PATH/$PROPS_FILE $PROPS_BACK/$PROPS_FILE.$PREV_BN
26-
echo "======================================================================="
27-
echo "Generate Build Numbers"
25+
echo "-----------------------------------------------------------------------"
26+
echo "1.1 Taking Properties Backup"
27+
cp config/$PROPS_FILE $PROPS_BACK/$PROPS_FILE.$PREV_BN
28+
echo "1.2 Generate Build File... "
2829
echo "# =======================================================================" > $PROPS_PATH/$PROPS_BUILD
2930
echo "# $1 Service Properties" >> $PROPS_PATH/$PROPS_BUILD
3031
echo "# =======================================================================" >> $PROPS_PATH/$PROPS_BUILD
3132
echo "build.number="$CURR_BN >> $PROPS_PATH/$PROPS_BUILD
3233
echo "build.date="`date` >> $PROPS_PATH/$PROPS_BUILD
33-
34-
cat $PROPS_PATH/$PROPS_BUILD > $PROPS_PATH/$PROPS_FILE
35-
cat $PROPS_PATH/$PROPS_TMPL >> $PROPS_PATH/$PROPS_FILE
36-
echo "======================================================================="
34+
echo "1.3 Generate Application properties with New Build No. and Date..."
35+
echo "-----------------------------------------------------------------------"
36+
cat $PROPS_PATH/$PROPS_BUILD > config/$PROPS_FILE
37+
echo "1.4 Copy the application.properties to config directory..."
38+
echo "-----------------------------------------------------------------------"
39+
cat $PROPS_PATH/$PROPS_TMPL >> config/$PROPS_FILE

run

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ echo "App running with profile = $runMode"
1717

1818
# Run Java command
1919
echo "java -jar target/ms-vanilla-service-*-spring-boot.jar --spring.profiles.active=$runMode"
20-
#java -Djava.security.policy=./vanilla.policy -jar target/ms-vanilla-service-*-spring-boot.jar --spring.profiles.active=$runMode
21-
#java -Dlogging.level.org.springframework.aop.framework=DEBUG -jar target/ms-vanilla-service-*-spring-boot.jar --spring.profiles.active=$runMode
22-
java -jar target/ms-vanilla-service-*-spring-boot.jar --spring.profiles.active=$runMode -Djava.security.manager=java.lang.SecurityManager -Djava.security.policy=./vanilla.policy
20+
java -Xms64m -Xmx64m -jar target/ms-vanilla-service-*-spring-boot.jar \
21+
--spring.profiles.active=$runMode \
22+
-Djava.security.manager=java.lang.SecurityManager \
23+
-Djava.security.policy=./vanilla.policy
2324

src/docker/Input/startService

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ runMode=$APP_PROFILE
88
# Check if the runMode is null or not one of "dev", "prod", or "staging"
99
if [ -z "$runMode" ] || { [ "$runMode" != "dev" ] && [ "$runMode" != "prod" ] && [ "$runMode" != "staging" ]; }
1010
then
11+
echo "StartService Script : RunMode = $runMode"
1112
runMode="dev"
1213
fi
1314

src/kubernetes/Package/default/application.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
build.number=213
2-
build.date=Wed Jan 22 10:33:06 IST 2025
1+
build.number=214
2+
build.date=Wed Jan 22 16:30:08 IST 2025
33
spring.profiles.default=dev
44
service.org=arafkarsh
55
service.name=MS-Vanilla
Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
apiVersion: kustomize.config.k8s.io/v1beta1
22
kind: Kustomization
3-
43
configMapGenerator:
54
- name: vanilla-configmap-default
65
files:
76
- application.properties
8-
97
generatorOptions:
108
disableNameSuffixHash: true

src/kubernetes/Package/dev/application-dev.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
server.port=9334
22
logging.level.root=INFO
3+
spring.profiles=dev
34
db.server=mem
45
db.port=5432
56
db.name=ms_vanilla_334
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
server.port=9334
2+
logging.level.root=INFO
3+
spring.profiles=dev
4+
db.server=mem
5+
db.port=5432
6+
db.name=ms_vanilla_334
7+
db.schema=ms_schema
8+
db.vendor=H2
9+
spring.datasource.url=jdbc:h2:${db.server}:${db.name};DB_CLOSE_ON_EXIT=FALSE
10+
spring.datasource.driverClassName=org.h2.Driver
11+
spring.datasource.username=sa
12+
spring.datasource.password=ENC(lA6JCEpK7+wuHDpB1A41DOUfn6L74DQxaazXLTjyQHY5/X6CONfUEyDt6erWifrN)
13+
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
14+
spring.h2.console.enabled=true
15+
spring.h2.console.path=/h2-ui
16+
spring.h2.console.settings.trace=false
17+
spring.h2.console.settings.web-allow-others=false
18+
19+
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
apiVersion: kustomize.config.k8s.io/v1beta1
22
kind: Kustomization
3-
43
configMapGenerator:
54
- name: vanilla-configmap-dev
65
files:
7-
- application-dev.properties
8-
6+
- application.properties
97
generatorOptions:
108
disableNameSuffixHash: true

src/kubernetes/Package/prod/application-prod.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
server.port=9334
22
logging.level.root=INFO
3+
spring.profiles=prod
34
db.server=localhost
45
db.port=5433
56
db.name=ms_vanilla_334

src/main/resources/application-staging.properties renamed to src/kubernetes/Package/prod/application.properties

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
1-
# =======================================================================
2-
# Microservice Server Properties
3-
# =======================================================================
41
server.port=9334
5-
# ------------------------------------------------------------------------
6-
# Log Details
7-
# ------------------------------------------------------------------------
82
logging.level.root=INFO
9-
# =======================================================================
10-
# PostgreSQL DB Properties -
11-
# =======================================================================
3+
spring.profiles=prod
124
db.server=localhost
135
db.port=5433
146
db.name=ms_vanilla_334
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
apiVersion: kustomize.config.k8s.io/v1beta1
22
kind: Kustomization
3-
43
configMapGenerator:
54
- name: vanilla-configmap-prod
65
files:
7-
- application-prod.properties
8-
6+
- application.properties
97
generatorOptions:
108
disableNameSuffixHash: true

src/kubernetes/Package/staging/application-staging.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
server.port=9334
22
logging.level.root=INFO
3+
spring.profiles=staging
34
db.server=localhost
45
db.port=5433
56
db.name=ms_vanilla_334

src/main/resources/application-prod.properties renamed to src/kubernetes/Package/staging/application.properties

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
1-
# =======================================================================
2-
# Microservice Server Properties
3-
# =======================================================================
41
server.port=9334
5-
# ------------------------------------------------------------------------
6-
# Log Details
7-
# ------------------------------------------------------------------------
82
logging.level.root=INFO
9-
# =======================================================================
10-
# PostgreSQL DB Properties -
11-
# =======================================================================
3+
spring.profiles=staging
124
db.server=localhost
135
db.port=5433
146
db.name=ms_vanilla_334
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
apiVersion: kustomize.config.k8s.io/v1beta1
22
kind: Kustomization
3-
43
configMapGenerator:
54
- name: vanilla-configmap-staging
65
files:
7-
- application-staging.properties
8-
6+
- application.properties
97
generatorOptions:
108
disableNameSuffixHash: true

src/kubernetes/Yamls/vanilla-configmap-active.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ kind: ConfigMap
33
metadata:
44
name: vanilla-configmap-active
55
data:
6-
spring.profiles.active: prod
6+
spring.profiles.active: dev
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: vanilla-configmap-active
5+
data:
6+
spring.profiles.active: prod

src/kubernetes/Yamls/vanilla-configmap-default.yaml

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: vanilla-configmap-default
25
data:
3-
application.properties: |
6+
application.properties: |+
47
build.number=209
58
build.date=Tue Jan 21 08:42:40 IST 2025
69
spring.profiles.default=dev
@@ -60,7 +63,7 @@ data:
6063
logging.level.web=INFO
6164
logging.level.sql=INFO
6265
logging.level.tomcat=INFO
63-
logging.level.root=INFO
66+
logging.level.root=DEBUG
6467
logging.config=classpath:logback-spring.xml
6568
logging.format=plain
6669
logging.path=/tmp/logs/${service.api.name}
@@ -131,6 +134,4 @@ data:
131134
springdoc.api-docs.enabled=true
132135
springdoc.swagger-ui.operationsSorter=method
133136
springdoc.swagger-ui.tagsSorter=alpha
134-
kind: ConfigMap
135-
metadata:
136-
name: vanilla-configmap-default
137+
Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: vanilla-configmap-dev
25
data:
3-
application-dev.properties: |+
6+
application.properties: |+
7+
spring.config.activate.on-profile=dev
48
server.port=9334
5-
logging.level.root=INFO
9+
logging.level.root=DEV
610
db.server=mem
711
db.port=5432
812
db.name=ms_vanilla_334
@@ -16,9 +20,4 @@ data:
1620
spring.h2.console.enabled=true
1721
spring.h2.console.path=/h2-ui
1822
spring.h2.console.settings.trace=false
19-
spring.h2.console.settings.web-allow-others=false
20-
21-
22-
kind: ConfigMap
23-
metadata:
24-
name: vanilla-configmap-dev
23+
spring.h2.console.settings.web-allow-others=false
Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
apiVersion: v1
2+
kind: ConfigMap
3+
metadata:
4+
name: vanilla-configmap-prod
25
data:
3-
application-prod.properties: |+
6+
application.properties: |+
7+
spring.config.activate.on-profile=prod
48
server.port=9334
5-
logging.level.root=INFO
9+
logging.level.root=DEV
610
db.server=localhost
711
db.port=5433
812
db.name=ms_vanilla_334
@@ -14,8 +18,3 @@ data:
1418
spring.datasource.password=ENC(In0ZYcoLjwe2OzzaWZ07BMoFHL8yvo4KQ/3ABAbzSKJuUVEu5hYycNGWB66Xswju)
1519
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
1620
spring.datasource.hikari.connection-test-query=SELECT 1
17-
18-
19-
kind: ConfigMap
20-
metadata:
21-
name: vanilla-configmap-prod

0 commit comments

Comments
 (0)