From f394b3911472074b1610f46b61e4b2eeaa7adb3a Mon Sep 17 00:00:00 2001 From: CezarLeahu <35226487+CezarLeahu@users.noreply.github.com> Date: Wed, 12 Aug 2020 02:41:55 +0300 Subject: [PATCH] ACS-457: Build linkage, tagging and release (#991) * ACS-457: Build linkage, tagging and release - update .travis.settings.xml * ACS-457: Build linkage, tagging and release - add cleanup_cache.sh script * ACS-457: Build linkage, tagging and release - add init.sh script for before_install job phases * ACS-457: Build linkage, tagging and release - add build.sh script for install job phases * ACS-457: Build linkage, tagging and release - minor updates on the older travis and veracode scripts * ACS-457: Build linkage, tagging and release - reorganized and updated .travis.yml * ACS-457: Build linkage, tagging and release - update and propagate branch version numbers during the build * ACS-457: Build linkage, tagging and release - enable docker image squash for all image builds * ACS-457: Build linkage, tagging and release - shellcheck CI scripts * ACS-457: Build linkage, tagging and release - handle upstream versions in chained feature branch builds * ACS-457: Build linkage, tagging and release - switch to TEST pom versions * ACS-457: Build linkage, tagging and release - handle pom properties for upstream dependencies in build.sh scripts * ACS-457: Build linkage, tagging and release - post-merge fixes * ACS-457: Build linkage, tagging and release - clone upstream repositories with "--depth=1" (no history needed) - add "-Dmaven.javadoc.skip=true" options in the build scripts * ACS-457: Build linkage, tagging and release - remove configuration from sub-modules - remove configurations from submodules - remove configuration from poms - remove unnecessary and unused POM profiles * ACS-457: Build linkage, tagging and release - add pom section - removed some plugin versions from downstream modules - add a single common configuration for the *maven-relese-plugin* * ACS-457: Build linkage, tagging and release - update and reorganize the fabric8-maven-plugin configuration * ACS-457: Build linkage, tagging and release - add configurable docker upstream.image.tag property * ACS-457: Build linkage, tagging and release - modify the build.sh scripts so they checkout the upstream project tag * ACS-457: Build linkage, tagging and release - re-implement build.sh script logic to support PRs & branch builds - restricted the build.sh script capabilities - moved build functions to a separate .sh file * ACS-457: Build linkage, tagging and release - update release scripts * ACS-457: Build linkage, tagging and release - debug build scripts * ACS-457: Build linkage, tagging and release - fix build scripts * ACS-457: Build linkage, tagging and release - fix build scripts * ACS-457: Build linkage, tagging and release - setup/update the S3 publishing jobs * ACS-457: Build linkage, tagging and release - add missing profile * ACS-457: Build linkage, tagging and release - disable PR merges with SNAPSHOT dependencies (on master|release/*) * ACS-457: Build linkage, tagging and release - made the upstream cloning (build_functions.sh) more lenient * ACS-457: Build linkage, tagging and release - fix scripting bug (execute function in sub-shell) --- .travis.settings.xml | 4 + .travis.yml | 317 +++++------ distribution/pom.xml | 370 ++++++------ docker-alfresco/Dockerfile | 2 +- docker-alfresco/pom.xml | 686 +++++++++++------------ pom.xml | 237 ++++---- public-javadoc/pom.xml | 2 +- scripts/travis/build.sh | 34 ++ scripts/travis/build_functions.sh | 104 ++++ scripts/travis/cleanup_cache.sh | 19 + scripts/travis/copy_to_release_bucket.sh | 29 +- scripts/travis/init.sh | 18 + scripts/travis/maven_release.sh | 41 +- scripts/travis/verify_release_tag.sh | 49 +- tests/pom.xml | 46 +- tests/tas-cmis/pom.xml | 140 ++--- tests/tas-email/pom.xml | 142 ++--- tests/tas-integration/pom.xml | 278 ++++----- tests/tas-restapi/pom.xml | 212 +++---- tests/tas-webdav/pom.xml | 140 ++--- 20 files changed, 1524 insertions(+), 1346 deletions(-) create mode 100644 scripts/travis/build.sh create mode 100644 scripts/travis/build_functions.sh create mode 100644 scripts/travis/cleanup_cache.sh create mode 100644 scripts/travis/init.sh diff --git a/.travis.settings.xml b/.travis.settings.xml index 48b88983e..a0294237a 100644 --- a/.travis.settings.xml +++ b/.travis.settings.xml @@ -25,6 +25,10 @@ https://artifacts.alfresco.com/nexus/content/groups/public + + + ${env.WHITESOURCE_API_KEY} + diff --git a/.travis.yml b/.travis.yml index fc3d4af51..cb6d88c54 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,166 +1,151 @@ -dist: xenial -os: linux -language: java -jdk: - - openjdk11 - -services: - - docker - -cache: - directories: - - $HOME/.m2 - -before_cache: - - rm -rf $HOME/.m2/repository/org/alfresco/acs-community-packaging - -env: - global: - - TAS_SCRIPTS=../alfresco-community-repo/packaging/tests/scripts - - TAS_ENVIRONMENT=./tests/environment - # Edition - - VERSION_EDITION=Community - # Must be in the format - ie. 6.3.0-repo-xxxx-x or 6.3.0-Ax - - RELEASE_VERSION=6.2.2-RC1 - - DEVELOPMENT_VERSION=7.0.0-SNAPSHOT - -branches: - only: - - master - - develop - - feature/REPO-5111_repo_build - -stages: - - name: test - if: commit_message !~ /\[skip tests\]/ - - release - - publish - -before_install: - - "cp .travis.settings.xml $HOME/.m2/settings.xml" - - pushd .. -# - git clone -b ${TRAVIS_BRANCH} https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/Alfresco/alfresco-community-repo.git - - git clone https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/Alfresco/alfresco-community-repo.git - - cd alfresco-community-repo - - travis_retry mvn install -DskipTests -PcommunityDocker -B -V - - travis_retry mvn install -f packaging/tests/pom.xml -DskipTests -B -V - - popd - -jobs: - include: - - stage: test - name: "WhiteSource scan" - # only on master or develop and if it is not a PR - if: fork = false AND branch =~ ^(master|develop)$ AND type != pull_request - install: - - travis_retry travis_wait 30 mvn -q install "-Dversion.edition=${VERSION_EDITION}" -f war/pom.xml - script: - # Download the latest version of WhiteSource Unified Agent - - curl -LJO https://github.com/whitesource/unified-agent-distribution/releases/latest/download/wss-unified-agent.jar - # Run WhiteSource Unified Agent - - java -jar wss-unified-agent.jar -apiKey ${WHITESOURCE_API_KEY} -c .wss-unified-agent.config -d ./war - - - name: "REST API TAS tests part1" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 60 mvn install -f tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part1 -Denvironment=default -DrunBugs=false - - - name: "REST API TAS tests part2" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 60 mvn install -f tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part2 -Denvironment=default -DrunBugs=false - - - name: "REST API TAS tests part3" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 60 mvn install -f tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part3 -Denvironment=default -DrunBugs=false - - - name: "CMIS TAS tests" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 40 mvn install -f tests/tas-cmis/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false - - - name: "Email TAS tests" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 30 mvn install -f tests/tas-email/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false - - - name: "WebDAV TAS tests" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 20 mvn install -f tests/tas-webdav/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false - - - name: "Integration TAS tests" - jdk: openjdk11 - install: - - travis_retry travis_wait 40 mvn install -q "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -PcommunityDocker - - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml - - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" - script: - - travis_wait 30 mvn install -f tests/tas-integration/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false - - - stage: Release - name: "Maven release" - if: commit_message ~= /\[release\]/ AND fork = false AND branch =~ ^(master|develop)$ AND type != pull_request - install: travis_retry travis_wait 40 mvn clean install -DskipTests=true "-Dversion.edition=${VERSION_EDITION}" -Dmaven.javadoc.skip=true -B -V - # Fail the job if there is a docker image tag that matches the RELEASE_VERSION (or project version in the POM if not set) - before_script: ./scripts/travis/verify_release_tag.sh - script: travis_wait 40 ./scripts/travis/maven_release.sh ${RELEASE_VERSION} ${DEVELOPMENT_VERSION} - # Copy alfresco.war and the distribution zip to deploy_dir - before_deploy: - # Move the final artifacts to a single folder (deploy_dir) to be copied to S3 - - mkdir -p deploy_dir - - cp war/target/alfresco.war deploy_dir - - cp distribution/target/*-distribution*.zip deploy_dir - deploy: - - provider: s3 - access_key_id: ${AWS_STAGING_ACCESS_KEY} - secret_access_key: ${AWS_STAGING_SECRET_KEY} - bucket: "alfresco-artefacts-staging" - region: "eu-west-1" - skip_cleanup: true - acl: private - local_dir: deploy_dir - upload_dir: "alfresco-content-services-community/release/${TRAVIS_BRANCH}/${TRAVIS_BUILD_NUMBER}" - on: - all_branches: true - condition: $TRAVIS_BRANCH =~ ^(master|develop)$ - - - stage: "Publish" - name: "Copy to S3 Release" - if: commit_message ~= /\[publish\]/ AND fork = false AND branch = master AND type != pull_request - # Nothing to build/install as we are just copying from S3 buckets - install: skip - script: skip - before_deploy: pip install awscli - deploy: - - provider: script - script: ./scripts/travis/copy_to_release_bucket.sh ${TRAVIS_BUILD_NUMBER} ${TRAVIS_BRANCH} - on: - branch: master - - +--- +dist: xenial +language: java +jdk: openjdk11 + +services: + - docker + +git: + depth: false + quiet: true + +cache: + directories: + - ${HOME}/.m2/repository + +# the cache can grow constantly +before_cache: bash scripts/travis/cleanup_cache.sh + +branches: + only: + - master + - develop + - /release\/.*/ + - feature/REPO-5111_repo_build + - feature/ACS-457_travis-release-config + +env: + global: + - TAS_SCRIPTS=../alfresco-community-repo/packaging/tests/scripts + - TAS_ENVIRONMENT=./tests/environment + # Must be in the format - ie. 6.3.0-repo-xxxx-x or 6.3.0-Ax + - RELEASE_VERSION=7.0.0-TEST1 + - DEVELOPMENT_VERSION=7.0.0-TEST1-SNAPSHOT + +stages: + - name: test + if: commit_message !~ /\[skip tests\]/ + - name: docker_latest + if: fork = false AND type != pull_request AND branch = master + - name: release + if: commit_message ~= /\[release\]/ AND fork = false AND type != pull_request AND (branch =~ ^(master|develop)$ OR branch =~ /release\/.*/) + - name: publish + if: commit_message ~= /\[publish\]/ AND fork = false AND type != pull_request AND (branch =~ ^(master|develop)$ OR branch =~ /release\/.*/) + +before_install: travis_retry bash scripts/travis/init.sh +install: travis_retry travis_wait 40 bash scripts/travis/build.sh + +jobs: + include: + - name: "WhiteSource scan" + stage: test + # only on master or develop and if it is not a PR + if: fork = false AND branch =~ ^(master|develop)$ AND type != pull_request + install: travis_retry travis_wait 30 mvn -B -q install -f war/pom.xml + script: + # Download the latest version of WhiteSource Unified Agent + - curl -LJO https://github.com/whitesource/unified-agent-distribution/releases/latest/download/wss-unified-agent.jar + # Run WhiteSource Unified Agent + - java -jar wss-unified-agent.jar -apiKey ${WHITESOURCE_API_KEY} -c .wss-unified-agent.config -d ./war + + - name: "REST API TAS tests part1" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 60 mvn -B install -f tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part1 -Denvironment=default -DrunBugs=false + + - name: "REST API TAS tests part2" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 60 mvn -B install -f tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part2 -Denvironment=default -DrunBugs=false + + - name: "REST API TAS tests part3" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 60 mvn -B install -f tests/tas-restapi/pom.xml -Pall-tas-tests,run-restapi-part3 -Denvironment=default -DrunBugs=false + + - name: "CMIS TAS tests" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal+transforms.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 40 mvn -B install -f tests/tas-cmis/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false + + - name: "Email TAS tests" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 30 mvn -B install -f tests/tas-email/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false + + - name: "WebDAV TAS tests" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 20 mvn -B install -f tests/tas-webdav/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false + + - name: "Integration TAS tests" + before_script: + - ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml + - ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" + script: + - travis_wait 30 mvn -B install -f tests/tas-integration/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false + + - name: "Update Docker latest images" + stage: docker_latest + script: travis_retry travis_wait 30 mvn -B -V clean install -DskipTests -Dmaven.javadoc.skip=true -Pinternal + + - name: "Release and Copy to S3 Staging" + stage: release + install: travis_retry travis_wait 40 mvn -B -V clean install -DskipTests -Dmaven.javadoc.skip=true + before_script: bash scripts/travis/verify_release_tag.sh + script: travis_wait 40 bash scripts/travis/maven_release.sh + before_deploy: + # Move the final artifacts to a single folder (deploy_dir) to be copied to S3 + - mkdir -p deploy_dir + - cp distribution/target/alfresco.war deploy_dir + - cp distribution/target/*-distribution*.zip deploy_dir + deploy: + - provider: s3 + access_key_id: "${AWS_STAGING_ACCESS_KEY}" + secret_access_key: "${AWS_STAGING_SECRET_KEY}" + bucket: "alfresco-artefacts-staging" + region: "eu-west-1" + skip_cleanup: true + acl: private + local_dir: "deploy_dir" + upload_dir: "alfresco-content-services-community/release/${TRAVIS_BRANCH}/${TRAVIS_BUILD_NUMBER}" + on: + all_branches: true + condition: ${TRAVIS_BRANCH} =~ ^(master|develop)$ + + - name: "Copy to S3 Release" + stage: publish + # Nothing to build/install as we are just copying from S3 buckets + install: skip + script: skip + before_deploy: pip install awscli + deploy: + - provider: script + script: bash scripts/travis/copy_to_release_bucket.sh + on: + branch: master + + diff --git a/distribution/pom.xml b/distribution/pom.xml index a6f296604..82ba59872 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -1,174 +1,196 @@ - - 4.0.0 - alfresco-content-services-community-distribution - Alfresco Content Services Community Distribution zip - jar - - - org.alfresco - acs-community-packaging - 7.0.0-SNAPSHOT - - - - - - org.alfresco - content-services-community - war - - - org.alfresco - alfresco-repository - - - org.alfresco - alfresco-data-model - - - org.alfresco - alfresco-server-root - war - - - org.alfresco - alfresco-mmt - - - - org.postgresql - postgresql - ${dependency.postgresql.version} - compile - - - - org.alfresco - alfresco-pdf-renderer - linux - tgz - - - org.alfresco - alfresco-pdf-renderer - win64 - tgz - - - - org.alfresco - alfresco-content-services-share-distribution - zip - - - * - * - - - - - - - ${project.artifactId}-${project.version} - - - src/main/resources - true - - - - - maven-dependency-plugin - - - extract-keystore - generate-resources - - unpack - - - - - - org.alfresco - alfresco-repository - alfresco/keystore/** - - - - org.alfresco - alfresco-content-services-share-distribution - zip - - - - - - extract-jlan-dll - generate-resources - - unpack - - - - - org.alfresco - alfresco-jlan-embed - windll - *.dll - - - - - - - - copy-resources - generate-resources - - copy - - - - - org.alfresco - alfresco-server-root - war - ${project.build.outputDirectory}/web-server/webapps - ROOT.war - - - org.alfresco.aos-module - alfresco-vti-bin - war - ${project.build.outputDirectory}/web-server/webapps - _vti_bin.war - - - - - - - - - maven-assembly-plugin - - - make-assembly - package - - single - - - false - - src/assembly/distribution.xml - - - - - - - - - + + 4.0.0 + alfresco-content-services-community-distribution + Alfresco Content Services Community Distribution zip + jar + + + org.alfresco + acs-community-packaging + 7.0.0-TEST3-SNAPSHOT + + + + + + org.alfresco + content-services-community + war + + + org.alfresco + alfresco-repository + + + org.alfresco + alfresco-data-model + + + org.alfresco + alfresco-server-root + war + + + org.alfresco + alfresco-mmt + + + + org.postgresql + postgresql + ${dependency.postgresql.version} + compile + + + + org.alfresco + alfresco-pdf-renderer + linux + tgz + + + org.alfresco + alfresco-pdf-renderer + win64 + tgz + + + + org.alfresco + alfresco-content-services-share-distribution + zip + + + * + * + + + + + + + ${project.artifactId}-${project.version} + + + src/main/resources + true + + + + + maven-dependency-plugin + + + extract-keystore + generate-resources + + unpack + + + + + + org.alfresco + alfresco-repository + alfresco/keystore/** + + + + org.alfresco + alfresco-content-services-share-distribution + zip + + + + + + extract-jlan-dll + generate-resources + + unpack + + + + + org.alfresco + alfresco-jlan-embed + windll + *.dll + + + + + + + + copy-resources + generate-resources + + copy + + + + + org.alfresco + alfresco-server-root + war + ${project.build.outputDirectory}/web-server/webapps + ROOT.war + + + org.alfresco.aos-module + alfresco-vti-bin + war + ${project.build.outputDirectory}/web-server/webapps + _vti_bin.war + + + + + + + + copy-alfresco-war + generate-resources + + copy + + + + + org.alfresco + content-services-community + ${dependency.alfresco-community-repo.version} + war + false + ${project.build.directory} + alfresco.war + + + + + + + + + maven-assembly-plugin + + + make-assembly + package + + single + + + false + + src/assembly/distribution.xml + + + + + + + + + diff --git a/docker-alfresco/Dockerfile b/docker-alfresco/Dockerfile index 11174fe07..2440ad99c 100644 --- a/docker-alfresco/Dockerfile +++ b/docker-alfresco/Dockerfile @@ -1,4 +1,4 @@ -FROM alfresco/alfresco-community-repo-base:latest +FROM alfresco/alfresco-community-repo-base:${upstream.image.tag} # Set default docker_context. Will / Can be overriden with maven. ARG resource_path=target diff --git a/docker-alfresco/pom.xml b/docker-alfresco/pom.xml index 2bd7d2b8d..b37eb25d9 100644 --- a/docker-alfresco/pom.xml +++ b/docker-alfresco/pom.xml @@ -1,356 +1,330 @@ - - 4.0.0 - content-services-community-docker-alfresco - ACS Community Docker Image Builder for Alfresco Community - pom - - - org.alfresco - acs-community-packaging - 7.0.0-SNAPSHOT - - - - alfresco/alfresco-content-repository-community - quay.io - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - org.apache.maven.plugins - maven-resources-plugin - 3.1.0 - - - copy-licenses - process-resources - - copy-resources - - - - - - ../distribution/src/main/resources/licenses - false - - - ${project.build.directory}/licenses - - - - - - org.apache.maven.plugins - maven-dependency-plugin - 3.1.2 - - - unpack-war-files - process-resources - - unpack - - - - - - - - - - - - org.alfresco - api-explorer - ${dependency.alfresco-api-explorer.version} - war - ${project.build.directory}/war/api-explorer - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - copy-amps - process-resources - - copy - - - - - org.alfresco - alfresco-share-services - ${alfresco.alfresco-share-services.version} - amp - false - ${project.build.directory}/amps - - - - - - - - - - - - - - - - - - - - - - - io.fabric8 - fabric8-maven-plugin - ${dependency.fabric8.version} - - - - ${image.name} - - ${project.basedir}/ - - - - - - - - - - - communityDocker - - - - io.fabric8 - fabric8-maven-plugin - ${dependency.fabric8.version} - - - build-image - install - - build - - - - - - - - - - internal - - - - io.fabric8 - fabric8-maven-plugin - ${dependency.fabric8.version} - - - - ${image.name}:${image.tag} - ${image.registry} - - ${project.basedir}/ - - - - - - - build-push-image - install - - build - push - - - - - - - - - - master - - - - io.fabric8 - fabric8-maven-plugin - ${dependency.fabric8.version} - - - - ${image.name} - ${image.registry} - - ${project.basedir}/ - - - - ${image.name} - - ${project.basedir}/ - - - - - - - build-push-image - install - - build - push - - - - - - - - - - release - - - - io.fabric8 - fabric8-maven-plugin - ${dependency.fabric8.version} - - - - quay.io - ${image.name}:${project.version} - ${image.registry} - - ${project.basedir}/ - - - - dockerhub - ${image.name}:${project.version} - - ${project.basedir}/ - - - - - - - build-push-image - deploy - - build - push - - - - - - - - - + + 4.0.0 + content-services-community-docker-alfresco + ACS Community Docker Image Builder for Alfresco Community + pom + + + org.alfresco + acs-community-packaging + 7.0.0-TEST3-SNAPSHOT + + + + alfresco/alfresco-content-repository-community + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + org.apache.maven.plugins + maven-resources-plugin + + + copy-licenses + process-resources + + copy-resources + + + + + + ../distribution/src/main/resources/licenses + false + + + ${project.build.directory}/licenses + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + unpack-war-files + process-resources + + unpack + + + + + + + + + + + + org.alfresco + api-explorer + ${dependency.alfresco-api-explorer.version} + war + ${project.build.directory}/war/api-explorer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + copy-amps + process-resources + + copy + + + + + org.alfresco + alfresco-share-services + ${alfresco.alfresco-share-services.version} + amp + false + ${project.build.directory}/amps + + + + + + + + + + + + + + + + + + + + + + + + + + communityDocker + + + + + io.fabric8 + fabric8-maven-plugin + + + + ${image.name}:${image.tag} + + ${project.basedir}/ + + true + + + + + + + + build-image + install + + build + + + + + + + + + + internal + + + + + io.fabric8 + fabric8-maven-plugin + + + + + ${image.name}:${image.tag} + ${image.registry} + + ${project.basedir}/ + + true + + + + + + ${image.name}:${image.tag} + + ${project.basedir}/ + + true + + + + + + + + build-push-image + install + + build + push + + + + + + + + + + release + + + + + io.fabric8 + fabric8-maven-plugin + + + + + ${image.name}:${project.version} + ${image.registry} + + ${project.basedir}/ + + true + + + + + + ${image.name}:${project.version} + + ${project.basedir}/ + + true + + + + + + + + build-push-image + deploy + + build + push + + + + + + + + + diff --git a/pom.xml b/pom.xml index 052428514..fc7cf1c09 100644 --- a/pom.xml +++ b/pom.xml @@ -1,114 +1,123 @@ - - 4.0.0 - acs-community-packaging - Alfresco Content Services Community Packaging - 7.0.0-SNAPSHOT - pom - - - org.alfresco - alfresco-community-repo - ../alfresco-community-repo/pom.xml - 8.300-SNAPSHOT - - - - scm:git:https://github.com/Alfresco/acs-community-packaging.git - scm:git:https://github.com/Alfresco/acs-community-packaging.git - https://github.com/Alfresco/acs-community-packaging - HEAD - - - - - alfresco-internal - https://artifacts.alfresco.com/nexus/content/repositories/releases - - - alfresco-internal-snapshots - https://artifacts.alfresco.com/nexus/content/repositories/snapshots - - - - - 8.300-SNAPSHOT - - - Community - latest - - 6.2.2 - 6.2.2 - 7.0.0-A1 - - ${project.version} - alfresco-community - ${alfresco.package.name}-distribution - - - - - communityDocker - - docker-alfresco - - - - fullBuild - - true - - - distribution - public-javadoc - docker-alfresco - - - - all-tas-tests - - tests - - - - - - - - org.alfresco - alfresco-content-services-share-distribution - ${alfresco.share.version} - zip - - - org.alfresco - alfresco-share-services - ${alfresco.alfresco-share-services.version} - amp - - - org.alfresco - share - ${alfresco.share.version} - war - - - org.alfresco - alfresco-wcmqs-distribution - ${alfresco.share.version} - zip - - - org.alfresco - alfresco-wcmqs-web - ${alfresco.share.version} - classes - - - org.alfresco - alfresco-wcmqs-client-api - ${alfresco.share.version} - - - - + + 4.0.0 + acs-community-packaging + Alfresco Content Services Community Packaging + 7.0.0-TEST3-SNAPSHOT + pom + + + org.alfresco + alfresco-community-repo + ../alfresco-community-repo/pom.xml + 8.300-TEST1-SNAPSHOT + + + + scm:git:https://github.com/Alfresco/acs-community-packaging.git + scm:git:https://github.com/Alfresco/acs-community-packaging.git + https://github.com/Alfresco/acs-community-packaging + HEAD + + + + + alfresco-internal + https://artifacts.alfresco.com/nexus/content/repositories/releases + + + alfresco-internal-snapshots + https://artifacts.alfresco.com/nexus/content/repositories/snapshots + + + + + 8.300-TEST1-SNAPSHOT + + + Community + latest + quay.io + + ${dependency.alfresco-community-repo.version} + + 6.2.2 + 6.2.2 + 7.0.0-A1 + + ${project.version} + alfresco-community + ${alfresco.package.name}-distribution + + + + + fullBuild + + true + + + distribution + public-javadoc + docker-alfresco + + + + communityDocker + + docker-alfresco + + + + internal + + docker-alfresco + + + + all-tas-tests + + tests + + + + + + + + org.alfresco + alfresco-content-services-share-distribution + ${alfresco.share.version} + zip + + + org.alfresco + alfresco-share-services + ${alfresco.alfresco-share-services.version} + amp + + + org.alfresco + share + ${alfresco.share.version} + war + + + org.alfresco + alfresco-wcmqs-distribution + ${alfresco.share.version} + zip + + + org.alfresco + alfresco-wcmqs-web + ${alfresco.share.version} + classes + + + org.alfresco + alfresco-wcmqs-client-api + ${alfresco.share.version} + + + + diff --git a/public-javadoc/pom.xml b/public-javadoc/pom.xml index 2439c86eb..b8c12fe9d 100644 --- a/public-javadoc/pom.xml +++ b/public-javadoc/pom.xml @@ -5,7 +5,7 @@ org.alfresco acs-community-packaging - 7.0.0-SNAPSHOT + 7.0.0-TEST3-SNAPSHOT pom diff --git a/scripts/travis/build.sh b/scripts/travis/build.sh new file mode 100644 index 000000000..b255c1613 --- /dev/null +++ b/scripts/travis/build.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env bash +set -ev +pushd "$(dirname "${BASH_SOURCE[0]}")/../../" + +source "$(dirname "${BASH_SOURCE[0]}")/build_functions.sh" + +DEPENDENCY_VERSION="$(retrievePomProperty "dependency.alfresco-community-repo.version")" + +# Either both the parent and the upstream dependency are the same, or else fail the build +if [ "${DEPENDENCY_VERSION}" != "$(retrievePomParentVersion)" ]; then + printf "Upstream dependency version (%s) is different then the project parent version!\n" "${DEPENDENCY_VERSION}" + exit 1 +fi + +# Prevent merging of any SNAPSHOT dependencies into the master or the release/* branches +if [[ $(isPullRequestBuild) && "${DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ && "${TRAVIS_BRANCH}" =~ ^master$|^release/.+$ ]] ; then + printf "PRs with SNAPSHOT dependencies are not allowed into master or release branches\n" + exit 1 +fi + +UPSTREAM_REPO="github.com/Alfresco/alfresco-community-repo.git" +# Search, checkout and build the same branch on the upstream project in case of SNAPSHOT dependencies +# Otherwise just checkout the upstream dependency sources +if [[ "${DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] ; then + pullAndBuildSameBranchOnUpstream "${UPSTREAM_REPO}" "-PcommunityDocker" +else + pullUpstreamTag "${UPSTREAM_REPO}" "${DEPENDENCY_VERSION}" +fi + +# Build the current project +mvn -B -V -q install -DskipTests -Dmaven.javadoc.skip=true -PcommunityDocker \ + $([[ "${DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && echo "-Dupstream.image.tag=latest") + + diff --git a/scripts/travis/build_functions.sh b/scripts/travis/build_functions.sh new file mode 100644 index 000000000..d769a3148 --- /dev/null +++ b/scripts/travis/build_functions.sh @@ -0,0 +1,104 @@ +#!/usr/bin/env bash + +function isPullRequestBuild() { + test "${TRAVIS_PULL_REQUEST}" != "false" +} + +function isBranchBuild() { + test "${TRAVIS_PULL_REQUEST}" = "false" +} + +function cloneRepo() { + local REPO="${1}" + local TAG_OR_BRANCH="${2}" + + # clone the repository branch/tag + pushd "$(dirname "${BASH_SOURCE[0]}")/../../../" >/dev/null + + rm -rf "$(basename "${REPO%.git}")" + + git clone -b "${TAG_OR_BRANCH}" --depth=1 "https://${GIT_USERNAME}:${GIT_PASSWORD}@${REPO}" + + popd >/dev/null +} + +function retrievePomParentVersion() { + pushd "$(dirname "${BASH_SOURCE[0]}")/../../" >/dev/null + + sed -n '//,/<\/parent>/p' pom.xml \ + | sed -n '//,/<\/version>/p' \ + | tr -d '\n' \ + | grep -oP '(?<=).*(?=)' \ + | xargs + + popd >/dev/null +} + +function retrievePomProperty() { + local KEY="${1}" + + pushd "$(dirname "${BASH_SOURCE[0]}")/../../" >/dev/null + + sed -n '//,/<\/properties>/p' pom.xml \ + | sed -n "/<${KEY}>/,/<\/${KEY}>/p" \ + | tr -d '\n' \ + | grep -oP "(?<=<${KEY}>).*(?=)" \ + | xargs + + popd >/dev/null +} + +function evaluatePomProperty() { + local KEY="${1}" + + pushd "$(dirname "${BASH_SOURCE[0]}")/../../" >/dev/null + + mvn -B -q help:evaluate -Dexpression="${KEY}" -DforceStdout + + popd >/dev/null +} + +function remoteBranchExists() { + local REMOTE_REPO="${1}" + local BRANCH="${2}" + + git ls-remote --exit-code --heads "https://${GIT_USERNAME}:${GIT_PASSWORD}@${REMOTE_REPO}" "${BRANCH}" +} + +function pullUpstreamTag() { + local UPSTREAM_REPO="${1}" + local TAG="${2}" + + cloneRepo "${UPSTREAM_REPO}" "${TAG}" +} + +function pullAndBuildSameBranchOnUpstream() { + local UPSTREAM_REPO="${1}" + local EXTRA_BUILD_ARGUMENTS="${2}" + local SOURCE_BRANCH="$(isBranchBuild && echo "${TRAVIS_BRANCH}" || echo "${TRAVIS_PULL_REQUEST_BRANCH}")" + + if ! remoteBranchExists "${UPSTREAM_REPO}" "${SOURCE_BRANCH}" ; then + printf "Branch \"%s\" not found on the %s repository\n" "${SOURCE_BRANCH}" "${UPSTREAM_REPO}" + #exit 1 + fi + + local SOURCE_BRANCH="${TRAVIS_BRANCH}" + if ! remoteBranchExists "${UPSTREAM_REPO}" "${SOURCE_BRANCH}" ; then + printf "Branch \"%s\" not found on the %s repository\n" "${SOURCE_BRANCH}" "${UPSTREAM_REPO}" + #exit 1 + fi + # TODO remove this line and enable the previous "exit" commands: + local SOURCE_BRANCH="master" + + cloneRepo "${UPSTREAM_REPO}" "${SOURCE_BRANCH}" + + pushd "$(dirname "${BASH_SOURCE[0]}")/../../../" + + cd "$(basename "${UPSTREAM_REPO%.git}")" + + mvn -B -V -q clean install -DskipTests -Dmaven.javadoc.skip=true ${EXTRA_BUILD_ARGUMENTS} + mvn -B -V install -DskipTests -f packaging/tests/pom.xml + + popd +} + diff --git a/scripts/travis/cleanup_cache.sh b/scripts/travis/cleanup_cache.sh new file mode 100644 index 000000000..33b940e2c --- /dev/null +++ b/scripts/travis/cleanup_cache.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash +set -ev + +rm -rf "${HOME}/.m2/repository/org/alfresco/acs-community-packaging" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-community-repo" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-community-repo-*" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-core" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-data-model" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-enterprise-remote-api" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-enterprise-repo-*" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-enterprise-repository" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-remote-api" +rm -rf "${HOME}/.m2/repository/org/alfresco/alfresco-repository" +rm -rf "${HOME}/.m2/repository/org/alfresco/content-services" +rm -rf "${HOME}/.m2/repository/org/alfresco/content-services*" +rm -rf "${HOME}/.m2/repository/org/alfresco/content-services-community" +rm -rf "${HOME}/.m2/repository/org/alfresco/tas/alfresco-community-repo-*-test" +rm -rf "${HOME}/.m2/repository/org/alfresco/tas/alfresco-enterprise-repo-*-test" + diff --git a/scripts/travis/copy_to_release_bucket.sh b/scripts/travis/copy_to_release_bucket.sh index f04dc9516..974db7b59 100755 --- a/scripts/travis/copy_to_release_bucket.sh +++ b/scripts/travis/copy_to_release_bucket.sh @@ -1,17 +1,24 @@ #!/usr/bin/env bash set -ev -if [ -z ${COMM_RELEASE_VERSION} ] || [ -z ${RELEASE_VERSION} ]; -then - echo "Please provide a COMM_RELEASE_VERSION and RELEASE_VERSION in the format - (6.3.0-EA or 6.3.0-SNAPSHOT)" - exit -1 +# +# Copy from S3 Release bucket to S3 eu.dl bucket +# + +if [ -z "${RELEASE_VERSION}" ]; then + echo "Please provide a RELEASE_VERSION in the format - (6.3.0-EA or 6.3.0-SNAPSHOT)" + exit 1 fi -build_number=$1 -branch_name=$2 -build_stage=release -SOURCE=s3://alfresco-artefacts-staging/alfresco-content-services-community/$build_stage/$branch_name/$build_number -DESTINATION=s3://eu.dl.alfresco.com/release/community/$COMM_RELEASE_VERSION-build-$build_number +SOURCE="s3://alfresco-artefacts-staging/alfresco-content-services-community/release/${TRAVIS_BRANCH}/${TRAVIS_BUILD_NUMBER}" +DESTINATION="s3://eu.dl.alfresco.com/release/community/${RELEASE_VERSION}-build-${TRAVIS_BUILD_NUMBER}" -aws s3 cp --acl private $SOURCE/alfresco.war $DESTINATION/alfresco.war -aws s3 cp --acl private $SOURCE/alfresco-content-services-community-distribution-$RELEASE_VERSION.zip $DESTINATION/alfresco-content-services-community-distribution-$RELEASE_VERSION.zip \ No newline at end of file +printf "\n%s\n%s\n" "${SOURCE}" "${DESTINATION}" + +aws s3 cp --acl private \ + "${SOURCE}/alfresco.war" \ + "${DESTINATION}/alfresco.war" + +aws s3 cp --acl private \ + "${SOURCE}/alfresco-content-services-community-distribution-${RELEASE_VERSION}.zip" \ + "${DESTINATION}/alfresco-content-services-community-distribution-${RELEASE_VERSION}.zip" \ No newline at end of file diff --git a/scripts/travis/init.sh b/scripts/travis/init.sh new file mode 100644 index 000000000..d6dd516c2 --- /dev/null +++ b/scripts/travis/init.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash +set -ev +pushd "$(dirname "${BASH_SOURCE[0]}")/../../" + +# Maven Setup +mkdir -p "${HOME}/.m2" && cp -f .travis.settings.xml "${HOME}/.m2/settings.xml" +find "${HOME}/.m2/repository/" -type d -name "*-SNAPSHOT*" | xargs -r -l rm -rf + +# Docker Logins +echo "${QUAY_PASSWORD}" | docker login -u="${QUAY_USERNAME}" --password-stdin quay.io + +# Enable experimental docker features (for the image squash option) +echo '{"experimental":true}' | sudo tee /etc/docker/daemon.json +sudo service docker restart + +# not helpful in this script +# export HOST_IP=$(hostname -I | cut -f1 -d' ') + diff --git a/scripts/travis/maven_release.sh b/scripts/travis/maven_release.sh index b4e915564..77b18d9c6 100755 --- a/scripts/travis/maven_release.sh +++ b/scripts/travis/maven_release.sh @@ -1,31 +1,26 @@ #!/usr/bin/env bash -set -e +set -ev -releaseVersion=$1 -developmentVersion=$2 -scm_path=$(mvn help:evaluate -Dexpression=project.scm.url -q -DforceStdout) +RELEASE_VERSION=${1} +DEVELOPMENT_VERSION=${2} + +if [ -z "${RELEASE_VERSION}" ] || [ -z "${DEVELOPMENT_VERSION}" ]; then + echo "Please provide a Release and Development version in the format - (6.3.0-EA or 6.3.0-SNAPSHOT)" + exit 1 +fi # Use full history for release git checkout -B "${TRAVIS_BRANCH}" # Add email to link commits to user git config user.email "${GIT_EMAIL}" -if [ -z ${releaseVersion} ] || [ -z ${developmentVersion} ]; - then echo "Please provide a Release and Development verison in the format - (6.3.0-EA or 6.3.0-SNAPSHOT)" - exit -1 -else - mvn --batch-mode \ - -PfullBuild,all-tas-tests \ - -Dusername="${GIT_USERNAME}" \ - -Dpassword="${GIT_PASSWORD}" \ - -DreleaseVersion=${releaseVersion} \ - -DdevelopmentVersion=${developmentVersion} \ - -Dbuild-number=${TRAVIS_BUILD_NUMBER} \ - -Dbuild-name="${TRAVIS_BUILD_STAGE_NAME}" \ - -Dscm-path=${scm_path} \ - -DscmCommentPrefix="[maven-release-plugin][skip ci]" \ - -DskipTests \ - "-Darguments=-DskipTests -Dbuild-number=${TRAVIS_BUILD_NUMBER} '-Dbuild-name=${TRAVIS_BUILD_STAGE_NAME}' -Dscm-path=${scm_path} -PfullBuild,all-tas-tests" \ - release:clean release:prepare release:perform \ - -Prelease -fi +mvn -B \ + -Prelease,fullBuild,all-tas-tests \ + -DreleaseVersion="${RELEASE_VERSION}" \ + -DdevelopmentVersion="${DEVELOPMENT_VERSION}" \ + "-Darguments=-Prelease,fullBuild,all-tas-tests -DskipTests -Dbuild-number=${TRAVIS_BUILD_NUMBER}" \ + release:clean release:prepare release:perform \ + -DscmCommentPrefix="[maven-release-plugin][skip ci] " \ + -Dusername="${GIT_USERNAME}" \ + -Dpassword="${GIT_PASSWORD}" + diff --git a/scripts/travis/verify_release_tag.sh b/scripts/travis/verify_release_tag.sh index 51086b8ec..3af7a5dc3 100755 --- a/scripts/travis/verify_release_tag.sh +++ b/scripts/travis/verify_release_tag.sh @@ -1,31 +1,38 @@ #!/usr/bin/env bash -set -e +set -ev -if [ -v ${RELEASE_VERSION} ]||[ -z ${RELEASE_VERSION} ]; then - echo "Please provide a RELEASE_VERSION in the format - (6.3.0-EA or 6.3.0-SNAPSHOT)" - exit -1 +# +# Check that the version to be released does not already have a docker tag. +# + +if [ -z "${RELEASE_VERSION}" ]; then + echo "Please provide a RELEASE_VERSION in the format - (6.3.0-EA or 6.3.0-SNAPSHOT)" + exit 1 fi + # get the image name from the pom file -alfresco_docker_image=$(mvn help:evaluate -f ./docker-alfresco/pom.xml -Dexpression=image.name -q -DforceStdout) -docker_image_full_name="$alfresco_docker_image:$RELEASE_VERSION" +ALFRESCO_DOCKER_IMAGE="$(mvn -B -q help:evaluate -f ./docker-alfresco/pom.xml -Dexpression=image.name -DforceStdout)" +DOCKER_IMAGE_FULL_NAME="${ALFRESCO_DOCKER_IMAGE}:${RELEASE_VERSION}" function docker_image_exists() { - local image_full_name="$1"; shift - local wait_time="${1:-5}" - local search_term='Pulling|is up to date|not found' - echo "Looking to see if $image_full_name already exists..." - local result="$((timeout --preserve-status "$wait_time" docker 2>&1 pull "$image_full_name" &) | grep -v 'Pulling repository' | egrep -o "$search_term")" - test "$result" || { echo "Timed out too soon. Try using a wait_time greater than $wait_time..."; return 1 ;} - if echo $result | grep -vq 'not found'; then - true - else - false - fi + local IMAGE_FULL_NAME="${1}"; shift + local WAIT_TIME="${1:-5}" + local SEARCH_TERM='Pulling|is up to date|not found' + + echo "Looking to see if ${IMAGE_FULL_NAME} already exists..." + local RESULT=$( (timeout --preserve-status "${WAIT_TIME}" docker 2>&1 pull "${IMAGE_FULL_NAME}" &) | grep -v 'Pulling repository' | grep -E -o "${SEARCH_TERM}") + + test "${RESULT}" || { echo "Timed out too soon. Try using a wait_time greater than ${WAIT_TIME}..."; return 1 ;} + if echo "${RESULT}" | grep -vq 'not found'; then + true + else + false + fi } -if docker_image_exists $docker_image_full_name; then - echo "Tag $RELEASE_VERSION already pushed, release process will interrupt." - exit -1 +if docker_image_exists "${DOCKER_IMAGE_FULL_NAME}" ; then + echo "Tag ${RELEASE_VERSION} already pushed, release process will interrupt." + exit 1 else - echo "The $RELEASE_VERSION tag was not found" + echo "The ${RELEASE_VERSION} tag was not found" fi diff --git a/tests/pom.xml b/tests/pom.xml index ed4f00da3..e45bc59e8 100644 --- a/tests/pom.xml +++ b/tests/pom.xml @@ -1,24 +1,24 @@ - - 4.0.0 - content-repository-community-tests - pom - - - org.alfresco - acs-community-packaging - 7.0.0-SNAPSHOT - - - - tas-restapi - tas-cmis - tas-email - tas-webdav - tas-integration - - - - - 20170516 - + + 4.0.0 + content-repository-community-tests + pom + + + org.alfresco + acs-community-packaging + 7.0.0-TEST3-SNAPSHOT + + + + tas-restapi + tas-cmis + tas-email + tas-webdav + tas-integration + + + + + 20170516 + \ No newline at end of file diff --git a/tests/tas-cmis/pom.xml b/tests/tas-cmis/pom.xml index 79f676d9d..c3ff0338b 100644 --- a/tests/tas-cmis/pom.xml +++ b/tests/tas-cmis/pom.xml @@ -1,70 +1,70 @@ - - - 4.0.0 - org.alfresco.tas - content-repository-community-cmis-test - content-repository-community-cmis-test - jar - - - org.alfresco - content-repository-community-tests - 7.0.0-SNAPSHOT - - - - - Paul Brodner - - Test Automation Architect - - - - - - ${project.basedir}/src/test/resources/cmis-suite.xml - - - - - org.alfresco.tas - alfresco-community-repo-cmis-test - tests - test - - - org.alfresco.tas - cmis - test - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - ${suiteXmlFile} - - - --illegal-access=warn - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - - + + + 4.0.0 + org.alfresco.tas + content-repository-community-cmis-test + content-repository-community-cmis-test + jar + + + org.alfresco + content-repository-community-tests + 7.0.0-TEST3-SNAPSHOT + + + + + Paul Brodner + + Test Automation Architect + + + + + + ${project.basedir}/src/test/resources/cmis-suite.xml + + + + + org.alfresco.tas + alfresco-community-repo-cmis-test + tests + test + + + org.alfresco.tas + cmis + test + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${suiteXmlFile} + + + --illegal-access=warn + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/tests/tas-email/pom.xml b/tests/tas-email/pom.xml index 7f11a4a2c..dedd2d746 100644 --- a/tests/tas-email/pom.xml +++ b/tests/tas-email/pom.xml @@ -1,71 +1,71 @@ - - - 4.0.0 - org.alfresco.tas - content-repository-community-email-test - content-repository-community-email-test - jar - - - org.alfresco - content-repository-community-tests - 7.0.0-SNAPSHOT - - - - - Paul Brodner - - Test Automation Architect - - - - - - ${project.basedir}/src/test/resources/email-suite.xml - - - - - org.alfresco.tas - alfresco-community-repo-email-test - tests - test - - - - org.alfresco.tas - email - test - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - ${suiteXmlFile} - - - --illegal-access=warn - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - - + + + 4.0.0 + org.alfresco.tas + content-repository-community-email-test + content-repository-community-email-test + jar + + + org.alfresco + content-repository-community-tests + 7.0.0-TEST3-SNAPSHOT + + + + + Paul Brodner + + Test Automation Architect + + + + + + ${project.basedir}/src/test/resources/email-suite.xml + + + + + org.alfresco.tas + alfresco-community-repo-email-test + tests + test + + + + org.alfresco.tas + email + test + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${suiteXmlFile} + + + --illegal-access=warn + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/tests/tas-integration/pom.xml b/tests/tas-integration/pom.xml index 4beb9f951..7c20b7955 100644 --- a/tests/tas-integration/pom.xml +++ b/tests/tas-integration/pom.xml @@ -1,139 +1,139 @@ - - - 4.0.0 - org.alfresco.tas - content-repository-community-integration-test - content-repository-community-integration-test - jar - - - org.alfresco - content-repository-community-tests - 7.0.0-SNAPSHOT - - - - - Paul Brodner - - Test Automation Architect - - - - - - ${project.basedir}/src/test/resources/integration-suite.xml - 2.5.9 - 1.6.2 - - - - - org.alfresco.tas - alfresco-community-repo-integration-test - tests - test - - - - org.alfresco.tas - utility - test - - - - io.rest-assured - rest-assured - test - - - - javax.mail - javax.mail-api - ${dependency.javax.mail.version} - test - - - - com.sun.mail - javax.mail - ${dependency.javax.mail.version} - - - - org.codehaus.groovy - groovy - ${dependency.groovy.version} - - - - - org.alfresco.tas - ftp - test - - - - - org.alfresco.tas - restapi - test - - - - - org.alfresco.tas - cmis - test - - - - - org.alfresco.tas - email - test - - - - - org.alfresco.tas - webdav - test - - - - com.jayway.jsonpath - json-path - 2.4.0 - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - ${suiteXmlFile} - - - --illegal-access=warn - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - - + + + 4.0.0 + org.alfresco.tas + content-repository-community-integration-test + content-repository-community-integration-test + jar + + + org.alfresco + content-repository-community-tests + 7.0.0-TEST3-SNAPSHOT + + + + + Paul Brodner + + Test Automation Architect + + + + + + ${project.basedir}/src/test/resources/integration-suite.xml + 2.5.9 + 1.6.2 + + + + + org.alfresco.tas + alfresco-community-repo-integration-test + tests + test + + + + org.alfresco.tas + utility + test + + + + io.rest-assured + rest-assured + test + + + + javax.mail + javax.mail-api + ${dependency.javax.mail.version} + test + + + + com.sun.mail + javax.mail + ${dependency.javax.mail.version} + + + + org.codehaus.groovy + groovy + ${dependency.groovy.version} + + + + + org.alfresco.tas + ftp + test + + + + + org.alfresco.tas + restapi + test + + + + + org.alfresco.tas + cmis + test + + + + + org.alfresco.tas + email + test + + + + + org.alfresco.tas + webdav + test + + + + com.jayway.jsonpath + json-path + 2.4.0 + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${suiteXmlFile} + + + --illegal-access=warn + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/tests/tas-restapi/pom.xml b/tests/tas-restapi/pom.xml index 6834f2aa9..99d0b6113 100644 --- a/tests/tas-restapi/pom.xml +++ b/tests/tas-restapi/pom.xml @@ -1,106 +1,106 @@ - - - 4.0.0 - org.alfresco.tas - content-repository-community-restapi-test - content-repository-community-restapi-test - jar - - - org.alfresco - content-repository-community-tests - 7.0.0-SNAPSHOT - - - - - Paul Brodner - - Test Automation Architect - - - - - - ${project.basedir}/src/test/resources/restapi-suite.xml - - - - - run-restapi-part1 - - ${project.basedir}/src/test/resources/test-suites/part1-suite.xml - - - - run-restapi-part2 - - ${project.basedir}/src/test/resources/test-suites/part2-suite.xml - - - - run-restapi-part3 - - ${project.basedir}/src/test/resources/test-suites/part3-suite.xml - - - - - - - org.alfresco.tas - alfresco-community-repo-restapi-test - tests - test - - - org.alfresco.tas - restapi - test - - - io.rest-assured - rest-assured - test - - - org.glassfish - javax.json - test - - - org.springframework - spring-test - test - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - ${suiteXmlFile} - - - --illegal-access=warn - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - - + + + 4.0.0 + org.alfresco.tas + content-repository-community-restapi-test + content-repository-community-restapi-test + jar + + + org.alfresco + content-repository-community-tests + 7.0.0-TEST3-SNAPSHOT + + + + + Paul Brodner + + Test Automation Architect + + + + + + ${project.basedir}/src/test/resources/restapi-suite.xml + + + + + run-restapi-part1 + + ${project.basedir}/src/test/resources/test-suites/part1-suite.xml + + + + run-restapi-part2 + + ${project.basedir}/src/test/resources/test-suites/part2-suite.xml + + + + run-restapi-part3 + + ${project.basedir}/src/test/resources/test-suites/part3-suite.xml + + + + + + + org.alfresco.tas + alfresco-community-repo-restapi-test + tests + test + + + org.alfresco.tas + restapi + test + + + io.rest-assured + rest-assured + test + + + org.glassfish + javax.json + test + + + org.springframework + spring-test + test + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${suiteXmlFile} + + + --illegal-access=warn + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + + diff --git a/tests/tas-webdav/pom.xml b/tests/tas-webdav/pom.xml index 0ca746234..77f639a1a 100644 --- a/tests/tas-webdav/pom.xml +++ b/tests/tas-webdav/pom.xml @@ -1,70 +1,70 @@ - - - 4.0.0 - org.alfresco.tas - content-repository-community-webdav-test - content-repository-community-webdav-test - jar - - - org.alfresco - content-repository-community-tests - 7.0.0-SNAPSHOT - - - - - Paul Brodner - - Test Automation Architect - - - - - - ${project.basedir}/src/test/resources/webdav-suite.xml - - - - - org.alfresco.tas - webdav - test - - - org.alfresco.tas - alfresco-community-repo-webdav-test - tests - test - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - ${suiteXmlFile} - - - --illegal-access=warn - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - - + + + 4.0.0 + org.alfresco.tas + content-repository-community-webdav-test + content-repository-community-webdav-test + jar + + + org.alfresco + content-repository-community-tests + 7.0.0-TEST3-SNAPSHOT + + + + + Paul Brodner + + Test Automation Architect + + + + + + ${project.basedir}/src/test/resources/webdav-suite.xml + + + + + org.alfresco.tas + webdav + test + + + org.alfresco.tas + alfresco-community-repo-webdav-test + tests + test + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${suiteXmlFile} + + + --illegal-access=warn + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + test-jar + + + + + + +