[ACS-7896] Bump AIS/ATS 5.1.2/4.1.2 #4343
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Alfresco Community Repo CI | |
on: | |
pull_request: | |
branches: | |
- feature/** | |
- fix/** | |
- master | |
- release/** | |
push: | |
branches: | |
- feature/** | |
- fix/** | |
workflow_call: | |
workflow_dispatch: | |
env: | |
DOCKERHUB_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} | |
DOCKERHUB_USERNAME: ${{ secrets.DOCKER_USERNAME }} | |
GITHUB_ACTIONS_DEPLOY_TIMEOUT: 60 | |
LOG_WARN: "-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn" | |
MAVEN_PASSWORD: ${{ secrets.NEXUS_PASSWORD }} | |
MAVEN_USERNAME: ${{ secrets.NEXUS_USERNAME }} | |
QUAY_PASSWORD: ${{ secrets.QUAY_PASSWORD }} | |
QUAY_USERNAME: ${{ secrets.QUAY_USERNAME }} | |
CI_WORKSPACE: ${{ github.workspace }} | |
TAS_ENVIRONMENT: ./packaging/tests/environment | |
TAS_SCRIPTS: ../alfresco-community-repo/packaging/tests/scripts | |
AUTH0_CLIENT_ID: ${{ secrets.AUTH0_OIDC_ADMIN_CLIENT_ID }} | |
AUTH0_CLIENT_SECRET: ${{ secrets.AUTH0_OIDC_CLIENT_SECRET }} | |
AUTH0_ADMIN_PASSWORD: ${{ secrets.AUTH0_OIDC_ADMIN_PASSWORD }} | |
# Report Portal settings | |
RP_LAUNCH_PREFIX: "${{ github.workflow }} - ${{ github.job }}" | |
RP_PROJECT: alfresco-backend | |
jobs: | |
prepare: | |
name: "Prepare" | |
runs-on: ubuntu-latest | |
if: > | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Prepare maven cache and check compilation" | |
run: bash ./scripts/ci/prepare.sh | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
veracode_sca: | |
name: "Source Clear Scan (SCA)" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- uses: Alfresco/alfresco-build-tools/.github/actions/veracode@v1.35.2 | |
continue-on-error: true | |
with: | |
srcclr-api-token: ${{ secrets.SRCCLR_API_TOKEN }} | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
# SEE: ACS-6931 Currently times out after an hour. TO BE RESTORED after resolving the issue with Veracode Support. | |
# | |
# veracode_sast: | |
# name: "Pipeline SAST Scan" | |
# runs-on: ubuntu-latest | |
# needs: [prepare] | |
# if: > | |
# (github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request') && | |
# github.actor != 'dependabot[bot]' && | |
# !contains(github.event.head_commit.message, '[skip tests]') && | |
# !contains(github.event.head_commit.message, '[force') | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
# - uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
# - uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
# - uses: Alfresco/alfresco-build-tools/.github/actions/github-download-file@v5.6.0 | |
# with: | |
# token: ${{ secrets.BOT_GITHUB_TOKEN }} | |
# repository: "Alfresco/veracode-baseline-archive" | |
# file-path: "alfresco-community-repo/alfresco-community-repo-baseline.json" | |
# target: "baseline.json" | |
# - name: "Build" | |
# timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
# run: | | |
# bash ./scripts/ci/init.sh | |
# bash ./scripts/ci/build.sh | |
# - name: "Run SAST Scan" | |
# uses: veracode/Veracode-pipeline-scan-action@v1.0.10 | |
# with: | |
# vid: ${{ secrets.VERACODE_API_ID }} | |
# vkey: ${{ secrets.VERACODE_API_KEY }} | |
# file: "packaging/war/target/alfresco.war" | |
# fail_build: true | |
# project_name: alfresco-community-repo | |
# issue_details: true | |
# veracode_policy_name: Alfresco Default | |
# summary_output: true | |
# summary_output_file: results.json | |
# summary_display: true | |
# baseline_file: baseline.json | |
# - name: Upload scan result | |
# if: success() || failure() | |
# run: zip readable_output.zip results.json | |
# - name: Upload Artifact | |
# if: success() || failure() | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# name: Veracode Pipeline-Scan Results (Human Readable) | |
# path: readable_output.zip | |
# - name: "Clean Maven cache" | |
# run: bash ./scripts/ci/cleanup_cache.sh | |
pmd_scan: | |
name: "PMD Scan" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
github.event_name == 'pull_request' && | |
!contains(github.event.head_commit.message, '[skip pmd]') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force]') | |
steps: | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- uses: Alfresco/ya-pmd-scan@v3.0.0 | |
with: | |
classpath-build-command: "mvn test-compile -ntp -Pags -pl \"-:alfresco-community-repo-docker\"" | |
all_unit_tests_suite: | |
name: ${{ matrix.testName }} - AllUnitTestsSuite - Build and test | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
!contains(github.event.head_commit.message, '[skip repo]') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- testName: Core | |
testModule: core | |
testAttributes: "-Dtest=AllCoreUnitTestSuite" | |
- testName: Data-Model | |
testModule: data-model | |
testAttributes: "-Dtest=AllDataModelUnitTestSuite" | |
- testName: Repository | |
testModule: repository | |
testAttributes: "-Dtest=AllUnitTestsSuite" | |
- testName: Mmt | |
testModule: mmt | |
testAttributes: "-Dtest=AllMmtUnitTestSuite" | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} - ${{ matrix.testModule }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl ${{ matrix.testModule }} -am ${{ matrix.testAttributes }} -DfailIfNoTests=false "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
remote_api_app_context_test_suites: | |
name: Remote-api - ${{ matrix.testSuite }} | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
!contains(github.event.head_commit.message, '[skip repo]') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- testSuite: AppContext01TestSuite | |
compose-profile: default | |
- testSuite: AppContext02TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContext03TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContext04TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContextExtraTestSuite | |
compose-profile: default | |
env: | |
REQUIRES_INSTALLED_ARTIFACTS: true | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Build" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
bash ./scripts/ci/init.sh | |
bash ./scripts/ci/build.sh | |
- name: "Set transformers tag" | |
run: echo "TRANSFORMERS_TAG=$(mvn help:evaluate -Dexpression=dependency.alfresco-transform-core.version -q -DforceStdout)" >> $GITHUB_ENV | |
- name: "Set up the environment" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose.yaml --profile ${{ matrix.compose-profile }} up -d | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} - ${{ matrix.testSuite }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl remote-api -Dtest=${{ matrix.testSuite }} -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_mariadb_tests: | |
name: Repository - MariaDB ${{ matrix.version }} tests | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/')) && | |
github.event_name != 'pull_request' && | |
!contains(github.event.head_commit.message, '[skip db]')) || | |
contains(github.event.head_commit.message, '[db]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
version: ['10.2.18', '10.4', '10.5'] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: Run MariaDB ${{ matrix.version }} database | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose-db.yaml --profile mariadb up -d | |
env: | |
MARIADB_VERSION: ${{ matrix.version }} | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} - ${{ matrix.version }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_mariadb_10_6_tests: | |
name: "Repository - MariaDB 10.6 tests" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request') && | |
!contains(github.event.head_commit.message, '[skip db]')) || | |
contains(github.event.head_commit.message, '[latest db]') || | |
contains(github.event.head_commit.message, '[db]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run MariaDB 10.6 database" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose-db.yaml --profile mariadb up -d | |
env: | |
MARIADB_VERSION: 10.6 | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.name=alfresco -Ddb.url=jdbc:mariadb://localhost:3307/alfresco?useUnicode=yes\&characterEncoding=UTF-8 -Ddb.username=alfresco -Ddb.password=alfresco -Ddb.driver=org.mariadb.jdbc.Driver "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_mysql_tests: | |
name: Repository - MySQL 8 tests | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request') && | |
!contains(github.event.head_commit.message, '[skip db]')) || | |
contains(github.event.head_commit.message, '[latest db]') || | |
contains(github.event.head_commit.message, '[db]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run MySQL 8 database" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose-db.yaml --profile mysql up -d | |
env: | |
MYSQL_VERSION: 8 | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=com.mysql.jdbc.Driver -Ddb.name=alfresco -Ddb.url=jdbc:mysql://localhost:3307/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_postgresql_13_12_tests: | |
name: "Repository - PostgreSQL 13.12 tests" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/')) && github.event_name != 'pull_request' && | |
!contains(github.event.head_commit.message, '[skip db]')) || | |
contains(github.event.head_commit.message, '[db]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run PostgreSQL 13.12 database" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose-db.yaml --profile postgres up -d | |
env: | |
POSTGRES_VERSION: 13.12 | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_postgresql_14_9_tests: | |
name: "Repository - PostgreSQL 14.9 tests" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/')) && github.event_name != 'pull_request' && | |
!contains(github.event.head_commit.message, '[skip db]')) || | |
contains(github.event.head_commit.message, '[db]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run PostgreSQL 14.9 database" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose-db.yaml --profile postgres up -d | |
env: | |
POSTGRES_VERSION: 14.9 | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_postgresql_15_4_tests: | |
name: "Repository - PostgreSQL 15.4 tests" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(!contains(github.event.head_commit.message, '[skip db]') || | |
contains(github.event.head_commit.message, '[latest db]') || | |
contains(github.event.head_commit.message, '[db]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run PostgreSQL 15.4 database" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose-db.yaml --profile postgres up -d | |
env: | |
POSTGRES_VERSION: 15.4 | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=AllDBTestsTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_messaging_tests: | |
name: Repository - Messaging tests | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
!contains(github.event.head_commit.message, '[skip repo]') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run ActiveMQ" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose.yaml --profile activemq up -d | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.13.1 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=MessagingUnitTestSuite -DfailIfNoTests=false "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.13.1 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
repository_app_context_test_suites: | |
name: Repository - ${{ matrix.testSuite }} ${{ matrix.idp }} | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
!contains(github.event.head_commit.message, '[skip repo]') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- testSuite: AppContext01TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContext02TestSuite | |
compose-profile: default | |
- testSuite: AppContext03TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContext04TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContext05TestSuite | |
compose-profile: with-sso | |
mvn-options: '-Didentity-service.auth-server-url=http://${HOST_IP}:8999/auth -Dauthentication.chain=identity-service1:identity-service,alfrescoNtlm1:alfrescoNtlm' | |
idp: Keycloak | |
- testSuite: AppContext05TestSuite | |
compose-profile: default | |
mvn-options: '-Didentity-service.auth-server-url=https://dev-ps-alfresco.auth0.com/ -Dauthentication.chain=identity-service1:identity-service,alfrescoNtlm1:alfrescoNtlm -Didentity-service.audience=http://localhost:3000 -Didentity-service.resource=${AUTH0_CLIENT_ID} -Didentity-service.credentials.secret=${AUTH0_CLIENT_SECRET} -Didentity-service.public-client=false -Didentity-service.realm= -Didentity-service.client-id.validation.disabled=false -Dadmin.user=admin@alfresco.com -Dadmin.password=${AUTH0_ADMIN_PASSWORD} -Dauth0.enabled=true -Dauth0.admin.password=${AUTH0_ADMIN_PASSWORD} -Didentity-service.principal-attribute=nickname' | |
idp: Auth0 | |
- testSuite: AppContext06TestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: AppContextExtraTestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: MiscContextTestSuite | |
compose-profile: with-transform-core-aio | |
- testSuite: SearchTestSuite | |
compose-profile: default | |
mvn-options: '-Dindex.subsystem.name=solr6' | |
- testSuite: MTLSTestSuite | |
compose-profile: with-mtls-transform-core-aio | |
mtls: true | |
disabledHostnameVerification: false | |
mvn-options: '-Dencryption.ssl.keystore.location=${CI_WORKSPACE}/keystores/alfresco/alfresco.keystore -Dencryption.ssl.truststore.location=${CI_WORKSPACE}/keystores/alfresco/alfresco.truststore' | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Set transformers tag" | |
run: echo "TRANSFORMERS_TAG=$(mvn help:evaluate -Dexpression=dependency.alfresco-transform-core.version -q -DforceStdout)" >> $GITHUB_ENV | |
- name: "Set the host IP" | |
run: echo "HOST_IP=$(hostname -I | cut -f1 -d' ')" >> $GITHUB_ENV | |
- name: "Generate Keystores and Truststores for Mutual TLS configuration" | |
if: ${{ matrix.mtls }} | |
run: | | |
git clone -b "master" --depth=1 "https://${{ secrets.BOT_GITHUB_USERNAME }}:${{ secrets.BOT_GITHUB_TOKEN }}@github.com/Alfresco/alfresco-ssl-generator.git" | |
if ${{ matrix.disabledHostnameVerification }} ; then | |
bash ${{ env.CI_WORKSPACE }}/alfresco-ssl-generator/scripts/ci/generate_keystores_wrong_hostnames.sh | |
echo "HOSTNAME_VERIFICATION_DISABLED=true" >> "$GITHUB_ENV" | |
else | |
bash ${{ env.CI_WORKSPACE }}/alfresco-ssl-generator/scripts/ci/generate_keystores.sh | |
echo "HOSTNAME_VERIFICATION_DISABLED=false" >> "$GITHUB_ENV" | |
fi | |
- name: "Set up the environment" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose.yaml --profile ${{ matrix.compose-profile }} up -d | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} - ${{ matrix.testSuite }} ${{ matrix.idp }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl repository -am -Dtest=${{ matrix.testSuite }} -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco ${{ matrix.mvn-options }} "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
tas_tests: | |
name: ${{ matrix.test-name }} | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request' ) && | |
!contains(github.event.head_commit.message, '[skip tas]')) || | |
contains(github.event.head_commit.message, '[tas]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- test-name: "REST API TAS tests part1" | |
pom-dir: tas-restapi | |
test-profile: run-restapi-part1 | |
- test-name: "REST API TAS tests part2" | |
pom-dir: tas-restapi | |
test-profile: run-restapi-part2 | |
- test-name: "REST API TAS tests part3" | |
pom-dir: tas-restapi | |
test-profile: run-restapi-part3 | |
- test-name: "CMIS TAS tests - BROWSER binding" | |
pom-dir: tas-cmis | |
test-profile: run-cmis-browser | |
- test-name: "CMIS TAS tests - ATOM binding" | |
pom-dir: tas-cmis | |
test-profile: run-cmis-atom | |
- test-name: "CMIS TAS tests - WEBSERVICES binding" | |
pom-dir: tas-cmis | |
test-profile: run-cmis-webservices | |
- test-name: "Email TAS tests" | |
pom-dir: tas-email | |
- test-name: "WebDAV TAS tests" | |
pom-dir: tas-webdav | |
- test-name: "Integration TAS tests" | |
pom-dir: tas-integration | |
env: | |
REQUIRES_LOCAL_IMAGES: true | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Build" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
bash ./scripts/ci/init.sh | |
bash ./scripts/ci/build.sh | |
- name: "Set up the environment" | |
run: | | |
${{ env.TAS_SCRIPTS }}/start-compose.sh ${{ env.TAS_ENVIRONMENT }}/docker-compose-minimal+transforms.yml | |
${{ env.TAS_SCRIPTS }}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco" | |
- name: "Build TAS integration tests" | |
if: ${{ matrix.test-name }} == 'Integration TAS tests' | |
run: mvn install -pl :alfresco-community-repo-integration-test -am -DskipTests -Pall-tas-tests | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} - ${{ matrix.test-name }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B verify -f packaging/tests/${{ matrix.pom-dir }}/pom.xml -Pall-tas-tests,${{ matrix.test-profile }} -Denvironment=default -DrunBugs=false "${args[@]}" | |
continue-on-error: true | |
- name: "Print output after success" | |
if: ${{ always() && steps.tests.outcome == 'success' }} | |
run: ${TAS_SCRIPTS}/output_tests_run.sh "packaging/tests/${{ matrix.pom-dir }}" | |
- name: "Print output after failure" | |
if: ${{ always() && steps.tests.outcome == 'failure' }} | |
run: ${TAS_SCRIPTS}/output_logs_for_failures.sh "packaging/tests/${{ matrix.pom-dir }}" | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.tests.outcome != 'success' | |
run: | | |
echo "::error title=tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
share_services_test_suite: | |
name: Share Services - ShareServicesTestSuite | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
!contains(github.event.head_commit.message, '[skip repo]') && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Init" | |
run: bash ./scripts/ci/init.sh | |
- name: "Run Postgres 15.4 database" | |
run: docker compose -f ./scripts/ci/docker-compose/docker-compose.yaml --profile postgres up -d | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Run tests" | |
id: run-tests | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl :alfresco-share-services -am -Dtest=ShareServicesTestSuite -DfailIfNoTests=false -Ddb.driver=org.postgresql.Driver -Ddb.name=alfresco -Ddb.url=jdbc:postgresql://localhost:5433/alfresco -Ddb.username=alfresco -Ddb.password=alfresco "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
ags_postgresql_tests: | |
name: AGS Integration Tests 0${{ matrix.part }} (PostgreSQL) ${{ matrix.test-name }} | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request' ) && | |
!contains(github.event.head_commit.message, '[skip ags]')) || | |
contains(github.event.head_commit.message, '[ags]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
part: [1, 2, 3, 4] | |
env: | |
REQUIRES_INSTALLED_ARTIFACTS: true | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Build" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
bash ./scripts/ci/init.sh | |
bash ./scripts/ci/build.sh | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} 0${{ matrix.part }} - (PostgreSQL) ${{ matrix.test-name }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Verify" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn --file amps/ags/pom.xml -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-postgres -PagsAllTestSuitePt${{ matrix.part }} ${{ env.LOG_WARN }} "${args[@]}" | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
ags_mysql_tests: | |
name: AGS Integration Tests 0${{ matrix.part }} (MySQL) ${{ matrix.test-name }} | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request' ) && | |
!contains(github.event.head_commit.message, '[skip ags]')) || | |
contains(github.event.head_commit.message, '[ags on MySQL]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
strategy: | |
fail-fast: false | |
matrix: | |
part: [1, 2, 3, 4] | |
env: | |
REQUIRES_INSTALLED_ARTIFACTS: true | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Build" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
bash ./scripts/ci/init.sh | |
bash ./scripts/ci/build.sh | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} 0${{ matrix.part }} - (MySQL) ${{ matrix.test-name }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Verify" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn --file amps/ags/pom.xml -B verify -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Pags -Pstart-mysql -PagsAllTestSuitePt${{ matrix.part }} ${{ env.LOG_WARN }} "${args[@]}" | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
ags_community_rest_api_tests: | |
name: "AGS Community Rest API Tests" | |
runs-on: ubuntu-latest | |
needs: [prepare] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request' ) && | |
!contains(github.event.head_commit.message, '[skip ags]') && !contains(github.event.head_commit.message, '[skip tas]')) || | |
(contains(github.event.head_commit.message, '[ags]') && contains(github.event.head_commit.message, '[tas]'))) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force') | |
env: | |
REQUIRES_LOCAL_IMAGES: true | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Build" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
bash ./scripts/ci/init.sh | |
bash ./scripts/ci/build.sh | |
- name: "Set up the environment" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
${{ env.TAS_SCRIPTS }}/start-compose.sh ./amps/ags/rm-community/rm-community-repo/docker-compose.yml | |
${{ env.TAS_SCRIPTS }}/wait-for-alfresco-start.sh "http://localhost:8080/alfresco" | |
mvn -B install -pl :alfresco-governance-services-automation-community-rest-api -am -Pags -Pall-tas-tests -DskipTests | |
- name: "Prepare Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-prepare@v5.1.0 | |
id: rp-prepare | |
with: | |
rp-launch-prefix: ${{ env.RP_LAUNCH_PREFIX }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-use-static-launch-name: true | |
- name: "Add GitHub Step Summary" | |
env: | |
RP_ENABLED: ${{ steps.rp-prepare.outputs.enabled }} | |
RP_KEY: ${{ steps.rp-prepare.outputs.key }} | |
RP_URL: ${{ steps.rp-prepare.outputs.url }} | |
run: bash scripts/ci/add_step_summary.sh | |
- name: "Test" | |
id: run-tests | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
env: | |
RP_OPTS: ${{ steps.rp-prepare.outputs.mvn-opts }} | |
run: | | |
eval "args=($RP_OPTS)" | |
mvn -B test -pl :alfresco-governance-services-automation-community-rest-api -Dskip.automationtests=false -Pags -Pall-tas-tests "${args[@]}" | |
continue-on-error: true | |
- name: "Update GitHub Step Summary" | |
run: | | |
echo "#### ⏱ After Tests: $(date -u +'%Y-%m-%d %H:%M:%S%:z')" >> $GITHUB_STEP_SUMMARY | |
- name: "Summarize Report Portal" | |
uses: Alfresco/alfresco-build-tools/.github/actions/reportportal-summarize@v5.1.0 | |
id: rp-summarize | |
with: | |
tests-outcome: ${{ steps.run-tests.outcome }} | |
rp-launch-key: ${{ steps.rp-prepare.outputs.key }} | |
rp-project: ${{ env.RP_PROJECT }} | |
rp-token: ${{ secrets.REPORT_PORTAL_TOKEN }} | |
- name: "Exit on failure" | |
if: steps.run-tests.outcome != 'success' | |
run: | | |
echo "::error title=run-tests::Tests failed: re-throwing on error." | |
exit 1 | |
- name: "Configure AWS credentials" | |
if: ${{ always() }} | |
uses: aws-actions/configure-aws-credentials@v1 | |
with: | |
aws-access-key-id: ${{ secrets.AGS_AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AGS_AWS_SECRET_ACCESS_KEY }} | |
aws-region: us-east-1 | |
- name: "Upload artifacts to Amazon S3 bucket" | |
if: ${{ always() }} | |
run: | | |
bash amps/ags/ci/scripts/getLogs.sh | |
aws s3 cp --acl private alfresco.log s3://ags-travis-artifacts/community/${{ github.run_number }}/AGS-Community-Rest-API-Tests/alfresco.log | |
aws s3 cp --acl private solr.log s3://ags-travis-artifacts/community/${{ github.run_number }}/AGS-Community-Rest-API-Tests/solr.log | |
aws s3 cp --acl private ./amps/ags/rm-automation/rm-automation-community-rest-api/target/reports/rm-automation-community-rest-api.log s3://ags-travis-artifacts/community/${{ github.run_number }}/AGS-Community-Rest-API-Tests/rm-automation-community-rest-api.log | |
- name: "Clean Maven cache" | |
run: bash ./scripts/ci/cleanup_cache.sh | |
ags_start_api_explorer: | |
name: "Test Tomcat deployment of api explorer" | |
runs-on: ubuntu-latest | |
needs: [ prepare ] | |
if: > | |
(((github.ref_name == 'master' || startsWith(github.ref_name, 'release/') || github.event_name == 'pull_request' ) && | |
!contains(github.event.head_commit.message, '[skip ags]')) || | |
contains(github.event.head_commit.message, '[ags]')) && | |
!contains(github.event.head_commit.message, '[skip tests]') && | |
!contains(github.event.head_commit.message, '[force]') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/free-hosted-runner-disk-space@v1.35.2 | |
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v1.35.2 | |
- name: "Build" | |
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} | |
run: | | |
bash ./scripts/ci/init.sh | |
bash ./scripts/ci/build.sh | |
- name: "Test Tomcat deployment" | |
run: | | |
mvn verify -Pags,start-api-explorer -DskipTests & | |
${{ env.TAS_SCRIPTS }}/wait-for-alfresco-start.sh "http://localhost:8085/api-explorer" |