diff --git a/.flattened-pom.xml b/.flattened-pom.xml deleted file mode 100644 index 9460e5f..0000000 --- a/.flattened-pom.xml +++ /dev/null @@ -1,572 +0,0 @@ - - - 4.0.0 - - info.freelibrary - freelib-parent - 6.6.3 - - info.freelibrary - cantaloupe - 4.1.7-2-SNAPSHOT - docker-cantaloupe - A Docker build and test framework for Cantaloupe - https://github.com/uclalibrary/docker-cantaloupe - - - The 3-Clause BSD License - https://opensource.org/licenses/BSD-3-clause - - - - - ksclarke - Kevin S. Clarke - ksclarke@ksclarke.io - UCLA Library - http://github.com/uclalibrary - America/New_York - - - cachemeoutside - Anthony Vuong - avuong@cachemeoutside.io - UCLA Library - http://github.com/uclalibrary - America/Los_Angeles - - - markmatney - Mark A. Matney, Jr. - mmatney@library.ucla.edu - UCLA Library - http://github.com/uclalibrary - America/Los_Angeles - - - DRickard - David Rickard - drickard1967@library.ucla.edu - UCLA Library - http://github.com/uclalibrary - America/Los_Angeles - - - - scm:git:git@github.com:uclalibrary/docker-cantaloupe.git - scm:git:git@github.com:uclalibrary/docker-cantaloupe.git - git@github.com:uclalibrary/docker-cantaloupe.git - - - GitHub - https://github.com/uclalibrary/docker-cantaloupe/issues - - - 20.04 - - 8:6.9.10.23+dfsg-2.1ubuntu11.2 - true - 4.1.0+git191117-2build1 - 12.8ubuntu1.1 - 0.1.2 - 2.0.3-0ubuntu1.20.04.1 - 1.20.3-1ubuntu1 - - 7:4.2.4-1ubuntu0.1 - 2.7.17-2ubuntu4 - 7.68.0-1ubuntu2.4 - scm:git:git@github.com:uclalibrary/kakadu.git - - 20180130 - - 2.8.2 - 4.2.1-1.2 - 1.11.2 - 2.3.1-1ubuntu4 - - 4:9.3.0-1ubuntu2 - 11.0.9.1+1-0ubuntu1~20.04 - ERROR - - src/test/resources/images/ - 1.3.0 - ERROR - 1.0.2 - 4.1.7 - remove - 1.2.0 - 1.13.1 - 1.4+really1.3.35-1 - 0.33.0 - 3.0-11build1 - 2.1.0 - 6.0-25ubuntu1 - - - - ch.qos.logback - logback-classic - compile - - - info.freelibrary - freelib-utils - ${freelib.utils.version} - - - junit - junit - test - - - org.jsoup - jsoup - ${jsoup.version} - test - - - org.json - json - ${json.version} - test - - - - - - true - src/main/resources - - - - - true - src/test/resources - - images/*.tif - images/*.jpx - images/*.png - images/*.jpg - images/*.gif - images/*.jp2 - *.enc - - - - true - ${basedir} - - logback-test.xml - - - images/*.tif - images/*.jpx - images/*.png - images/*.jpg - images/*.gif - images/*.jp2 - *.enc - - - - - - maven-resources-plugin - - - maven-compiler-plugin - - - -Xlint:all - - - - - maven-deploy-plugin - ${deploy.plugin.version} - - true - - - - info.freelibrary - freelib-maven-plugins - ${freelib.maven.version} - - - process-resources - - generate-codes - - - src/main/generated - - src/main/resources/cantaloupe_messages.xml - - - - - - - maven-pmd-plugin - - - maven-javadoc-plugin - - - site-javadocs - site - - javadoc - - - - - - info.freelibrary - freelib-resources - ${freelib.resources.version} - - - - javadocs.css - true - public - true - true -   - false - - -J-Dhttp.agent=maven-javadoc-plugin-${project.name} - - - https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/ - - src/main/java:src/main/generated - - - - maven-checkstyle-plugin - - src/main/tools/checkstyle/checkstyle-suppressions-override.xml - - - - maven-enforcer-plugin - - - enforce-java - - enforce - - - - - [1.11.0,) - - - - - - - - maven-dependency-plugin - - - org.codehaus.mojo - build-helper-maven-plugin - - - com.googlecode.maven-download-plugin - download-maven-plugin - ${maven.download.plugin.version} - - - install-test-images - generate-test-resources - - wget - - - https://s3.amazonaws.com/ksclarke-data/jiiify-image-test-images.zip - true - src/test/resources/images - - - - - - org.codehaus.mojo - xml-maven-plugin - ${xml.maven.plugin.version} - - - validate - - validate - - - - - - - src/main/resources - cantaloupe_messages.xml - - - src/test/resources - logback-test.xml - - - - - - - - - publishedBuild - - - !versions - - - - - - io.fabric8 - docker-maven-plugin - ${docker.maven.plugin.version} - - - docker-build - pre-integration-test - - build - - - - docker-start - pre-integration-test - - start - - - - docker-stop - post-integration-test - - stop - - - - docker-deploy - deploy - - push - - - - - true - true - - - ${docker.image} - - ${project.basedir}/src/main/docker/Dockerfile - - - - ${http.port}:8182 - - - - ${image.root}:/imageroot/ - - - - true - ${admin.password} - - - - http://localhost:${http.port} - GET - 200 - - - - - - - ${docker.registry.username} - ${docker.registry.password} - - - - - maven-surefire-plugin - - - functional-tests - integration-test - - test - - - - **/*FT.java - **/*IT.java - - - **/*Test.java - - ${jacoco.agent.arg} - - ${cantaloupe.version} - ${http.port} - - - - - - - **/* - - 1 - false - - - - - - - kakadu - - - kakadu.version - - - - - - maven-scm-plugin - ${scm.plugin.version} - - - kakadu-checkout - generate-sources - - checkout - - - ${basedir}/src/main/docker/kakadu - ${kakadu.git.repo} - - - - - - - - -ucla - - - - versions - - - versions - - - - - - io.fabric8 - docker-maven-plugin - 0.33.0 - - - docker-build - validate - - build - - - true - true - - - cantaloupe-versions:latest - - ubuntu:20.04 - - project - - - /maven/src/main/docker/scripts/show_versions.sh - - tail -f /dev/null - - - - - servicesbot - Gy_8k7hTy9BWm5A_Z! - - - - - - true - true - - - cantaloupe-versions:latest - - ubuntu:20.04 - - project - - - /maven/src/main/docker/scripts/show_versions.sh - - tail -f /dev/null - - - - - servicesbot - Gy_8k7hTy9BWm5A_Z! - - - - - - - - devBuild - - - devBuild - - - - latest - ${docker.registry.account}${project.artifactId}${artifact.qualifier}:latest-dev - dev - - - - - - !devBuild - - - - ${docker.registry.account}${project.artifactId}${artifact.qualifier}:%l - - - - diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 27e1fc4..feb0552 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,13 +8,14 @@ on: jobs: build: - name: Maven PR Builder (JDK ${{ matrix.java }}) + name: Maven PR Builder (JDK ${{ matrix.java }} with ${{ matrix.build_property }}) runs-on: ubuntu-latest env: MAVEN_CACHE_KEY: ${{ secrets.MAVEN_CACHE_KEY }} strategy: matrix: java: [ 11, 12 ] + build_property: [ "kakadu.version", "ignored.version" ] steps: - name: Check out code @@ -34,12 +35,17 @@ jobs: if: ${{ env.MAVEN_CACHE_KEY }} with: path: ~/.m2 - key: freelibrary-cache-${{ secrets.MAVEN_CACHE_KEY }}-${{ hashFiles('**/pom.xml') }} - restore-keys: freelibrary-cache-${{ secrets.MAVEN_CACHE_KEY }}- + key: uclalibrary-cache-${{ secrets.MAVEN_CACHE_KEY }}-${{ hashFiles('**/pom.xml') }} + restore-keys: uclalibrary-cache-${{ secrets.MAVEN_CACHE_KEY }}- + - name: Install Kakadu SSH key + uses: webfactory/ssh-agent@ee29fafb6aa450493bac9136b346e51ea60a8b5e # v0.4.1 + with: + ssh-private-key: ${{ secrets.KAKADU_PRIVATE_SSH_KEY }} - name: Build with Maven uses: samuelmeuli/action-maven-publish@201a45a3f311b2ee888f252ba9f4194257545709 # v1.4.0 with: maven_goals_phases: "clean verify" maven_profiles: default,${{ secrets.BUILD_PROFILES }} maven_args: > - -V -ntp -Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=error ${{ secrets.BUILD_PROPERTIES }} + -V -ntp -Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=error -DlogLevel=DEBUG -DtestLogLevel=DEBUG + -D${{ matrix.build_property }}=${{ secrets.KAKADU_VERSION }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 15be042..d7d1554 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -7,19 +7,22 @@ on: jobs: publish: - name: Maven Artifact Publisher (JDK 11) + name: Maven Artifact Publisher (JDK ${{ matrix.java }} with ${{ matrix.build_property }}) runs-on: ubuntu-latest env: - AUTORELEASE_ARTIFACT: ${{ secrets.AUTORELEASE_ARTIFACT }} SKIP_JAR_DEPLOYMENT: ${{ secrets.SKIP_JAR_DEPLOYMENT }} MAVEN_CACHE_KEY: ${{ secrets.MAVEN_CACHE_KEY }} + strategy: + matrix: + java: [ 11 ] + build_property: [ "kakadu.version", "ignored.version" ] steps: - name: Check out source code uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2 - - name: Install JDK 11 + - name: Install JDK ${{ matrix.java }} uses: actions/setup-java@d202f5dbf7256730fb690ec59f6381650114feb2 # v1 with: - java-version: 11 + java-version: ${{ matrix.java }} # If running locally in act, install Maven - name: Set up Maven if needed if: ${{ env.ACT }} @@ -33,9 +36,6 @@ jobs: path: ~/.m2 key: freelibrary-cache-${{ secrets.MAVEN_CACHE_KEY }}-${{ hashFiles('**/pom.xml') }} restore-keys: freelibrary-cache-${{ secrets.MAVEN_CACHE_KEY }}- - - name: Set autorelease config - if: env.AUTORELEASE_ARTIFACT == null - run: echo "AUTORELEASE_ARTIFACT=false" >> $GITHUB_ENV - name: Set Jar deployment config if: env.SKIP_JAR_DEPLOYMENT == null run: echo "SKIP_JAR_DEPLOYMENT=false" >> $GITHUB_ENV @@ -47,17 +47,20 @@ jobs: with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} + - name: Install Kakadu SSH key + uses: webfactory/ssh-agent@ee29fafb6aa450493bac9136b346e51ea60a8b5e # v0.4.1 + with: + ssh-private-key: ${{ secrets.KAKADU_PRIVATE_SSH_KEY }} - name: Release with Maven uses: samuelmeuli/action-maven-publish@201a45a3f311b2ee888f252ba9f4194257545709 # v1.4.0 with: - gpg_private_key: ${{ secrets.BUILD_KEY }} - gpg_passphrase: ${{ secrets.BUILD_PASSPHRASE }} - nexus_username: ${{ secrets.SONATYPE_USERNAME }} + nexus_username: ${{ secrets.SONATYPE_USERNAME }} # These are placeholders; we're publishing a Docker image nexus_password: ${{ secrets.SONATYPE_PASSWORD }} - maven_profiles: release,${{ secrets.BUILD_PROFILES }} + maven_profiles: release maven_args: > - -Drevision=${{ github.event.release.tag_name }} -DautoReleaseAfterClose=${{ env.AUTORELEASE_ARTIFACT }} - -ntp -Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=error ${{ secrets.BUILD_PROPERTIES }} + -Drevision=${{ github.event.release.tag_name }} + -ntp -Dorg.slf4j.simpleLogger.log.net.sourceforge.pmd=error + -D${{ matrix.build_property }}=${{ secrets.KAKADU_VERSION }} -DskipNexusStagingDeployMojo=${{ env.SKIP_JAR_DEPLOYMENT }} -Ddocker.registry.username=${{ secrets.DOCKER_USERNAME }} -Ddocker.registry.account=${{ secrets.DOCKER_REGISTRY_ACCOUNT}} diff --git a/.gitignore b/.gitignore index 74d5efc..61af890 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,9 @@ src/main/docker/kakadu/* kakadu/* +# Workflow artifact created during versioning +.flattened-pom.xml + # Some build tools that are automatically generated src/main/tools/eclipse/ src/main/tools/travis/