From d8d58115bcb40921a4af3f73ccd426698dcd5af5 Mon Sep 17 00:00:00 2001 From: Paul Caskey Date: Wed, 18 Feb 2026 20:04:46 +0000 Subject: [PATCH 1/4] Update IdP to 5.2.1 --- Dockerfile | 4 +- container_files/idp/idp.installer.properties | 2 +- test-compose/idp/Dockerfile | 25 ------- tests/fulltest.sh | 78 -------------------- 4 files changed, 3 insertions(+), 106 deletions(-) delete mode 100644 test-compose/idp/Dockerfile delete mode 100755 tests/fulltest.sh diff --git a/Dockerfile b/Dockerfile index bb9cd73..bdf39b7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,9 +8,9 @@ FROM --platform=$TARGETPLATFORM rockylinux/rockylinux:9.7 ENV TOMCAT_MAJOR=11 \ TOMCAT_VERSION=11.0.18 \ ##shib-idp \ - VERSION=5.2.0 \ + VERSION=5.2.1 \ ##TIER \ - TIERVERSION=20260213_rocky9_multiarch \ + TIERVERSION=20260218_rocky9_multiarch \ #################### \ #### OTHER VARS #### \ #################### \ diff --git a/container_files/idp/idp.installer.properties b/container_files/idp/idp.installer.properties index f3b10af..b84cd12 100644 --- a/container_files/idp/idp.installer.properties +++ b/container_files/idp/idp.installer.properties @@ -1,4 +1,4 @@ -idp.src.dir=/tmp/shibboleth/shibboleth-identity-provider-5.2.0 +idp.src.dir=/tmp/shibboleth/shibboleth-identity-provider-5.2.1 idp.target.dir=/opt/shibboleth-idp idp.host.name=idp.example.org idp.sealer.password=changeit diff --git a/test-compose/idp/Dockerfile b/test-compose/idp/Dockerfile deleted file mode 100644 index 85006cb..0000000 --- a/test-compose/idp/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -FROM i2incommon/shib-idp:latest5 - -# The build args below can be used at build-time to tell the build process where to find your config files. This is for a completely burned-in config. -ARG TOMCFG=config/tomcat -ARG TOMCERT=credentials/tomcat -ARG TOMWWWROOT=wwwroot -ARG SHBCFG=config/shib-idp/conf -ARG SHBCREDS=credentials/shib-idp -ARG SHBVIEWS=config/shib-idp/views -ARG SHBEDWAPP=config/shib-idp/edit-webapp -ARG SHBMSGS=config/shib-idp/messages -ARG SHBMD=config/shib-idp/metadata - -# copy in the needed config files -ADD ${TOMCFG} /usr/local/tomcat/conf -ADD ${TOMCERT} /opt/certs -ADD ${TOMWWWROOT} /usr/local/tomcat/webapps/ROOT -ADD ${SHBCFG} /opt/shibboleth-idp/conf -ADD ${SHBCREDS} /opt/shibboleth-idp/credentials -ADD ${SHBVIEWS} /opt/shibboleth-idp/views -#ADD ${SHBEDWAPP} /opt/shibboleth-idp/edit-webapp -#ADD ${SHBMSGS} /opt/shibboleth-idp/messages -ADD ${SHBMD} /opt/shibboleth-idp/metadata - - diff --git a/tests/fulltest.sh b/tests/fulltest.sh deleted file mode 100755 index 3b31208..0000000 --- a/tests/fulltest.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/bash -echo "Starting fulltest.sh script..." - -. ./common.bash - -pushd test-compose &>/dev/null -echo "Launching fresh containers..." -./decompose.sh -y &>/dev/null -./compose.sh &>/dev/null -popd &>/dev/null - -echo "Waiting 1 minute while everything comes up..." -sleep 60 - -pushd tests &>/dev/null -rm -f ./lastpage.txt - -#ensure that name resolution is in place -ping -c 1 sptest.example.edu &>/dev/null -if [ $? -ne '0' ]; then - #echo "ERROR: You must set name resolution for the IdP test suite on this host for tests to complete (SP missing)" - #exit 1 - echo "adding hosts record for sp..." - echo '127.0.0.1 sptest.example.edu' | sudo tee -a /etc/hosts -fi -ping -c 1 idp.example.edu &>/dev/null -if [ $? -ne '0' ]; then - #echo "ERROR: You must set name resolution for the IdP test suite on this host for tests to completei (IdP missing)" - #exit 1 - echo "adding hosts record for idp..." - echo '127.0.0.1 idp.example.edu' | sudo tee -a /etc/hosts -fi - -# replace FROM line in IdP Dockerfile to newly-built local image -echo "Setting test suite to base from new IdP image: ${imagename}_${tag}" -sed -i "s*FROM i2incommon/shib-idp:latest5*FROM ${imagename}_${tag}*g" ../test-compose/idp/Dockerfile - -echo "Attempting full-cycle test..." - -#build webisoget container -pushd ../test-compose/webisoget/ &>/dev/null -docker build -t webisoget . -popd &>/dev/null - -docker run --net host -w /webisoget/ -i webisoget /bin/bash -c "rm -f lastpage.txt & webisoget -out ./lastpage.txt -maxhop 100 -timeout 120 -formfile /webisoget/sptest.login -url https://sptest.example.edu:8443/secure/index.php && cat lastpage.txt" > lastpage.txt - -if [ -s ./lastpage.txt ]; then - cat lastpage.txt | grep kwhite@example.edu &>/dev/null - if [ $? == "0" ]; then - echo "The full-cycle test of the IdP and SP was successfull!" - echo "" - pushd ../test-compose &>/dev/null - ./decompose.sh -y &>/dev/null - popd &>/dev/null - rm -f lastpage.txt - popd &>/dev/null - exit 0 - else - echo "The full-cycle test of the IdP and SP failed." - echo "" - pushd ../test-compose &>/dev/null - ./decompose.sh -y &>/dev/null - popd &>/dev/null - rm -f lastpage.txt - popd &>/dev/null - exit 1 - fi -else - echo "The full-cycle test of the IdP and SP failed (no output)." - echo "" - pushd ../test-compose &>/dev/null - ./decompose.sh -y &>/dev/null - popd &>/dev/null - rm -f lastpage.txt - popd &>/dev/null - exit 1 -fi - From 730445909059e568bbea95c20d7cf3ac20f5c596 Mon Sep 17 00:00:00 2001 From: Paul Caskey Date: Wed, 18 Feb 2026 14:24:28 -0600 Subject: [PATCH 2/4] Create fulltest.sh (was dropped) --- tests/fulltest.sh | 77 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 tests/fulltest.sh diff --git a/tests/fulltest.sh b/tests/fulltest.sh new file mode 100644 index 0000000..73120a3 --- /dev/null +++ b/tests/fulltest.sh @@ -0,0 +1,77 @@ +#!/bin/bash +echo "Starting fulltest.sh script..." + +. ./common.bash + +pushd test-compose &>/dev/null +echo "Launching fresh containers..." +./decompose.sh -y &>/dev/null +./compose.sh &>/dev/null +popd &>/dev/null + +echo "Waiting 1 minute while everything comes up..." +sleep 60 + +pushd tests &>/dev/null +rm -f ./lastpage.txt + +#ensure that name resolution is in place +ping -c 1 sptest.example.edu &>/dev/null +if [ $? -ne '0' ]; then + #echo "ERROR: You must set name resolution for the IdP test suite on this host for tests to complete (SP missing)" + #exit 1 + echo "adding hosts record for sp..." + echo '127.0.0.1 sptest.example.edu' | sudo tee -a /etc/hosts +fi +ping -c 1 idp.example.edu &>/dev/null +if [ $? -ne '0' ]; then + #echo "ERROR: You must set name resolution for the IdP test suite on this host for tests to completei (IdP missing)" + #exit 1 + echo "adding hosts record for idp..." + echo '127.0.0.1 idp.example.edu' | sudo tee -a /etc/hosts +fi + +# replace FROM line in IdP Dockerfile to newly-built local image +echo "Setting test suite to base from new IdP image: ${imagename}_${tag}" +sed -i "s*FROM i2incommon/shib-idp:latest5*FROM ${imagename}_${tag}*g" ../test-compose/idp/Dockerfile + +echo "Attempting full-cycle test..." + +#build webisoget container +pushd ../test-compose/webisoget/ &>/dev/null +docker build -t webisoget . +popd &>/dev/null + +docker run --net host -w /webisoget/ -i webisoget /bin/bash -c "rm -f lastpage.txt & webisoget -out ./lastpage.txt -maxhop 100 -timeout 120 -formfile /webisoget/sptest.login -url https://sptest.example.edu:8443/secure/index.php && cat lastpage.txt" > lastpage.txt + +if [ -s ./lastpage.txt ]; then + cat lastpage.txt | grep kwhite@example.edu &>/dev/null + if [ $? == "0" ]; then + echo "The full-cycle test of the IdP and SP was successfull!" + echo "" + pushd ../test-compose &>/dev/null + ./decompose.sh -y &>/dev/null + popd &>/dev/null + rm -f lastpage.txt + popd &>/dev/null + exit 0 + else + echo "The full-cycle test of the IdP and SP failed." + echo "" + pushd ../test-compose &>/dev/null + ./decompose.sh -y &>/dev/null + popd &>/dev/null + rm -f lastpage.txt + popd &>/dev/null + exit 1 + fi +else + echo "The full-cycle test of the IdP and SP failed (no output)." + echo "" + pushd ../test-compose &>/dev/null + ./decompose.sh -y &>/dev/null + popd &>/dev/null + rm -f lastpage.txt + popd &>/dev/null + exit 1 +fi From 11d049370ed93902c0e4022d837266934542e142 Mon Sep 17 00:00:00 2001 From: Paul Caskey Date: Wed, 18 Feb 2026 21:19:01 +0000 Subject: [PATCH 3/4] fix perms on test script --- tests/fulltest.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 tests/fulltest.sh diff --git a/tests/fulltest.sh b/tests/fulltest.sh old mode 100644 new mode 100755 From ceafe0e0424d9a44687ac4ec2bf94117aa4da797 Mon Sep 17 00:00:00 2001 From: Paul Caskey Date: Wed, 18 Feb 2026 21:41:23 +0000 Subject: [PATCH 4/4] restore missing file --- test-compose/idp/Dockerfile | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 test-compose/idp/Dockerfile diff --git a/test-compose/idp/Dockerfile b/test-compose/idp/Dockerfile new file mode 100644 index 0000000..93c8c9d --- /dev/null +++ b/test-compose/idp/Dockerfile @@ -0,0 +1,24 @@ +FROM i2incommon/shib-idp:latest5 + +# The build args below can be used at build-time to tell the build process where to find your config files. This is for a completely burned-in config. +ARG TOMCFG=config/tomcat +ARG TOMCERT=credentials/tomcat +ARG TOMWWWROOT=wwwroot +ARG SHBCFG=config/shib-idp/conf +ARG SHBCREDS=credentials/shib-idp +ARG SHBVIEWS=config/shib-idp/views +ARG SHBEDWAPP=config/shib-idp/edit-webapp +ARG SHBMSGS=config/shib-idp/messages +ARG SHBMD=config/shib-idp/metadata + +# copy in the needed config files +ADD ${TOMCFG} /usr/local/tomcat/conf +ADD ${TOMCERT} /opt/certs +ADD ${TOMWWWROOT} /usr/local/tomcat/webapps/ROOT +ADD ${SHBCFG} /opt/shibboleth-idp/conf +ADD ${SHBCREDS} /opt/shibboleth-idp/credentials +ADD ${SHBVIEWS} /opt/shibboleth-idp/views +#ADD ${SHBEDWAPP} /opt/shibboleth-idp/edit-webapp +#ADD ${SHBMSGS} /opt/shibboleth-idp/messages +ADD ${SHBMD} /opt/shibboleth-idp/metadata +