Renames src/com/meesho -> src/com/homelab, resources/com/meesho -> resources/com/homelab, resources/org/meesho -> resources/org/homelab (via git mv, preserving history), and sweeps every remaining occurrence of "meesho" (any casing) out of package declarations, imports, libraryResource() paths, and comments across the whole repo. Also drops the per-user allowlist in vars/eksCICD.groovy, which hardcoded real former-colleagues' emails and doesn't apply to a single-person homelab — that branch is now permanently skipped rather than deleted outright, to avoid hand-editing the escape-sequence-heavy echo blocks it guards (eksCICD.groovy itself is unused legacy code, not called by homelabPipeline.groovy). Does not touch the ~114 files that were already missing from the working tree but still tracked in the prior commit — that's unrelated pre-existing state, left as-is.
84 lines
4.0 KiB
Bash
84 lines
4.0 KiB
Bash
#!/bin/bash
|
|
prepareDockerfileWithBuild(){
|
|
cat << EOF > Dockerfile-${artifactId}
|
|
# This sample, non-production-ready template describes an Amazon EC2 instance and an Elastic Load Balancer.
|
|
# © 2020 Amazon Web Services, Inc. or its affiliates. All Rights Reserved.
|
|
# This AWS Content is provided subject to the terms of the AWS Customer Agreement available at
|
|
# http://aws.amazon.com/agreement or other written agreement between Customer and either
|
|
# Amazon Web Services, Inc. or Amazon Web Services EMEA SARL or both.
|
|
FROM 766380763301.dkr.ecr.ap-south-1.amazonaws.com/build/maven:3.3-jdk-8 as BUILD
|
|
WORKDIR /usr/src/app
|
|
COPY . /usr/src/app
|
|
RUN mvn -s sandbox-settings.xml clean install -DskipTests
|
|
RUN mkdir -p /var/log/${artifactId} && touch /var/log/${artifactId}/gc.log
|
|
FROM 766380763301.dkr.ecr.ap-south-1.amazonaws.com/build/java:8-jdk-slim-secure_v1.0
|
|
ADD https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.15.0/jmx_prometheus_javaagent-0.15.0.jar /opt/jmx_exporter.jar
|
|
### Config added through configmap
|
|
# COPY config.yaml /opt/config.yaml
|
|
EXPOSE 8880 8010
|
|
COPY --from=BUILD /usr/src/app/target/${artifactId}-${version}.jar /opt/target/${artifactId}.jar
|
|
COPY --from=BUILD /var/log/${artifactId} /var/log/${artifactId}
|
|
WORKDIR /opt/target
|
|
CMD ["${artifactId}.jar", "-javaagent:/opt/jmx_exporter.jar=8880:/opt/config/jmx-config.yaml", \
|
|
"-XX:MinRAMPercentage=50.0", "-XX:MaxRAMPercentage=80.0", \
|
|
"-XX:+UseParallelGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails", \
|
|
"-XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime", "-XX:+PrintHeapAtGC", \
|
|
"-Xloggc:/var/log/${artifactId}/gc.log", \
|
|
"-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=9000k", \
|
|
"-Xms2G", "-Xmx2G"]
|
|
EOF
|
|
|
|
}
|
|
|
|
prepareDockerfileNoBuild(){
|
|
cat << EOF > Dockerfile-${artifactId}
|
|
# This sample, non-production-ready template describes an Amazon EC2 instance and an Elastic Load Balancer.
|
|
# © 2020 Amazon Web Services, Inc. or its affiliates. All Rights Reserved.
|
|
# This AWS Content is provided subject to the terms of the AWS Customer Agreement available at
|
|
# http://aws.amazon.com/agreement or other written agreement between Customer and either
|
|
# Amazon Web Services, Inc. or Amazon Web Services EMEA SARL or both.
|
|
FROM 766380763301.dkr.ecr.ap-south-1.amazonaws.com/build/maven:3.3-jdk-8 as BUILD
|
|
#FROM asia-southeast1-docker.pkg.dev/supply-poc-351106/homelab-devops/maven:3.3-jdk-8 as BUILD
|
|
RUN mkdir -p /var/log/${artifactId} && touch /var/log/${artifactId}/gc.log
|
|
FROM 766380763301.dkr.ecr.ap-south-1.amazonaws.com/build/java:8-jdk-slim-secure_v1.0
|
|
#FROM asia-southeast1-docker.pkg.dev/supply-poc-351106/homelab-devops/java:8
|
|
ADD https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.15.0/jmx_prometheus_javaagent-0.15.0.jar /opt/jmx_exporter.jar
|
|
### Config added through configmap
|
|
# COPY config.yaml /opt/config.yaml
|
|
EXPOSE 8880 8010
|
|
COPY ${artifactId}/target/*.jar /opt/target/${artifactId}.jar
|
|
COPY --from=BUILD /var/log/${artifactId} /var/log/${artifactId}
|
|
WORKDIR /opt/target
|
|
CMD ["${artifactId}.jar", "-javaagent:/opt/jmx_exporter.jar=8880:/opt/config/jmx-config.yaml", \
|
|
"-XX:MinRAMPercentage=50.0", "-XX:MaxRAMPercentage=80.0", \
|
|
"-XX:+UseParallelGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails", \
|
|
"-XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime", "-XX:+PrintHeapAtGC", \
|
|
"-Xloggc:/var/log/${artifactId}/gc.log", \
|
|
"-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=9000k", \
|
|
"-Xms2G", "-Xmx2G"]
|
|
EOF
|
|
|
|
}
|
|
|
|
main(){
|
|
if [[ $# == 4 ]];then
|
|
export artifactId=$1
|
|
export version=$2
|
|
export doBuild=$3
|
|
export repoName=$4
|
|
if [[ $doBuild == "YES" ]];then
|
|
rm -f Dockerfile-${artifactId}
|
|
prepareDockerfileWithBuild
|
|
else
|
|
rm -f Dockerfile-${artifactId}
|
|
prepareDockerfileNoBuild
|
|
fi
|
|
ls -latr
|
|
cat Dockerfile-${artifactId}
|
|
else
|
|
echo "Please provide required parameters"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
main $@ |