From 261e47b701c655dd70387c274ab2c7c00fa79e0b Mon Sep 17 00:00:00 2001 From: Corneil du Plessis Date: Fri, 5 Jul 2024 15:54:08 +0200 Subject: [PATCH] [CI] Create workflow for uaa-test container. (#5861) Update build for uaa-test container. --- .github/workflows/build-uaa-test.yml | 32 +++++++++++++++++++ .../test/db/AbstractDataflowTests.java | 2 +- src/docker/uaa/Dockerfile | 2 +- src/docker/uaa/build-all | 7 +++- src/docker/uaa/build-docker | 2 +- src/docker/uaa/build-script.gradle.fragment | 16 ++++++++++ src/docker/uaa/build-uaa | 15 ++++++--- 7 files changed, 67 insertions(+), 9 deletions(-) create mode 100644 .github/workflows/build-uaa-test.yml create mode 100644 src/docker/uaa/build-script.gradle.fragment diff --git a/.github/workflows/build-uaa-test.yml b/.github/workflows/build-uaa-test.yml new file mode 100644 index 0000000000..de4d5f6542 --- /dev/null +++ b/.github/workflows/build-uaa-test.yml @@ -0,0 +1,32 @@ +name: build-uaa-test + +on: + workflow_dispatch: + +jobs: + # test templating before publishing a package + prepare: + name: Prepare Job + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/checkout@v4 + with: + repository: cloudfoundry/uaa + ref: '4.32.0' + path: src/docker/uaa/uaa + - uses: actions/setup-java@v3 + with: + java-version: '8' + distribution: 'liberica' + - name: Login dockerhub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Build UAA Test Image + shell: bash + run: ./src/docker/uaa/build-all + - name: Publish Test Image + shell: bash + run: docker push spring-cloud/scdf-uaa-test:4.32 diff --git a/spring-cloud-dataflow-server/src/test/java/org/springframework/cloud/dataflow/integration/test/db/AbstractDataflowTests.java b/spring-cloud-dataflow-server/src/test/java/org/springframework/cloud/dataflow/integration/test/db/AbstractDataflowTests.java index c4ed7894a8..de2ec97871 100644 --- a/spring-cloud-dataflow-server/src/test/java/org/springframework/cloud/dataflow/integration/test/db/AbstractDataflowTests.java +++ b/spring-cloud-dataflow-server/src/test/java/org/springframework/cloud/dataflow/integration/test/db/AbstractDataflowTests.java @@ -90,7 +90,7 @@ protected static class EmptyConfig { ); public final static List OAUTH_CONTAINERS = Collections.singletonList( - ClusterContainer.from(TagNames.UAA_4_32, "projects.registry.vmware.com/scdf/uaa-test:4.32", TagNames.UAA) + ClusterContainer.from(TagNames.UAA_4_32, "spring-cloud/scdf-uaa-test:4.32", TagNames.UAA) ); @Autowired diff --git a/src/docker/uaa/Dockerfile b/src/docker/uaa/Dockerfile index 258ccece0c..5fdafa47b3 100644 --- a/src/docker/uaa/Dockerfile +++ b/src/docker/uaa/Dockerfile @@ -1,6 +1,6 @@ FROM tomcat:8-jre8-alpine -ENV UAA_CONFIG_PATH $CATALINA_HOME +ENV UAA_CONFIG_PATH=$CATALINA_HOME ENV CATALINA_OPTS="-Xmx800m" RUN rm -fr $CATALINA_HOME/webapps/ROOT diff --git a/src/docker/uaa/build-all b/src/docker/uaa/build-all index e7d2e087e0..087b04afae 100755 --- a/src/docker/uaa/build-all +++ b/src/docker/uaa/build-all @@ -1,2 +1,7 @@ #!/bin/bash -./build-uaa && ./build-docker +set -euo pipefail +SRCDIR=$(dirname "$(readlink -f "${BASH_SOURCE[0]}")") +pushd $SRCDIR +./build-uaa +./build-docker +popd \ No newline at end of file diff --git a/src/docker/uaa/build-docker b/src/docker/uaa/build-docker index 4bdcdfd4cd..c8a77b16cc 100755 --- a/src/docker/uaa/build-docker +++ b/src/docker/uaa/build-docker @@ -1,2 +1,2 @@ #!/bin/bash -docker build -t projects.registry.vmware.com/scdf/uaa-test:4.32 . +docker build -t spring-cloud/scdf-uaa-test:4.32 . diff --git a/src/docker/uaa/build-script.gradle.fragment b/src/docker/uaa/build-script.gradle.fragment new file mode 100644 index 0000000000..fb4b43c21a --- /dev/null +++ b/src/docker/uaa/build-script.gradle.fragment @@ -0,0 +1,16 @@ +buildscript { + repositories { + mavenCentral() + jcenter() + maven { + url 'https://repo.spring.io/plugins-release' + credentials { + username = System.getenv('ARTIFACTORY_USERNAME') + password = System.getenv('ARTIFACTORY_PASSWORD') + } + } + } + dependencies { + classpath 'org.springframework.build.gradle:propdeps-plugin:0.0.7' + } +} \ No newline at end of file diff --git a/src/docker/uaa/build-uaa b/src/docker/uaa/build-uaa index 44fb170b6b..c5082c311a 100755 --- a/src/docker/uaa/build-uaa +++ b/src/docker/uaa/build-uaa @@ -1,7 +1,12 @@ #!/bin/bash -rm -fr uaa && -git clone --branch 4.32.0 https://github.com/cloudfoundry/uaa.git && -cd uaa && -./gradlew clean build -x test && -cd .. && +if [ ! -d uaa ]; then + git clone --branch 4.32.0 https://github.com/cloudfoundry/uaa.git +fi +HAS_CRED=$(grep -c -F "credentials" uaa/settings.gradle) +if ((HAS_CRED == 0)); then + cat ./build-script.gradle.fragment >> uaa/settings.gradle +fi +pushd uaa + ./gradlew clean build -x test +popd cp uaa/uaa/build/libs/cloudfoundry-identity-uaa-*.war ./cloudfoundry-identity-uaa.war