Skip to content

Commit fa17e9f

Browse files
committed
fix(ct): backport error handling to password change operations
Ensure password-related commands properly handle failures and print warnings if changes cannot be applied. Backported changes to v6.4, v6.5, and v6.6.
1 parent bd45e31 commit fa17e9f

File tree

3 files changed

+93
-0
lines changed

3 files changed

+93
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
diff --git a/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh b/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
2+
index 0bf9d0b80f..b640e4d1fc 100644
3+
--- a/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
4+
+++ b/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
5+
@@ -8,7 +8,7 @@ set -euo pipefail
6+
# Someone set the env var for passwords - get the new password in. Otherwise print warning.
7+
# https://docs.openshift.com/container-platform/4.14/openshift_images/create-images.html#avoid-default-passwords
8+
if [ "$LINUX_PASSWORD" != "payara" ]; then
9+
- echo -e "$LINUX_USER\n$LINUX_PASSWORD\n$LINUX_PASSWORD" | passwd
10+
+ echo -e "$LINUX_USER\n$LINUX_PASSWORD\n$LINUX_PASSWORD" | passwd || { echo "Linux password unchanged!"; }
11+
else
12+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT PASSWORD FOR USER \"${LINUX_USER}\"! ('payara')"
13+
echo " To change the password, set the LINUX_PASSWORD env var."
14+
@@ -19,7 +19,7 @@ if [ "$PAYARA_ADMIN_PASSWORD" != "admin" ]; then
15+
PASSWORD_FILE=$(mktemp)
16+
echo "AS_ADMIN_PASSWORD=admin" > "$PASSWORD_FILE"
17+
echo "AS_ADMIN_NEWPASSWORD=${PAYARA_ADMIN_PASSWORD}" >> "$PASSWORD_FILE"
18+
- asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-admin-password --domain_name="${DOMAIN_NAME}"
19+
+ asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-admin-password --domain_name="${DOMAIN_NAME}" || { echo "Payara password unchanged!"; }
20+
rm "$PASSWORD_FILE"
21+
else
22+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT PASSWORD FOR PAYARA ADMIN \"${PAYARA_ADMIN_USER}\"! ('admin')"
23+
@@ -35,7 +35,7 @@ if [ "$DOMAIN_PASSWORD" != "changeit" ]; then
24+
PASSWORD_FILE=$(mktemp)
25+
echo "AS_ADMIN_MASTERPASSWORD=changeit" >> "$PASSWORD_FILE"
26+
echo "AS_ADMIN_NEWMASTERPASSWORD=${DOMAIN_PASSWORD}" >> "$PASSWORD_FILE"
27+
- asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-master-password --savemasterpassword false "${DOMAIN_NAME}"
28+
+ asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-master-password --savemasterpassword false "${DOMAIN_NAME}" || { echo "Domain password unchanged!"; }
29+
rm "$PASSWORD_FILE"
30+
else
31+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT DOMAIN \"MASTER\" PASSWORD! ('changeit')"
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
diff --git a/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh b/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
2+
index 0bf9d0b80f..b640e4d1fc 100644
3+
--- a/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
4+
+++ b/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
5+
@@ -8,7 +8,7 @@ set -euo pipefail
6+
# Someone set the env var for passwords - get the new password in. Otherwise print warning.
7+
# https://docs.openshift.com/container-platform/4.14/openshift_images/create-images.html#avoid-default-passwords
8+
if [ "$LINUX_PASSWORD" != "payara" ]; then
9+
- echo -e "$LINUX_USER\n$LINUX_PASSWORD\n$LINUX_PASSWORD" | passwd
10+
+ echo -e "$LINUX_USER\n$LINUX_PASSWORD\n$LINUX_PASSWORD" | passwd || { echo "Linux password unchanged!"; }
11+
else
12+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT PASSWORD FOR USER \"${LINUX_USER}\"! ('payara')"
13+
echo " To change the password, set the LINUX_PASSWORD env var."
14+
@@ -19,7 +19,7 @@ if [ "$PAYARA_ADMIN_PASSWORD" != "admin" ]; then
15+
PASSWORD_FILE=$(mktemp)
16+
echo "AS_ADMIN_PASSWORD=admin" > "$PASSWORD_FILE"
17+
echo "AS_ADMIN_NEWPASSWORD=${PAYARA_ADMIN_PASSWORD}" >> "$PASSWORD_FILE"
18+
- asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-admin-password --domain_name="${DOMAIN_NAME}"
19+
+ asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-admin-password --domain_name="${DOMAIN_NAME}" || { echo "Payara password unchanged!"; }
20+
rm "$PASSWORD_FILE"
21+
else
22+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT PASSWORD FOR PAYARA ADMIN \"${PAYARA_ADMIN_USER}\"! ('admin')"
23+
@@ -35,7 +35,7 @@ if [ "$DOMAIN_PASSWORD" != "changeit" ]; then
24+
PASSWORD_FILE=$(mktemp)
25+
echo "AS_ADMIN_MASTERPASSWORD=changeit" >> "$PASSWORD_FILE"
26+
echo "AS_ADMIN_NEWMASTERPASSWORD=${DOMAIN_PASSWORD}" >> "$PASSWORD_FILE"
27+
- asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-master-password --savemasterpassword false "${DOMAIN_NAME}"
28+
+ asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-master-password --savemasterpassword false "${DOMAIN_NAME}" || { echo "Domain password unchanged!"; }
29+
rm "$PASSWORD_FILE"
30+
else
31+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT DOMAIN \"MASTER\" PASSWORD! ('changeit')"
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
diff --git a/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh b/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
2+
index 0bf9d0b80f..b640e4d1fc 100644
3+
--- a/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
4+
+++ b/modules/container-base/src/main/docker/scripts/init_1_change_passwords.sh
5+
@@ -8,7 +8,7 @@ set -euo pipefail
6+
# Someone set the env var for passwords - get the new password in. Otherwise print warning.
7+
# https://docs.openshift.com/container-platform/4.14/openshift_images/create-images.html#avoid-default-passwords
8+
if [ "$LINUX_PASSWORD" != "payara" ]; then
9+
- echo -e "$LINUX_USER\n$LINUX_PASSWORD\n$LINUX_PASSWORD" | passwd
10+
+ echo -e "$LINUX_USER\n$LINUX_PASSWORD\n$LINUX_PASSWORD" | passwd || { echo "Linux password unchanged!"; }
11+
else
12+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT PASSWORD FOR USER \"${LINUX_USER}\"! ('payara')"
13+
echo " To change the password, set the LINUX_PASSWORD env var."
14+
@@ -19,7 +19,7 @@ if [ "$PAYARA_ADMIN_PASSWORD" != "admin" ]; then
15+
PASSWORD_FILE=$(mktemp)
16+
echo "AS_ADMIN_PASSWORD=admin" > "$PASSWORD_FILE"
17+
echo "AS_ADMIN_NEWPASSWORD=${PAYARA_ADMIN_PASSWORD}" >> "$PASSWORD_FILE"
18+
- asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-admin-password --domain_name="${DOMAIN_NAME}"
19+
+ asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-admin-password --domain_name="${DOMAIN_NAME}" || { echo "Payara password unchanged!"; }
20+
rm "$PASSWORD_FILE"
21+
else
22+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT PASSWORD FOR PAYARA ADMIN \"${PAYARA_ADMIN_USER}\"! ('admin')"
23+
@@ -35,7 +35,7 @@ if [ "$DOMAIN_PASSWORD" != "changeit" ]; then
24+
PASSWORD_FILE=$(mktemp)
25+
echo "AS_ADMIN_MASTERPASSWORD=changeit" >> "$PASSWORD_FILE"
26+
echo "AS_ADMIN_NEWMASTERPASSWORD=${DOMAIN_PASSWORD}" >> "$PASSWORD_FILE"
27+
- asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-master-password --savemasterpassword false "${DOMAIN_NAME}"
28+
+ asadmin --user="${PAYARA_ADMIN_USER}" --passwordfile="$PASSWORD_FILE" change-master-password --savemasterpassword false "${DOMAIN_NAME}" || { echo "Domain password unchanged!"; }
29+
rm "$PASSWORD_FILE"
30+
else
31+
echo "IMPORTANT: THIS CONTAINER USES THE DEFAULT DOMAIN \"MASTER\" PASSWORD! ('changeit')"

0 commit comments

Comments
 (0)