From 57242a81c32cfd2911cd80f8705dbd993ffafbb4 Mon Sep 17 00:00:00 2001 From: kabicin Date: Mon, 22 Aug 2022 13:47:02 -0700 Subject: [PATCH 01/25] Update helpers to use features.sh --- .../kernel/helpers/build/configure-liberty.sh | 54 +++++++++++++++++++ .../configuration_snippets/http-endpoint.xml | 5 -- .../http-ssl-endpoint.xml | 6 --- .../configuration_snippets/iiop-endpoint.xml | 5 -- .../iiop-ssl-endpoint.xml | 8 --- .../configuration_snippets/jms-endpoint.xml | 5 -- .../jms-ssl-endpoint.xml | 5 -- .../mp-health-check.xml | 6 --- .../configuration_snippets/mp-monitoring.xml | 9 ---- .../sessioncache-features.xml | 6 ++- ga/latest/kernel/helpers/build/configure.sh | 49 ++++++++++++++++- ga/latest/kernel/helpers/build/features.sh | 17 ++++++ .../helpers/runtime/configure-liberty.sh | 54 +++++++++++++++++++ .../kernel/helpers/runtime/docker-server.sh | 8 +++ 14 files changed, 185 insertions(+), 52 deletions(-) create mode 100755 ga/22.0.0.8/kernel/helpers/build/configure-liberty.sh delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml delete mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml create mode 100755 ga/latest/kernel/helpers/runtime/configure-liberty.sh diff --git a/ga/22.0.0.8/kernel/helpers/build/configure-liberty.sh b/ga/22.0.0.8/kernel/helpers/build/configure-liberty.sh new file mode 100755 index 00000000..7fd7a335 --- /dev/null +++ b/ga/22.0.0.8/kernel/helpers/build/configure-liberty.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then + # Create new Liberty server + /opt/ibm/wlp/bin/server create >/tmp/serverOutput + rc=$? + if [ $rc -ne 0 ]; then + cat /tmp/serverOutput + rm /tmp/serverOutput + exit $rc + fi + rm /tmp/serverOutput + + # Verify server creation + if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + echo "The server name contains a character that is not valid." + exit 1 + fi + chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + + # Delete old symlinks + rm /opt/ibm/links/output + rm /opt/ibm/links/config + + # Add new output folder symlink and resolve group write permissions + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME + ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output + chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs + chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs + + # Hand over the SCC + if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then + mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ + fi + rm -rf /opt/ibm/wlp/output/defaultServer + + # Add new server symlink and populate folder + mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ + ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + mkdir -p /config/configDropins/defaults + mkdir -p /config/configDropins/overrides + chmod -R g+w /config + + rm -rf /opt/ibm/wlp/usr/servers/defaultServer +fi + +echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log +exit 0 diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml deleted file mode 100644 index 5f6c6055..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml deleted file mode 100644 index 2a2388a3..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml deleted file mode 100644 index a5b7d8a0..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml deleted file mode 100644 index f8fea3c8..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml deleted file mode 100644 index a99b0716..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml deleted file mode 100644 index d32a77ce..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml b/ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml deleted file mode 100644 index 874559d6..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - mpHealth-1.0 - - \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml b/ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml deleted file mode 100644 index 4f5b0ce0..00000000 --- a/ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - mpMetrics-1.1 - monitor-1.0 - - - - diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml b/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml index f7b5a468..90e15583 100644 --- a/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml +++ b/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml @@ -2,4 +2,8 @@ sessionCache-1.0 - \ No newline at end of file +<<<<<<< HEAD + +======= + +>>>>>>> 34eeb1f (Update helpers to use features.sh) diff --git a/ga/latest/kernel/helpers/build/configure.sh b/ga/latest/kernel/helpers/build/configure.sh index b2480a5c..e615e662 100755 --- a/ga/latest/kernel/helpers/build/configure.sh +++ b/ga/latest/kernel/helpers/build/configure.sh @@ -1,5 +1,9 @@ #!/bin/bash +<<<<<<< HEAD # (C) Copyright IBM Corporation 2020, 2023. +======= +# (C) Copyright IBM Corporation 2022. +>>>>>>> 34eeb1f (Update helpers to use features.sh) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,10 +18,18 @@ # limitations under the License. # Determine if featureUtility ran in an earlier build step +<<<<<<< HEAD if /opt/ibm/helpers/build/internal/features-installed.sh; then FEATURES_INSTALLED=true else FEATURES_INSTALLED=false +======= +if [ -f "/opt/ibm/wlp/configure-liberty.log" ]; then + FEATURES_INSTALLED=true +else + FEATURES_INSTALLED=false + >&2 echo "WARNING: This is not an optimal build configuration. Although features in server.xml will continue to be installed correctly, the 'RUN features.sh' command should be added to the Dockerfile prior to configure.sh. See https://github.com/WASdev/ci.docker#building-an-application-image for a sample application image template." +>>>>>>> 34eeb1f (Update helpers to use features.sh) fi if [ "$VERBOSE" != "true" ]; then @@ -27,6 +39,14 @@ fi set -Eeox pipefail function main() { + if [ "$FEATURES_INSTALLED" == "false" ]; then + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/runtime/configure-liberty.sh + if [ $? -ne 0 ]; then + exit + fi + fi + ##Define variables for XML snippets source and target paths WLP_INSTALL_DIR=/opt/ibm/wlp SHARED_CONFIG_DIR=${WLP_INSTALL_DIR}/usr/shared/config @@ -38,6 +58,7 @@ function main() { mkdir -p ${SNIPPETS_TARGET} mkdir -p ${SNIPPETS_TARGET_DEFAULTS} +<<<<<<< HEAD # Check for each Liberty value-add functionality if [ "$FEATURES_INSTALLED" == "false" ]; then # HTTP Endpoint @@ -121,12 +142,34 @@ function main() { mkdir -p ${SHARED_CONFIG_DIR}/hazelcast cp ${SNIPPETS_SOURCE}/hazelcast-${HZ_SESSION_CACHE}.xml ${SHARED_CONFIG_DIR}/hazelcast/hazelcast.xml fi +======= + #Check for each Liberty value-add functionality + + # Infinispan Session Caching + if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then + cp ${SNIPPETS_SOURCE}/infinispan-client-sessioncache.xml ${SNIPPETS_TARGET}/infinispan-client-sessioncache.xml + chmod g+rw $SNIPPETS_TARGET/infinispan-client-sessioncache.xml + fi + + # Hazelcast Session Caching + if [ "${HZ_SESSION_CACHE}" == "client" ] || [ "${HZ_SESSION_CACHE}" == "embedded" ]; then + cp ${SNIPPETS_SOURCE}/hazelcast-sessioncache.xml ${SNIPPETS_TARGET}/hazelcast-sessioncache.xml + mkdir -p ${SHARED_CONFIG_DIR}/hazelcast + cp ${SNIPPETS_SOURCE}/hazelcast-${HZ_SESSION_CACHE}.xml ${SHARED_CONFIG_DIR}/hazelcast/hazelcast.xml +>>>>>>> 34eeb1f (Update helpers to use features.sh) fi # Key Store keystorePath="$SNIPPETS_TARGET_DEFAULTS/keystore.xml" +<<<<<<< HEAD if [ "$SSL" != "false" ] && [ "$TLS" != "false" ]; then if [ ! -e $keystorePath ]; then +======= + if [ "$SSL" != "false" ] && [ "$TLS" != "false" ] + then + if [ ! -e $keystorePath ] + then +>>>>>>> 34eeb1f (Update helpers to use features.sh) # Generate the keystore.xml export KEYSTOREPWD=$(openssl rand -base64 32) sed "s|REPLACE|$KEYSTOREPWD|g" $SNIPPETS_SOURCE/keystore.xml > $SNIPPETS_TARGET_DEFAULTS/keystore.xml @@ -145,8 +188,10 @@ function main() { curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip installUtility install --acceptLicense defaultServer --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip - else - installUtility install --acceptLicense defaultServer || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + # Otherwise, if features.sh did not run, install server features. + elif [ "$FEATURES_INSTALLED" == "false" ]; then + featureUtility installServerFeatures --acceptLicense defaultServer --noCache + find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw fi fi diff --git a/ga/latest/kernel/helpers/build/features.sh b/ga/latest/kernel/helpers/build/features.sh index 4e665489..70121285 100755 --- a/ga/latest/kernel/helpers/build/features.sh +++ b/ga/latest/kernel/helpers/build/features.sh @@ -1,5 +1,9 @@ #!/bin/bash +<<<<<<< HEAD # (C) Copyright IBM Corporation 2023. +======= +# (C) Copyright IBM Corporation 2022. +>>>>>>> 34eeb1f (Update helpers to use features.sh) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,7 +20,17 @@ if [ "$VERBOSE" != "true" ]; then exec &>/dev/null fi +<<<<<<< HEAD set -Eeox pipefail +======= +set -Eeox pipefail + +# Resolve liberty server symlinks and creation for server name changes +/opt/ibm/helpers/runtime/configure-liberty.sh +if [ $? -ne 0 ]; then + exit +fi +>>>>>>> 34eeb1f (Update helpers to use features.sh) ##Define variables for XML snippets source and target paths SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets @@ -44,5 +58,8 @@ fi # Install necessary features using featureUtility featureUtility installServerFeatures --acceptLicense defaultServer --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw +<<<<<<< HEAD echo "features.sh script has been run" > /logs/features.log +======= +>>>>>>> 34eeb1f (Update helpers to use features.sh) diff --git a/ga/latest/kernel/helpers/runtime/configure-liberty.sh b/ga/latest/kernel/helpers/runtime/configure-liberty.sh new file mode 100755 index 00000000..7fd7a335 --- /dev/null +++ b/ga/latest/kernel/helpers/runtime/configure-liberty.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then + # Create new Liberty server + /opt/ibm/wlp/bin/server create >/tmp/serverOutput + rc=$? + if [ $rc -ne 0 ]; then + cat /tmp/serverOutput + rm /tmp/serverOutput + exit $rc + fi + rm /tmp/serverOutput + + # Verify server creation + if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + echo "The server name contains a character that is not valid." + exit 1 + fi + chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + + # Delete old symlinks + rm /opt/ibm/links/output + rm /opt/ibm/links/config + + # Add new output folder symlink and resolve group write permissions + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME + ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output + chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs + chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs + + # Hand over the SCC + if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then + mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ + fi + rm -rf /opt/ibm/wlp/output/defaultServer + + # Add new server symlink and populate folder + mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ + ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + mkdir -p /config/configDropins/defaults + mkdir -p /config/configDropins/overrides + chmod -R g+w /config + + rm -rf /opt/ibm/wlp/usr/servers/defaultServer +fi + +echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log +exit 0 diff --git a/ga/latest/kernel/helpers/runtime/docker-server.sh b/ga/latest/kernel/helpers/runtime/docker-server.sh index 77f7b426..84e9dbe8 100755 --- a/ga/latest/kernel/helpers/runtime/docker-server.sh +++ b/ga/latest/kernel/helpers/runtime/docker-server.sh @@ -84,6 +84,12 @@ function importKeyCert() { fi } +# Resolve liberty server symlinks and creation for server name changes +/opt/ibm/helpers/runtime/configure-liberty.sh +if [ $? -ne 0 ]; then + exit +fi + case "${LICENSE,,}" in "accept" ) # Suppress license message in logs grep -s -F "com.ibm.ws.logging.hideMessage" /config/bootstrap.properties \ @@ -140,6 +146,8 @@ if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then echo "INFINISPAN_PASS: ${INFINISPAN_PASS}" fi +# Remove generated metadata +rm /opt/ibm/wlp/configure-liberty.log # Pass on to the real server run if [ -d "/output/workarea/checkpoint/image" ]; then From e5de794b84beb3d329894fac0b4c20e794af1d0b Mon Sep 17 00:00:00 2001 From: kabicin Date: Mon, 22 Aug 2022 13:53:24 -0700 Subject: [PATCH 02/25] Add defaultServer name change feature --- ga/latest/kernel/Dockerfile.ubi.ibmjava8 | 44 ++++++++++++++------ ga/latest/kernel/Dockerfile.ubi.openjdk11 | 44 ++++++++++++++------ ga/latest/kernel/Dockerfile.ubi.openjdk17 | 44 ++++++++++++++------ ga/latest/kernel/Dockerfile.ubi.openjdk8 | 44 ++++++++++++++------ ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 | 44 ++++++++++++++------ ga/latest/kernel/Dockerfile.ubuntu.openjdk11 | 44 ++++++++++++++------ ga/latest/kernel/Dockerfile.ubuntu.openjdk17 | 44 ++++++++++++++------ 7 files changed, 217 insertions(+), 91 deletions(-) diff --git a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 index 74d12260..c940be5b 100644 --- a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk11 b/ga/latest/kernel/Dockerfile.ubi.openjdk11 index 9a1edc53..5339bb7a 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk11 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk17 b/ga/latest/kernel/Dockerfile.ubi.openjdk17 index 2afe4dcd..5a3d1fc1 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk17 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk8 b/ga/latest/kernel/Dockerfile.ubi.openjdk8 index bd4740e2..0dfae871 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk8 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 index 0b58a7f4..4df0ebd4 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 index 4978eb1f..cffaafda 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 @@ -126,32 +126,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -168,4 +186,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 index 7fe7d2e8..42c62686 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 @@ -126,32 +126,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -168,4 +186,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] From b8d9ad23d5016190f3acc5b06acd0913c6797f6b Mon Sep 17 00:00:00 2001 From: kabicin Date: Mon, 22 Aug 2022 13:59:41 -0700 Subject: [PATCH 03/25] Update 22.0.0.8 --- ga/22.0.0.8/kernel/helpers/build/configure.sh | 156 ++++++++++++++++++ ga/22.0.0.8/kernel/helpers/build/features.sh | 52 ++++++ ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 | 44 +++-- ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 | 44 +++-- ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 | 44 +++-- ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 | 44 +++-- ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 | 44 +++-- .../kernel/Dockerfile.ubuntu.openjdk11 | 44 +++-- .../kernel/Dockerfile.ubuntu.openjdk17 | 44 +++-- .../sessioncache-features.xml | 2 +- .../helpers/runtime/configure-liberty.sh | 54 ++++++ .../kernel/helpers/runtime/docker-server.sh | 8 + 12 files changed, 488 insertions(+), 92 deletions(-) create mode 100755 ga/22.0.0.8/kernel/helpers/build/configure.sh create mode 100755 ga/22.0.0.8/kernel/helpers/build/features.sh create mode 100755 ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh diff --git a/ga/22.0.0.8/kernel/helpers/build/configure.sh b/ga/22.0.0.8/kernel/helpers/build/configure.sh new file mode 100755 index 00000000..33ce7ab0 --- /dev/null +++ b/ga/22.0.0.8/kernel/helpers/build/configure.sh @@ -0,0 +1,156 @@ +#!/bin/bash +# (C) Copyright IBM Corporation 2022. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Determine if featureUtility ran in an earlier build step +if [ -f "/opt/ibm/wlp/configure-liberty.log" ]; then + FEATURES_INSTALLED=true +else + FEATURES_INSTALLED=false + >&2 echo "WARNING: This is not an optimal build configuration. Although features in server.xml will continue to be installed correctly, the 'RUN features.sh' command should be added to the Dockerfile prior to configure.sh. See https://github.com/WASdev/ci.docker#building-an-application-image for a sample application image template." +fi + +if [ "$VERBOSE" != "true" ]; then + exec &>/dev/null +fi + +set -Eeox pipefail + +function main() { + if [ "$FEATURES_INSTALLED" == "false" ]; then + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/runtime/configure-liberty.sh + if [ $? -ne 0 ]; then + exit + fi + fi + + ##Define variables for XML snippets source and target paths + WLP_INSTALL_DIR=/opt/ibm/wlp + SHARED_CONFIG_DIR=${WLP_INSTALL_DIR}/usr/shared/config + SHARED_RESOURCE_DIR=${WLP_INSTALL_DIR}/usr/shared/resources + + SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets + SNIPPETS_TARGET=/config/configDropins/overrides + SNIPPETS_TARGET_DEFAULTS=/config/configDropins/defaults + mkdir -p ${SNIPPETS_TARGET} + mkdir -p ${SNIPPETS_TARGET_DEFAULTS} + + #Check for each Liberty value-add functionality + + # Infinispan Session Caching + if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then + cp ${SNIPPETS_SOURCE}/infinispan-client-sessioncache.xml ${SNIPPETS_TARGET}/infinispan-client-sessioncache.xml + chmod g+rw $SNIPPETS_TARGET/infinispan-client-sessioncache.xml + fi + + # Hazelcast Session Caching + if [ "${HZ_SESSION_CACHE}" == "client" ] || [ "${HZ_SESSION_CACHE}" == "embedded" ]; then + cp ${SNIPPETS_SOURCE}/hazelcast-sessioncache.xml ${SNIPPETS_TARGET}/hazelcast-sessioncache.xml + mkdir -p ${SHARED_CONFIG_DIR}/hazelcast + cp ${SNIPPETS_SOURCE}/hazelcast-${HZ_SESSION_CACHE}.xml ${SHARED_CONFIG_DIR}/hazelcast/hazelcast.xml + fi + + # Key Store + keystorePath="$SNIPPETS_TARGET_DEFAULTS/keystore.xml" + if [ "$SSL" != "false" ] && [ "$TLS" != "false" ] + then + if [ ! -e $keystorePath ] + then + # Generate the keystore.xml + export KEYSTOREPWD=$(openssl rand -base64 32) + sed "s|REPLACE|$KEYSTOREPWD|g" $SNIPPETS_SOURCE/keystore.xml > $SNIPPETS_TARGET_DEFAULTS/keystore.xml + chmod g+w $SNIPPETS_TARGET_DEFAULTS/keystore.xml + fi + fi + + # SSO + if [[ -n "$SEC_SSO_PROVIDERS" ]]; then + parseProviders $SEC_SSO_PROVIDERS + fi + + if [ "$SKIP_FEATURE_INSTALL" != "true" ]; then + # Install needed features + if [ "$FEATURE_REPO_URL" ]; then + curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip + installUtility install --acceptLicense defaultServer --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + rm -rf /tmp/repo.zip + # Otherwise, if features.sh did not run, install server features. + elif [ "$FEATURES_INSTALLED" == "false" ]; then + featureUtility installServerFeatures --acceptLicense defaultServer --noCache + find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw + fi + fi + + # Apply interim fixes found in /opt/ibm/fixes + # Fixes recommended by IBM, such as to resolve security vulnerabilities, are also included in /opt/ibm/fixes + # Note: This step should be done once needed features are enabled and installed using installUtility. + + # Do not create a SCC + if [ -n "${IBM_JAVA_OPTIONS}" ]; then + IBM_JAVA_OPTIONS="${IBM_JAVA_OPTIONS} -Xshareclasses:none" + fi + + if [ -n "${OPENJ9_JAVA_OPTIONS}" ]; then + OPENJ9_JAVA_OPTIONS="${OPENJ9_JAVA_OPTIONS} -Xshareclasses:none" + fi + + find /opt/ibm/fixes -type f -name "*.jar" -print0 | sort -z | xargs -0 -n 1 -r -I {} java -jar {} --installLocation $WLP_INSTALL_DIR + #Make sure that group write permissions are set correctly after installing new features + find /opt/ibm/wlp ! -perm -g=rw -print0 | xargs -r -0 chmod g+rw + + # Create a new SCC layer + if [ "$OPENJ9_SCC" == "true" ] + then + populate_scc.sh -i 1 + fi +} + +## parse provider list to generate files into configDropins +function parseProviders() { + while [ $# -gt 0 ]; do + case "$1" in + oidc:*) + parseCommaList oidc "${1#*:}" + ;; + oauth2:*) + parseCommaList oauth2 "${1#*:}" + ;; + *) + if [[ $(ls $SNIPPETS_SOURCE | grep "$1") ]]; then + cp $SNIPPETS_SOURCE/sso-${1}.xml $SNIPPETS_TARGET_DEFAULTS + fi + ;; + esac + shift + done +} + +## process the comma delimitted oauth2/oidc source lists +function parseCommaList() { + local type="$1" + local list=$(echo "$2" | tr , " ") + + for current in ${list}; do + if [[ "${type}" = "oidc" ]]; then + # replace oidc identifiers with custom name + sed -e 's/=\"oidc/=\"'${current}'/g' -e 's/_OIDC_/_'${current^^}'_/g' $SNIPPETS_SOURCE/sso-oidc.xml > $SNIPPETS_TARGET_DEFAULTS/sso-${current}.xml + else + # replace oauth2 identifiers with custom name + sed -e 's/=\"oauth2/=\"'${current}'/g' -e 's/_OAUTH2_/_'${current^^}'_/g' $SNIPPETS_SOURCE/sso-oauth2.xml > $SNIPPETS_TARGET_DEFAULTS/sso-${current}.xml + fi + done +} + +main "$@" diff --git a/ga/22.0.0.8/kernel/helpers/build/features.sh b/ga/22.0.0.8/kernel/helpers/build/features.sh new file mode 100755 index 00000000..47b01b3f --- /dev/null +++ b/ga/22.0.0.8/kernel/helpers/build/features.sh @@ -0,0 +1,52 @@ +#!/bin/bash +# (C) Copyright IBM Corporation 2022. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +if [ "$VERBOSE" != "true" ]; then + exec &>/dev/null +fi + +set -Eeox pipefail + +# Resolve liberty server symlinks and creation for server name changes +/opt/ibm/helpers/runtime/configure-liberty.sh +if [ $? -ne 0 ]; then + exit +fi + +##Define variables for XML snippets source and target paths +SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets +SNIPPETS_TARGET=/config/configDropins/overrides +SNIPPETS_TARGET_DEFAULTS=/config/configDropins/defaults +mkdir -p ${SNIPPETS_TARGET} +mkdir -p ${SNIPPETS_TARGET_DEFAULTS} + +# Session Caching +if [ -n "$INFINISPAN_SERVICE_NAME" ] || [ "${HZ_SESSION_CACHE}" == "client" ] || [ "${HZ_SESSION_CACHE}" == "embedded" ]; then + cp ${SNIPPETS_SOURCE}/sessioncache-features.xml ${SNIPPETS_TARGET}/sessioncache-features.xml + chmod g+rw $SNIPPETS_TARGET/sessioncache-features.xml +fi + +# SSO +if [[ -n "$SEC_SSO_PROVIDERS" ]]; then + cp $SNIPPETS_SOURCE/sso-features.xml $SNIPPETS_TARGET_DEFAULTS +fi + +# Key Store +if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then + cp $SNIPPETS_SOURCE/tls.xml $SNIPPETS_TARGET/tls.xml +fi + +# Install necessary features using featureUtility +featureUtility installServerFeatures --acceptLicense defaultServer --noCache +find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 index 74d12260..c940be5b 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 index 9a1edc53..5339bb7a 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 index 2afe4dcd..5a3d1fc1 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 index bd4740e2..0dfae871 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 index 0b58a7f4..4df0ebd4 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 @@ -130,32 +130,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -172,4 +190,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 index 4978eb1f..cffaafda 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 @@ -126,32 +126,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -168,4 +186,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 index 7fe7d2e8..42c62686 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 @@ -126,32 +126,50 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ - && chown -R 1001:0 /opt/ibm/wlp/output \ - && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ @@ -168,4 +186,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml b/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml index f7b5a468..05f2ee52 100644 --- a/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml +++ b/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml @@ -2,4 +2,4 @@ sessionCache-1.0 - \ No newline at end of file + diff --git a/ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh new file mode 100755 index 00000000..7fd7a335 --- /dev/null +++ b/ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then + # Create new Liberty server + /opt/ibm/wlp/bin/server create >/tmp/serverOutput + rc=$? + if [ $rc -ne 0 ]; then + cat /tmp/serverOutput + rm /tmp/serverOutput + exit $rc + fi + rm /tmp/serverOutput + + # Verify server creation + if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + echo "The server name contains a character that is not valid." + exit 1 + fi + chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + + # Delete old symlinks + rm /opt/ibm/links/output + rm /opt/ibm/links/config + + # Add new output folder symlink and resolve group write permissions + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME + ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output + chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs + chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs + + # Hand over the SCC + if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then + mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ + fi + rm -rf /opt/ibm/wlp/output/defaultServer + + # Add new server symlink and populate folder + mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ + ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + mkdir -p /config/configDropins/defaults + mkdir -p /config/configDropins/overrides + chmod -R g+w /config + + rm -rf /opt/ibm/wlp/usr/servers/defaultServer +fi + +echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log +exit 0 diff --git a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh index 77f7b426..84e9dbe8 100755 --- a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh +++ b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh @@ -84,6 +84,12 @@ function importKeyCert() { fi } +# Resolve liberty server symlinks and creation for server name changes +/opt/ibm/helpers/runtime/configure-liberty.sh +if [ $? -ne 0 ]; then + exit +fi + case "${LICENSE,,}" in "accept" ) # Suppress license message in logs grep -s -F "com.ibm.ws.logging.hideMessage" /config/bootstrap.properties \ @@ -140,6 +146,8 @@ if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then echo "INFINISPAN_PASS: ${INFINISPAN_PASS}" fi +# Remove generated metadata +rm /opt/ibm/wlp/configure-liberty.log # Pass on to the real server run if [ -d "/output/workarea/checkpoint/image" ]; then From 9f8663d6e61f80f4302a7e581a5ab145a430c1d1 Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 24 Aug 2022 10:07:14 -0700 Subject: [PATCH 04/25] Revert /opt/ibm/wlp/output chown --- ga/latest/kernel/Dockerfile.ubi.ibmjava8 | 2 ++ ga/latest/kernel/Dockerfile.ubi.openjdk11 | 2 ++ ga/latest/kernel/Dockerfile.ubi.openjdk17 | 2 ++ ga/latest/kernel/Dockerfile.ubi.openjdk8 | 2 ++ ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 | 2 ++ ga/latest/kernel/Dockerfile.ubuntu.openjdk11 | 2 ++ ga/latest/kernel/Dockerfile.ubuntu.openjdk17 | 2 ++ 7 files changed, 14 insertions(+) diff --git a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 index c940be5b..4ca93d0a 100644 --- a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk11 b/ga/latest/kernel/Dockerfile.ubi.openjdk11 index 5339bb7a..d4e834b8 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk11 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk17 b/ga/latest/kernel/Dockerfile.ubi.openjdk17 index 5a3d1fc1..cc263955 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk17 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk8 b/ga/latest/kernel/Dockerfile.ubi.openjdk8 index 0dfae871..66c3138d 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk8 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 index 4df0ebd4..a00edd25 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 index cffaafda..2222b59c 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 @@ -135,6 +135,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 index 42c62686..3e3ac6a7 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 @@ -135,6 +135,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ From 8eec93142b41a3e1ec9222c1cc3f0bef16ffe4eb Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 24 Aug 2022 10:50:48 -0700 Subject: [PATCH 05/25] Revert /opt/ibm/wlp/output chown for 22.0.0.8 --- ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 | 2 ++ ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 | 2 ++ ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 | 2 ++ ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 | 2 ++ ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 | 2 ++ ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 | 2 ++ ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 | 2 ++ 7 files changed, 14 insertions(+) diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 index c940be5b..4ca93d0a 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 index 5339bb7a..d4e834b8 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 index 5a3d1fc1..cc263955 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 index 0dfae871..66c3138d 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 index 4df0ebd4..a00edd25 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 @@ -139,6 +139,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 index cffaafda..2222b59c 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 @@ -135,6 +135,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 index 42c62686..3e3ac6a7 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 @@ -135,6 +135,8 @@ RUN mkdir /logs \ && chmod -R g+rwx /opt/ibm/fixes \ && chown -R 1001:0 /opt/ibm/wlp/usr \ && chmod -R g+rw /opt/ibm/wlp/usr \ + && chown -R 1001:0 /opt/ibm/wlp/output \ + && chmod -R g+rw /opt/ibm/wlp/output \ && chown -R 1001:0 /logs \ && chmod -R g+rw /logs \ && chown -R 1001:0 /etc/wlp \ From 308eeed03b737d537a4be9dafa905e4b83f88003 Mon Sep 17 00:00:00 2001 From: kabicin Date: Thu, 25 Aug 2022 07:50:38 -0700 Subject: [PATCH 06/25] Update features install to use SERVER_NAME --- ga/latest/kernel/helpers/build/configure.sh | 4 ++-- ga/latest/kernel/helpers/build/features.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ga/latest/kernel/helpers/build/configure.sh b/ga/latest/kernel/helpers/build/configure.sh index e615e662..16e9f67a 100755 --- a/ga/latest/kernel/helpers/build/configure.sh +++ b/ga/latest/kernel/helpers/build/configure.sh @@ -186,11 +186,11 @@ function main() { # Install needed features if [ "$FEATURE_REPO_URL" ]; then curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip - installUtility install --acceptLicense defaultServer --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense ${SERVER_NAME} --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip # Otherwise, if features.sh did not run, install server features. elif [ "$FEATURES_INSTALLED" == "false" ]; then - featureUtility installServerFeatures --acceptLicense defaultServer --noCache + featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw fi fi diff --git a/ga/latest/kernel/helpers/build/features.sh b/ga/latest/kernel/helpers/build/features.sh index 70121285..e6ab6446 100755 --- a/ga/latest/kernel/helpers/build/features.sh +++ b/ga/latest/kernel/helpers/build/features.sh @@ -56,7 +56,7 @@ if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then fi # Install necessary features using featureUtility -featureUtility installServerFeatures --acceptLicense defaultServer --noCache +featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw <<<<<<< HEAD From 5380a00c5203d831bf1547f46c006397e7473501 Mon Sep 17 00:00:00 2001 From: kabicin Date: Thu, 25 Aug 2022 07:52:29 -0700 Subject: [PATCH 07/25] Update 22.0.0.8 --- ga/22.0.0.8/kernel/helpers/build/configure.sh | 4 ++-- ga/22.0.0.8/kernel/helpers/build/features.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ga/22.0.0.8/kernel/helpers/build/configure.sh b/ga/22.0.0.8/kernel/helpers/build/configure.sh index 33ce7ab0..d5d795b8 100755 --- a/ga/22.0.0.8/kernel/helpers/build/configure.sh +++ b/ga/22.0.0.8/kernel/helpers/build/configure.sh @@ -84,11 +84,11 @@ function main() { # Install needed features if [ "$FEATURE_REPO_URL" ]; then curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip - installUtility install --acceptLicense defaultServer --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense ${SERVER_NAME} --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip # Otherwise, if features.sh did not run, install server features. elif [ "$FEATURES_INSTALLED" == "false" ]; then - featureUtility installServerFeatures --acceptLicense defaultServer --noCache + featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw fi fi diff --git a/ga/22.0.0.8/kernel/helpers/build/features.sh b/ga/22.0.0.8/kernel/helpers/build/features.sh index 47b01b3f..291712f3 100755 --- a/ga/22.0.0.8/kernel/helpers/build/features.sh +++ b/ga/22.0.0.8/kernel/helpers/build/features.sh @@ -48,5 +48,5 @@ if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then fi # Install necessary features using featureUtility -featureUtility installServerFeatures --acceptLicense defaultServer --noCache +featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw From 6a3023ec4a6c1e2082bd0db2a6b192a87428ea8e Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 30 May 2023 15:25:41 -0400 Subject: [PATCH 08/25] Move defaultServer name change to new releases --- ga/22.0.0.8/kernel/helpers/build/configure.sh | 156 ------------------ ga/22.0.0.8/kernel/helpers/build/features.sh | 52 ------ .../kernel/helpers/build/configure-liberty.sh | 0 ga/23.0.0.3/kernel/helpers/build/configure.sh | 12 +- ga/23.0.0.3/kernel/helpers/build/features.sh | 8 +- .../helpers/build}/configure-liberty.sh | 0 .../kernel/helpers/build/configure-liberty.sh | 54 ++++++ ga/23.0.0.6/kernel/helpers/build/configure.sh | 12 +- ga/23.0.0.6/kernel/helpers/build/features.sh | 8 +- .../kernel/helpers/runtime/docker-server.sh | 2 +- .../kernel/helpers/build/configure-liberty.sh | 54 ++++++ ga/latest/kernel/helpers/build/configure.sh | 41 +---- ga/latest/kernel/helpers/build/features.sh | 15 +- .../kernel/helpers/runtime/docker-server.sh | 2 +- 14 files changed, 149 insertions(+), 267 deletions(-) delete mode 100755 ga/22.0.0.8/kernel/helpers/build/configure.sh delete mode 100755 ga/22.0.0.8/kernel/helpers/build/features.sh rename ga/{22.0.0.8 => 23.0.0.3}/kernel/helpers/build/configure-liberty.sh (100%) rename ga/{latest/kernel/helpers/runtime => 23.0.0.5/kernel/helpers/build}/configure-liberty.sh (100%) create mode 100755 ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh create mode 100755 ga/latest/kernel/helpers/build/configure-liberty.sh diff --git a/ga/22.0.0.8/kernel/helpers/build/configure.sh b/ga/22.0.0.8/kernel/helpers/build/configure.sh deleted file mode 100755 index d5d795b8..00000000 --- a/ga/22.0.0.8/kernel/helpers/build/configure.sh +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/bash -# (C) Copyright IBM Corporation 2022. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Determine if featureUtility ran in an earlier build step -if [ -f "/opt/ibm/wlp/configure-liberty.log" ]; then - FEATURES_INSTALLED=true -else - FEATURES_INSTALLED=false - >&2 echo "WARNING: This is not an optimal build configuration. Although features in server.xml will continue to be installed correctly, the 'RUN features.sh' command should be added to the Dockerfile prior to configure.sh. See https://github.com/WASdev/ci.docker#building-an-application-image for a sample application image template." -fi - -if [ "$VERBOSE" != "true" ]; then - exec &>/dev/null -fi - -set -Eeox pipefail - -function main() { - if [ "$FEATURES_INSTALLED" == "false" ]; then - # Resolve liberty server symlinks and creation for server name changes - /opt/ibm/helpers/runtime/configure-liberty.sh - if [ $? -ne 0 ]; then - exit - fi - fi - - ##Define variables for XML snippets source and target paths - WLP_INSTALL_DIR=/opt/ibm/wlp - SHARED_CONFIG_DIR=${WLP_INSTALL_DIR}/usr/shared/config - SHARED_RESOURCE_DIR=${WLP_INSTALL_DIR}/usr/shared/resources - - SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets - SNIPPETS_TARGET=/config/configDropins/overrides - SNIPPETS_TARGET_DEFAULTS=/config/configDropins/defaults - mkdir -p ${SNIPPETS_TARGET} - mkdir -p ${SNIPPETS_TARGET_DEFAULTS} - - #Check for each Liberty value-add functionality - - # Infinispan Session Caching - if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then - cp ${SNIPPETS_SOURCE}/infinispan-client-sessioncache.xml ${SNIPPETS_TARGET}/infinispan-client-sessioncache.xml - chmod g+rw $SNIPPETS_TARGET/infinispan-client-sessioncache.xml - fi - - # Hazelcast Session Caching - if [ "${HZ_SESSION_CACHE}" == "client" ] || [ "${HZ_SESSION_CACHE}" == "embedded" ]; then - cp ${SNIPPETS_SOURCE}/hazelcast-sessioncache.xml ${SNIPPETS_TARGET}/hazelcast-sessioncache.xml - mkdir -p ${SHARED_CONFIG_DIR}/hazelcast - cp ${SNIPPETS_SOURCE}/hazelcast-${HZ_SESSION_CACHE}.xml ${SHARED_CONFIG_DIR}/hazelcast/hazelcast.xml - fi - - # Key Store - keystorePath="$SNIPPETS_TARGET_DEFAULTS/keystore.xml" - if [ "$SSL" != "false" ] && [ "$TLS" != "false" ] - then - if [ ! -e $keystorePath ] - then - # Generate the keystore.xml - export KEYSTOREPWD=$(openssl rand -base64 32) - sed "s|REPLACE|$KEYSTOREPWD|g" $SNIPPETS_SOURCE/keystore.xml > $SNIPPETS_TARGET_DEFAULTS/keystore.xml - chmod g+w $SNIPPETS_TARGET_DEFAULTS/keystore.xml - fi - fi - - # SSO - if [[ -n "$SEC_SSO_PROVIDERS" ]]; then - parseProviders $SEC_SSO_PROVIDERS - fi - - if [ "$SKIP_FEATURE_INSTALL" != "true" ]; then - # Install needed features - if [ "$FEATURE_REPO_URL" ]; then - curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip - installUtility install --acceptLicense ${SERVER_NAME} --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi - rm -rf /tmp/repo.zip - # Otherwise, if features.sh did not run, install server features. - elif [ "$FEATURES_INSTALLED" == "false" ]; then - featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache - find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw - fi - fi - - # Apply interim fixes found in /opt/ibm/fixes - # Fixes recommended by IBM, such as to resolve security vulnerabilities, are also included in /opt/ibm/fixes - # Note: This step should be done once needed features are enabled and installed using installUtility. - - # Do not create a SCC - if [ -n "${IBM_JAVA_OPTIONS}" ]; then - IBM_JAVA_OPTIONS="${IBM_JAVA_OPTIONS} -Xshareclasses:none" - fi - - if [ -n "${OPENJ9_JAVA_OPTIONS}" ]; then - OPENJ9_JAVA_OPTIONS="${OPENJ9_JAVA_OPTIONS} -Xshareclasses:none" - fi - - find /opt/ibm/fixes -type f -name "*.jar" -print0 | sort -z | xargs -0 -n 1 -r -I {} java -jar {} --installLocation $WLP_INSTALL_DIR - #Make sure that group write permissions are set correctly after installing new features - find /opt/ibm/wlp ! -perm -g=rw -print0 | xargs -r -0 chmod g+rw - - # Create a new SCC layer - if [ "$OPENJ9_SCC" == "true" ] - then - populate_scc.sh -i 1 - fi -} - -## parse provider list to generate files into configDropins -function parseProviders() { - while [ $# -gt 0 ]; do - case "$1" in - oidc:*) - parseCommaList oidc "${1#*:}" - ;; - oauth2:*) - parseCommaList oauth2 "${1#*:}" - ;; - *) - if [[ $(ls $SNIPPETS_SOURCE | grep "$1") ]]; then - cp $SNIPPETS_SOURCE/sso-${1}.xml $SNIPPETS_TARGET_DEFAULTS - fi - ;; - esac - shift - done -} - -## process the comma delimitted oauth2/oidc source lists -function parseCommaList() { - local type="$1" - local list=$(echo "$2" | tr , " ") - - for current in ${list}; do - if [[ "${type}" = "oidc" ]]; then - # replace oidc identifiers with custom name - sed -e 's/=\"oidc/=\"'${current}'/g' -e 's/_OIDC_/_'${current^^}'_/g' $SNIPPETS_SOURCE/sso-oidc.xml > $SNIPPETS_TARGET_DEFAULTS/sso-${current}.xml - else - # replace oauth2 identifiers with custom name - sed -e 's/=\"oauth2/=\"'${current}'/g' -e 's/_OAUTH2_/_'${current^^}'_/g' $SNIPPETS_SOURCE/sso-oauth2.xml > $SNIPPETS_TARGET_DEFAULTS/sso-${current}.xml - fi - done -} - -main "$@" diff --git a/ga/22.0.0.8/kernel/helpers/build/features.sh b/ga/22.0.0.8/kernel/helpers/build/features.sh deleted file mode 100755 index 291712f3..00000000 --- a/ga/22.0.0.8/kernel/helpers/build/features.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash -# (C) Copyright IBM Corporation 2022. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -if [ "$VERBOSE" != "true" ]; then - exec &>/dev/null -fi - -set -Eeox pipefail - -# Resolve liberty server symlinks and creation for server name changes -/opt/ibm/helpers/runtime/configure-liberty.sh -if [ $? -ne 0 ]; then - exit -fi - -##Define variables for XML snippets source and target paths -SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets -SNIPPETS_TARGET=/config/configDropins/overrides -SNIPPETS_TARGET_DEFAULTS=/config/configDropins/defaults -mkdir -p ${SNIPPETS_TARGET} -mkdir -p ${SNIPPETS_TARGET_DEFAULTS} - -# Session Caching -if [ -n "$INFINISPAN_SERVICE_NAME" ] || [ "${HZ_SESSION_CACHE}" == "client" ] || [ "${HZ_SESSION_CACHE}" == "embedded" ]; then - cp ${SNIPPETS_SOURCE}/sessioncache-features.xml ${SNIPPETS_TARGET}/sessioncache-features.xml - chmod g+rw $SNIPPETS_TARGET/sessioncache-features.xml -fi - -# SSO -if [[ -n "$SEC_SSO_PROVIDERS" ]]; then - cp $SNIPPETS_SOURCE/sso-features.xml $SNIPPETS_TARGET_DEFAULTS -fi - -# Key Store -if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then - cp $SNIPPETS_SOURCE/tls.xml $SNIPPETS_TARGET/tls.xml -fi - -# Install necessary features using featureUtility -featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache -find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw diff --git a/ga/22.0.0.8/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh similarity index 100% rename from ga/22.0.0.8/kernel/helpers/build/configure-liberty.sh rename to ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh diff --git a/ga/23.0.0.3/kernel/helpers/build/configure.sh b/ga/23.0.0.3/kernel/helpers/build/configure.sh index b2480a5c..6db45a2d 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure.sh @@ -27,6 +27,14 @@ fi set -Eeox pipefail function main() { + if [ "$FEATURES_INSTALLED" == "false" ]; then + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/build/configure-liberty.sh + if [ $? -ne 0 ]; then + exit + fi + fi + ##Define variables for XML snippets source and target paths WLP_INSTALL_DIR=/opt/ibm/wlp SHARED_CONFIG_DIR=${WLP_INSTALL_DIR}/usr/shared/config @@ -143,10 +151,10 @@ function main() { # Install needed features if [ "$FEATURE_REPO_URL" ]; then curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip - installUtility install --acceptLicense defaultServer --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense $SERVER_NAME --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip else - installUtility install --acceptLicense defaultServer || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense $SERVER_NAME || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi fi fi diff --git a/ga/23.0.0.3/kernel/helpers/build/features.sh b/ga/23.0.0.3/kernel/helpers/build/features.sh index 4e665489..68bddf49 100755 --- a/ga/23.0.0.3/kernel/helpers/build/features.sh +++ b/ga/23.0.0.3/kernel/helpers/build/features.sh @@ -18,6 +18,12 @@ fi set -Eeox pipefail +# Resolve liberty server symlinks and creation for server name changes +/opt/ibm/helpers/build/configure-liberty.sh +if [ $? -ne 0 ]; then + exit +fi + ##Define variables for XML snippets source and target paths SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets SNIPPETS_TARGET=/config/configDropins/overrides @@ -42,7 +48,7 @@ if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then fi # Install necessary features using featureUtility -featureUtility installServerFeatures --acceptLicense defaultServer --noCache +featureUtility installServerFeatures --acceptLicense $SERVER_NAME --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw echo "features.sh script has been run" > /logs/features.log diff --git a/ga/latest/kernel/helpers/runtime/configure-liberty.sh b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh similarity index 100% rename from ga/latest/kernel/helpers/runtime/configure-liberty.sh rename to ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh diff --git a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh new file mode 100755 index 00000000..7fd7a335 --- /dev/null +++ b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then + # Create new Liberty server + /opt/ibm/wlp/bin/server create >/tmp/serverOutput + rc=$? + if [ $rc -ne 0 ]; then + cat /tmp/serverOutput + rm /tmp/serverOutput + exit $rc + fi + rm /tmp/serverOutput + + # Verify server creation + if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + echo "The server name contains a character that is not valid." + exit 1 + fi + chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + + # Delete old symlinks + rm /opt/ibm/links/output + rm /opt/ibm/links/config + + # Add new output folder symlink and resolve group write permissions + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME + ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output + chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs + chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs + + # Hand over the SCC + if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then + mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ + fi + rm -rf /opt/ibm/wlp/output/defaultServer + + # Add new server symlink and populate folder + mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ + ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + mkdir -p /config/configDropins/defaults + mkdir -p /config/configDropins/overrides + chmod -R g+w /config + + rm -rf /opt/ibm/wlp/usr/servers/defaultServer +fi + +echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log +exit 0 diff --git a/ga/23.0.0.6/kernel/helpers/build/configure.sh b/ga/23.0.0.6/kernel/helpers/build/configure.sh index b2480a5c..6db45a2d 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure.sh @@ -27,6 +27,14 @@ fi set -Eeox pipefail function main() { + if [ "$FEATURES_INSTALLED" == "false" ]; then + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/build/configure-liberty.sh + if [ $? -ne 0 ]; then + exit + fi + fi + ##Define variables for XML snippets source and target paths WLP_INSTALL_DIR=/opt/ibm/wlp SHARED_CONFIG_DIR=${WLP_INSTALL_DIR}/usr/shared/config @@ -143,10 +151,10 @@ function main() { # Install needed features if [ "$FEATURE_REPO_URL" ]; then curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip - installUtility install --acceptLicense defaultServer --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense $SERVER_NAME --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip else - installUtility install --acceptLicense defaultServer || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense $SERVER_NAME || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi fi fi diff --git a/ga/23.0.0.6/kernel/helpers/build/features.sh b/ga/23.0.0.6/kernel/helpers/build/features.sh index 4e665489..68bddf49 100755 --- a/ga/23.0.0.6/kernel/helpers/build/features.sh +++ b/ga/23.0.0.6/kernel/helpers/build/features.sh @@ -18,6 +18,12 @@ fi set -Eeox pipefail +# Resolve liberty server symlinks and creation for server name changes +/opt/ibm/helpers/build/configure-liberty.sh +if [ $? -ne 0 ]; then + exit +fi + ##Define variables for XML snippets source and target paths SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets SNIPPETS_TARGET=/config/configDropins/overrides @@ -42,7 +48,7 @@ if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then fi # Install necessary features using featureUtility -featureUtility installServerFeatures --acceptLicense defaultServer --noCache +featureUtility installServerFeatures --acceptLicense $SERVER_NAME --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw echo "features.sh script has been run" > /logs/features.log diff --git a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh index 84e9dbe8..0e36a0cb 100755 --- a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh +++ b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh @@ -85,7 +85,7 @@ function importKeyCert() { } # Resolve liberty server symlinks and creation for server name changes -/opt/ibm/helpers/runtime/configure-liberty.sh +/opt/ibm/helpers/build/configure-liberty.sh if [ $? -ne 0 ]; then exit fi diff --git a/ga/latest/kernel/helpers/build/configure-liberty.sh b/ga/latest/kernel/helpers/build/configure-liberty.sh new file mode 100755 index 00000000..7fd7a335 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configure-liberty.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then + # Create new Liberty server + /opt/ibm/wlp/bin/server create >/tmp/serverOutput + rc=$? + if [ $rc -ne 0 ]; then + cat /tmp/serverOutput + rm /tmp/serverOutput + exit $rc + fi + rm /tmp/serverOutput + + # Verify server creation + if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + echo "The server name contains a character that is not valid." + exit 1 + fi + chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + + # Delete old symlinks + rm /opt/ibm/links/output + rm /opt/ibm/links/config + + # Add new output folder symlink and resolve group write permissions + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME + ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output + chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs + chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources + chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs + + # Hand over the SCC + if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then + mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ + fi + rm -rf /opt/ibm/wlp/output/defaultServer + + # Add new server symlink and populate folder + mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ + ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + mkdir -p /config/configDropins/defaults + mkdir -p /config/configDropins/overrides + chmod -R g+w /config + + rm -rf /opt/ibm/wlp/usr/servers/defaultServer +fi + +echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log +exit 0 diff --git a/ga/latest/kernel/helpers/build/configure.sh b/ga/latest/kernel/helpers/build/configure.sh index 16e9f67a..92031460 100755 --- a/ga/latest/kernel/helpers/build/configure.sh +++ b/ga/latest/kernel/helpers/build/configure.sh @@ -1,9 +1,5 @@ #!/bin/bash -<<<<<<< HEAD # (C) Copyright IBM Corporation 2020, 2023. -======= -# (C) Copyright IBM Corporation 2022. ->>>>>>> 34eeb1f (Update helpers to use features.sh) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -18,18 +14,10 @@ # limitations under the License. # Determine if featureUtility ran in an earlier build step -<<<<<<< HEAD if /opt/ibm/helpers/build/internal/features-installed.sh; then FEATURES_INSTALLED=true else FEATURES_INSTALLED=false -======= -if [ -f "/opt/ibm/wlp/configure-liberty.log" ]; then - FEATURES_INSTALLED=true -else - FEATURES_INSTALLED=false - >&2 echo "WARNING: This is not an optimal build configuration. Although features in server.xml will continue to be installed correctly, the 'RUN features.sh' command should be added to the Dockerfile prior to configure.sh. See https://github.com/WASdev/ci.docker#building-an-application-image for a sample application image template." ->>>>>>> 34eeb1f (Update helpers to use features.sh) fi if [ "$VERBOSE" != "true" ]; then @@ -41,7 +29,7 @@ set -Eeox pipefail function main() { if [ "$FEATURES_INSTALLED" == "false" ]; then # Resolve liberty server symlinks and creation for server name changes - /opt/ibm/helpers/runtime/configure-liberty.sh + /opt/ibm/helpers/build/configure-liberty.sh if [ $? -ne 0 ]; then exit fi @@ -58,7 +46,6 @@ function main() { mkdir -p ${SNIPPETS_TARGET} mkdir -p ${SNIPPETS_TARGET_DEFAULTS} -<<<<<<< HEAD # Check for each Liberty value-add functionality if [ "$FEATURES_INSTALLED" == "false" ]; then # HTTP Endpoint @@ -142,34 +129,12 @@ function main() { mkdir -p ${SHARED_CONFIG_DIR}/hazelcast cp ${SNIPPETS_SOURCE}/hazelcast-${HZ_SESSION_CACHE}.xml ${SHARED_CONFIG_DIR}/hazelcast/hazelcast.xml fi -======= - #Check for each Liberty value-add functionality - - # Infinispan Session Caching - if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then - cp ${SNIPPETS_SOURCE}/infinispan-client-sessioncache.xml ${SNIPPETS_TARGET}/infinispan-client-sessioncache.xml - chmod g+rw $SNIPPETS_TARGET/infinispan-client-sessioncache.xml - fi - - # Hazelcast Session Caching - if [ "${HZ_SESSION_CACHE}" == "client" ] || [ "${HZ_SESSION_CACHE}" == "embedded" ]; then - cp ${SNIPPETS_SOURCE}/hazelcast-sessioncache.xml ${SNIPPETS_TARGET}/hazelcast-sessioncache.xml - mkdir -p ${SHARED_CONFIG_DIR}/hazelcast - cp ${SNIPPETS_SOURCE}/hazelcast-${HZ_SESSION_CACHE}.xml ${SHARED_CONFIG_DIR}/hazelcast/hazelcast.xml ->>>>>>> 34eeb1f (Update helpers to use features.sh) fi # Key Store keystorePath="$SNIPPETS_TARGET_DEFAULTS/keystore.xml" -<<<<<<< HEAD if [ "$SSL" != "false" ] && [ "$TLS" != "false" ]; then if [ ! -e $keystorePath ]; then -======= - if [ "$SSL" != "false" ] && [ "$TLS" != "false" ] - then - if [ ! -e $keystorePath ] - then ->>>>>>> 34eeb1f (Update helpers to use features.sh) # Generate the keystore.xml export KEYSTOREPWD=$(openssl rand -base64 32) sed "s|REPLACE|$KEYSTOREPWD|g" $SNIPPETS_SOURCE/keystore.xml > $SNIPPETS_TARGET_DEFAULTS/keystore.xml @@ -186,11 +151,11 @@ function main() { # Install needed features if [ "$FEATURE_REPO_URL" ]; then curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip - installUtility install --acceptLicense ${SERVER_NAME} --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi + installUtility install --acceptLicense $SERVER_NAME --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip # Otherwise, if features.sh did not run, install server features. elif [ "$FEATURES_INSTALLED" == "false" ]; then - featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache + featureUtility installServerFeatures --acceptLicense $SERVER_NAME --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw fi fi diff --git a/ga/latest/kernel/helpers/build/features.sh b/ga/latest/kernel/helpers/build/features.sh index e6ab6446..68bddf49 100755 --- a/ga/latest/kernel/helpers/build/features.sh +++ b/ga/latest/kernel/helpers/build/features.sh @@ -1,9 +1,5 @@ #!/bin/bash -<<<<<<< HEAD # (C) Copyright IBM Corporation 2023. -======= -# (C) Copyright IBM Corporation 2022. ->>>>>>> 34eeb1f (Update helpers to use features.sh) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -20,17 +16,13 @@ if [ "$VERBOSE" != "true" ]; then exec &>/dev/null fi -<<<<<<< HEAD set -Eeox pipefail -======= -set -Eeox pipefail # Resolve liberty server symlinks and creation for server name changes -/opt/ibm/helpers/runtime/configure-liberty.sh +/opt/ibm/helpers/build/configure-liberty.sh if [ $? -ne 0 ]; then exit fi ->>>>>>> 34eeb1f (Update helpers to use features.sh) ##Define variables for XML snippets source and target paths SNIPPETS_SOURCE=/opt/ibm/helpers/build/configuration_snippets @@ -56,10 +48,7 @@ if [ "$SSL" == "true" ] || [ "$TLS" == "true" ]; then fi # Install necessary features using featureUtility -featureUtility installServerFeatures --acceptLicense ${SERVER_NAME} --noCache +featureUtility installServerFeatures --acceptLicense $SERVER_NAME --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw -<<<<<<< HEAD echo "features.sh script has been run" > /logs/features.log -======= ->>>>>>> 34eeb1f (Update helpers to use features.sh) diff --git a/ga/latest/kernel/helpers/runtime/docker-server.sh b/ga/latest/kernel/helpers/runtime/docker-server.sh index 84e9dbe8..0e36a0cb 100755 --- a/ga/latest/kernel/helpers/runtime/docker-server.sh +++ b/ga/latest/kernel/helpers/runtime/docker-server.sh @@ -85,7 +85,7 @@ function importKeyCert() { } # Resolve liberty server symlinks and creation for server name changes -/opt/ibm/helpers/runtime/configure-liberty.sh +/opt/ibm/helpers/build/configure-liberty.sh if [ $? -ne 0 ]; then exit fi From 63f73eb5b50fbaa8dd2a672fd373354dc9d2f22b Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 30 May 2023 15:29:30 -0400 Subject: [PATCH 09/25] Cleanup merge conflicting files --- .../build/configuration_snippets/sessioncache-features.xml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml b/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml index 90e15583..05f2ee52 100644 --- a/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml +++ b/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml @@ -2,8 +2,4 @@ sessionCache-1.0 -<<<<<<< HEAD -======= - ->>>>>>> 34eeb1f (Update helpers to use features.sh) From 5ff1f77acadb5ecc747130cd26b34bf2c4c85e52 Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 31 May 2023 15:47:25 -0400 Subject: [PATCH 10/25] Update copyright headers and support SERVER_NAME env --- ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 | 4 +- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 | 4 +- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 | 4 +- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 | 4 +- ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 | 4 +- .../kernel/Dockerfile.ubuntu.openjdk11 | 4 +- .../kernel/Dockerfile.ubuntu.openjdk17 | 4 +- .../kernel/helpers/build/configure-liberty.sh | 65 ++++++++++--------- .../kernel/helpers/build/configure-liberty.sh | 65 ++++++++++--------- .../kernel/helpers/build/configure-liberty.sh | 65 ++++++++++--------- .../kernel/helpers/build/configure-liberty.sh | 65 ++++++++++--------- 11 files changed, 158 insertions(+), 130 deletions(-) diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 index b7015c75..86a0dcbd 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2019. +# (C) Copyright IBM Corporation 2019, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -127,4 +127,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 index 30b75ddd..f0f809c3 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2019. +# (C) Copyright IBM Corporation 2019, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -128,4 +128,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 index 77c7e59a..32e6e52c 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2019. +# (C) Copyright IBM Corporation 2019, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -128,4 +128,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 index 73949c7f..c27b0636 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2019. +# (C) Copyright IBM Corporation 2019, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -128,4 +128,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 index 8353ae14..e7411601 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2019. +# (C) Copyright IBM Corporation 2019, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -126,4 +126,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 index 94f705de..e9b32dc2 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2020. +# (C) Copyright IBM Corporation 2020, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -126,4 +126,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 index 280eb53a..9260f451 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 @@ -1,4 +1,4 @@ -# (C) Copyright IBM Corporation 2020. +# (C) Copyright IBM Corporation 2020, 2023. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -126,4 +126,4 @@ USER 1001 EXPOSE 9080 9443 ENTRYPOINT ["/opt/ibm/helpers/runtime/docker-server.sh"] -CMD ["/opt/ibm/wlp/bin/server", "run", "defaultServer"] +CMD ["/opt/ibm/wlp/bin/server", "run"] diff --git a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh index 7fd7a335..f9184a6c 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh @@ -1,9 +1,18 @@ #!/bin/bash +OPT_PREFIX="/opt/ibm" +ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" +ORIGINAL_SERVER_NAME="defaultServer" +IS_KERNEL=false + # If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents -if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then +if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server - /opt/ibm/wlp/bin/server create >/tmp/serverOutput + if $IS_KERNEL; then + $OPT_PREFIX/wlp/bin/server create >/tmp/serverOutput + else + $OPT_PREFIX/wlp/bin/server create --template=javaee8 >/tmp/serverOutput + fi rc=$? if [ $rc -ne 0 ]; then cat /tmp/serverOutput @@ -13,42 +22,40 @@ if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defau rm /tmp/serverOutput # Verify server creation - if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + if [ ! -d "$OPT_PREFIX/wlp/usr/servers/$SERVER_NAME" ]; then echo "The server name contains a character that is not valid." exit 1 fi - chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + chmod -R g+w $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME # Delete old symlinks - rm /opt/ibm/links/output - rm /opt/ibm/links/config + rm $OPT_PREFIX/links/output + rm $OPT_PREFIX/links/config # Add new output folder symlink and resolve group write permissions - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME - ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output - chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs - chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs - - # Hand over the SCC - if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then - mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ - fi - rm -rf /opt/ibm/wlp/output/defaultServer - - # Add new server symlink and populate folder - mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ - ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + mkdir -p $SERVER_OUTPUT_DIR + ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output + + # Copy old /output folder contents + cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null + rm -rf $ORIGINAL_SERVER_OUTPUT_DIR + chmod -R g+rw $SERVER_OUTPUT_DIR + setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR + + # Add new server symlink and copy over old /config folder contents + cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null + ln -s $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME $OPT_PREFIX/links/config mkdir -p /config/configDropins/defaults mkdir -p /config/configDropins/overrides - chmod -R g+w /config - - rm -rf /opt/ibm/wlp/usr/servers/defaultServer + if $IS_KERNEL; then + mkdir -p /config/dropins + mkdir -p /config/apps + fi + chmod -R g+rw /config + setfacl -R -dm g:root:rw /config + rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi -echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log exit 0 diff --git a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh index 7fd7a335..f9184a6c 100755 --- a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh @@ -1,9 +1,18 @@ #!/bin/bash +OPT_PREFIX="/opt/ibm" +ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" +ORIGINAL_SERVER_NAME="defaultServer" +IS_KERNEL=false + # If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents -if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then +if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server - /opt/ibm/wlp/bin/server create >/tmp/serverOutput + if $IS_KERNEL; then + $OPT_PREFIX/wlp/bin/server create >/tmp/serverOutput + else + $OPT_PREFIX/wlp/bin/server create --template=javaee8 >/tmp/serverOutput + fi rc=$? if [ $rc -ne 0 ]; then cat /tmp/serverOutput @@ -13,42 +22,40 @@ if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defau rm /tmp/serverOutput # Verify server creation - if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + if [ ! -d "$OPT_PREFIX/wlp/usr/servers/$SERVER_NAME" ]; then echo "The server name contains a character that is not valid." exit 1 fi - chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + chmod -R g+w $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME # Delete old symlinks - rm /opt/ibm/links/output - rm /opt/ibm/links/config + rm $OPT_PREFIX/links/output + rm $OPT_PREFIX/links/config # Add new output folder symlink and resolve group write permissions - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME - ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output - chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs - chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs - - # Hand over the SCC - if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then - mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ - fi - rm -rf /opt/ibm/wlp/output/defaultServer - - # Add new server symlink and populate folder - mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ - ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + mkdir -p $SERVER_OUTPUT_DIR + ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output + + # Copy old /output folder contents + cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null + rm -rf $ORIGINAL_SERVER_OUTPUT_DIR + chmod -R g+rw $SERVER_OUTPUT_DIR + setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR + + # Add new server symlink and copy over old /config folder contents + cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null + ln -s $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME $OPT_PREFIX/links/config mkdir -p /config/configDropins/defaults mkdir -p /config/configDropins/overrides - chmod -R g+w /config - - rm -rf /opt/ibm/wlp/usr/servers/defaultServer + if $IS_KERNEL; then + mkdir -p /config/dropins + mkdir -p /config/apps + fi + chmod -R g+rw /config + setfacl -R -dm g:root:rw /config + rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi -echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log exit 0 diff --git a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh index 7fd7a335..f9184a6c 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh @@ -1,9 +1,18 @@ #!/bin/bash +OPT_PREFIX="/opt/ibm" +ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" +ORIGINAL_SERVER_NAME="defaultServer" +IS_KERNEL=false + # If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents -if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then +if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server - /opt/ibm/wlp/bin/server create >/tmp/serverOutput + if $IS_KERNEL; then + $OPT_PREFIX/wlp/bin/server create >/tmp/serverOutput + else + $OPT_PREFIX/wlp/bin/server create --template=javaee8 >/tmp/serverOutput + fi rc=$? if [ $rc -ne 0 ]; then cat /tmp/serverOutput @@ -13,42 +22,40 @@ if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defau rm /tmp/serverOutput # Verify server creation - if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + if [ ! -d "$OPT_PREFIX/wlp/usr/servers/$SERVER_NAME" ]; then echo "The server name contains a character that is not valid." exit 1 fi - chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + chmod -R g+w $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME # Delete old symlinks - rm /opt/ibm/links/output - rm /opt/ibm/links/config + rm $OPT_PREFIX/links/output + rm $OPT_PREFIX/links/config # Add new output folder symlink and resolve group write permissions - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME - ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output - chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs - chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs - - # Hand over the SCC - if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then - mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ - fi - rm -rf /opt/ibm/wlp/output/defaultServer - - # Add new server symlink and populate folder - mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ - ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + mkdir -p $SERVER_OUTPUT_DIR + ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output + + # Copy old /output folder contents + cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null + rm -rf $ORIGINAL_SERVER_OUTPUT_DIR + chmod -R g+rw $SERVER_OUTPUT_DIR + setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR + + # Add new server symlink and copy over old /config folder contents + cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null + ln -s $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME $OPT_PREFIX/links/config mkdir -p /config/configDropins/defaults mkdir -p /config/configDropins/overrides - chmod -R g+w /config - - rm -rf /opt/ibm/wlp/usr/servers/defaultServer + if $IS_KERNEL; then + mkdir -p /config/dropins + mkdir -p /config/apps + fi + chmod -R g+rw /config + setfacl -R -dm g:root:rw /config + rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi -echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log exit 0 diff --git a/ga/latest/kernel/helpers/build/configure-liberty.sh b/ga/latest/kernel/helpers/build/configure-liberty.sh index 7fd7a335..f9184a6c 100755 --- a/ga/latest/kernel/helpers/build/configure-liberty.sh +++ b/ga/latest/kernel/helpers/build/configure-liberty.sh @@ -1,9 +1,18 @@ #!/bin/bash +OPT_PREFIX="/opt/ibm" +ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" +ORIGINAL_SERVER_NAME="defaultServer" +IS_KERNEL=false + # If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents -if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then +if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server - /opt/ibm/wlp/bin/server create >/tmp/serverOutput + if $IS_KERNEL; then + $OPT_PREFIX/wlp/bin/server create >/tmp/serverOutput + else + $OPT_PREFIX/wlp/bin/server create --template=javaee8 >/tmp/serverOutput + fi rc=$? if [ $rc -ne 0 ]; then cat /tmp/serverOutput @@ -13,42 +22,40 @@ if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defau rm /tmp/serverOutput # Verify server creation - if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then + if [ ! -d "$OPT_PREFIX/wlp/usr/servers/$SERVER_NAME" ]; then echo "The server name contains a character that is not valid." exit 1 fi - chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME + chmod -R g+w $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME # Delete old symlinks - rm /opt/ibm/links/output - rm /opt/ibm/links/config + rm $OPT_PREFIX/links/output + rm $OPT_PREFIX/links/config # Add new output folder symlink and resolve group write permissions - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME - ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output - chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs - chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs - - # Hand over the SCC - if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then - mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ - fi - rm -rf /opt/ibm/wlp/output/defaultServer - - # Add new server symlink and populate folder - mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ - ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config + SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + mkdir -p $SERVER_OUTPUT_DIR + ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output + + # Copy old /output folder contents + cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null + rm -rf $ORIGINAL_SERVER_OUTPUT_DIR + chmod -R g+rw $SERVER_OUTPUT_DIR + setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR + + # Add new server symlink and copy over old /config folder contents + cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null + ln -s $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME $OPT_PREFIX/links/config mkdir -p /config/configDropins/defaults mkdir -p /config/configDropins/overrides - chmod -R g+w /config - - rm -rf /opt/ibm/wlp/usr/servers/defaultServer + if $IS_KERNEL; then + mkdir -p /config/dropins + mkdir -p /config/apps + fi + chmod -R g+rw /config + setfacl -R -dm g:root:rw /config + rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi -echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log exit 0 From a25edb46874594f7fc38660ab96a2f4c17f05a2e Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 31 May 2023 15:52:29 -0400 Subject: [PATCH 11/25] Initialize SERVER_NAME env with defaultServer --- ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 | 2 ++ ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 | 2 ++ ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 | 2 ++ ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 | 2 ++ ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 | 2 ++ ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 | 2 ++ ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 | 2 ++ test/test-pet-clinic/Dockerfile | 3 +++ test/test-stock-quote/Dockerfile | 3 +++ test/test-stock-trader/Dockerfile | 3 +++ 10 files changed, 23 insertions(+) diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 index 86a0dcbd..582167a9 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Arthur De Magalhaes, Chris Potter" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 index f0f809c3..53c53cb4 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Arthur De Magalhaes, Chris Potter" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 index 32e6e52c..8e4dfe51 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Chris Potter, Melissa Lee" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 index c27b0636..0f13d51c 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Arthur De Magalhaes, Chris Potter" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 index e7411601..d4b66a56 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Arthur De Magalhaes, Chris Potter" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 index e9b32dc2..3e08cbd1 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Arthur De Magalhaes, Chris Potter, Christy Jesuraj" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 index 9260f451..e2eeb730 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 @@ -22,6 +22,8 @@ ARG EN_SHA=366618db4b733337adc71ec30b1f33d36cf78a81858636360061036a926f373f ARG NON_IBM_SHA=d349f6ea3acd71910348904dd48f81940b86ca5f879737206ae37f858767ad0f ARG NOTICES_SHA=e7031658e09e2442279db72eed9238fb30d98c06dabb112fb21b8618b7e810ee +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Chris Potter, Christy Jesuraj, Melissa Lee" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="http://wasdev.net" \ diff --git a/test/test-pet-clinic/Dockerfile b/test/test-pet-clinic/Dockerfile index b0d5a967..960863df 100644 --- a/test/test-pet-clinic/Dockerfile +++ b/test/test-pet-clinic/Dockerfile @@ -15,6 +15,9 @@ RUN configure.sh FROM ${IMAGE} +# Provide a custom Liberty server name other than "defaultServer" +ENV SERVER_NAME=petclinic + COPY --from=staging /config/server.xml /config/server.xml RUN features.sh diff --git a/test/test-stock-quote/Dockerfile b/test/test-stock-quote/Dockerfile index 65d80026..9a5be949 100644 --- a/test/test-stock-quote/Dockerfile +++ b/test/test-stock-quote/Dockerfile @@ -15,6 +15,9 @@ FROM ibmcom/websphere-liberty:kernel-java17-openj9-ubi +# Provide a custom Liberty server name other than "defaultServer" +ENV SERVER_NAME=stock-quote + COPY --chown=1001:0 config /config/ ARG VERBOSE=false diff --git a/test/test-stock-trader/Dockerfile b/test/test-stock-trader/Dockerfile index dee22f51..28453928 100644 --- a/test/test-stock-trader/Dockerfile +++ b/test/test-stock-trader/Dockerfile @@ -14,6 +14,9 @@ FROM ibmcom/websphere-liberty:kernel-java8-openj9-ubi +# Provide a custom Liberty server name other than "defaultServer" +ENV SERVER_NAME=stock-trader + COPY --chown=1001:0 config /config/ ARG VERBOSE=false From fca10e93ffa804d6afe440281574ab8ae75b3745 Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 31 May 2023 16:01:17 -0400 Subject: [PATCH 12/25] Update to always check for server name change --- ga/23.0.0.3/kernel/helpers/build/configure.sh | 10 ++++------ ga/23.0.0.6/kernel/helpers/build/configure.sh | 10 ++++------ ga/latest/kernel/helpers/build/configure.sh | 10 ++++------ 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/ga/23.0.0.3/kernel/helpers/build/configure.sh b/ga/23.0.0.3/kernel/helpers/build/configure.sh index 6db45a2d..d432a689 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure.sh @@ -27,12 +27,10 @@ fi set -Eeox pipefail function main() { - if [ "$FEATURES_INSTALLED" == "false" ]; then - # Resolve liberty server symlinks and creation for server name changes - /opt/ibm/helpers/build/configure-liberty.sh - if [ $? -ne 0 ]; then - exit - fi + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/build/configure-liberty.sh + if [ $? -ne 0 ]; then + exit fi ##Define variables for XML snippets source and target paths diff --git a/ga/23.0.0.6/kernel/helpers/build/configure.sh b/ga/23.0.0.6/kernel/helpers/build/configure.sh index 6db45a2d..d432a689 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure.sh @@ -27,12 +27,10 @@ fi set -Eeox pipefail function main() { - if [ "$FEATURES_INSTALLED" == "false" ]; then - # Resolve liberty server symlinks and creation for server name changes - /opt/ibm/helpers/build/configure-liberty.sh - if [ $? -ne 0 ]; then - exit - fi + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/build/configure-liberty.sh + if [ $? -ne 0 ]; then + exit fi ##Define variables for XML snippets source and target paths diff --git a/ga/latest/kernel/helpers/build/configure.sh b/ga/latest/kernel/helpers/build/configure.sh index 92031460..4602d1b7 100755 --- a/ga/latest/kernel/helpers/build/configure.sh +++ b/ga/latest/kernel/helpers/build/configure.sh @@ -27,12 +27,10 @@ fi set -Eeox pipefail function main() { - if [ "$FEATURES_INSTALLED" == "false" ]; then - # Resolve liberty server symlinks and creation for server name changes - /opt/ibm/helpers/build/configure-liberty.sh - if [ $? -ne 0 ]; then - exit - fi + # Resolve liberty server symlinks and creation for server name changes + /opt/ibm/helpers/build/configure-liberty.sh + if [ $? -ne 0 ]; then + exit fi ##Define variables for XML snippets source and target paths From b93200d6ca87b5955c109c17065f24f41169666d Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 31 May 2023 16:06:02 -0400 Subject: [PATCH 13/25] Resolve changes from merge conflict --- ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh | 2 -- ga/latest/kernel/helpers/build/configure.sh | 2 +- ga/latest/kernel/helpers/runtime/docker-server.sh | 2 -- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh index 0e36a0cb..7967309b 100755 --- a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh +++ b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh @@ -146,8 +146,6 @@ if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then echo "INFINISPAN_PASS: ${INFINISPAN_PASS}" fi -# Remove generated metadata -rm /opt/ibm/wlp/configure-liberty.log # Pass on to the real server run if [ -d "/output/workarea/checkpoint/image" ]; then diff --git a/ga/latest/kernel/helpers/build/configure.sh b/ga/latest/kernel/helpers/build/configure.sh index 4602d1b7..034d462f 100755 --- a/ga/latest/kernel/helpers/build/configure.sh +++ b/ga/latest/kernel/helpers/build/configure.sh @@ -152,7 +152,7 @@ function main() { installUtility install --acceptLicense $SERVER_NAME --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip # Otherwise, if features.sh did not run, install server features. - elif [ "$FEATURES_INSTALLED" == "false" ]; then + else featureUtility installServerFeatures --acceptLicense $SERVER_NAME --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw fi diff --git a/ga/latest/kernel/helpers/runtime/docker-server.sh b/ga/latest/kernel/helpers/runtime/docker-server.sh index 0e36a0cb..7967309b 100755 --- a/ga/latest/kernel/helpers/runtime/docker-server.sh +++ b/ga/latest/kernel/helpers/runtime/docker-server.sh @@ -146,8 +146,6 @@ if [[ -n "$INFINISPAN_SERVICE_NAME" ]]; then echo "INFINISPAN_PASS: ${INFINISPAN_PASS}" fi -# Remove generated metadata -rm /opt/ibm/wlp/configure-liberty.log # Pass on to the real server run if [ -d "/output/workarea/checkpoint/image" ]; then From 40f60273b912e285982dabc73e855e68a33b3494 Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 31 May 2023 16:32:59 -0400 Subject: [PATCH 14/25] Remove redundant variable in configure-liberty.sh --- ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh | 3 +-- ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh | 3 +-- ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh | 3 +-- ga/latest/kernel/helpers/build/configure-liberty.sh | 3 +-- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh index f9184a6c..9c293a9d 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,6 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false @@ -34,7 +33,7 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se # Add new output folder symlink and resolve group write permissions SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME - ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME mkdir -p $SERVER_OUTPUT_DIR ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output diff --git a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh index f9184a6c..9c293a9d 100755 --- a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,6 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false @@ -34,7 +33,7 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se # Add new output folder symlink and resolve group write permissions SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME - ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME mkdir -p $SERVER_OUTPUT_DIR ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output diff --git a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh index f9184a6c..9c293a9d 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,6 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false @@ -34,7 +33,7 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se # Add new output folder symlink and resolve group write permissions SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME - ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME mkdir -p $SERVER_OUTPUT_DIR ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output diff --git a/ga/latest/kernel/helpers/build/configure-liberty.sh b/ga/latest/kernel/helpers/build/configure-liberty.sh index f9184a6c..9c293a9d 100755 --- a/ga/latest/kernel/helpers/build/configure-liberty.sh +++ b/ga/latest/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,6 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_WLP_OUTPUT_DIR="$OPT_PREFIX/wlp/output" ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false @@ -34,7 +33,7 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se # Add new output folder symlink and resolve group write permissions SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME - ORIGINAL_SERVER_OUTPUT_DIR=$ORIGINAL_WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME + ORIGINAL_SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME mkdir -p $SERVER_OUTPUT_DIR ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output From 2f9704cb23aa9074f21651d8c777dc66cf2f3128 Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 13 Jun 2023 16:28:53 -0400 Subject: [PATCH 15/25] Update configure-liberty.sh and docs --- docs/README.md | 8 +++ docs/liberty-server-customization.md | 66 +++++++++++++++++++ .../kernel/helpers/build/configure-liberty.sh | 10 ++- .../kernel/helpers/build/configure-liberty.sh | 10 ++- .../kernel/helpers/build/configure-liberty.sh | 10 ++- .../kernel/helpers/build/configure-liberty.sh | 10 ++- 6 files changed, 106 insertions(+), 8 deletions(-) create mode 100644 docs/README.md create mode 100644 docs/liberty-server-customization.md diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 00000000..4aa94cfa --- /dev/null +++ b/docs/README.md @@ -0,0 +1,8 @@ +# Docs + +This directory contains a number of useful guides. + +## Table of Contents + +* [Where to get Open Liberty container images](./icr-images.md) +* [How to customize your Liberty server](./liberty-server-customization.md) \ No newline at end of file diff --git a/docs/liberty-server-customization.md b/docs/liberty-server-customization.md new file mode 100644 index 00000000..4fb50c12 --- /dev/null +++ b/docs/liberty-server-customization.md @@ -0,0 +1,66 @@ + +# How to customize your Liberty Server + +## Provide a custom server name + +You can provide a custom name for your Liberty server by specifying the `SERVER_NAME` environment variable at container image **build-time**. + +### Building from a new image + +Specifying the `ENV SERVER_NAME=` variable allows you to run a Liberty server with a custom name, as in the Dockerfile below. +```Dockerfile +FROM icr.io/appcafe/websphere-liberty:kernel-java17-openj9-ubi + +ENV SERVER_NAME=liberty1 + +RUN features.sh + +RUN configure.sh +``` +Running this container will produce output similar to: +``` +Launching liberty1 (WebSphere Application Server 23.0.0.5/wlp-1.0.77.cl230520230514-1901) on Eclipse OpenJ9 VM, version 17.0.7+7 (en_US) +[AUDIT ] CWWKE0001I: The server liberty1 has been launched. +[AUDIT ] CWWKE0100I: This product is licensed for development, and limited production use. The full license terms can be viewed here: https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/wasdev/license/base_ilan/ilan/23.0.0.5/lafiles/en.html +[AUDIT ] CWWKG0093A: Processing configuration drop-ins resource: /opt/ibm/wlp/usr/servers/liberty1/configDropins/defaults/keystore.xml +[WARNING ] CWWKF0009W: The server has not been configured to install any features. +[AUDIT ] CWWKF0012I: The server installed the following features: []. +[AUDIT ] CWWKF0011I: The liberty1 server is ready to run a smarter planet. The liberty1 server started in 0.473 seconds. +``` + +### Renaming an existing Liberty server + +Liberty server configurations and existing output data under `/config` and `/output`, respectively, will be relocated to the server with new name, allowing you to **rename** servers `FROM` any Liberty image. + +```Dockerfile +FROM icr.io/appcafe/websphere-liberty:kernel-java17-openj9-ubi as staging + +ENV SERVER_NAME=liberty1 + +# Initialize server configuration +COPY --chown=1001:0 server.xml /config/ + +RUN features.sh + +RUN configure.sh + +# From an existing Liberty server +FROM staging + +# Rename liberty1 to liberty2, retaining /config/server.xml from above +ENV SERVER_NAME=liberty2 + +RUN features.sh + +RUN configure.sh +``` + +### Notes + +The new server name changes the directory of stored configurations and server output. For example, for a custom server name `liberty1`. +- `/config -> /opt/ol/wlp/usr/servers/liberty1` +- `/output -> /opt/ol/wlp/output/liberty1` + +By using the symbolic links `/config` and `/output`, you can always ensure a correct mapping to the Liberty server's directories. + + diff --git a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh index 9c293a9d..69bc91b1 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh @@ -1,10 +1,16 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false -# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +# Get the original server name +NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) +if [ $NUM_SERVERS -gt 0 ]; then + ORIGINAL_SERVER_NAME=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | head -1) +fi +ORIGINAL_SERVER_NAME=${ORIGINAL_SERVER_NAME:-defaultServer} + +# If the Liberty server name does not match the original server name then migrate the contents if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server if $IS_KERNEL; then diff --git a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh index 9c293a9d..69bc91b1 100755 --- a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh @@ -1,10 +1,16 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false -# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +# Get the original server name +NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) +if [ $NUM_SERVERS -gt 0 ]; then + ORIGINAL_SERVER_NAME=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | head -1) +fi +ORIGINAL_SERVER_NAME=${ORIGINAL_SERVER_NAME:-defaultServer} + +# If the Liberty server name does not match the original server name then migrate the contents if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server if $IS_KERNEL; then diff --git a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh index 9c293a9d..69bc91b1 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh @@ -1,10 +1,16 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false -# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +# Get the original server name +NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) +if [ $NUM_SERVERS -gt 0 ]; then + ORIGINAL_SERVER_NAME=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | head -1) +fi +ORIGINAL_SERVER_NAME=${ORIGINAL_SERVER_NAME:-defaultServer} + +# If the Liberty server name does not match the original server name then migrate the contents if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server if $IS_KERNEL; then diff --git a/ga/latest/kernel/helpers/build/configure-liberty.sh b/ga/latest/kernel/helpers/build/configure-liberty.sh index 9c293a9d..69bc91b1 100755 --- a/ga/latest/kernel/helpers/build/configure-liberty.sh +++ b/ga/latest/kernel/helpers/build/configure-liberty.sh @@ -1,10 +1,16 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -ORIGINAL_SERVER_NAME="defaultServer" IS_KERNEL=false -# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents +# Get the original server name +NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) +if [ $NUM_SERVERS -gt 0 ]; then + ORIGINAL_SERVER_NAME=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | head -1) +fi +ORIGINAL_SERVER_NAME=${ORIGINAL_SERVER_NAME:-defaultServer} + +# If the Liberty server name does not match the original server name then migrate the contents if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then # Create new Liberty server if $IS_KERNEL; then From 24c4ea9bff730e820f79418983cb1c42c53b171d Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 13 Jun 2023 16:37:02 -0400 Subject: [PATCH 16/25] Re-add configuration_snippets --- .../configuration_snippets/sessioncache-features.xml | 2 +- .../build/configuration_snippets/http-endpoint.xml | 5 +++++ .../build/configuration_snippets/http-ssl-endpoint.xml | 6 ++++++ .../build/configuration_snippets/iiop-endpoint.xml | 5 +++++ .../build/configuration_snippets/iiop-ssl-endpoint.xml | 8 ++++++++ .../build/configuration_snippets/jms-endpoint.xml | 5 +++++ .../build/configuration_snippets/jms-ssl-endpoint.xml | 5 +++++ .../build/configuration_snippets/mp-health-check.xml | 6 ++++++ .../build/configuration_snippets/mp-monitoring.xml | 9 +++++++++ .../configuration_snippets/sessioncache-features.xml | 2 +- 10 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml create mode 100644 ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml diff --git a/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml b/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml index 05f2ee52..f7b5a468 100644 --- a/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml +++ b/ga/23.0.0.6/kernel/helpers/build/configuration_snippets/sessioncache-features.xml @@ -2,4 +2,4 @@ sessionCache-1.0 - + \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml new file mode 100644 index 00000000..5f6c6055 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/http-endpoint.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml new file mode 100644 index 00000000..2a2388a3 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/http-ssl-endpoint.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml new file mode 100644 index 00000000..a5b7d8a0 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/iiop-endpoint.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml new file mode 100644 index 00000000..f8fea3c8 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/iiop-ssl-endpoint.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml new file mode 100644 index 00000000..a99b0716 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/jms-endpoint.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml b/ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml new file mode 100644 index 00000000..d32a77ce --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/jms-ssl-endpoint.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml b/ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml new file mode 100644 index 00000000..874559d6 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/mp-health-check.xml @@ -0,0 +1,6 @@ + + + + mpHealth-1.0 + + \ No newline at end of file diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml b/ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml new file mode 100644 index 00000000..4f5b0ce0 --- /dev/null +++ b/ga/latest/kernel/helpers/build/configuration_snippets/mp-monitoring.xml @@ -0,0 +1,9 @@ + + + + mpMetrics-1.1 + monitor-1.0 + + + + diff --git a/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml b/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml index 05f2ee52..f7b5a468 100644 --- a/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml +++ b/ga/latest/kernel/helpers/build/configuration_snippets/sessioncache-features.xml @@ -2,4 +2,4 @@ sessionCache-1.0 - + \ No newline at end of file From e57e517137f2198c459a0bf5cad5ac3c9d17bb25 Mon Sep 17 00:00:00 2001 From: kabicin Date: Wed, 14 Jun 2023 09:56:25 -0400 Subject: [PATCH 17/25] Add defaultServer name change tests --- test/go.mod | 137 ++++ test/go.sum | 1425 +++++++++++++++++++++++++++++++++++++++ test/run_test_suite.sh | 2 + test/test_suite_test.go | 198 ++++++ 4 files changed, 1762 insertions(+) create mode 100644 test/go.mod create mode 100644 test/go.sum create mode 100755 test/run_test_suite.sh create mode 100644 test/test_suite_test.go diff --git a/test/go.mod b/test/go.mod new file mode 100644 index 00000000..9b97561c --- /dev/null +++ b/test/go.mod @@ -0,0 +1,137 @@ +module WASdev/ci.docker + +go 1.18 + +require ( + github.com/containers/podman/v4 v4.5.1 + github.com/docker/docker v24.0.2+incompatible + github.com/onsi/ginkgo v1.16.5 + github.com/onsi/gomega v1.27.7 +) + +require ( + github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect + github.com/BurntSushi/toml v1.2.1 // indirect + github.com/Microsoft/go-winio v0.6.1 // indirect + github.com/Microsoft/hcsshim v0.10.0-rc.8 // indirect + github.com/VividCortex/ewma v1.2.0 // indirect + github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect + github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect + github.com/blang/semver/v4 v4.0.0 // indirect + github.com/chzyer/readline v1.5.1 // indirect + github.com/cilium/ebpf v0.9.1 // indirect + github.com/container-orchestrated-devices/container-device-interface v0.5.4 // indirect + github.com/containerd/cgroups v1.1.0 // indirect + github.com/containerd/containerd v1.7.1 // indirect + github.com/containerd/stargz-snapshotter/estargz v0.14.3 // indirect + github.com/containers/buildah v1.30.0 // indirect + github.com/containers/common v0.52.0 // indirect + github.com/containers/image/v5 v5.25.0 // indirect + github.com/containers/libtrust v0.0.0-20230121012942-c1716e8a8d01 // indirect + github.com/containers/ocicrypt v1.1.7 // indirect + github.com/containers/psgo v1.8.0 // indirect + github.com/containers/storage v1.46.1 // indirect + github.com/coreos/go-systemd/v22 v22.5.0 // indirect + github.com/cyberphone/json-canonicalization v0.0.0-20220623050100-57a0ce2678a7 // indirect + github.com/cyphar/filepath-securejoin v0.2.3 // indirect + github.com/disiqueira/gotree/v3 v3.0.2 // indirect + github.com/docker/distribution v2.8.2+incompatible // indirect + github.com/docker/docker-credential-helpers v0.7.0 // indirect + github.com/docker/go-connections v0.4.1-0.20210727194412-58542c764a11 // indirect + github.com/docker/go-units v0.5.0 // indirect + github.com/fsnotify/fsnotify v1.6.0 // indirect + github.com/go-openapi/analysis v0.21.4 // indirect + github.com/go-openapi/errors v0.20.3 // indirect + github.com/go-openapi/jsonpointer v0.19.5 // indirect + github.com/go-openapi/jsonreference v0.20.0 // indirect + github.com/go-openapi/loads v0.21.2 // indirect + github.com/go-openapi/runtime v0.25.0 // indirect + github.com/go-openapi/spec v0.20.8 // indirect + github.com/go-openapi/strfmt v0.21.7 // indirect + github.com/go-openapi/swag v0.22.3 // indirect + github.com/go-openapi/validate v0.22.1 // indirect + github.com/godbus/dbus/v5 v5.1.1-0.20221029134443-4b691ce883d5 // indirect + github.com/gogo/protobuf v1.3.2 // indirect + github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect + github.com/golang/protobuf v1.5.3 // indirect + github.com/google/go-cmp v0.5.9 // indirect + github.com/google/go-containerregistry v0.14.0 // indirect + github.com/google/go-intervals v0.0.2 // indirect + github.com/google/uuid v1.3.0 // indirect + github.com/gorilla/mux v1.8.0 // indirect + github.com/gorilla/schema v1.2.0 // indirect + github.com/hashicorp/errwrap v1.1.0 // indirect + github.com/hashicorp/go-multierror v1.1.1 // indirect + github.com/imdario/mergo v0.3.15 // indirect + github.com/jinzhu/copier v0.3.5 // indirect + github.com/josharian/intern v1.0.0 // indirect + github.com/json-iterator/go v1.1.12 // indirect + github.com/klauspost/compress v1.16.4 // indirect + github.com/klauspost/pgzip v1.2.6-0.20220930104621-17e8dac29df8 // indirect + github.com/kr/fs v0.1.0 // indirect + github.com/letsencrypt/boulder v0.0.0-20230213213521-fdfea0d469b6 // indirect + github.com/mailru/easyjson v0.7.7 // indirect + github.com/manifoldco/promptui v0.9.0 // indirect + github.com/mattn/go-runewidth v0.0.14 // indirect + github.com/mattn/go-shellwords v1.0.12 // indirect + github.com/miekg/pkcs11 v1.1.1 // indirect + github.com/mistifyio/go-zfs/v3 v3.0.0 // indirect + github.com/mitchellh/mapstructure v1.5.0 // indirect + github.com/moby/patternmatcher v0.5.0 // indirect + github.com/moby/sys/mountinfo v0.6.2 // indirect + github.com/moby/sys/sequential v0.5.0 // indirect + github.com/moby/term v0.5.0 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/nxadm/tail v1.4.8 // indirect + github.com/oklog/ulid v1.3.1 // indirect + github.com/onsi/ginkgo/v2 v2.9.7 // indirect + github.com/opencontainers/go-digest v1.0.0 // indirect + github.com/opencontainers/image-spec v1.1.0-rc2.0.20221005185240-3a7f492d3f1b // indirect + github.com/opencontainers/runc v1.1.5 // indirect + github.com/opencontainers/runtime-spec v1.1.0-rc.1 // indirect + github.com/opencontainers/runtime-tools v0.9.1-0.20230317050512-e931285f4b69 // indirect + github.com/opencontainers/selinux v1.11.0 // indirect + github.com/ostreedev/ostree-go v0.0.0-20210805093236-719684c64e4f // indirect + github.com/pkg/errors v0.9.1 // indirect + github.com/pkg/sftp v1.13.5 // indirect + github.com/proglottis/gpgme v0.1.3 // indirect + github.com/rivo/uniseg v0.4.4 // indirect + github.com/sigstore/fulcio v1.2.0 // indirect + github.com/sigstore/rekor v1.1.0 // indirect + github.com/sigstore/sigstore v1.6.0 // indirect + github.com/sirupsen/logrus v1.9.0 // indirect + github.com/spf13/pflag v1.0.5 // indirect + github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980 // indirect + github.com/sylabs/sif/v2 v2.11.1 // indirect + github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635 // indirect + github.com/tchap/go-patricia/v2 v2.3.1 // indirect + github.com/theupdateframework/go-tuf v0.5.2 // indirect + github.com/titanous/rocacheck v0.0.0-20171023193734-afe73141d399 // indirect + github.com/ulikunitz/xz v0.5.11 // indirect + github.com/vbatts/tar-split v0.11.3 // indirect + github.com/vbauerster/mpb/v8 v8.3.0 // indirect + go.etcd.io/bbolt v1.3.7 // indirect + go.mongodb.org/mongo-driver v1.11.3 // indirect + go.mozilla.org/pkcs7 v0.0.0-20210826202110-33d05740a352 // indirect + go.opencensus.io v0.24.0 // indirect + golang.org/x/crypto v0.8.0 // indirect + golang.org/x/exp v0.0.0-20230321023759-10a507213a29 // indirect + golang.org/x/mod v0.10.0 // indirect + golang.org/x/net v0.10.0 // indirect + golang.org/x/sync v0.2.0 // indirect + golang.org/x/sys v0.8.0 // indirect + golang.org/x/term v0.8.0 // indirect + golang.org/x/text v0.9.0 // indirect + golang.org/x/time v0.3.0 // indirect + golang.org/x/tools v0.9.1 // indirect + google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 // indirect + google.golang.org/grpc v1.54.0 // indirect + google.golang.org/protobuf v1.30.0 // indirect + gopkg.in/go-jose/go-jose.v2 v2.6.1 // indirect + gopkg.in/square/go-jose.v2 v2.6.0 // indirect + gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + sigs.k8s.io/yaml v1.3.0 // indirect +) diff --git a/test/go.sum b/test/go.sum new file mode 100644 index 00000000..801e1cbc --- /dev/null +++ b/test/go.sum @@ -0,0 +1,1425 @@ +bazil.org/fuse v0.0.0-20160811212531-371fbbdaa898/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= +cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= +cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= +cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= +cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= +cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= +cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= +cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= +cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= +cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= +cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= +cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= +cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= +cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= +cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= +cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= +cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= +cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= +cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= +cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= +cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= +dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= +github.com/14rcole/gopopulate v0.0.0-20180821133914-b175b219e774 h1:SCbEWT58NSt7d2mcFdvxC9uyrdcTfvBbPLThhkDmXzg= +github.com/AdaLogics/go-fuzz-headers v0.0.0-20230106234847-43070de90fa1 h1:EKPd1INOIyr5hWOWhvpmQpY6tKjeG0hT1s3AMC/9fic= +github.com/Azure/azure-sdk-for-go v16.2.1+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= +github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/Azure/go-autorest v10.8.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.1/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= +github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= +github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= +github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/BurntSushi/toml v1.2.0/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.2.1 h1:9F2/+DoOYIOksmaJFPw1tGFy1eDnIJXg+UHjuD8lTak= +github.com/BurntSushi/toml v1.2.1/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA= +github.com/Microsoft/go-winio v0.4.14/go.mod h1:qXqCSQ3Xa7+6tgxaGTIe4Kpcdsi+P8jBhyzoq1bpyYA= +github.com/Microsoft/go-winio v0.4.15-0.20190919025122-fc70bd9a86b5/go.mod h1:tTuCMEN+UleMWgg9dVx4Hu52b1bJo+59jBh3ajtinzw= +github.com/Microsoft/go-winio v0.4.16-0.20201130162521-d1ffc52c7331/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= +github.com/Microsoft/go-winio v0.4.16/go.mod h1:XB6nPKklQyQ7GC9LdcBEcBl8PF76WugXOPRXwdLnMv0= +github.com/Microsoft/go-winio v0.4.17-0.20210211115548-6eac466e5fa3/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17-0.20210324224401-5516f17a5958/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.4.17/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84= +github.com/Microsoft/go-winio v0.5.2/go.mod h1:WpS1mjBmmwHBEWmogvA2mj8546UReBk4v8QkMxJ6pZY= +github.com/Microsoft/go-winio v0.6.1 h1:9/kr64B9VUZrLm5YYwbGtUJnMgqWVOdUAXu6Migciow= +github.com/Microsoft/go-winio v0.6.1/go.mod h1:LRdKpFKfdobln8UmuiYcKPot9D2v6svN5+sAH+4kjUM= +github.com/Microsoft/hcsshim v0.8.6/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7-0.20190325164909-8abdbb8205e4/go.mod h1:Op3hHsoHPAvb6lceZHDtd9OkTew38wNoXnJs8iY7rUg= +github.com/Microsoft/hcsshim v0.8.7/go.mod h1:OHd7sQqRFrYd3RmSgbgji+ctCwkbq2wbEYNSzOYtcBQ= +github.com/Microsoft/hcsshim v0.8.9/go.mod h1:5692vkUqntj1idxauYlpoINNKeqCiG6Sg38RRsjT5y8= +github.com/Microsoft/hcsshim v0.8.14/go.mod h1:NtVKoYxQuTLx6gEq0L96c9Ju4JbRJ4nY2ow3VK6a9Lg= +github.com/Microsoft/hcsshim v0.8.15/go.mod h1:x38A4YbHbdxJtc0sF6oIz+RG0npwSCAvn69iY6URG00= +github.com/Microsoft/hcsshim v0.8.16/go.mod h1:o5/SZqmR7x9JNKsW3pu+nqHm0MF8vbA+VxGOoXdC600= +github.com/Microsoft/hcsshim v0.8.21/go.mod h1:+w2gRZ5ReXQhFOrvSQeNfhrYB/dg3oDwTOcER2fw4I4= +github.com/Microsoft/hcsshim v0.9.4/go.mod h1:7pLA8lDk46WKDWlVsENo92gC0XFa8rbKfyFRBqxEbCc= +github.com/Microsoft/hcsshim v0.10.0-rc.8 h1:YSZVvlIIDD1UxQpJp0h+dnpLUw+TrY0cx8obKsp3bek= +github.com/Microsoft/hcsshim v0.10.0-rc.8/go.mod h1:OEthFdQv/AD2RAdzR6Mm1N1KPCztGKDurW1Z8b8VGMM= +github.com/Microsoft/hcsshim/test v0.0.0-20201218223536-d3e5debf77da/go.mod h1:5hlzMzRKMLyo42nCZ9oml8AdTlq/0cvIaBv6tK1RehU= +github.com/Microsoft/hcsshim/test v0.0.0-20210227013316-43a75bb4edd3/go.mod h1:mw7qgWloBUl75W/gVH3cQszUg1+gUITj7D6NY7ywVnY= +github.com/NYTimes/gziphandler v0.0.0-20170623195520-56545f4a5d46/go.mod h1:3wb06e3pkSAbeQ52E9H9iFoQsEEwGN64994WTCIhntQ= +github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/PuerkitoBio/purell v1.0.0/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20160726150825-5bd2802263f2/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= +github.com/VividCortex/ewma v1.2.0 h1:f58SaIzcDXrSy3kWaHNvuJgJ3Nmz59Zji6XoJR/q1ow= +github.com/VividCortex/ewma v1.2.0/go.mod h1:nz4BbCtbLyFDeC9SUHbtcT5644juEuWfUAUnGx7j5l4= +github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d h1:licZJFw2RwpHMqeKTCYkitsPqHNxTmd4SNR5r94FGM8= +github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d/go.mod h1:asat636LX7Bqt5lYEZ27JNDcqxfjdBQuJ/MM4CN/Lzo= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alexflint/go-filemutex v0.0.0-20171022225611-72bdc8eae2ae/go.mod h1:CgnQgUtFrFz9mxFNtED3jI5tLDjKlOM+oUF/sTk6ps0= +github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= +github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= +github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= +github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so= +github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= +github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= +github.com/beorn7/perks v0.0.0-20160804104726-4c0e84591b9a/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA= +github.com/bits-and-blooms/bitset v1.2.0/go.mod h1:gIdJ4wp64HaoK2YrL1Q5/N7Y16edYb8uY+O0FJTyyDA= +github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= +github.com/blang/semver/v4 v4.0.0 h1:1PFHFE6yCCTv8C1TeyNNarDzntLi7wMI5i/pzqYIsAM= +github.com/blang/semver/v4 v4.0.0/go.mod h1:IbckMUScFkM3pff0VJDNKRiT6TG/YpiHIM2yvyW5YoQ= +github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= +github.com/bshuster-repo/logrus-logstash-hook v0.4.1/go.mod h1:zsTqEiSzDgAa/8GZR7E1qaXrhYNDKBYy5/dWPTIflbk= +github.com/buger/jsonparser v0.0.0-20180808090653-f4dd9f5a6b44/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s= +github.com/bugsnag/bugsnag-go v0.0.0-20141110184014-b1d153021fcd/go.mod h1:2oa8nejYd4cQ/b0hMIopN0lCRxU0bueqREvZLWFrtK8= +github.com/bugsnag/osext v0.0.0-20130617224835-0dd3f918b21b/go.mod h1:obH5gd0BsqsP2LwDJ9aOkm/6J86V6lyAXCoQWGw3K50= +github.com/bugsnag/panicwrap v0.0.0-20151223152923-e2c28503fcd0/go.mod h1:D/8v3kj0zr8ZAKg1AQ6crr+5VwKN5eIywRkfhyM/+dE= +github.com/cenkalti/backoff/v4 v4.1.1/go.mod h1:scbssz8iZGpm3xbr14ovlUdkxfGXNInqkPWOWmG2CLw= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko= +github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= +github.com/checkpoint-restore/go-criu/v4 v4.1.0/go.mod h1:xUQBLp4RLc5zJtWY++yjOoMoB5lihDt7fai+75m+rGw= +github.com/checkpoint-restore/go-criu/v5 v5.0.0/go.mod h1:cfwC0EG7HMUenopBsUf9d89JlCLQIfgVcNsNN0t6T2M= +github.com/checkpoint-restore/go-criu/v5 v5.3.0/go.mod h1:E/eQpaFtUKGOOSEBZgmKAcn+zUUwWxqcaKZlF54wK8E= +github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/logex v1.2.1 h1:XHDu3E6q+gdHgsdTPH6ImJMIp436vR6MPtH8gP05QzM= +github.com/chzyer/logex v1.2.1/go.mod h1:JLbx6lG2kDbNRFnfkgvh4eRJRPX1QCoOIWomwysCBrQ= +github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/readline v1.5.1 h1:upd/6fQk4src78LMRzh5vItIt361/o4uq553V8B5sGI= +github.com/chzyer/readline v1.5.1/go.mod h1:Eh+b79XXUwfKfcPLepksvw2tcLE/Ct21YObkaSkeBlk= +github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/chzyer/test v1.0.0 h1:p3BQDXSxOhOG0P9z6/hGnII4LGiEPOYBhs8asl/fC04= +github.com/chzyer/test v1.0.0/go.mod h1:2JlltgoNkt4TW/z9V/IzDdFaMTM2JPIi26O1pF38GC8= +github.com/cilium/ebpf v0.0.0-20200110133405-4032b1d8aae3/go.mod h1:MA5e5Lr8slmEg9bt0VpxxWqJlO4iwu3FBdHUzV7wQVg= +github.com/cilium/ebpf v0.0.0-20200702112145-1c8d4c9ef775/go.mod h1:7cR51M8ViRLIdUjrmSXlK9pkrsDlLHbO8jiB8X8JnOc= +github.com/cilium/ebpf v0.2.0/go.mod h1:To2CFviqOWL/M0gIMsvSMlqe7em/l1ALkX1PyjrX2Qs= +github.com/cilium/ebpf v0.4.0/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.6.2/go.mod h1:4tRaxcgiL706VnOzHOdBlY8IEAIdxINsQBcU4xJJXRs= +github.com/cilium/ebpf v0.7.0/go.mod h1:/oI2+1shJiTGAMgl6/RgJr36Eo1jzrRcAWbcXO2usCA= +github.com/cilium/ebpf v0.9.1 h1:64sn2K3UKw8NbP/blsixRpF3nXuyhz/VjRlRzvlBRu4= +github.com/cilium/ebpf v0.9.1/go.mod h1:+OhNOIXx/Fnu1IE8bJz2dzOA+VSfyTfdNUVdlQnxUFY= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= +github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/container-orchestrated-devices/container-device-interface v0.5.4 h1:PqQGqJqQttMP5oJ/qNGEg8JttlHqGY3xDbbcKb5T9E8= +github.com/container-orchestrated-devices/container-device-interface v0.5.4/go.mod h1:DjE95rfPiiSmG7uVXtg0z6MnPm/Lx4wxKCIts0ZE0vg= +github.com/containerd/aufs v0.0.0-20200908144142-dab0cbea06f4/go.mod h1:nukgQABAEopAHvB6j7cnP5zJ+/3aVcE7hCYqvIwAHyE= +github.com/containerd/aufs v0.0.0-20201003224125-76a6863f2989/go.mod h1:AkGGQs9NM2vtYHaUen+NljV0/baGCAPELGm2q9ZXpWU= +github.com/containerd/aufs v0.0.0-20210316121734-20793ff83c97/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/aufs v1.0.0/go.mod h1:kL5kd6KM5TzQjR79jljyi4olc1Vrx6XBlcyj3gNv2PU= +github.com/containerd/btrfs v0.0.0-20201111183144-404b9149801e/go.mod h1:jg2QkJcsabfHugurUvvPhS3E08Oxiuh5W/g1ybB4e0E= +github.com/containerd/btrfs v0.0.0-20210316141732-918d888fb676/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/btrfs v1.0.0/go.mod h1:zMcX3qkXTAi9GI50+0HOeuV8LU2ryCE/V2vG/ZBiTss= +github.com/containerd/cgroups v0.0.0-20190717030353-c4b9ac5c7601/go.mod h1:X9rLEHIqSf/wfK8NsPqxJmeZgW4pcfzdXITDrUSJ6uI= +github.com/containerd/cgroups v0.0.0-20190919134610-bf292b21730f/go.mod h1:OApqhQ4XNSNC13gXIwDjhOQxjWa/NxkwZXJ1EvqT0ko= +github.com/containerd/cgroups v0.0.0-20200531161412-0dbf7f05ba59/go.mod h1:pA0z1pT8KYB3TCXK/ocprsh7MAkoW8bZVzPdih9snmM= +github.com/containerd/cgroups v0.0.0-20200710171044-318312a37340/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20200824123100-0b889c03f102/go.mod h1:s5q4SojHctfxANBDvMeIaIovkq29IP48TKAxnhYRxvo= +github.com/containerd/cgroups v0.0.0-20210114181951-8a68de567b68/go.mod h1:ZJeTFisyysqgcCdecO57Dj79RfL0LNeGiFUqLYQRYLE= +github.com/containerd/cgroups v1.0.1/go.mod h1:0SJrPIenamHDcZhEcJMNBB85rHcUsw4f25ZfBiPYRkU= +github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM= +github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw= +github.com/containerd/console v0.0.0-20180822173158-c12b1e7919c1/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20181022165439-0650fd9eeb50/go.mod h1:Tj/on1eG8kiEhd0+fhSDzsPAFESxzBBvdyEgyryXffw= +github.com/containerd/console v0.0.0-20191206165004-02ecf6a7291e/go.mod h1:8Pf4gM6VEbTNRIT26AyyU7hxdQU3MvAvxVI0sc00XBE= +github.com/containerd/console v1.0.1/go.mod h1:XUsP6YE/mKtz6bxc+I8UiKKTP04qjQL4qcS3XoQ5xkw= +github.com/containerd/console v1.0.2/go.mod h1:ytZPjGgY2oeTkAONYafi2kSj0aYggsf8acV1PGKCbzQ= +github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U= +github.com/containerd/containerd v1.2.10/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.0-beta.2.0.20190828155532-0293cbd26c69/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.0/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.3.2/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.0-beta.2.0.20200729163537-40b22ef07410/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.1/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.4.3/go.mod h1:bC6axHOhabU15QhwfG7w5PipXdVtMXFTttgp+kVtyUA= +github.com/containerd/containerd v1.5.0-beta.1/go.mod h1:5HfvG1V2FsKesEGQ17k5/T7V960Tmcumvqn8Mc+pCYQ= +github.com/containerd/containerd v1.5.0-beta.3/go.mod h1:/wr9AVtEM7x9c+n0+stptlo/uBBoBORwEx6ardVcmKU= +github.com/containerd/containerd v1.5.0-beta.4/go.mod h1:GmdgZd2zA2GYIBZ0w09ZvgqEq8EfBp/m3lcVZIvPHhI= +github.com/containerd/containerd v1.5.0-rc.0/go.mod h1:V/IXoMqNGgBlabz3tHD2TWDoTJseu1FGOKuoA4nNb2s= +github.com/containerd/containerd v1.5.1/go.mod h1:0DOxVqwDy2iZvrZp2JUx/E+hS0UNTVn7dJnIOwtYR4g= +github.com/containerd/containerd v1.5.7/go.mod h1:gyvv6+ugqY25TiXxcZC3L5yOeYgEw0QMhscqVp1AR9c= +github.com/containerd/containerd v1.7.1 h1:k8DbDkSOwt5rgxQ3uCI4WMKIJxIndSCBUaGm5oRn+Go= +github.com/containerd/containerd v1.7.1/go.mod h1:gA+nJUADRBm98QS5j5RPROnt0POQSMK+r7P7EGMC/Qc= +github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y= +github.com/containerd/continuity v0.0.0-20200710164510-efbc4488d8fe/go.mod h1:cECdGN1O8G9bgKTlLhuPJimka6Xb/Gg7vYzCTNVxhvo= +github.com/containerd/continuity v0.0.0-20201208142359-180525291bb7/go.mod h1:kR3BEg7bDFaEddKm54WSmrol1fKWDU1nKYkgrcgZT7Y= +github.com/containerd/continuity v0.0.0-20210208174643-50096c924a4e/go.mod h1:EXlVlkqNba9rJe3j7w3Xa924itAMLgZH4UD/Q4PExuQ= +github.com/containerd/continuity v0.1.0/go.mod h1:ICJu0PwR54nI0yPEnJ6jcS+J7CZAUXrLh8lPo2knzsM= +github.com/containerd/fifo v0.0.0-20180307165137-3d5202aec260/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= +github.com/containerd/fifo v0.0.0-20190226154929-a9fb20d87448/go.mod h1:ODA38xgv3Kuk8dQz2ZQXpnv/UZZUHUCL7pnLehbXgQI= +github.com/containerd/fifo v0.0.0-20200410184934-f15a3290365b/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20201026212402-0724c46b320c/go.mod h1:jPQ2IAeZRCYxpS/Cm1495vGFww6ecHmMk1YJH2Q5ln0= +github.com/containerd/fifo v0.0.0-20210316144830-115abcc95a1d/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/fifo v1.0.0/go.mod h1:ocF/ME1SX5b1AOlWi9r677YJmCPSwwWnQ9O123vzpE4= +github.com/containerd/go-cni v1.0.1/go.mod h1:+vUpYxKvAF72G9i1WoDOiPGRtQpqsNW/ZHtSlv++smU= +github.com/containerd/go-cni v1.0.2/go.mod h1:nrNABBHzu0ZwCug9Ije8hL2xBCYh/pjfMb1aZGrrohk= +github.com/containerd/go-runc v0.0.0-20180907222934-5a6d9f37cfa3/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20190911050354-e029b79d8cda/go.mod h1:IV7qH3hrUgRmyYrtgEeGWJfWbgcHL9CSRruz2Vqcph0= +github.com/containerd/go-runc v0.0.0-20200220073739-7016d3ce2328/go.mod h1:PpyHrqVs8FTi9vpyHwPwiNEGaACDxT/N/pLcvMSRA9g= +github.com/containerd/go-runc v0.0.0-20201020171139-16b287bc67d0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/go-runc v1.0.0/go.mod h1:cNU0ZbCgCQVZK4lgG3P+9tn9/PaJNmoDXPpoJhDR+Ok= +github.com/containerd/imgcrypt v1.0.1/go.mod h1:mdd8cEPW7TPgNG4FpuP3sGBiQ7Yi/zak9TYCG3juvb0= +github.com/containerd/imgcrypt v1.0.4-0.20210301171431-0ae5c75f59ba/go.mod h1:6TNsg0ctmizkrOgXRNQjAPFWpMYRWuiB6dSF4Pfa5SA= +github.com/containerd/imgcrypt v1.1.1-0.20210312161619-7ed62a527887/go.mod h1:5AZJNI6sLHJljKuI9IHnw1pWqo/F0nGDOuR9zgTs7ow= +github.com/containerd/imgcrypt v1.1.1/go.mod h1:xpLnwiQmEUJPvQoAapeb2SNCxz7Xr6PJrXQb0Dpc4ms= +github.com/containerd/nri v0.0.0-20201007170849-eb1350a75164/go.mod h1:+2wGSDGFYfE5+So4M5syatU0N0f0LbWpuqyMi4/BE8c= +github.com/containerd/nri v0.0.0-20210316161719-dbaa18c31c14/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/nri v0.1.0/go.mod h1:lmxnXF6oMkbqs39FiCt1s0R2HSMhcLel9vNL3m4AaeY= +github.com/containerd/stargz-snapshotter/estargz v0.4.1/go.mod h1:x7Q9dg9QYb4+ELgxmo4gBUeJB0tl5dqH1Sdz0nJU1QM= +github.com/containerd/stargz-snapshotter/estargz v0.12.0/go.mod h1:AIQ59TewBFJ4GOPEQXujcrJ/EKxh5xXZegW1rkR1P/M= +github.com/containerd/stargz-snapshotter/estargz v0.14.3 h1:OqlDCK3ZVUO6C3B/5FSkDwbkEETK84kQgEeFwDC+62k= +github.com/containerd/stargz-snapshotter/estargz v0.14.3/go.mod h1:KY//uOCIkSuNAHhJogcZtrNHdKrA99/FCCRjE3HD36o= +github.com/containerd/ttrpc v0.0.0-20190828154514-0e0f228740de/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20190828172938-92c8520ef9f8/go.mod h1:PvCDdDGpgqzQIzDW1TphrGLssLDZp2GuS+X5DkEJB8o= +github.com/containerd/ttrpc v0.0.0-20191028202541-4f1b8fe65a5c/go.mod h1:LPm1u0xBw8r8NOKoOdNMeVHSawSsltak+Ihv+etqsE8= +github.com/containerd/ttrpc v1.0.1/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.0.2/go.mod h1:UAxOpgT9ziI0gJrmKvgcZivgxOp8iFPSk8httJEt98Y= +github.com/containerd/ttrpc v1.1.0/go.mod h1:XX4ZTnoOId4HklF4edwc4DcqskFZuvXB1Evzy5KFQpQ= +github.com/containerd/typeurl v0.0.0-20180627222232-a93fcdb778cd/go.mod h1:Cm3kwCdlkCfMSHURc+r6fwoGH6/F1hH3S4sg0rLFWPc= +github.com/containerd/typeurl v0.0.0-20190911142611-5eb25027c9fd/go.mod h1:GeKYzf2pQcqv7tJ0AoCuuhtnqhva5LNU3U+OyKxxJpk= +github.com/containerd/typeurl v1.0.1/go.mod h1:TB1hUtrpaiO88KEK56ijojHS1+NeF0izUACaJW2mdXg= +github.com/containerd/typeurl v1.0.2/go.mod h1:9trJWW2sRlGub4wZJRTW83VtbOLS6hwcDZXTn6oPz9s= +github.com/containerd/zfs v0.0.0-20200918131355-0a33824f23a2/go.mod h1:8IgZOBdv8fAgXddBT4dBXJPtxyRsejFIpXoklgxgEjw= +github.com/containerd/zfs v0.0.0-20210301145711-11e8f1707f62/go.mod h1:A9zfAbMlQwE+/is6hi0Xw8ktpL+6glmqZYtevJgaB8Y= +github.com/containerd/zfs v0.0.0-20210315114300-dde8f0fda960/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v0.0.0-20210324211415-d5c4544f0433/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containerd/zfs v1.0.0/go.mod h1:m+m51S1DvAP6r3FcmYCp54bQ34pyOwTieQDNRIRHsFY= +github.com/containernetworking/cni v0.7.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.0/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/cni v0.8.1/go.mod h1:LGwApLUm2FpoOfxTDEeq8T9ipbpZ61X79hmU3w8FmsY= +github.com/containernetworking/plugins v0.8.6/go.mod h1:qnw5mN19D8fIwkqW7oHHYDHVlzhJpcY6TQxn/fUyDDM= +github.com/containernetworking/plugins v0.9.1/go.mod h1:xP/idU2ldlzN6m4p5LmGiwRDjeJr6FLK6vuiUwoH7P8= +github.com/containers/buildah v1.30.0 h1:mdp2COGKFFEZNEGP8VZ5ITuUFVNPFoH+iK2sSesNfTA= +github.com/containers/buildah v1.30.0/go.mod h1:lyMLZIevpAa6zSzjRl7z4lFJMCMQLFjfo56YIefaB/U= +github.com/containers/common v0.52.0 h1:S5GApgpNEGBuPhDHTFgMc55y5gsuxHcQeElvUpO5kp4= +github.com/containers/common v0.52.0/go.mod h1:dNJJVNBu1wJtAH+vFIMXV+fQHBdEVNmNP3ImjbKper4= +github.com/containers/image/v5 v5.25.0 h1:TJ0unmalbU+scd0i3Txap2wjGsAnv06MSCwgn6bsizk= +github.com/containers/image/v5 v5.25.0/go.mod h1:EKvys0WVlRFkDw26R8y52TuhV9Tfn0yq2luLX6W52Ls= +github.com/containers/libtrust v0.0.0-20230121012942-c1716e8a8d01 h1:Qzk5C6cYglewc+UyGf6lc8Mj2UaPTHy/iF2De0/77CA= +github.com/containers/libtrust v0.0.0-20230121012942-c1716e8a8d01/go.mod h1:9rfv8iPl1ZP7aqh9YA68wnZv2NUDbXdcdPHVz0pFbPY= +github.com/containers/ocicrypt v1.0.1/go.mod h1:MeJDzk1RJHv89LjsH0Sp5KTY3ZYkjXO/C+bKAeWFIrc= +github.com/containers/ocicrypt v1.1.0/go.mod h1:b8AOe0YR67uU8OqfVNcznfFpAzu3rdgUV4GP9qXPfu4= +github.com/containers/ocicrypt v1.1.1/go.mod h1:Dm55fwWm1YZAjYRaJ94z2mfZikIyIN4B0oB3dj3jFxY= +github.com/containers/ocicrypt v1.1.7 h1:thhNr4fu2ltyGz8aMx8u48Ae0Pnbip3ePP9/mzkZ/3U= +github.com/containers/ocicrypt v1.1.7/go.mod h1:7CAhjcj2H8AYp5YvEie7oVSK2AhBY8NscCYRawuDNtw= +github.com/containers/podman/v4 v4.5.1 h1:V74tyJrK0mGC3el/lR8ylYFhZT3w1r0d5YqONj9D01I= +github.com/containers/podman/v4 v4.5.1/go.mod h1:BoNmT1QNzMtDMUCiJ1j1ZoDx6OOn5BATBih6sfg7pJs= +github.com/containers/psgo v1.8.0 h1:2loGekmGAxM9ir5OsXWEfGwFxorMPYnc6gEDsGFQvhY= +github.com/containers/psgo v1.8.0/go.mod h1:T8ZxnX3Ur4RvnhxFJ7t8xJ1F48RhiZB4rSrOaR/qGHc= +github.com/containers/storage v1.43.0/go.mod h1:uZ147thiIFGdVTjMmIw19knttQnUCl3y9zjreHrg11s= +github.com/containers/storage v1.46.1 h1:GcAe8J0Y6T2CF70fXPojUpnme6zXamuzGCrNujVtIGE= +github.com/containers/storage v1.46.1/go.mod h1:81vNDX4h+nXJ2o0D6Yqy6JGXDYJGVpHZpz0nr09iJuQ= +github.com/coreos/bbolt v1.3.2/go.mod h1:iRUV2dpdMOn7Bo10OQBFzIJO9kkE559Wcmn+qkEiiKk= +github.com/coreos/etcd v3.3.10+incompatible/go.mod h1:uF7uidLiAD3TWHmW31ZFd/JWoc32PjwdhPthX9715RE= +github.com/coreos/go-iptables v0.4.5/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-iptables v0.5.0/go.mod h1:/mVI274lEDI2ns62jHCDnCyBF9Iwsmekav8Dbxlm1MU= +github.com/coreos/go-oidc v2.1.0+incompatible/go.mod h1:CgnwVTmzoESiwO9qyAFEMiHoZ1nMCKZlZ9V6mm3/LKc= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd v0.0.0-20161114122254-48702e0da86b/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20180511133405-39ca1b05acc7/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4= +github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.3.2/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs= +github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= +github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= +github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY= +github.com/cyberphone/json-canonicalization v0.0.0-20220623050100-57a0ce2678a7 h1:vU+EP9ZuFUCYE0NYLwTSob+3LNEJATzNfP/DC7SWGWI= +github.com/cyberphone/json-canonicalization v0.0.0-20220623050100-57a0ce2678a7/go.mod h1:uzvlm1mxhHkdfqitSA92i7Se+S9ksOn3a3qmv/kyOCw= +github.com/cyphar/filepath-securejoin v0.2.2/go.mod h1:FpkQEhXnPnOthhzymB7CGsFk2G9VLXONKD9G7QGMM+4= +github.com/cyphar/filepath-securejoin v0.2.3 h1:YX6ebbZCZP7VkM3scTTokDgBL2TY741X51MTk3ycuNI= +github.com/cyphar/filepath-securejoin v0.2.3/go.mod h1:aPGpWjXOXUn2NCNjFvBE6aRxGGx79pTxQpKOJNYHHl4= +github.com/d2g/dhcp4 v0.0.0-20170904100407-a1d1b6c41b1c/go.mod h1:Ct2BUK8SB0YC1SMSibvLzxjeJLnrYEVLULFNiHY9YfQ= +github.com/d2g/dhcp4client v1.0.0/go.mod h1:j0hNfjhrt2SxUOw55nL0ATM/z4Yt3t2Kd1mW34z5W5s= +github.com/d2g/dhcp4server v0.0.0-20181031114812-7d4a0a7f59a5/go.mod h1:Eo87+Kg/IX2hfWJfwxMzLyuSZyxSoAug2nGa1G2QAi8= +github.com/d2g/hardwareaddr v0.0.0-20190221164911-e7d9fbe030e4/go.mod h1:bMl4RjIciD2oAxI7DmWRx6gbeqrkoLqv3MV0vzNad+I= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/denverdino/aliyungo v0.0.0-20190125010748-a747050bb1ba/go.mod h1:dV8lFg6daOBZbT6/BDGIz6Y3WFGn8juu6G+CQ6LHtl0= +github.com/dgrijalva/jwt-go v0.0.0-20170104182250-a601269ab70c/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= +github.com/disiqueira/gotree/v3 v3.0.2 h1:ik5iuLQQoufZBNPY518dXhiO5056hyNBIK9lWhkNRq8= +github.com/disiqueira/gotree/v3 v3.0.2/go.mod h1:ZuyjE4+mUQZlbpkI24AmruZKhg3VHEgPLDY8Qk+uUu8= +github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E= +github.com/docker/cli v0.0.0-20191017083524-a8ff7f821017/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= +github.com/docker/distribution v0.0.0-20190905152932-14b96e55d84c/go.mod h1:0+TTO4EOBfRPhZXAeF1Vu+W3hHZ8eLp8PgKVZlcvtFY= +github.com/docker/distribution v2.7.1-0.20190205005809-0d3efadf0154+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/distribution v2.8.2+incompatible h1:T3de5rq0dB1j30rp0sA2rER+m322EBzniBPB6ZIzuh8= +github.com/docker/distribution v2.8.2+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v24.0.2+incompatible h1:eATx+oLz9WdNVkQrr0qjQ8HvRJ4bOOxfzEo8R+dA3cg= +github.com/docker/docker v24.0.2+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker-credential-helpers v0.6.3/go.mod h1:WRaJzqw3CTB9bk10avuGsjVBZsD05qeibJ1/TYlvc0Y= +github.com/docker/docker-credential-helpers v0.7.0 h1:xtCHsjxogADNZcdv1pKUHXryefjlVRqWqIhk/uXJp0A= +github.com/docker/docker-credential-helpers v0.7.0/go.mod h1:rETQfLdHNT3foU5kuNkFR1R1V12OJRRO5lzt2D1b5X0= +github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec= +github.com/docker/go-connections v0.4.1-0.20210727194412-58542c764a11 h1:IPrmumsT9t5BS7XcPhgsCTlkWbYg80SEXUzDpReaU6Y= +github.com/docker/go-connections v0.4.1-0.20210727194412-58542c764a11/go.mod h1:a6bNUGTbQBsY6VRHTr4h/rkOXjl244DyRD0tx3fgq4Q= +github.com/docker/go-events v0.0.0-20170721190031-9461782956ad/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= +github.com/docker/go-events v0.0.0-20190806004212-e31b211e4f1c/go.mod h1:Uw6UezgYA44ePAFQYUehOuCzmy5zmg/+nl2ZfMWGkpA= +github.com/docker/go-metrics v0.0.0-20180209012529-399ea8c73916/go.mod h1:/u0gXw0Gay3ceNrsHubL3BtdOL2fHf93USgMTe0W5dI= +github.com/docker/go-metrics v0.0.1/go.mod h1:cG1hvH2utMXtqgqqYE9plW6lDxS3/5ayHzueweSI3Vw= +github.com/docker/go-units v0.4.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= +github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= +github.com/docker/libtrust v0.0.0-20150114040149-fa567046d9b1/go.mod h1:cyGadeNEkKy96OOhEzfZl+yxihPEzKnqJwvfuSUqbZE= +github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96/go.mod h1:Qh8CwZgvJUkLughtfhJv5dyTYa91l1fOUCrgjqmcifM= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/elazarl/goproxy v0.0.0-20180725130230-947c36da3153/go.mod h1:/Zj4wYkgs4iZTTu3o/KG3Itv/qCCa8VVMlb3i9OVuzc= +github.com/emicklei/go-restful v0.0.0-20170410110728-ff4f55a20633/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/emicklei/go-restful v2.9.5+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= +github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= +github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/evanphx/json-patch v4.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= +github.com/facebookgo/clock v0.0.0-20150410010913-600d898af40a h1:yDWHCSQ40h88yih2JAcL6Ls/kVkSE8GFACTGVnMPruw= +github.com/facebookgo/limitgroup v0.0.0-20150612190941-6abd8d71ec01 h1:IeaD1VDVBPlx3viJT9Md8if8IxxJnO+x0JCGb054heg= +github.com/facebookgo/muster v0.0.0-20150708232844-fd3d7953fd52 h1:a4DFiKFJiDRGFD1qIcqGLX/WlUMD9dyLSLDt+9QZgt8= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= +github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= +github.com/frankban/quicktest v1.14.0 h1:+cqqvzZV87b4adx/5ayVOaYZ2CrvM4ejQvUdBzPPUss= +github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= +github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= +github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= +github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa/go.mod h1:KnogPXtdwXqoenmZCw6S+25EAm2MkxbG0deNDu4cbSA= +github.com/garyburd/redigo v0.0.0-20150301180006-535138d7bcd7/go.mod h1:NR3MbYisc3/PwhQ00EMzDiPmrwpPxAn5GI05/YaO1SY= +github.com/ghodss/yaml v0.0.0-20150909031657-73d445a93680/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-ini/ini v1.25.4/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= +github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= +github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= +github.com/go-openapi/analysis v0.21.2/go.mod h1:HZwRk4RRisyG8vx2Oe6aqeSQcoxRp47Xkp3+K6q+LdY= +github.com/go-openapi/analysis v0.21.4 h1:ZDFLvSNxpDaomuCueM0BlSXxpANBlFYiBvr+GXrvIHc= +github.com/go-openapi/analysis v0.21.4/go.mod h1:4zQ35W4neeZTqh3ol0rv/O8JBbka9QyAgQRPp9y3pfo= +github.com/go-openapi/errors v0.19.8/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.19.9/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.20.2/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.20.3 h1:rz6kiC84sqNQoqrtulzaL/VERgkoCyB6WdEkc2ujzUc= +github.com/go-openapi/errors v0.20.3/go.mod h1:Z3FlZ4I8jEGxjUK+bugx3on2mIAk4txuAOhlsB1FSgk= +github.com/go-openapi/jsonpointer v0.0.0-20160704185906-46af16f9f7b1/go.mod h1:+35s3my2LFTysnkMfxsJBAMHj/DoqoB9knIWoYG/Vk0= +github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5 h1:gZr+CIYByUqjcgeLXnQu2gHYQC9o73G2XUeOFYEICuY= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonreference v0.0.0-20160704190145-13c6e3589ad9/go.mod h1:W3Z9FmVs9qj+KR4zFKmDPGiLdk1D9Rlm7cyMvf57TTg= +github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= +github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= +github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns= +github.com/go-openapi/jsonreference v0.20.0 h1:MYlu0sBgChmCfJxxUKZ8g1cPWFOB37YSZqewK7OKeyA= +github.com/go-openapi/jsonreference v0.20.0/go.mod h1:Ag74Ico3lPc+zR+qjn4XBUmXymS4zJbYVCZmcgkasdo= +github.com/go-openapi/loads v0.21.1/go.mod h1:/DtAMXXneXFjbQMGEtbamCZb+4x7eGwkvZCvBmwUG+g= +github.com/go-openapi/loads v0.21.2 h1:r2a/xFIYeZ4Qd2TnGpWDIQNcP80dIaZgf704za8enro= +github.com/go-openapi/loads v0.21.2/go.mod h1:Jq58Os6SSGz0rzh62ptiu8Z31I+OTHqmULx5e/gJbNw= +github.com/go-openapi/runtime v0.25.0 h1:7yQTCdRbWhX8vnIjdzU8S00tBYf7Sg71EBeorlPHvhc= +github.com/go-openapi/runtime v0.25.0/go.mod h1:Ux6fikcHXyyob6LNWxtE96hWwjBPYF0DXgVFuMTneOs= +github.com/go-openapi/spec v0.0.0-20160808142527-6aced65f8501/go.mod h1:J8+jY1nAiCcj+friV/PDoE1/3eeccG9LYBs0tYvLOWc= +github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= +github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I= +github.com/go-openapi/spec v0.20.6/go.mod h1:2OpW+JddWPrpXSCIX8eOx7lZ5iyuWj3RYR6VaaBKcWA= +github.com/go-openapi/spec v0.20.8 h1:ubHmXNY3FCIOinT8RNrrPfGc9t7I1qhPtdOGoG2AxRU= +github.com/go-openapi/spec v0.20.8/go.mod h1:2OpW+JddWPrpXSCIX8eOx7lZ5iyuWj3RYR6VaaBKcWA= +github.com/go-openapi/strfmt v0.21.0/go.mod h1:ZRQ409bWMj+SOgXofQAGTIo2Ebu72Gs+WaRADcS5iNg= +github.com/go-openapi/strfmt v0.21.1/go.mod h1:I/XVKeLc5+MM5oPNN7P6urMOpuLXEcNrCX/rPGuWb0k= +github.com/go-openapi/strfmt v0.21.3/go.mod h1:k+RzNO0Da+k3FrrynSNN8F7n/peCmQQqbbXjtDfvmGg= +github.com/go-openapi/strfmt v0.21.7 h1:rspiXgNWgeUzhjo1YU01do6qsahtJNByjLVbPLNHb8k= +github.com/go-openapi/strfmt v0.21.7/go.mod h1:adeGTkxE44sPyLk0JV235VQAO/ZXUr8KAzYjclFs3ew= +github.com/go-openapi/swag v0.0.0-20160704191624-1d0bd113de87/go.mod h1:DXUve3Dpr1UfpPtxFw+EFuQ41HhCWZfha5jSVRG7C7I= +github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.21.1/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= +github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-openapi/validate v0.22.1 h1:G+c2ub6q47kfX1sOBLwIQwzBVt8qmOAARyo/9Fqs9NU= +github.com/go-openapi/validate v0.22.1/go.mod h1:rjnrwK57VJ7A8xqfpAOEKRH8yQSGUriMu5/zuPSQ1hg= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= +github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= +github.com/go-test/deep v1.1.0 h1:WOcxcdHcvdgThNXjw0t76K42FXTU7HpNQWHpA2HHNlg= +github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= +github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY= +github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg= +github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs= +github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk= +github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28= +github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo= +github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk= +github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw= +github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360= +github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg= +github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE= +github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8= +github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ= +github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0= +github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw= +github.com/godbus/dbus v0.0.0-20151105175453-c7fdd8b5cd55/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= +github.com/godbus/dbus v0.0.0-20180201030542-885f9cc04c9c/go.mod h1:/YcGZj5zSblfDWMMoOzV4fas9FZnQYTkDnsGvmh2Grw= +github.com/godbus/dbus v0.0.0-20190422162347-ade71ed3457e/go.mod h1:bBOAhwG1umN6/6ZUMtDFBMQR8jRg9O75tm9K00oMsK4= +github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.0.6/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/godbus/dbus/v5 v5.1.1-0.20221029134443-4b691ce883d5 h1:boOtwyhKoC3Aadiw5zbhU54YyCkm9EpZCSN6mOx0KLc= +github.com/godbus/dbus/v5 v5.1.1-0.20221029134443-4b691ce883d5/go.mod h1:fXoNnqaUvdKqjJmMGeiBgmRphUg+kO0MT4AhPOP6+Qg= +github.com/gogo/googleapis v1.2.0/go.mod h1:Njal3psf3qN6dwBtQfUmBZh2ybovJ0tlu3o/AC7HYjU= +github.com/gogo/googleapis v1.4.0/go.mod h1:5YRNX2z1oM5gXdAkurHa942MDgEJyk02w4OecKY87+c= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9d/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE= +github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= +github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= +github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0= +github.com/google/go-containerregistry v0.14.0 h1:z58vMqHxuwvAsVwvKEkmVBz2TlgBgH5k6koEXBtlYkw= +github.com/google/go-containerregistry v0.14.0/go.mod h1:aiJ2fp/SXvkWgmYHioXnbMdlgB8eXiiYOY55gfN91Wk= +github.com/google/go-intervals v0.0.2 h1:FGrVEiUnTRKR8yE04qzXYaJMtnIYqobR5QbblK3ixcM= +github.com/google/go-intervals v0.0.2/go.mod h1:MkaR3LNRfeKLPmqgJYs4E66z5InYjmCjbbr4TQlcT6Y= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= +github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38 h1:yAJXTCF9TqKcTiHJAE8dj7HMvPfh66eeA2JYW7eFpSE= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= +github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= +github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= +github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= +github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= +github.com/gorilla/handlers v0.0.0-20150720190736-60c7bfde3e33/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= +github.com/gorilla/mux v1.7.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= +github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI= +github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= +github.com/gorilla/schema v1.2.0 h1:YufUaxZYCKGFuAq3c96BOhjgd5nmXiOY9NGzF247Tsc= +github.com/gorilla/schema v1.2.0/go.mod h1:kgLaKoK1FELgZqMAVxx/5cbj0kT+57qxUrAlIO2eleU= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= +github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/errwrap v1.1.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4= +github.com/hashicorp/go-multierror v0.0.0-20161216184304-ed905158d874/go.mod h1:JMRHfdO9jKNzS/+BTlxCjKNQHg/jZAft8U7LloJvN7I= +github.com/hashicorp/go-multierror v1.0.0/go.mod h1:dHtQlpGsu+cZNNAkkCN/P3hoUDHhCYQXV3UM06sGGrk= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-multierror v1.1.1/go.mod h1:iw975J/qwKPdAO1clOe2L8331t/9/fmwbPZ6JB6eMoM= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= +github.com/honeycombio/beeline-go v1.10.0 h1:cUDe555oqvw8oD76BQJ8alk7FP0JZ/M/zXpNvOEDLDc= +github.com/honeycombio/libhoney-go v1.16.0 h1:kPpqoz6vbOzgp7jC6SR7SkNj7rua7rgxvznI6M3KdHc= +github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= +github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.5/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= +github.com/imdario/mergo v0.3.10/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.12/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= +github.com/imdario/mergo v0.3.15 h1:M8XP7IuFNsqUx6VPK2P9OSmsYsI/YFaGil0uD21V3dM= +github.com/imdario/mergo v0.3.15/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/j-keck/arping v0.0.0-20160618110441-2cf9dc699c56/go.mod h1:ymszkNOg6tORTn+6F6j+Jc8TOr5osrynvN6ivFWZ2GA= +github.com/jinzhu/copier v0.3.5 h1:GlvfUwHk62RokgqVNvYsku0TATCF7bAHVwEXoBh3iJg= +github.com/jinzhu/copier v0.3.5/go.mod h1:DfbEm0FYsaqBcKcFuvmOZb218JkPGtvSHsKg8S8hyyg= +github.com/jmespath/go-jmespath v0.0.0-20160202185014-0b12d6b521d8/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmespath/go-jmespath v0.0.0-20160803190731-bd40a432e4c7/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= +github.com/jmhodges/clock v0.0.0-20160418191101-880ee4c33548 h1:dYTbLf4m0a5u0KLmPfB6mgxbcV7588bOCx79hxa5Sr4= +github.com/joefitzgerald/rainbow-reporter v0.1.0/go.mod h1:481CNgqmVHQZzdIbN52CupLJyoVwB10FQ/IQlF1pdL8= +github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= +github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= +github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= +github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4= +github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/klauspost/compress v1.11.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.11.13/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= +github.com/klauspost/compress v1.15.7/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU= +github.com/klauspost/compress v1.15.9/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU= +github.com/klauspost/compress v1.16.4 h1:91KN02FnsOYhuunwU4ssRe8lc2JosWmizWa91B5v1PU= +github.com/klauspost/compress v1.16.4/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= +github.com/klauspost/pgzip v1.2.5/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs= +github.com/klauspost/pgzip v1.2.6-0.20220930104621-17e8dac29df8 h1:BcxbplxjtczA1a6d3wYoa7a0WL3rq9DKBMGHeKyjEF0= +github.com/klauspost/pgzip v1.2.6-0.20220930104621-17e8dac29df8/go.mod h1:Ch1tH69qFZu15pkjo5kYi6mth2Zzwzt50oCQKQE9RUs= +github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8= +github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/pty v1.1.5/go.mod h1:9r2w37qlBe7rQ6e1fg1S/9xpWHSnaqNdHD3WcMdbPDA= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/letsencrypt/boulder v0.0.0-20230213213521-fdfea0d469b6 h1:unJdfS94Y3k85TKy+mvKzjW5R9rIC+Lv4KGbE7uNu0I= +github.com/letsencrypt/boulder v0.0.0-20230213213521-fdfea0d469b6/go.mod h1:PUgW5vI9ANEaV6qv9a6EKu8gAySgwf0xrzG9xIB/CK0= +github.com/linuxkit/virtsock v0.0.0-20201010232012-f8cee7dfc7a3/go.mod h1:3r6x7q95whyfWQpmGZTu3gk3v2YkMi05HEzl7Tf7YEo= +github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= +github.com/mailru/easyjson v0.0.0-20160728113105-d5b7844b561a/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= +github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/manifoldco/promptui v0.9.0 h1:3V4HzJk1TtXW1MTZMP7mdlwbBpIinw3HztaIlYthEiA= +github.com/manifoldco/promptui v0.9.0/go.mod h1:ka04sppxSGFAtxX0qhlYQjISsg9mR4GWtQEhdbn6Pgg= +github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE= +github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= +github.com/marstr/guid v1.1.0/go.mod h1:74gB1z2wpxxInTG6yaqA7KrtM0NZ+RbrcqDvYHefzho= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU= +github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/mattn/go-shellwords v1.0.3/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.6/go.mod h1:3xCvwCdWdlDJUrvuMn7Wuy9eWs4pE8vqg+NOMyg4B2o= +github.com/mattn/go-shellwords v1.0.12 h1:M2zGm7EW6UQJvDeQxo4T51eKPurbeFbe8WtebGE2xrk= +github.com/mattn/go-shellwords v1.0.12/go.mod h1:EZzvwXDESEeg03EKmM+RmDnNOPKG4lLtQsUlTZDWQ8Y= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= +github.com/maxbrunsfeld/counterfeiter/v6 v6.2.2/go.mod h1:eD9eIE7cdwcMi9rYluz88Jz2VyhSmden33/aXg4oVIY= +github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= +github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU= +github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= +github.com/mistifyio/go-zfs v2.1.2-0.20190413222219-f784269be439+incompatible/go.mod h1:8AuVvqP/mXw1px98n46wfvcGfQ4ci2FwoAjKYxuo3Z4= +github.com/mistifyio/go-zfs/v3 v3.0.0 h1:J5QK618xRcXnQYZ2GE5FdmpS1ufIrWue+lR/mpe6/14= +github.com/mistifyio/go-zfs/v3 v3.0.0/go.mod h1:CzVgeB0RvF2EGzQnytKVvVSDwmKJXxkOTUGbNrTja/k= +github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= +github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= +github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= +github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/osext v0.0.0-20151018003038-5e2d6d41470f/go.mod h1:OkQIRizQZAeMln+1tSwduZz7+Af5oFlKirV/MSYes2A= +github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= +github.com/moby/patternmatcher v0.5.0 h1:YCZgJOeULcxLw1Q+sVR636pmS7sPEn1Qo2iAN6M7DBo= +github.com/moby/patternmatcher v0.5.0/go.mod h1:hDPoyOpDY7OrrMDLaYoY3hf52gNCR/YOUYxkhApJIxc= +github.com/moby/sys/mountinfo v0.4.0/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.4.1/go.mod h1:rEr8tzG/lsIZHBtN/JjGG+LMYx9eXgW2JI+6q0qou+A= +github.com/moby/sys/mountinfo v0.5.0/go.mod h1:3bMD3Rg+zkqx8MRYPi7Pyb0Ie97QEBmdxbhnCLlSvSU= +github.com/moby/sys/mountinfo v0.6.2 h1:BzJjoreD5BMFNmD9Rus6gdd1pLuecOFPt8wC+Vygl78= +github.com/moby/sys/mountinfo v0.6.2/go.mod h1:IJb6JQeOklcdMU9F5xQ8ZALD+CUr5VlGpwtX+VE0rpI= +github.com/moby/sys/sequential v0.5.0 h1:OPvI35Lzn9K04PBbCLW0g4LcFAJgHsvXsRyewg5lXtc= +github.com/moby/sys/sequential v0.5.0/go.mod h1:tH2cOOs5V9MlPiXcQzRC+eEyab644PWKGRYaaV5ZZlo= +github.com/moby/sys/symlink v0.1.0/go.mod h1:GGDODQmbFOjFsXvfLVn3+ZRxkch54RkSiGqsZeMYowQ= +github.com/moby/term v0.0.0-20200312100748-672ec06f55cd/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo= +github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0= +github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= +github.com/morikuni/aec v1.0.0 h1:nP9CBfwrvYnBRgY6qfDQkygYDmYwOilePFkwzv4dU8A= +github.com/morikuni/aec v1.0.0/go.mod h1:BbKIizmSmc5MMPqRYbxO4ZU0S0+P200+tUnFx7PXmsc= +github.com/mrunalp/fileutils v0.5.0/go.mod h1:M1WthSahJixYnrXQl/DFQuteStB1weuxD2QJNHXfbSQ= +github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f/go.mod h1:ZdcZmHo+o7JKHSa8/e818NopupXU1YMK5fe1lsApnBw= +github.com/ncw/swift v1.0.47/go.mod h1:23YIA4yWVnGwv2dQlN4bB7egfYX6YLn0Yo/S6zZO/ZM= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= +github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= +github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= +github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/onsi/ginkgo v0.0.0-20151202141238-7f8ab55aaf3b/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.10.1/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.10.3/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.11.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= +github.com/onsi/ginkgo v1.12.0/go.mod h1:oUhWkIvk5aDxtKvDDuw8gItl8pKl42LzjC9KZE0HfGg= +github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= +github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= +github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= +github.com/onsi/ginkgo/v2 v2.9.7 h1:06xGQy5www2oN160RtEZoTvnP2sPhEfePYmCDc2szss= +github.com/onsi/ginkgo/v2 v2.9.7/go.mod h1:cxrmXWykAwTwhQsJOPfdIDiJ+l2RYq7U8hFU+M/1uw0= +github.com/onsi/gomega v0.0.0-20151007035656-2152b45fa28a/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v0.0.0-20170829124025-dcabb60a477c/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= +github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= +github.com/onsi/gomega v1.9.0/go.mod h1:Ho0h+IUsWyvy1OpqCwxlQ/21gkhVunqlU8fDGcoTdcA= +github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.10.3/go.mod h1:V9xEwhxec5O8UDM77eCW8vLymOMltsqPVYWrpDsH8xc= +github.com/onsi/gomega v1.27.7 h1:fVih9JD6ogIiHUN6ePK7HJidyEDpWGVB5mzM7cWNXoU= +github.com/onsi/gomega v1.27.7/go.mod h1:1p8OOlwo2iUUDsHnOrjE5UKYJ+e3W8eQ3qSlRahPmr4= +github.com/opencontainers/go-digest v0.0.0-20170106003457-a6d0ee40d420/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v0.0.0-20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0-rc1.0.20180430190053-c9281466c8b2/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.0/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.0.2/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0= +github.com/opencontainers/image-spec v1.1.0-rc2.0.20221005185240-3a7f492d3f1b h1:YWuSjZCQAPM8UUBLkYUk1e+rZcvWHJmFb6i6rM44Xs8= +github.com/opencontainers/image-spec v1.1.0-rc2.0.20221005185240-3a7f492d3f1b/go.mod h1:3OVijpioIKYWTqjiG0zfF6wvoJ4fAXGbjdZuI2NgsRQ= +github.com/opencontainers/runc v0.0.0-20190115041553-12f6a991201f/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc8.0.20190926000215-3e425f80a8c9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U= +github.com/opencontainers/runc v1.0.0-rc93/go.mod h1:3NOsor4w32B2tC0Zbl8Knk4Wg84SM2ImC1fxBuqJ/H0= +github.com/opencontainers/runc v1.0.2/go.mod h1:aTaHFFwQXuA71CiyxOdFFIorAoemI04suvGRQFzWTD0= +github.com/opencontainers/runc v1.1.4/go.mod h1:1J5XiS+vdZ3wCyZybsuxXZWGrgSr8fFJHLXuG2PsnNg= +github.com/opencontainers/runc v1.1.5 h1:L44KXEpKmfWDcS02aeGm8QNTFXTo2D+8MYGDIJ/GDEs= +github.com/opencontainers/runc v1.1.5/go.mod h1:1J5XiS+vdZ3wCyZybsuxXZWGrgSr8fFJHLXuG2PsnNg= +github.com/opencontainers/runtime-spec v0.1.2-0.20190507144316-5b71a03e2700/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2-0.20190207185410-29686dbc5559/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.2/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20200929063507-e6143ca7d51d/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.0.3-0.20210326190908-1c3f411f0417/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-spec v1.1.0-rc.1 h1:wHa9jroFfKGQqFHj0I1fMRKLl0pfj+ynAqBxo3v6u9w= +github.com/opencontainers/runtime-spec v1.1.0-rc.1/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= +github.com/opencontainers/runtime-tools v0.0.0-20181011054405-1d69bd0f9c39/go.mod h1:r3f7wjNzSs2extwzU3Y+6pKfobzPh+kKFJ3ofN+3nfs= +github.com/opencontainers/runtime-tools v0.9.1-0.20230317050512-e931285f4b69 h1:NL4xDvl68WWqQ+8WPMM3l5PsZTxaT7Z4K3VSKDRuAGs= +github.com/opencontainers/runtime-tools v0.9.1-0.20230317050512-e931285f4b69/go.mod h1:bNpfuSHA3DZRtD0TPWO8LzgtLpFPTVA/3jDkzD/OPyk= +github.com/opencontainers/selinux v1.6.0/go.mod h1:VVGKuOLlE7v4PJyT6h7mNWvq1rzqiriPsEqVhc+svHE= +github.com/opencontainers/selinux v1.8.0/go.mod h1:RScLhm78qiWa2gbVCcGkC7tCGdgk3ogry1nUQF8Evvo= +github.com/opencontainers/selinux v1.8.2/go.mod h1:MUIHuUEvKB1wtJjQdOyYRgOnLD2xAPP8dBsCoU0KuF8= +github.com/opencontainers/selinux v1.10.0/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= +github.com/opencontainers/selinux v1.10.1/go.mod h1:2i0OySw99QjzBBQByd1Gr9gSjvuho1lHsJxIJ3gGbJI= +github.com/opencontainers/selinux v1.11.0 h1:+5Zbo97w3Lbmb3PeqQtpmTkMwsW5nRI3YaLpt7tQ7oU= +github.com/opencontainers/selinux v1.11.0/go.mod h1:E5dMC3VPuVvVHDYmi78qvhJp8+M586T4DlDRYpFkyec= +github.com/ostreedev/ostree-go v0.0.0-20210805093236-719684c64e4f h1:/UDgs8FGMqwnHagNDPGOlts35QkhAZ8by3DR7nMih7M= +github.com/ostreedev/ostree-go v0.0.0-20210805093236-719684c64e4f/go.mod h1:J6OG6YJVEWopen4avK3VNQSnALmmjvniMmni/YFYAwc= +github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= +github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE= +github.com/pelletier/go-toml v1.8.1/go.mod h1:T2/BmBdy8dvIRq1a/8aqjN41wvWlN4lrapLU/GW4pbc= +github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1-0.20171018195549-f15c970de5b7/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/sftp v1.13.5 h1:a3RLUqkyjYRtBTZJZ1VRrKbN3zhuPLlUc3sphVz81go= +github.com/pkg/sftp v1.13.5/go.mod h1:wHDZ0IZX6JcBYRK1TH9bcVq8G7TLpVHYIGJRFnmPfxg= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pquerna/cachecontrol v0.0.0-20171018203845-0dec1b30a021/go.mod h1:prYjPmNq4d1NPVmpShWobRqXY3q7Vp+80DqgxxUrUIA= +github.com/proglottis/gpgme v0.1.3 h1:Crxx0oz4LKB3QXc5Ea0J19K/3ICfy3ftr5exgUK1AU0= +github.com/proglottis/gpgme v0.1.3/go.mod h1:fPbW/EZ0LvwQtH8Hy7eixhp1eF3G39dtx7GUN+0Gmy0= +github.com/prometheus/client_golang v0.0.0-20180209125602-c332b6f63c06/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v0.9.3/go.mod h1:/TN21ttK/J9q6uSwhBd54HahCDft0ttaMvbicHlPoso= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.1.0/go.mod h1:I1FGZT9+L76gKKOs5djB6ezCbFQP1xR9D75/vuwEF3g= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.14.0 h1:nJdhIvne2eSX/XRAFV9PcvFFRbrjbcTUj0VP62TMhnw= +github.com/prometheus/client_model v0.0.0-20171117100541-99fa1f4be8e5/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.3.0 h1:UBgGFHqYdG/TPFD1B1ogZywDqEkwp3fBMvqdiQ7Xew4= +github.com/prometheus/common v0.0.0-20180110214958-89604d197083/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/common v0.0.0-20181113130724-41aa239b4cce/go.mod h1:daVV7qP5qjZbuso7PdcryaAu0sAZbrN9i7WWcTMWvro= +github.com/prometheus/common v0.4.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.6.0/go.mod h1:eBmuwkDJBwy6iBfxCBob6t6dR6ENT/y+J+Zk0j9GMYc= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.42.0 h1:EKsfXEYo4JpWMHH5cg+KOUWeuJSov1Id8zGR8eeI1YM= +github.com/prometheus/procfs v0.0.0-20180125133057-cb4147076ac7/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.0-20190507164030-5867b95ac084/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.0-20190522114515-bc1a522cf7b1/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/procfs v0.0.5/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= +github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.2.0/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.9.0 h1:wzCHvIvM5SxWqYvwgVL7yJY8Lz3PKn49KQtpgMYJfhI= +github.com/prometheus/tsdb v0.7.1/go.mod h1:qhTCs0VvXwvX/y3TZrWD7rabWM+ijKTux40TwIPHuXU= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= +github.com/rivo/uniseg v0.4.4/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= +github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= +github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= +github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= +github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= +github.com/sclevine/spec v1.2.0/go.mod h1:W4J29eT/Kzv7/b9IWLB055Z+qvVC9vt0Arko24q7p+U= +github.com/sebdah/goldie/v2 v2.5.3 h1:9ES/mNN+HNUbNWpVAlrzuZ7jE+Nrczbj8uFRjM7624Y= +github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= +github.com/seccomp/libseccomp-golang v0.9.2-0.20220502022130-f33da4d89646/go.mod h1:JA8cRccbGaA1s33RQf7Y1+q9gHmZX1yB/z9WDN1C6fg= +github.com/seccomp/libseccomp-golang v0.10.0 h1:aA4bp+/Zzi0BnWZ2F1wgNBs5gTpm+na2rWM6M9YjLpY= +github.com/sergi/go-diff v1.2.0 h1:XU+rvMAioB0UC3q1MFrIQy4Vo5/4VsRDQQXHsEya6xQ= +github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= +github.com/sigstore/fulcio v1.2.0 h1:I4H764cDbryKXkPtasUvo8bcix/7xLvkxWYWNp+JtWI= +github.com/sigstore/fulcio v1.2.0/go.mod h1:FS7qpBvOEqs0uEh1+hJxzxtJistWN29ybLtAzFNUi0c= +github.com/sigstore/rekor v1.1.0 h1:9fjPvW0WERE7VPtSSVSTbDLLOsrNx3RtiIeZ4/1tmDI= +github.com/sigstore/rekor v1.1.0/go.mod h1:jEOGDGPMURBt9WR50N0rO7X8GZzLE3UQT+ln6BKJ/m0= +github.com/sigstore/sigstore v1.6.0 h1:0fYHVoUlPU3WM8o3U1jT9SI2lqQE68XbG+qWncXaZC8= +github.com/sigstore/sigstore v1.6.0/go.mod h1:+55pf6HZ15kf60c08W+GH95JQbAcnVyUBquQGSVdsto= +github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= +github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= +github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.8.1/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.9.0 h1:trlNQbNUG3OdDrDil03MCb1H2o9nJ1x4/5LYw7byDE0= +github.com/sirupsen/logrus v1.9.0/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= +github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= +github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/afero v1.1.2/go.mod h1:j4pytiNVoe2o6bmDsKpLACNPDBIoEAkihy7loJ1B0CQ= +github.com/spf13/afero v1.2.2/go.mod h1:9ZxEEn6pIJ8Rxe320qSDBk6AsU0r9pR7Q4OcevTdifk= +github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cobra v0.0.2-0.20171109065643-2da4a54c5cee/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v1.0.0/go.mod h1:/6GTrnGXV9HjY+aR4k0oJ5tcvakLuG6EuKReYlHNrgE= +github.com/spf13/cobra v1.7.0 h1:hyqWnYt1ZQShIddO5kBpj3vu05/++x6tJ6dg8EC572I= +github.com/spf13/jwalterweatherman v1.0.0/go.mod h1:cQK4TGJAtQXfYWX+Ddv3mKDzgVb68N+wFjFa4jdeBTo= +github.com/spf13/pflag v0.0.0-20170130214245-9ff6c6923cff/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1-0.20171106142849-4c012f6dcd95/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/viper v1.4.0/go.mod h1:PTJ7Z/lr49W6bUbkmS1V3by4uWynFiR9p7+dSq/yZzE= +github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980 h1:lIOOHPEbXzO3vnmx2gok1Tfs31Q8GQqKLc8vVqyQq/I= +github.com/stefanberger/go-pkcs11uri v0.0.0-20201008174630-78d3cae3a980/go.mod h1:AO3tvPzVZ/ayst6UlUKUv6rcPQInYe3IknH3jYhAKu8= +github.com/stretchr/objx v0.0.0-20180129172003-8a3f7159479f/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v0.0.0-20180303142811-b89eecf5ca5d/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= +github.com/sylabs/sif/v2 v2.11.1 h1:d09yPukVa8b74wuy+QTA4Is3w8MH0UjO/xlWQUuFzpY= +github.com/sylabs/sif/v2 v2.11.1/go.mod h1:i4GcKLOaT4ertznbsuf11d/G9zLEfUZa7YhrFc5L6YQ= +github.com/syndtr/gocapability v0.0.0-20170704070218-db04d3cc01c8/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20180916011248-d98352740cb2/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635 h1:kdXcSzyDtseVEc4yCz2qF8ZrQvIDBJLl4S1c3GCXmoI= +github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635/go.mod h1:hkRG7XYTFWNJGYcbNJQlaLq0fg1yr4J4t/NcTQtrfww= +github.com/tchap/go-patricia v2.2.6+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I= +github.com/tchap/go-patricia v2.3.0+incompatible/go.mod h1:bmLyhP68RS6kStMGxByiQ23RP/odRBOTVjwp2cDyi6I= +github.com/tchap/go-patricia/v2 v2.3.1 h1:6rQp39lgIYZ+MHmdEq4xzuk1t7OdC35z/xm0BGhTkes= +github.com/tchap/go-patricia/v2 v2.3.1/go.mod h1:VZRHKAb53DLaG+nA9EaYYiaEx6YztwDlLElMsnSHD4k= +github.com/theupdateframework/go-tuf v0.5.2 h1:habfDzTmpbzBLIFGWa2ZpVhYvFBoK0C1onC3a4zuPRA= +github.com/theupdateframework/go-tuf v0.5.2/go.mod h1:SyMV5kg5n4uEclsyxXJZI2UxPFJNDc4Y+r7wv+MlvTA= +github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= +github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= +github.com/titanous/rocacheck v0.0.0-20171023193734-afe73141d399 h1:e/5i7d4oYZ+C1wj2THlRK+oAhjeS/TRQwMfkIuet3w0= +github.com/titanous/rocacheck v0.0.0-20171023193734-afe73141d399/go.mod h1:LdwHTNJT99C5fTAzDz0ud328OgXz+gierycbcIx2fRs= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc= +github.com/ulikunitz/xz v0.5.10/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= +github.com/ulikunitz/xz v0.5.11 h1:kpFauv27b6ynzBNT/Xy+1k+fK4WswhN/6PN5WhFAGw8= +github.com/ulikunitz/xz v0.5.11/go.mod h1:nbz6k7qbPmH4IRqmfOplQw/tblSgqTqBwxkY0oWt/14= +github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/urfave/cli v1.22.2/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/urfave/cli v1.22.4/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= +github.com/urfave/cli v1.22.12/go.mod h1:sSBEIC79qR6OvcmsD4U3KABeOTxDqQtdDnaFuUN30b8= +github.com/vbatts/tar-split v0.11.2/go.mod h1:vV3ZuO2yWSVsz+pfFzDG/upWH1JhjOiEaWq6kXyQ3VI= +github.com/vbatts/tar-split v0.11.3 h1:hLFqsOLQ1SsppQNTMpkpPXClLDfC2A3Zgy9OUU+RVck= +github.com/vbatts/tar-split v0.11.3/go.mod h1:9QlHN18E+fEH7RdG+QAJJcuya3rqT7eXSTY7wGrAokY= +github.com/vbauerster/mpb/v8 v8.3.0 h1:xw2eMJ6v5NP8Rd7yOVzU6OqnRPrS1yWAoLTrWe7W4Nc= +github.com/vbauerster/mpb/v8 v8.3.0/go.mod h1:bngtYUAu25QGxcYYglsF6oyoHlC9Yhh582xF9LjfmL4= +github.com/vishvananda/netlink v0.0.0-20181108222139-023a6dafdcdf/go.mod h1:+SR5DhBJrl6ZM7CoCKvpw5BKroDKQ+PJqOg65H/2ktk= +github.com/vishvananda/netlink v1.1.0/go.mod h1:cTgwzPIzzgDAYoQrMm0EdrjRUBkTqKYppBueQtXaqoE= +github.com/vishvananda/netlink v1.1.1-0.20201029203352-d40f9887b852/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho= +github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI= +github.com/vishvananda/netns v0.0.0-20191106174202-0a2b9b5464df/go.mod h1:JP3t17pCcGlemwknint6hfoeCVQrEMVwxRLRjXpq+BU= +github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0= +github.com/vmihailenco/msgpack/v5 v5.3.5 h1:5gO0H1iULLWGhs2H5tbAHIZTV8/cYafcFOr9znI5mJU= +github.com/vmihailenco/tagparser/v2 v2.0.0 h1:y09buUbR+b5aycVFQs/g70pqKVZNBmxwAhO7/IwNM9g= +github.com/willf/bitset v1.1.11-0.20200630133818-d5bec3311243/go.mod h1:RjeCKbqT1RxIR/KWY6phxZiaY1IyutSBfGjNPySAYV4= +github.com/willf/bitset v1.1.11/go.mod h1:83CECat5yLh5zVOf4P1ErAgKA5UDvKtgyUABdr3+MjI= +github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= +github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs= +github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g= +github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= +github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb h1:zGWFAtiMcyryUHoUjUJX0/lt1H2+i2Ka2n+D3DImSNo= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHovont7NscjpAxXsDA8S8BMYve8Y5+7cuRE7R0= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f/go.mod h1:5yf86TLmAcydyeJq5YvxkGPE2fm/u4myDekKRoLuqhs= +github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= +github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yvasiyarov/go-metrics v0.0.0-20140926110328-57bccd1ccd43/go.mod h1:aX5oPXxHm3bOH+xeAttToC8pqch2ScQN/JoXYupl6xs= +github.com/yvasiyarov/gorelic v0.0.0-20141212073537-a9bba5b9ab50/go.mod h1:NUSPSUX/bi6SeDMUh6brw0nXpxHnc96TguQh0+r/ssA= +github.com/yvasiyarov/newrelic_platform_go v0.0.0-20140908184405-b21fdbd4370f/go.mod h1:GlGEuHIJweS1mbCqG+7vt2nvWLzLLnRHbXz5JKd/Qbg= +go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= +go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= +go.etcd.io/bbolt v1.3.6/go.mod h1:qXsaaIqmgQH0T+OPdb99Bf+PKfBBQVAdyD6TY9G8XM4= +go.etcd.io/bbolt v1.3.7 h1:j+zJOnnEjF/kyHlDDgGnVL/AIqIJPq8UoB2GSNfkUfQ= +go.etcd.io/bbolt v1.3.7/go.mod h1:N9Mkw9X8x5fupy0IKsmuqVtoGDyxsaDlbk4Rd05IAQw= +go.etcd.io/etcd v0.5.0-alpha.5.0.20200910180754-dd1b699fc489/go.mod h1:yVHk9ub3CSBatqGNg7GRmsnfLWtoW60w4eDYfh7vHDg= +go.mongodb.org/mongo-driver v1.7.3/go.mod h1:NqaYOwnXWr5Pm7AOpO5QFxKJ503nbMse/R79oO62zWg= +go.mongodb.org/mongo-driver v1.7.5/go.mod h1:VXEWRZ6URJIkUq2SCAyapmhH0ZLRBP+FT4xhp5Zvxng= +go.mongodb.org/mongo-driver v1.10.0/go.mod h1:wsihk0Kdgv8Kqu1Anit4sfK+22vSFbUrAVEYRhCXrA8= +go.mongodb.org/mongo-driver v1.11.3 h1:Ql6K6qYHEzB6xvu4+AU0BoRoqf9vFPcc4o7MUIdPW8Y= +go.mongodb.org/mongo-driver v1.11.3/go.mod h1:PTSz5yu21bkT/wXpkS7WR5f0ddqw5quethTUn9WM+2g= +go.mozilla.org/pkcs7 v0.0.0-20200128120323-432b2356ecb1/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk= +go.mozilla.org/pkcs7 v0.0.0-20210826202110-33d05740a352 h1:CCriYyAfq1Br1aIYettdHZTy8mBTIPo7We18TuO/bak= +go.mozilla.org/pkcs7 v0.0.0-20210826202110-33d05740a352/go.mod h1:SNgMg+EgDFwmvSmLRTNKC5fegJjB7v23qTQ0XLGUNHk= +go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= +go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= +go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= +go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= +go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= +go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= +go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= +golang.org/x/crypto v0.0.0-20171113213409-9f005a07e0d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20181009213950-7c1a557ab941/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= +golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.8.0 h1:pd9TJtTueMTVQXzk8E2XESSMQDj/U7OUu0PqJqPXQjQ= +golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= +golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= +golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= +golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= +golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= +golang.org/x/exp v0.0.0-20230321023759-10a507213a29 h1:ooxPy7fPvB4kwsA2h+iBNHkAbp/4JxTSwCmvdjEYmug= +golang.org/x/exp v0.0.0-20230321023759-10a507213a29/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= +golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= +golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= +golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= +golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= +golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= +golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= +golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.10.0 h1:lFO9qtOdlre5W1jxS3r/4szv2/6iXxScdzjoBMXNhYk= +golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190619014844-b5b0513f8c1b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20201006153459-a7d1128ccaa0/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM= +golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.10.0 h1:X2//UzNDwYmtCLn7To6G58Wr6f5ahEAQgKNzv9Y951M= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.2.0 h1:PUR+T4wwASmuSTYdKjYHI5TD22Wy5ogLU5qZCOLxBrI= +golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190514135907-3a4b5fb9f71f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190522044717-8097e1b27ff5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190602015325-4c4f7f33c9ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606203320-7fc4e5ec1444/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190616124812-15dcb6c0061f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190626221950-04f50cda93cb/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190801041406-cbf593c0f2f3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190812073006-9eafafc0a87e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191022100944-742c48ecaeb7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191115151921-52ab43148777/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191210023423-ac6580df4449/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200120151820-655fe14d7479/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200124204421-9fbb57f87de9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200217220822-9197077df867/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200622214017-ed371f2e16b4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200728102440-3e129f6d46b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200817155316-9781c653f443/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200909081042-eff7692f9009/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200916030750-2334cc1a136f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200922070232-aee5d888a860/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201112073958-5cba982894dd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201117170446-d9b008d0a637/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201201145000-ef89a241ccb3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201202213521-69691e467435/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210324051608-47abb6519492/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210426230700-d19ff857e887/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211116061358-0a5406a5449c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220817070843-5a390386f1f2/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220823224334-20c2bfdbfe24/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220906165534-d0df966e6959/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0 h1:EBmGv8NaZBZTWvrbjNoL6HVt+IVy3QDQpJs7VRIw3tU= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.8.0 h1:n5xxQn2i3PC0yLAbjTpNT85q/Kgzcr2gIoX9OrJUols= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= +golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181011042414-1f849cf54d09/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190614205625-5aca471b1d59/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190624222133-a101b041ded4/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190706070813-72ffa07ba3db/go.mod h1:jcCCGcm9btYwXyDqrUWc6MKQKKGJCWEQ3AfLSRIbEuI= +golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200616133436-c1934b75d054/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200916195026-c9a70fc28ce3/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= +golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/tools v0.9.1 h1:8WMNJAz3zrtPmnYC7ISf5dEn3MT0gY7jBJfw27yrrLo= +golang.org/x/tools v0.9.1/go.mod h1:owI94Op576fPu3cIGQeHs3joujW/2Oc6MtlxbF5dfNc= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/api v0.0.0-20160322025152-9bf6e6e569ff/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0= +google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= +google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= +google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= +google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= +google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= +google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/cloud v0.0.0-20151119220103-975617b05ea8/go.mod h1:0H1ncTHf11KCFhTc/+EFRbzSCOZx+VUbRMk55Yv5MYk= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= +google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= +google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200117163144-32f20d992d24/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= +google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto v0.0.0-20200527145253-8367513e4ece/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= +google.golang.org/genproto v0.0.0-20201110150050-8816d57aaa9a/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 h1:DdoeryqhaXp1LtT/emMP1BRJPHHKFi5akj/nbx/zNTA= +google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4/go.mod h1:NWraEVixdDnqcqQ30jipen1STv2r/n24Wb7twVTGR4s= +google.golang.org/grpc v0.0.0-20160317175043-d3ddb4469d5a/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= +google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= +google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.23.1/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.24.0/go.mod h1:XDChyiUovWa60DnaeDeZmSW86xtLtjtZbwvSiRnRtcA= +google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= +google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= +google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= +google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= +google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= +google.golang.org/grpc v1.54.0 h1:EhTqbhiYeixwWQtAEZAxmV9MGqcjEU2mFx52xCzNyag= +google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= +google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= +google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +gopkg.in/airbrake/gobrake.v2 v2.0.9/go.mod h1:/h5ZAUhDkGaJfjzjKLSjv6zCL6O0LLBxU4K+aSYdM/U= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= +gopkg.in/alexcesaro/statsd.v2 v2.0.0 h1:FXkZSCZIH17vLCO5sO2UucTHsH9pc+17F6pl3JVCwMc= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20141024133853-64131543e789/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/gemnasium/logrus-airbrake-hook.v2 v2.1.2/go.mod h1:Xk6kEKp8OKb+X14hQBKWaSkCsqBpgog8nAV2xsGOxlo= +gopkg.in/go-jose/go-jose.v2 v2.6.1 h1:qEzJlIDmG9q5VO0M/o8tGS65QMHMS1w01TQJB1VPJ4U= +gopkg.in/go-jose/go-jose.v2 v2.6.1/go.mod h1:zzZDPkNNw/c9IE7Z9jr11mBZQhKQTMzoEEIoEdZlFBI= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= +gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.3.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.5.1/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/square/go-jose.v2 v2.6.0 h1:NGk74WTnPKBNUhNzQX7PYcTLUjoq7mzKk2OKbvwk2iI= +gopkg.in/square/go-jose.v2 v2.6.0/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= +gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= +gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= +gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= +gotest.tools/v3 v3.0.3/go.mod h1:Z7Lb0S5l+klDB31fvDQX8ss/FlKDxtlFlw3Oa8Ymbl8= +gotest.tools/v3 v3.4.0 h1:ZazjZUfuVeZGLAmlKKuyv3IKP5orXcwtOwDQH6YVr6o= +honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +k8s.io/api v0.20.1/go.mod h1:KqwcCVogGxQY3nBlRpwt+wpAMF/KjaCc7RpywacvqUo= +k8s.io/api v0.20.4/go.mod h1:++lNL1AJMkDymriNniQsWRkMDzRaX2Y/POTUi8yvqYQ= +k8s.io/api v0.20.6/go.mod h1:X9e8Qag6JV/bL5G6bU8sdVRltWKmdHsFUGS3eVndqE8= +k8s.io/apimachinery v0.20.1/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.4/go.mod h1:WlLqWAHZGg07AeltaI0MV5uk1Omp8xaN0JGLY6gkRpU= +k8s.io/apimachinery v0.20.6/go.mod h1:ejZXtW1Ra6V1O5H8xPBGz+T3+4gfkTCeExAHKU57MAc= +k8s.io/apiserver v0.20.1/go.mod h1:ro5QHeQkgMS7ZGpvf4tSMx6bBOgPfE+f52KwvXfScaU= +k8s.io/apiserver v0.20.4/go.mod h1:Mc80thBKOyy7tbvFtB4kJv1kbdD0eIH8k8vianJcbFM= +k8s.io/apiserver v0.20.6/go.mod h1:QIJXNt6i6JB+0YQRNcS0hdRHJlMhflFmsBDeSgT1r8Q= +k8s.io/client-go v0.20.1/go.mod h1:/zcHdt1TeWSd5HoUe6elJmHSQ6uLLgp4bIJHVEuy+/Y= +k8s.io/client-go v0.20.4/go.mod h1:LiMv25ND1gLUdBeYxBIwKpkSC5IsozMMmOOeSJboP+k= +k8s.io/client-go v0.20.6/go.mod h1:nNQMnOvEUEsOzRRFIIkdmYOjAZrC8bgq0ExboWSU1I0= +k8s.io/code-generator v0.19.7/go.mod h1:lwEq3YnLYb/7uVXLorOJfxg+cUu2oihFhHZ0n9NIla0= +k8s.io/component-base v0.20.1/go.mod h1:guxkoJnNoh8LNrbtiQOlyp2Y2XFCZQmrcg2n/DeYNLk= +k8s.io/component-base v0.20.4/go.mod h1:t4p9EdiagbVCJKrQ1RsA5/V4rFQNDfRlevJajlGwgjI= +k8s.io/component-base v0.20.6/go.mod h1:6f1MPBAeI+mvuts3sIdtpjljHWBQ2cIy38oBIWMYnrM= +k8s.io/cri-api v0.17.3/go.mod h1:X1sbHmuXhwaHs9xxYffLqJogVsnI+f6cPRcgPel7ywM= +k8s.io/cri-api v0.20.1/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.4/go.mod h1:2JRbKt+BFLTjtrILYVqQK5jqhI+XNdF6UiGMgczeBCI= +k8s.io/cri-api v0.20.6/go.mod h1:ew44AjNXwyn1s0U4xCKGodU7J1HzBeZ1MpGrpa5r8Yc= +k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20200428234225-8167cfdcfc14/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/gengo v0.0.0-20201113003025-83324d819ded/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= +k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/klog/v2 v2.4.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= +k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H64/qeyjQoUZhGpeFDVdxjTeEVN2o= +k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM= +k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk= +k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= +rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= +rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= +rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.14/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.0.15/go.mod h1:LEScyzhFmoF5pso/YSeBstl57mOzx9xlU9n85RGrDQg= +sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.2/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/structured-merge-diff/v4 v4.0.3/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK1F7G282QMXDPYydCw= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= +sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= +sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= +sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/test/run_test_suite.sh b/test/run_test_suite.sh new file mode 100755 index 00000000..5fceddf0 --- /dev/null +++ b/test/run_test_suite.sh @@ -0,0 +1,2 @@ +PODMAN_SYSTEM_CONNECTION=$(podman system connection list | grep "default-root") +CONTAINER_HOST=$(echo $PODMAN_SYSTEM_CONNECTION | awk '{print $2}') CONTAINER_SSHKEY=$(echo $PODMAN_SYSTEM_CONNECTION | awk '{print $3}') ginkgo -r \ No newline at end of file diff --git a/test/test_suite_test.go b/test/test_suite_test.go new file mode 100644 index 00000000..2cc23e42 --- /dev/null +++ b/test/test_suite_test.go @@ -0,0 +1,198 @@ +package main_test + +import ( + "testing" + + . "github.com/onsi/ginkgo" + . "github.com/onsi/gomega" + + "context" + "fmt" + "os" + "strings" + "time" + + "github.com/containers/podman/v4/pkg/bindings" + "github.com/containers/podman/v4/pkg/bindings/containers" + "github.com/containers/podman/v4/pkg/bindings/images" + "github.com/containers/podman/v4/pkg/domain/entities" + "github.com/containers/podman/v4/pkg/specgen" +) + +func TestTest(t *testing.T) { + RegisterFailHandler(Fail) + RunSpecs(t, "Test Suite") +} + +var _ = Describe("WebSphere Liberty container images", func() { + // Set CONTAINER_HOST and CONTAINER_SSHKEY environment variables beforehand + Context("kernel images", func() { + var imageDir string = "../ga/latest/kernel" + BeforeEach(func() { + conn, err := bindings.NewConnectionWithIdentity(context.Background(), "", "", true) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + // Prune existing containers + if _, err := containers.Prune(conn, nil); err != nil { + fmt.Println(err) + os.Exit(1) + } + }) + + It("can build an UBI image and run test-pet-clinic", func() { + var baseImage string = "websphere-liberty-test:kernel-ubi-openjdk17" + var petClinicImage string = "websphere-liberty-test:kernel-ubi-petclinic" + var petClinicImageName string = "petclinic" + conn, err := bindings.NewConnectionWithIdentity(context.Background(), "", "", true) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + // Build a kernel-slim image from scratch + containerFiles := []string{imageDir + "/Dockerfile.ubi.openjdk17"} + // Check the full list of BuildOptions from https://github.com/containers/buildah/blob/aa6a281df7c54aa42a060baa9d0504040c7551a6/define/build.go#L112 + buildOptions := entities.BuildOptions{} + buildOptions.ContextDirectory = imageDir + // Override the default image to pull a locally built image each time + buildOptions.Output = baseImage + _, err = images.Build(conn, containerFiles, buildOptions) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + // Build the petclinic image from kernel-slim + containerFiles = []string{"./test-pet-clinic/Dockerfile"} + buildOptions = entities.BuildOptions{} + buildOptions.ContextDirectory = "./test-pet-clinic/" + // Override the default image to pull a locally built image each time + buildOptions.Args = map[string]string{"IMAGE": baseImage} + buildOptions.Output = petClinicImage + _, err = images.Build(conn, containerFiles, buildOptions) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + s := specgen.NewSpecGenerator(petClinicImage, false) + s.Name = petClinicImageName + createResponse, err := containers.CreateWithSpec(conn, s, nil) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + if err := containers.Start(conn, createResponse.ID, nil); err != nil { + fmt.Println(err) + os.Exit(1) + } + // Wait for server to load + time.Sleep(10 * time.Second) + + stdoutChan := make(chan string) + stderrChan := make(chan string) + go containers.Logs(conn, createResponse.ID, nil, stdoutChan, stderrChan) + maxReads := 1000 + needles := []string{"The petclinic server is ready to run a smarter planet."} + found := []bool{false} + for i := 0; i < maxReads; i++ { + select { + case line := <-stdoutChan: + for j, val := range found { + if !val && j < len(needles) { + if strings.Contains(line, needles[j]) { + found[j] = true + } + } + } + default: + } + time.Sleep(10 * time.Millisecond) + } + if err := containers.Stop(conn, petClinicImageName, nil); err != nil { + fmt.Println(err) + os.Exit(1) + } + Expect(found[0]).To(Equal(true)) + }) + + It("can build an Ubuntu image and run test-pet-clinic", func() { + var baseImage string = "websphere-liberty-test:kernel-ubuntu-openjdk17" + var petClinicImage string = "websphere-liberty-test:kernel-ubuntu-petclinic" + var petClinicImageName string = "petclinic" + conn, err := bindings.NewConnectionWithIdentity(context.Background(), "", "", true) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + // Build a kernel-slim image from scratch + containerFiles := []string{imageDir + "/Dockerfile.ubuntu.openjdk17"} + // Check the full list of BuildOptions from https://github.com/containers/buildah/blob/aa6a281df7c54aa42a060baa9d0504040c7551a6/define/build.go#L112 + buildOptions := entities.BuildOptions{} + buildOptions.ContextDirectory = imageDir + // Override the default image to pull a locally built image each time + buildOptions.Output = baseImage + _, err = images.Build(conn, containerFiles, buildOptions) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + // Build the petclinic image from kernel-slim + containerFiles = []string{"./test-pet-clinic/Dockerfile"} + buildOptions = entities.BuildOptions{} + buildOptions.ContextDirectory = "./test-pet-clinic/" + // Override the default image to pull a locally built image each time + buildOptions.Args = map[string]string{"IMAGE": baseImage} + buildOptions.Output = petClinicImage + _, err = images.Build(conn, containerFiles, buildOptions) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + + s := specgen.NewSpecGenerator(petClinicImage, false) + s.Name = petClinicImageName + createResponse, err := containers.CreateWithSpec(conn, s, nil) + if err != nil { + fmt.Println(err) + os.Exit(1) + } + if err := containers.Start(conn, createResponse.ID, nil); err != nil { + fmt.Println(err) + os.Exit(1) + } + // Wait for server to load + time.Sleep(10 * time.Second) + + stdoutChan := make(chan string) + stderrChan := make(chan string) + go containers.Logs(conn, createResponse.ID, nil, stdoutChan, stderrChan) + maxReads := 1000 + needles := []string{"The petclinic server is ready to run a smarter planet."} + found := []bool{false} + for i := 0; i < maxReads; i++ { + select { + case line := <-stdoutChan: + for j, val := range found { + if !val && j < len(needles) { + if strings.Contains(line, needles[j]) { + found[j] = true + } + } + } + default: + } + time.Sleep(10 * time.Millisecond) + } + if err := containers.Stop(conn, petClinicImageName, nil); err != nil { + fmt.Println(err) + os.Exit(1) + } + Expect(found[0]).To(Equal(true)) + }) + }) +}) From 113e80ae5470cf156a2736195d04430db482b9a3 Mon Sep 17 00:00:00 2001 From: kabicin Date: Mon, 10 Jul 2023 11:59:45 -0400 Subject: [PATCH 18/25] Delete configure-liberty.sh --- .../kernel/helpers/build/configure-liberty.sh | 66 ------------------- 1 file changed, 66 deletions(-) delete mode 100755 ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh diff --git a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh deleted file mode 100755 index 69bc91b1..00000000 --- a/ga/23.0.0.5/kernel/helpers/build/configure-liberty.sh +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/bash - -OPT_PREFIX="/opt/ibm" -IS_KERNEL=false - -# Get the original server name -NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) -if [ $NUM_SERVERS -gt 0 ]; then - ORIGINAL_SERVER_NAME=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | head -1) -fi -ORIGINAL_SERVER_NAME=${ORIGINAL_SERVER_NAME:-defaultServer} - -# If the Liberty server name does not match the original server name then migrate the contents -if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME" ]; then - # Create new Liberty server - if $IS_KERNEL; then - $OPT_PREFIX/wlp/bin/server create >/tmp/serverOutput - else - $OPT_PREFIX/wlp/bin/server create --template=javaee8 >/tmp/serverOutput - fi - rc=$? - if [ $rc -ne 0 ]; then - cat /tmp/serverOutput - rm /tmp/serverOutput - exit $rc - fi - rm /tmp/serverOutput - - # Verify server creation - if [ ! -d "$OPT_PREFIX/wlp/usr/servers/$SERVER_NAME" ]; then - echo "The server name contains a character that is not valid." - exit 1 - fi - chmod -R g+w $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME - - # Delete old symlinks - rm $OPT_PREFIX/links/output - rm $OPT_PREFIX/links/config - - # Add new output folder symlink and resolve group write permissions - SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$SERVER_NAME - ORIGINAL_SERVER_OUTPUT_DIR=$WLP_OUTPUT_DIR/$ORIGINAL_SERVER_NAME - mkdir -p $SERVER_OUTPUT_DIR - ln -s $SERVER_OUTPUT_DIR $OPT_PREFIX/links/output - - # Copy old /output folder contents - cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null - rm -rf $ORIGINAL_SERVER_OUTPUT_DIR - chmod -R g+rw $SERVER_OUTPUT_DIR - setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR - - # Add new server symlink and copy over old /config folder contents - cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null - ln -s $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME $OPT_PREFIX/links/config - mkdir -p /config/configDropins/defaults - mkdir -p /config/configDropins/overrides - if $IS_KERNEL; then - mkdir -p /config/dropins - mkdir -p /config/apps - fi - chmod -R g+rw /config - setfacl -R -dm g:root:rw /config - rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME -fi - -exit 0 From eead2e2210850265345bb3b12e8d3299e901565b Mon Sep 17 00:00:00 2001 From: kabicin Date: Mon, 10 Jul 2023 16:34:40 -0400 Subject: [PATCH 19/25] Remove acl command in configure-liberty.sh --- ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh | 2 -- ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh | 2 -- ga/latest/kernel/helpers/build/configure-liberty.sh | 2 -- 3 files changed, 6 deletions(-) diff --git a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh index 69bc91b1..c5c92df1 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh @@ -47,7 +47,6 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null rm -rf $ORIGINAL_SERVER_OUTPUT_DIR chmod -R g+rw $SERVER_OUTPUT_DIR - setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR # Add new server symlink and copy over old /config folder contents cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null @@ -59,7 +58,6 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se mkdir -p /config/apps fi chmod -R g+rw /config - setfacl -R -dm g:root:rw /config rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi diff --git a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh index 69bc91b1..c5c92df1 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh @@ -47,7 +47,6 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null rm -rf $ORIGINAL_SERVER_OUTPUT_DIR chmod -R g+rw $SERVER_OUTPUT_DIR - setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR # Add new server symlink and copy over old /config folder contents cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null @@ -59,7 +58,6 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se mkdir -p /config/apps fi chmod -R g+rw /config - setfacl -R -dm g:root:rw /config rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi diff --git a/ga/latest/kernel/helpers/build/configure-liberty.sh b/ga/latest/kernel/helpers/build/configure-liberty.sh index 69bc91b1..c5c92df1 100755 --- a/ga/latest/kernel/helpers/build/configure-liberty.sh +++ b/ga/latest/kernel/helpers/build/configure-liberty.sh @@ -47,7 +47,6 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se cp -r $ORIGINAL_SERVER_OUTPUT_DIR/. $SERVER_OUTPUT_DIR/ 2>/dev/null rm -rf $ORIGINAL_SERVER_OUTPUT_DIR chmod -R g+rw $SERVER_OUTPUT_DIR - setfacl -R -dm g:root:rw $SERVER_OUTPUT_DIR # Add new server symlink and copy over old /config folder contents cp -r $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME/. $OPT_PREFIX/wlp/usr/servers/$SERVER_NAME/ 2>/dev/null @@ -59,7 +58,6 @@ if [ "$SERVER_NAME" != "$ORIGINAL_SERVER_NAME" ] && [ -d "$OPT_PREFIX/wlp/usr/se mkdir -p /config/apps fi chmod -R g+rw /config - setfacl -R -dm g:root:rw /config rm -rf $OPT_PREFIX/wlp/usr/servers/$ORIGINAL_SERVER_NAME fi From c3b903eef3ec2d2b19872a4e10d2c89fab05dc21 Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 11 Jul 2023 09:39:35 -0400 Subject: [PATCH 20/25] Add symlinks to 23.0.0.3 files --- ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 | 31 ++++++++++++++++++- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 | 31 ++++++++++++++++++- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 | 31 ++++++++++++++++++- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 | 31 ++++++++++++++++++- ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 | 31 ++++++++++++++++++- .../kernel/Dockerfile.ubuntu.openjdk11 | 31 ++++++++++++++++++- .../kernel/Dockerfile.ubuntu.openjdk17 | 31 ++++++++++++++++++- 7 files changed, 210 insertions(+), 7 deletions(-) diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 index 582167a9..5a7ac6cf 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 @@ -112,7 +112,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 index 53c53cb4..ca701204 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 @@ -113,7 +113,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 index 8e4dfe51..f7ed211e 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 @@ -113,7 +113,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 index 0f13d51c..b92931c5 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 @@ -113,7 +113,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 index d4b66a56..71ecdb8e 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 @@ -111,7 +111,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 index 3e08cbd1..37f14967 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 @@ -111,7 +111,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 index e2eeb730..6aff87fd 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 @@ -111,7 +111,36 @@ RUN mkdir /logs \ && chown -R 1001:0 /etc/wlp \ && chmod -R g+rw /etc/wlp \ && chown -R 1001:0 /home/default \ - && chmod -R g+rw /home/default + && chmod -R g+rw /home/default \ + && mkdir -p /opt/ibm/links \ + && chown -R 1001:0 /opt/ibm/links \ + && chmod -R g+rw /opt/ibm/links + +# Create second-level symlinks as non-root user +USER 1001 + +RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ + && ln -s $WLP_OUTPUT_DIR/defaultServer /opt/ibm/links/output \ + && ln -s /opt/ibm/wlp/usr/servers/defaultServer /opt/ibm/links/config \ + && mkdir -p /opt/ibm/links/config/configDropins/defaults \ + && mkdir -p /opt/ibm/links/config/configDropins/overrides + +# Create first-level symlinks as root user +USER 0 + +RUN mkdir /output \ + && chmod -t /output \ + && rm -rf /output \ + && ln -s /opt/ibm/links/output /output \ + && ln -s /opt/ibm/links/config /config \ + && chown -R 1001:0 /opt/ibm/links/output \ + && chmod -R g+rw /opt/ibm/links/output \ + && chown -R 1001:0 /opt/ibm/links/config \ + && chmod -R g+rw /opt/ibm/links/config \ + && chown -R 1001:0 /config \ + && chmod -R g+rw /config \ + && chown -R 1001:0 /output \ + && chmod -R g+rw /output # Create a new SCC layer RUN if [ "$OPENJ9_SCC" = "true" ]; then populate_scc.sh; fi \ From b42555e53e719bedc445d7ff448bd83c0b497b08 Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 11 Jul 2023 09:41:55 -0400 Subject: [PATCH 21/25] Remove extra config folders --- ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 | 9 --------- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 | 9 --------- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 | 9 --------- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 | 9 --------- ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 | 9 --------- ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 | 9 --------- ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 | 9 --------- 7 files changed, 63 deletions(-) diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 index 5a7ac6cf..0ebcf09a 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 @@ -87,18 +87,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 index ca701204..574b5585 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 @@ -88,18 +88,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 index f7ed211e..5ffe3fb1 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 @@ -88,18 +88,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 index b92931c5..0420568e 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 @@ -88,18 +88,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 index 71ecdb8e..18e06a3d 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 @@ -86,18 +86,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 index 37f14967..52841c50 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 @@ -86,18 +86,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 index 6aff87fd..01456451 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 @@ -86,18 +86,9 @@ RUN mkdir /logs \ && mkdir /etc/wlp \ && mkdir -p /opt/ibm/wlp/usr/shared/resources/lib.index.cache \ && mkdir -p /home/default \ - && mkdir /output \ - && chmod -t /output \ - && rm -rf /output \ - && ln -s $WLP_OUTPUT_DIR/defaultServer /output \ - && ln -s /opt/ibm/wlp/usr/servers/defaultServer /config \ && ln -s /opt/ibm /liberty \ && ln -s /opt/ibm/fixes /fixes \ && ln -s /opt/ibm/wlp/usr/shared/resources/lib.index.cache /lib.index.cache \ - && mkdir -p /config/configDropins/defaults \ - && mkdir -p /config/configDropins/overrides \ - && chown -R 1001:0 /config \ - && chmod -R g+rw /config \ && chown -R 1001:0 /opt/ibm/helpers \ && chmod -R g+rwx /opt/ibm/helpers \ && chown -R 1001:0 /opt/ibm/fixes \ From 6e3bf8439ed08cc6b53edac60a618a6954aed937 Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 11 Jul 2023 09:46:26 -0400 Subject: [PATCH 22/25] Update USER command and re-add SERVER_NAME env --- ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 | 2 +- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 | 2 +- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 | 2 +- ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 | 2 +- ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 | 2 +- ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 | 2 +- ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 | 2 +- ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 | 4 +++- ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 | 4 +++- ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 | 4 +++- ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 | 4 +++- ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 | 4 +++- ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 | 4 +++- ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 | 4 +++- ga/latest/kernel/Dockerfile.ubi.ibmjava8 | 2 +- ga/latest/kernel/Dockerfile.ubi.openjdk11 | 2 +- ga/latest/kernel/Dockerfile.ubi.openjdk17 | 2 +- ga/latest/kernel/Dockerfile.ubi.openjdk8 | 2 +- ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 | 2 +- ga/latest/kernel/Dockerfile.ubuntu.openjdk11 | 2 +- ga/latest/kernel/Dockerfile.ubuntu.openjdk17 | 2 +- 21 files changed, 35 insertions(+), 21 deletions(-) diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 index 0ebcf09a..d1f0c741 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.ibmjava8 @@ -118,7 +118,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 index 574b5585..c66c227f 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk11 @@ -119,7 +119,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 index 5ffe3fb1..935dbddf 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk17 @@ -119,7 +119,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 index 0420568e..640a2c5a 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubi.openjdk8 @@ -119,7 +119,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 index 18e06a3d..ac01b754 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.ibmjava8 @@ -117,7 +117,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 index 52841c50..ed9670e4 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk11 @@ -117,7 +117,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 index 01456451..7f55ef2c 100644 --- a/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.3/kernel/Dockerfile.ubuntu.openjdk17 @@ -117,7 +117,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 b/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 index 4ca93d0a..605bea9b 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.ibmjava8 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -161,7 +163,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 index d4e834b8..d6df737f 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk11 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -161,7 +163,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 index cc263955..87d0a7b4 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk17 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -161,7 +163,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 index 66c3138d..781e9aa7 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubi.openjdk8 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -161,7 +163,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 index a00edd25..1a02aa33 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.ibmjava8 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -161,7 +163,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 index 2222b59c..f724be82 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk11 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -157,7 +159,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 index 3e3ac6a7..430f7d49 100644 --- a/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/23.0.0.6/kernel/Dockerfile.ubuntu.openjdk17 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ @@ -157,7 +159,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 index 4ca93d0a..08371650 100644 --- a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 @@ -161,7 +161,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk11 b/ga/latest/kernel/Dockerfile.ubi.openjdk11 index d4e834b8..7c9104e4 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk11 @@ -161,7 +161,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk17 b/ga/latest/kernel/Dockerfile.ubi.openjdk17 index cc263955..5ba88df4 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk17 @@ -161,7 +161,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk8 b/ga/latest/kernel/Dockerfile.ubi.openjdk8 index 66c3138d..567a32f1 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk8 @@ -161,7 +161,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 index a00edd25..9651579b 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 @@ -161,7 +161,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 index 2222b59c..eb95c649 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 @@ -157,7 +157,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 index 3e3ac6a7..90e04b36 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 @@ -157,7 +157,7 @@ RUN mkdir -p $WLP_OUTPUT_DIR/defaultServer \ && mkdir -p /opt/ibm/links/config/configDropins/overrides # Create first-level symlinks as root user -USER 0 +USER root RUN mkdir /output \ && chmod -t /output \ From 96caf198038e23817c7fe9d0b18b59b09fb2eadc Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 11 Jul 2023 09:54:56 -0400 Subject: [PATCH 23/25] Remove unneeded files from rebase --- .../kernel/helpers/build/configure-liberty.sh | 2 +- .../kernel/helpers/build/configure-liberty.sh | 2 +- .../helpers/runtime/configure-liberty.sh | 54 ------------------- .../kernel/helpers/runtime/docker-server.sh | 6 --- .../kernel/helpers/build/configure-liberty.sh | 2 +- ga/latest/kernel/helpers/build/configure.sh | 1 - .../kernel/helpers/runtime/docker-server.sh | 6 --- 7 files changed, 3 insertions(+), 70 deletions(-) delete mode 100755 ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh diff --git a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh index c5c92df1..2e8297c5 100755 --- a/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.3/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,7 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -IS_KERNEL=false +IS_KERNEL=true # Get the original server name NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) diff --git a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh index c5c92df1..2e8297c5 100755 --- a/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh +++ b/ga/23.0.0.6/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,7 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -IS_KERNEL=false +IS_KERNEL=true # Get the original server name NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) diff --git a/ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh b/ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh deleted file mode 100755 index 7fd7a335..00000000 --- a/ga/23.0.0.6/kernel/helpers/runtime/configure-liberty.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash - -# If the Liberty server name is not defaultServer and defaultServer still exists migrate the contents -if [ "$SERVER_NAME" != "defaultServer" ] && [ -d "/opt/ibm/wlp/usr/servers/defaultServer" ]; then - # Create new Liberty server - /opt/ibm/wlp/bin/server create >/tmp/serverOutput - rc=$? - if [ $rc -ne 0 ]; then - cat /tmp/serverOutput - rm /tmp/serverOutput - exit $rc - fi - rm /tmp/serverOutput - - # Verify server creation - if [ ! -d "/opt/ibm/wlp/usr/servers/$SERVER_NAME" ]; then - echo "The server name contains a character that is not valid." - exit 1 - fi - chmod -R g+w /opt/ibm/wlp/usr/servers/$SERVER_NAME - - # Delete old symlinks - rm /opt/ibm/links/output - rm /opt/ibm/links/config - - # Add new output folder symlink and resolve group write permissions - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME - ln -s $WLP_OUTPUT_DIR/$SERVER_NAME /opt/ibm/links/output - chmod g+w $WLP_OUTPUT_DIR/$SERVER_NAME - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/resources - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - mkdir -p $WLP_OUTPUT_DIR/$SERVER_NAME/logs - chmod -R g+w $WLP_OUTPUT_DIR/$SERVER_NAME/workarea - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/resources - chmod -R g+w,o-rwx $WLP_OUTPUT_DIR/$SERVER_NAME/logs - - # Hand over the SCC - if [ "$OPENJ9_SCC" = "true" ] && [ -d "/opt/ibm/wlp/output/defaultServer/.classCache" ]; then - mv /opt/ibm/wlp/output/defaultServer/.classCache $WLP_OUTPUT_DIR/$SERVER_NAME/ - fi - rm -rf /opt/ibm/wlp/output/defaultServer - - # Add new server symlink and populate folder - mv /opt/ibm/wlp/usr/servers/defaultServer/* /opt/ibm/wlp/usr/servers/$SERVER_NAME/ - ln -s /opt/ibm/wlp/usr/servers/$SERVER_NAME /opt/ibm/links/config - mkdir -p /config/configDropins/defaults - mkdir -p /config/configDropins/overrides - chmod -R g+w /config - - rm -rf /opt/ibm/wlp/usr/servers/defaultServer -fi - -echo "configure-liberty.sh script has been run" > /opt/ibm/wlp/configure-liberty.log -exit 0 diff --git a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh index 7967309b..77f7b426 100755 --- a/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh +++ b/ga/23.0.0.6/kernel/helpers/runtime/docker-server.sh @@ -84,12 +84,6 @@ function importKeyCert() { fi } -# Resolve liberty server symlinks and creation for server name changes -/opt/ibm/helpers/build/configure-liberty.sh -if [ $? -ne 0 ]; then - exit -fi - case "${LICENSE,,}" in "accept" ) # Suppress license message in logs grep -s -F "com.ibm.ws.logging.hideMessage" /config/bootstrap.properties \ diff --git a/ga/latest/kernel/helpers/build/configure-liberty.sh b/ga/latest/kernel/helpers/build/configure-liberty.sh index c5c92df1..2e8297c5 100755 --- a/ga/latest/kernel/helpers/build/configure-liberty.sh +++ b/ga/latest/kernel/helpers/build/configure-liberty.sh @@ -1,7 +1,7 @@ #!/bin/bash OPT_PREFIX="/opt/ibm" -IS_KERNEL=false +IS_KERNEL=true # Get the original server name NUM_SERVERS=$(ls -t $OPT_PREFIX/wlp/usr/servers/ | wc -l) diff --git a/ga/latest/kernel/helpers/build/configure.sh b/ga/latest/kernel/helpers/build/configure.sh index 034d462f..9fbe751f 100755 --- a/ga/latest/kernel/helpers/build/configure.sh +++ b/ga/latest/kernel/helpers/build/configure.sh @@ -151,7 +151,6 @@ function main() { curl -k --fail $FEATURE_REPO_URL > /tmp/repo.zip installUtility install --acceptLicense $SERVER_NAME --from=/tmp/repo.zip || rc=$?; if [ $rc -ne 22 ]; then exit $rc; fi rm -rf /tmp/repo.zip - # Otherwise, if features.sh did not run, install server features. else featureUtility installServerFeatures --acceptLicense $SERVER_NAME --noCache find /opt/ibm/wlp/lib /opt/ibm/wlp/bin ! -perm -g=rw -print0 | xargs -0 -r chmod g+rw diff --git a/ga/latest/kernel/helpers/runtime/docker-server.sh b/ga/latest/kernel/helpers/runtime/docker-server.sh index 7967309b..77f7b426 100755 --- a/ga/latest/kernel/helpers/runtime/docker-server.sh +++ b/ga/latest/kernel/helpers/runtime/docker-server.sh @@ -84,12 +84,6 @@ function importKeyCert() { fi } -# Resolve liberty server symlinks and creation for server name changes -/opt/ibm/helpers/build/configure-liberty.sh -if [ $? -ne 0 ]; then - exit -fi - case "${LICENSE,,}" in "accept" ) # Suppress license message in logs grep -s -F "com.ibm.ws.logging.hideMessage" /config/bootstrap.properties \ From 27363e374e75306986011fd6c1ebfd506d57f648 Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 11 Jul 2023 09:59:54 -0400 Subject: [PATCH 24/25] Add SERVER_NAME env --- ga/latest/kernel/Dockerfile.ubi.ibmjava8 | 2 ++ ga/latest/kernel/Dockerfile.ubi.openjdk11 | 2 ++ ga/latest/kernel/Dockerfile.ubi.openjdk17 | 2 ++ ga/latest/kernel/Dockerfile.ubi.openjdk8 | 2 ++ ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 | 2 ++ ga/latest/kernel/Dockerfile.ubuntu.openjdk11 | 2 ++ ga/latest/kernel/Dockerfile.ubuntu.openjdk17 | 2 ++ 7 files changed, 14 insertions(+) diff --git a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 index 08371650..605bea9b 100644 --- a/ga/latest/kernel/Dockerfile.ubi.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubi.ibmjava8 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk11 b/ga/latest/kernel/Dockerfile.ubi.openjdk11 index 7c9104e4..d6df737f 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk11 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk17 b/ga/latest/kernel/Dockerfile.ubi.openjdk17 index 5ba88df4..87d0a7b4 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk17 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ diff --git a/ga/latest/kernel/Dockerfile.ubi.openjdk8 b/ga/latest/kernel/Dockerfile.ubi.openjdk8 index 567a32f1..781e9aa7 100644 --- a/ga/latest/kernel/Dockerfile.ubi.openjdk8 +++ b/ga/latest/kernel/Dockerfile.ubi.openjdk8 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 index 9651579b..1a02aa33 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 +++ b/ga/latest/kernel/Dockerfile.ubuntu.ibmjava8 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 index eb95c649..f724be82 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk11 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ diff --git a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 index 90e04b36..430f7d49 100644 --- a/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 +++ b/ga/latest/kernel/Dockerfile.ubuntu.openjdk17 @@ -48,6 +48,8 @@ ARG OPENJ9_SCC=true ARG LIBERTY_VERSION=23.0.0.6 ARG LIBERTY_BUILD_LABEL=cl230620230612-1100 +ENV SERVER_NAME=defaultServer + LABEL org.opencontainers.image.authors="Leo Christy Jesuraj, Thomas Watson, Wendy Raschke, Michal Broz" \ org.opencontainers.image.vendor="IBM" \ org.opencontainers.image.url="https://github.com/WASdev/ci.docker" \ From e085570510940766c223226dd0e9f758e98ed16f Mon Sep 17 00:00:00 2001 From: kabicin Date: Tue, 11 Jul 2023 10:25:40 -0400 Subject: [PATCH 25/25] Add SERVER_NAME usage into README --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4847b73e..0e049cc5 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,9 @@ FROM icr.io/appcafe/websphere-liberty:kernel-java17-openj9-ubi # Default setting for the verbose option. Set it to true to debug the application container image build failures ARG VERBOSE=false +# Modify the server name (optional) +ENV SERVER_NAME=liberty1 + # Add Liberty server configuration including all necessary features COPY --chown=1001:0 server.xml /config/ @@ -70,7 +73,7 @@ Refer to [Repository and proxy modifications](https://openliberty.io/docs/ref/co ## Optional Enterprise Functionality -This section describes the optional enterprise functionality that can be enabled via the Dockerfile during `build` time, by setting particular argument (`ARG`) or environment variable (`ENV`) and calling `RUN configure.sh`. Each of these options trigger the inclusion of specific configuration via XML snippets (except for `VERBOSE`), described below: +This section describes the optional enterprise functionality that can be enabled via the Dockerfile during `build` time, by setting particular argument (`ARG`) or environment variable (`ENV`) and calling `RUN configure.sh`. Each of these options trigger the inclusion of specific configuration via XML snippets (except for `SERVER_NAME` and `VERBOSE`), described below: * `TLS` (`SSL` is deprecated) * Description: Enable Transport Security in Liberty by adding the `transportSecurity-1.0` feature (includes support for SSL). @@ -78,6 +81,12 @@ This section describes the optional enterprise functionality that can be enabled * `HZ_SESSION_CACHE` * Description: Enable the persistence of HTTP sessions using JCache by adding the `sessionCache-1.0` feature. * XML Snippet Location: [hazelcast-sessioncache.xml](ga/latest/kernel/helpers/build/configuration_snippets/hazelcast-sessioncache.xml) +* `SERVER_NAME` + * Description: A name for the server. If no server is specified, a server called `defaultServer` is automatically created. + * Naming constraints: + * Use only Unicode alphanumeric (e.g. 0-9, a-z, A-Z), underscore (_), dash (-), plus (+), and period (.) characters. + * Do not begin the name with a dash (-) or a period (.). + * Be aware that your file system, operating system, or compressed file directory might impose more restrictions. * `VERBOSE` * Description: When set to `true` it outputs the commands and results to stdout from `configure.sh`. Otherwise, default setting is `false` and `configure.sh` is silenced.