mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merge remote-tracking branch 'remotes/origin/release/V3.2' into merge-3.3/APPS-230_BuildAGSOnTravis
# Conflicts: # .travis.settings.xml # .travis.yml
This commit is contained in:
68
.travis.settings.xml
Normal file
68
.travis.settings.xml
Normal file
@@ -0,0 +1,68 @@
|
||||
<settings>
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>alfresco-internal</id>
|
||||
<activation>
|
||||
<activeByDefault>true</activeByDefault>
|
||||
</activation>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>alfresco-internal</id>
|
||||
<releases>
|
||||
<enabled>true</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
</snapshots>
|
||||
<name>Alfresco Internal Repository</name>
|
||||
<url>https://artifacts.alfresco.com/nexus/content/groups/internal</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
<pluginRepositories>
|
||||
<pluginRepository>
|
||||
<id>alfresco-internal</id>
|
||||
<name>Alfresco Internal Repository</name>
|
||||
<url>https://artifacts.alfresco.com/nexus/content/groups/internal</url>
|
||||
</pluginRepository>
|
||||
<pluginRepository>
|
||||
<id>alfresco-public</id>
|
||||
<name>Alfresco Public Repository</name>
|
||||
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
|
||||
</pluginRepository>
|
||||
<pluginRepository>
|
||||
<id>alfresco-private</id>
|
||||
<name>Alfresco Private Repository</name>
|
||||
<url>https://artifacts.alfresco.com/nexus/content/groups/private</url>
|
||||
</pluginRepository>
|
||||
</pluginRepositories>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
<servers>
|
||||
<server>
|
||||
<id>docker.io</id>
|
||||
<username>${env.DOCKERHUB_USERNAME}</username>
|
||||
<password>${env.DOCKERHUB_PASSWORD}</password>
|
||||
</server>
|
||||
<server>
|
||||
<id>quay.io</id>
|
||||
<username>${env.QUAY_USERNAME}</username>
|
||||
<password>${env.QUAY_PASSWORD}</password>
|
||||
</server>
|
||||
<server>
|
||||
<id>alfresco-internal</id>
|
||||
<username>${env.MAVEN_USERNAME}</username>
|
||||
<password>${env.MAVEN_PASSWORD}</password>
|
||||
</server>
|
||||
<server>
|
||||
<id>alfresco-private</id>
|
||||
<username>${env.MAVEN_USERNAME}</username>
|
||||
<password>${env.MAVEN_PASSWORD}</password>
|
||||
</server>
|
||||
<server>
|
||||
<id>alfresco-internal-snapshots</id>
|
||||
<username>${env.MAVEN_USERNAME}</username>
|
||||
<password>${env.MAVEN_PASSWORD}</password>
|
||||
</server>
|
||||
</servers>
|
||||
</settings>
|
107
.travis.yml
107
.travis.yml
@@ -1,6 +1,107 @@
|
||||
os: linux
|
||||
dist: xenial
|
||||
language: java
|
||||
jdk:
|
||||
- openjdk11
|
||||
sudo: false
|
||||
install: true
|
||||
script: travis_wait 35 mvn -B clean verify -Dcommunity -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
|
||||
|
||||
services:
|
||||
- docker
|
||||
|
||||
branches:
|
||||
only:
|
||||
- /release\/V3.\d+.*/
|
||||
- /feature-3.\d+\/.*/
|
||||
- /merge-3.\d+\/.*/
|
||||
- /hotfix-3.\d+\/.*/
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.m2
|
||||
|
||||
# the cache can grow constantly
|
||||
before_cache:
|
||||
- rm -rf $HOME/.m2/repository/org/alfresco/alfresco-governance-services*
|
||||
|
||||
before_install:
|
||||
- "cp .travis.settings.xml $HOME/.m2/settings.xml"
|
||||
install: skip
|
||||
|
||||
stages:
|
||||
- name: Build AGS
|
||||
- name: Tests
|
||||
if: commit_message !~ /\[skip tests\]/
|
||||
- name: Security Scans
|
||||
- name: Release
|
||||
- name: Publish
|
||||
|
||||
jobs:
|
||||
include:
|
||||
- name: "Build AGS Community"
|
||||
stage: Build AGS
|
||||
before_script: source scripts/setUpMavenPhase.sh
|
||||
script:
|
||||
- travis_retry travis_wait 120 mvn -B -q clean ${MAVEN_PHASE} -P${BUILD_PROFILE} -Dimage.tag=${IMAGE_TAG} -Dskip.integrationtests=false -Dcommunity -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
|
||||
|
||||
- name: "Build AGS Enterprise"
|
||||
stage: Build AGS
|
||||
before_script: source scripts/setUpMavenPhase.sh
|
||||
install:
|
||||
- travis_retry travis_wait 60 mvn -B -q clean install -DskipTests -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -f rm-community/pom.xml -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
|
||||
script:
|
||||
- travis_retry travis_wait 80 mvn -B -q ${MAVEN_PHASE} -P${BUILD_PROFILE} -Dimage.tag=${IMAGE_TAG} -Dskip.integrationtests=false -f rm-enterprise/pom.xml -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
|
||||
|
||||
- name: "Build AGS Benchmark"
|
||||
stage: Build AGS
|
||||
before_script: source scripts/setUpMavenPhase.sh
|
||||
install:
|
||||
- travis_retry travis_wait 80 mvn -B -q clean install -DskipTests -Dmaven.javadoc.skip=true -Dmaven.source.skip=true -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
|
||||
script:
|
||||
- travis_retry travis_wait 35 mvn -B -q ${MAVEN_PHASE} -Dskip.integrationtests=false -f rm-benchmark/pom.xml -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
|
||||
|
||||
- name: "Community Integrations Tests on MySQL"
|
||||
stage: Tests
|
||||
script:
|
||||
- echo "Community Integrations Tests on MySQL"
|
||||
- name: "Enterprise Integrations Tests on MySQL"
|
||||
stage: Tests
|
||||
script:
|
||||
- echo "Enterprise Integrations Tests on MySQL"
|
||||
- name: "Community Rest API Tests"
|
||||
stage: Tests
|
||||
script:
|
||||
- echo "Community Rest API Tests"
|
||||
- name: "Enterprise Rest API Tests"
|
||||
stage: Tests
|
||||
script:
|
||||
- echo "Enterprise Rest API Tests"
|
||||
- name: "Community UI Tests ..."
|
||||
stage: Tests
|
||||
script:
|
||||
- echo "Community UI Tests ..."
|
||||
- name: "Enterprise UI Tests ..."
|
||||
stage: Tests
|
||||
script:
|
||||
- echo "Enterprise UI Tests ..."
|
||||
|
||||
- name: "Source Clear Scan (SCA)"
|
||||
stage: Security Scans
|
||||
script:
|
||||
- echo "Source Clear Scan (SCA)"
|
||||
- name: "Static Analysis (SAST)"
|
||||
stage: Security Scans
|
||||
script:
|
||||
- echo "Static Analysis (SAST)"
|
||||
|
||||
- name: "Community Release"
|
||||
stage: Release
|
||||
script:
|
||||
- echo "Community Release"
|
||||
- name: "Enterprise Release"
|
||||
stage: Release
|
||||
script:
|
||||
- echo "Enterprise Release"
|
||||
|
||||
- name: "Copy to S3 Release Bucket"
|
||||
stage: Publish
|
||||
script:
|
||||
- echo "Copy to S3 Release Bucket"
|
||||
|
1
pom.xml
1
pom.xml
@@ -468,6 +468,7 @@
|
||||
<id>start</id>
|
||||
<phase>pre-integration-test</phase>
|
||||
<goals>
|
||||
<goal>stop</goal>
|
||||
<goal>start</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
|
28
scripts/setUpMavenPhase.sh
Normal file
28
scripts/setUpMavenPhase.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/usr/bin/env bash
|
||||
echo "Branch name: ${TRAVIS_BRANCH}"
|
||||
echo "Pull request: ${TRAVIS_PULL_REQUEST}"
|
||||
echo "Travis job name: ${TRAVIS_JOB_NAME}"
|
||||
branchName=${TRAVIS_BRANCH}
|
||||
imageTag=${branchName:8}
|
||||
echo "Image tag: ${imageTag}"
|
||||
|
||||
if [[ ${TRAVIS_JOB_NAME} == "Build AGS Enterprise" ]];
|
||||
then
|
||||
export BUILD_PROFILE="internal"
|
||||
else
|
||||
export BUILD_PROFILE="master"
|
||||
fi
|
||||
|
||||
if [[ "${TRAVIS_BRANCH}" == "master" && "${TRAVIS_PULL_REQUEST}" == "false" ]];
|
||||
then
|
||||
export MAVEN_PHASE="deploy"
|
||||
export IMAGE_TAG="latest"
|
||||
elif [[ ${TRAVIS_BRANCH} = release* && "${TRAVIS_PULL_REQUEST}" == "false" ]];
|
||||
then
|
||||
export MAVEN_PHASE="deploy"
|
||||
export IMAGE_TAG="${imageTag}-latest"
|
||||
else
|
||||
export MAVEN_PHASE="verify"
|
||||
export BUILD_PROFILE="buildDockerImage"
|
||||
export IMAGE_TAG="latest"
|
||||
fi
|
Reference in New Issue
Block a user