Skip to content
This repository was archived by the owner on Feb 11, 2025. It is now read-only.

Commit 61d5df5

Browse files
authored
Merge pull request #33 from fullstack-devops/bugfix/java-keytool-import
fix java keytool import
2 parents 3835065 + ef62576 commit 61d5df5

File tree

1 file changed

+22
-2
lines changed

1 file changed

+22
-2
lines changed

images/base/helper-scripts/detect-setup.sh

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,39 @@ CA_FILE="/etc/ssl/certs/ca-certificates.crt"
44

55
# yarn
66
if command -v yarn -v &> /dev/null; then
7+
echo ""
78
echo "add $CA_FILE to yarn"
89
yarn config set cafile $CA_FILE
910
fi
1011

1112
# java
1213
if command -v java --version &> /dev/null; then
13-
echo "add $CA_FILE to yarn"
14-
keytool -importcert -alias $CA_FILE -keystore /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/cacerts -storepass changeit -file $CA_FILE -noprompt
14+
echo ""
15+
javacerts=/tmp/javacerts
16+
echo "add $CA_FILE to java keystore"
17+
echo "generating single certs at $javacerts/"
18+
mkdir -p $javacerts
19+
cat $CA_FILE | awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > ("/tmp/javacerts/cert" n ".crt")}'
20+
21+
for f in $javacerts/*.crt ; do
22+
# delete empty lines in files
23+
sed -i '/^$/d' $f
24+
done
25+
# delete empty files to prevent errors at import
26+
find $javacerts -empty -delete
27+
28+
for x in $javacerts/*.crt ; do
29+
alias=$(openssl x509 -noout -subject -in "$x" | awk -F= '{print $NF}' | sed -e 's/^[ \t]*//' | sed -e 's/ /_/g')
30+
echo "importing cert of $alias"
31+
keytool -importcert -alias $alias -keystore /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/cacerts -storepass changeit -file $x -noprompt
32+
done
33+
rm -rf $javacerts
1534
fi
1635

1736
# maven
1837
if command -v mvn -v &> /dev/null; then
1938
if [ -f /mnt/dynamic/settings.xml ]; then
39+
echo ""
2040
echo "linking settings.xml from /mnt/dynamic/settings.xml to ${HOME}/.m2/settings.xml"
2141
ln -s /mnt/dynamic/settings.xml ${HOME}/.m2/settings.xml
2242
fi

0 commit comments

Comments
 (0)