Skip to content
This repository was archived by the owner on Feb 11, 2025. It is now read-only.
Merged
Changes from all commits
Commits
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
24 changes: 22 additions & 2 deletions images/base/helper-scripts/detect-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,39 @@ CA_FILE="/etc/ssl/certs/ca-certificates.crt"

# yarn
if command -v yarn -v &> /dev/null; then
echo ""
echo "add $CA_FILE to yarn"
yarn config set cafile $CA_FILE
fi

# java
if command -v java --version &> /dev/null; then
echo "add $CA_FILE to yarn"
keytool -importcert -alias $CA_FILE -keystore /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/cacerts -storepass changeit -file $CA_FILE -noprompt
echo ""
javacerts=/tmp/javacerts
echo "add $CA_FILE to java keystore"
echo "generating single certs at $javacerts/"
mkdir -p $javacerts
cat $CA_FILE | awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > ("/tmp/javacerts/cert" n ".crt")}'

for f in $javacerts/*.crt ; do
# delete empty lines in files
sed -i '/^$/d' $f
done
# delete empty files to prevent errors at import
find $javacerts -empty -delete

for x in $javacerts/*.crt ; do
alias=$(openssl x509 -noout -subject -in "$x" | awk -F= '{print $NF}' | sed -e 's/^[ \t]*//' | sed -e 's/ /_/g')
echo "importing cert of $alias"
keytool -importcert -alias $alias -keystore /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/cacerts -storepass changeit -file $x -noprompt
done
rm -rf $javacerts
fi

# maven
if command -v mvn -v &> /dev/null; then
if [ -f /mnt/dynamic/settings.xml ]; then
echo ""
echo "linking settings.xml from /mnt/dynamic/settings.xml to ${HOME}/.m2/settings.xml"
ln -s /mnt/dynamic/settings.xml ${HOME}/.m2/settings.xml
fi
Expand Down