From 12f5269169f6bc29d30e0d8dc3d0e2e895853d6c Mon Sep 17 00:00:00 2001 From: Jim Van Fleet Date: Wed, 3 Aug 2016 16:19:11 -0400 Subject: [PATCH] Reorganizing test suite, updating binscripts --- .gitignore | 2 ++ Dockerfile | 5 ++++- Jenkinsfile | 17 ++++++++++++++++- tests/image.bats | 4 ---- tests/running.bats | 15 +++++++++++++++ 5 files changed, 37 insertions(+), 6 deletions(-) create mode 100644 tests/running.bats diff --git a/.gitignore b/.gitignore index f9b8692..a26bdc0 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,8 @@ bin/rebuild.sh bin/rerun.sh bin/run.sh bin/test.sh +bin/start.sh +bin/stop.sh root/** shibboleth-identity-provider.tar.gz test.log diff --git a/Dockerfile b/Dockerfile index a8c98cb..e110912 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,4 +5,7 @@ ARG imagename=shibboleth_idp ARG version=3.2.1 ENV VERSION=$version -RUN chown -R root:root /opt/shibboleth/shibboleth-identity-provider-$version \ No newline at end of file +RUN chown -R root:root /opt/shibboleth/shibboleth-identity-provider-$version + +EXPOSE 8080 +CMD ["catalina.sh", "run"] \ No newline at end of file diff --git a/Jenkinsfile b/Jenkinsfile index 195076b..15e20f8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -20,7 +20,22 @@ node { dir('root'){ git([ url: "https://github.internet2.edu/docker/shib-idp-conftree.git", branch: "test", credentialsId: "jenkins-github-access-token" ]) - } + } + + stage 'Build' + + def maintainer = maintainer() + def imagename = imagename() + def tag = env.BRANCH_NAME + if(!imagename){ + echo "You must define an imagename in common.bash" + currentBuild.result = 'FAILURE' + } + if(maintainer){ + echo "Building ${maintainer}:${tag} for ${maintainer}" + } + + sh 'bin/rebuild.sh' stage 'Tests' diff --git a/tests/image.bats b/tests/image.bats index 5cd7405..81a7bee 100644 --- a/tests/image.bats +++ b/tests/image.bats @@ -2,10 +2,6 @@ load ../common -setup() { - ./bin/rebuild.sh -} - @test "Creates non-root Shib IDP home" { result="$(docker run -i $maintainer/$imagename ls /opt/shibboleth/current/bin/)" [ "$result" != '' ] diff --git a/tests/running.bats b/tests/running.bats new file mode 100644 index 0000000..00c9e23 --- /dev/null +++ b/tests/running.bats @@ -0,0 +1,15 @@ +#!/usr/bin/env bats + +load ../common + +setup() { + bin/start.sh +} + +@test "Leaves running process" { + result="$(docker ps | grep $imagename)" + [ "$result" != '' ] +} +teardown() { + bin/stop.sh +}