Compare commits

..
Author SHA1 Message Date
Davide 95f0e5cfdc SEARCH-2878 Update the supported version for SearchService to 2.0.2 (#1421) 2021-07-15 09:55:24 +02:00
alandavis dce164d779 Use branch for ACS 7.0.2 2021-07-15 01:10:48 +01:00
Travis CI User c704d0e333 [maven-release-plugin][skip ci] prepare for next development iteration 2021-07-14 13:58:22 +00:00
Travis CI User 0710c26a7a [maven-release-plugin][skip ci] prepare release 7.0.1-A7 2021-07-14 13:58:16 +00:00
alandavis ede6928445 [release][publish] 7.0.1-A7
[skip tests] already run for A6
2021-07-14 14:21:37 +01:00
Travis CI User be9bd05211 [maven-release-plugin][skip ci] prepare for next development iteration 2021-07-12 17:14:17 +00:00
Travis CI User 2398ae671f [maven-release-plugin][skip ci] prepare release 7.0.1-A6 2021-07-12 17:14:12 +00:00
Alex Mukha 322ebbe08f [release] 7.0.1-A6 (second attempt) 2021-07-12 17:36:42 +01:00
Alex Mukha 94f1f8343a Bump community repo to 9.28 2021-07-12 17:08:37 +01:00
Alex Mukha 7a112f8c89 [release] 7.0.1-A6 2021-07-12 15:16:35 +01:00
Davide d99d399ef1 SEARCH-2878 Update the SearchService version to 2.0.2-RC2(#1417) 2021-07-09 22:15:34 +01:00
alandavis 4215b634ba Dev env was not referencing the correct parent [skip ci] 2021-07-09 18:09:33 +01:00
alahariyaandalahariya 9aaa936bdf bump-share-7.0.1 (#1416)
Co-authored-by: alahariya <Anjali.Lahariya@contractors.onbase.com>
2021-07-09 20:48:43 +05:30
Travis CI User 293a25f76e [maven-release-plugin][skip ci] prepare for next development iteration 2021-06-29 15:54:13 +00:00
Travis CI User 4bfd2e145c [maven-release-plugin][skip ci] prepare release 7.0.1-A5 2021-06-29 15:54:07 +00:00
alandavis 39b923bbd1 [release] 7.0.1-A5 2021-06-29 15:50:27 +01:00
alandavis 78baf18136 [release] 7.0.1-A5 2021-06-29 15:49:45 +01:00
Travis CI User 4aca5c0ec0 [maven-release-plugin][skip ci] prepare for next development iteration 2021-06-25 23:54:09 +00:00
Travis CI User 13f9df4bcc [maven-release-plugin][skip ci] prepare release 7.0.1-A4 2021-06-25 23:54:03 +00:00
alandavis 44f1b9789d [release] 7.0.1-A4 2021-06-25 23:47:25 +01:00
alandavis fecee74661 Update upstream version to 9.22 2021-06-25 23:19:50 +01:00
alahariyaandalahariya a7cd016d2c bump-share-7.0.1-A4 (#1400)
Co-authored-by: alahariya <Anjali.Lahariya@contractors.onbase.com>
2021-06-25 19:19:17 +05:30
Travis CI User b671931cb8 [maven-release-plugin][skip ci] prepare for next development iteration 2021-06-12 10:07:38 +00:00
Travis CI User ed3cdc0c28 [maven-release-plugin][skip ci] prepare release 7.0.1-A1 2021-06-12 10:07:33 +00:00
alandavis 03eb064759 [release] 7.0.1-A1 2021-06-12 10:03:03 +01:00
alandavis 6030c9a0d4 Update upstream version to 9.16 2021-06-11 17:48:58 +01:00
alandavis 45b70b3271 Fix ATS versions [skip ci] 2021-06-11 17:42:27 +01:00
alandavis f0fd98873a Update upstream version to 9.8 2021-05-11 15:26:05 +01:00
alandavis 46911f54b6 Prep the RELEASE_VERSION for the first release [skip ci] 2021-05-11 13:56:41 +01:00
alandavis c7dd3e5b0a Create release/7.0.N branch for 7.0.1
* Still need to cherry pick commits already merged to 6.2.N
2021-05-10 18:41:53 +01:00
alandavis 66022dad03 Update upstream version to 8.424 (the version used in enterprise ACS 7.0.0.1)
[skip ci]
2021-04-12 14:49:23 +01:00
Cezar.Leahu 59299d54d4 [publish] [skip tests] Identify release build number in the publish script 2021-03-17 01:22:59 +02:00
Cezar.Leahu 7832d7b5be [publish] [skip tests] Identify release build number in the publish script 2021-03-17 01:10:03 +02:00
Cezar.Leahu 08fee7cfd9 [publish] [skip tests] Allow the CI *Publish* step on any branch
(cherry picked from commit f5ac695ca6)
2021-03-16 16:19:53 +02:00
Travis CI User 071cc8c2a4 [maven-release-plugin][skip ci] prepare for next development iteration 2021-03-11 14:26:44 +00:00
Travis CI User dc5e1dd83d [maven-release-plugin][skip ci] prepare release 7.0.0 2021-03-11 14:26:40 +00:00
alandavis bc94a0ae7c [release][publish] 7.0.0 2021-03-11 13:15:50 +00:00
50 changed files with 664 additions and 2149 deletions
+8 -11
View File
@@ -1,11 +1,8 @@
# .* eol=crlf
# *.html eol=crlf
# *.java eol=crlf
# *.txt eol=crlf
# *.css eol=crlf
# *.xml eol=crlf
# *.js eol=crlf
# *.properties eol=crlf
# Shell scripts require LF
*.sh text eol=lf
Dockerfile text eol=lf
# .* eol=crlf
# *.html eol=crlf
# *.java eol=crlf
# *.txt eol=crlf
# *.css eol=crlf
# *.xml eol=crlf
# *.js eol=crlf
# *.properties eol=crlf
-62
View File
@@ -1,62 +0,0 @@
version: 2
registries:
maven-repository-artifacts-alfresco-com-nexus-content-groups-int:
type: maven-repository
url: https://artifacts.alfresco.com/nexus/content/groups/internal
username: ${{secrets.NEXUS_USERNAME}}
password: ${{secrets.NEXUS_PASSWORD}}
updates:
- package-ecosystem: maven
directory: "/"
schedule:
interval: daily
time: "22:00"
timezone: Africa/Abidjan
open-pull-requests-limit: 99
ignore:
# Upstream alfresco-community-repo artifacts
- dependency-name: org.alfresco:alfresco-community-repo
- dependency-name: org.alfresco:alfresco-core
- dependency-name: org.alfresco:alfresco-data-model
- dependency-name: org.alfresco:alfresco-repository
- dependency-name: org.alfresco:alfresco-remote-api
- dependency-name: org.alfresco:content-services-community
- dependency-name: org.alfresco:alfresco-community-repo-distribution
- dependency-name: org.alfresco.tas:alfresco-community-repo-webdav-test:tests
- dependency-name: org.alfresco.tas:alfresco-community-repo-restapi-test:tests
- dependency-name: org.alfresco.tas:alfresco-community-repo-integration-test:tests
- dependency-name: org.alfresco.tas:alfresco-community-repo-email-test:tests
- dependency-name: org.alfresco.tas:alfresco-community-repo-cmis-test:tests
# Used in dev env - Currently using 7.0.86 but have tried higher versions
- dependency-name: org.apache.tomcat.embed
versions:
- "> 7.0.109"
- dependency-name: org.apache.tomcat
versions:
- "> 7.0.109"
# Upstream alfresco-enterprise-share artifacts
- dependency-name: org.alfresco:share:classes
- dependency-name: org.alfresco:alfresco-wcmqs-web:classes
- dependency-name: org.alfresco:alfresco-wcmqs-distribution
- dependency-name: org.alfresco:share
- dependency-name: org.alfresco:alfresco-content-services-share-distribution
- dependency-name: org.alfresco:alfresco-share-services
# Others
- dependency-name: io.fabric8:fabric8-maven-plugin
versions:
- "> 4.4.1"
- dependency-name: org.alfresco:api-explorer
versions:
- "> 6.1.0, < 6.2"
- dependency-name: org.alfresco.integrations:alfresco-googledocs-repo-community
versions:
- "> 3.1.0"
- dependency-name: org.alfresco.integrations:alfresco-googledocs-share-community
versions:
- "> 3.1.0"
- dependency-name: org.apache.maven.plugins:maven-war-plugin
versions:
- ">= 3.a, < 4"
registries:
- maven-repository-artifacts-alfresco-com-nexus-content-groups-int
+7 -6
View File
@@ -1,8 +1,5 @@
*.class
war/overlays
alfresco/*
# Eclipse
.classpath
.settings
@@ -13,7 +10,7 @@ alfresco/*
*.iml
*.iws
#VScode
#VSCode
/.vscode
# Mac
@@ -24,6 +21,7 @@ target
*.log
*.log.*
# Package Files #
*.jar
*.war
@@ -32,9 +30,12 @@ target
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
# Alfresco
alf_data/
helm/alfresco-content-services-community/charts/*
helm/alfresco-content-services-community/requirements.lock
helm/alfresco-content-services-community*.tgz
# Travis deployment folder
deploy_dir
# Travis deployment folder
deploy_dir
+4
View File
@@ -25,6 +25,10 @@
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
</pluginRepository>
</pluginRepositories>
<properties>
<!-- WhiteSource token -->
<org.whitesource.orgToken>${env.WHITESOURCE_API_KEY}</org.whitesource.orgToken>
</properties>
</profile>
</profiles>
+9 -42
View File
@@ -1,5 +1,6 @@
---
dist: xenial
sudo: required
language: java
jdk: openjdk11
@@ -28,19 +29,19 @@ env:
global:
- TAS_SCRIPTS=../alfresco-community-repo/packaging/tests/scripts
- TAS_ENVIRONMENT=./tests/environment
# Release version has to start with real version (7.2.0-....) for the docker image to build successfully.
- RELEASE_VERSION=7.2.0-A7
- DEVELOPMENT_VERSION=7.2.0-A8-SNAPSHOT
# Release version has to start with real version (7.0.2-....) for the docker image to build successfully.
- RELEASE_VERSION=7.0.2-A0
- DEVELOPMENT_VERSION=7.0.2-SNAPSHOT
stages:
- name: test
if: commit_message !~ /\[skip tests\]/
- name: docker_latest
if: commit_message !~ /\[skip docker_latest\]/ AND (branch = master OR branch =~ /release\/.*/) AND type != pull_request AND fork = false
if: fork = false AND type != pull_request AND branch = master
- name: release
if: commit_message =~ /\[release\]/ AND (branch = master OR branch =~ /release\/.*/) AND type != pull_request AND fork = false
if: commit_message =~ /\[release\]/ AND fork = false AND type != pull_request AND (branch = master OR branch =~ /release\/.*/)
- name: publish
if: commit_message =~ /\[publish\]/ AND (branch = master OR branch =~ /release\/.*/) AND type != pull_request AND fork = false
if: commit_message =~ /\[publish\]/ AND fork = false AND type != pull_request AND (branch = master OR branch =~ /release\/.*/)
before_install: travis_retry bash scripts/travis/init.sh
install: travis_retry travis_wait 40 bash scripts/travis/build.sh
@@ -48,7 +49,6 @@ install: travis_retry travis_wait 40 bash scripts/travis/build.sh
jobs:
include:
- name: "REST API TAS tests part1"
if: commit_message !~ /\[skip tas\]/
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"
@@ -56,7 +56,6 @@ jobs:
- 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"
if: commit_message !~ /\[skip tas\]/
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"
@@ -64,7 +63,6 @@ jobs:
- 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"
if: commit_message !~ /\[skip tas\]/
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"
@@ -72,7 +70,6 @@ jobs:
- 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 - BROWSER binding"
if: commit_message !~ /\[skip tas\]/
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"
@@ -80,7 +77,6 @@ jobs:
- travis_wait 40 mvn -B install -f tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-browser -Denvironment=default -DrunBugs=false
- name: "CMIS TAS tests - ATOM binding"
if: commit_message !~ /\[skip tas\]/
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"
@@ -88,7 +84,6 @@ jobs:
- travis_wait 40 mvn -B install -f tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-atom -Denvironment=default -DrunBugs=false
- name: "CMIS TAS tests - WEBSERVICES binding"
if: commit_message !~ /\[skip tas\]/
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"
@@ -96,7 +91,6 @@ jobs:
- travis_wait 40 mvn -B install -f tests/tas-cmis/pom.xml -Pall-tas-tests,run-cmis-webservices -Denvironment=default -DrunBugs=false
- name: "Email TAS tests"
if: commit_message !~ /\[skip tas\]/
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
@@ -104,7 +98,6 @@ jobs:
- travis_wait 30 mvn -B install -f tests/tas-email/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
- name: "WebDAV TAS tests"
if: commit_message !~ /\[skip tas\]/
before_script:
- ${TAS_SCRIPTS}/start-compose.sh ${TAS_ENVIRONMENT}/docker-compose-minimal.yml
- ${TAS_SCRIPTS}/wait-for-alfresco-start.sh "http://localhost:8082/alfresco"
@@ -112,22 +105,15 @@ jobs:
- travis_wait 20 mvn -B install -f tests/tas-webdav/pom.xml -Pall-tas-tests -Denvironment=default -DrunBugs=false
- name: "Integration TAS tests"
if: commit_message !~ /\[skip tas\]/
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: "Community Distribution Zip content tests"
before_script:
- travis_retry travis_wait 20 mvn -B -V clean install -Pags -DskipTests -Dmaven.javadoc.skip=true
script:
- travis_wait 20 mvn -B install -f tests/tas-distribution-zip/pom.xml -Prun-distribution-zip-contents-check -DrunBugs=false
- name: "Update latest images"
- name: "Update latest images in quay.io"
stage: docker_latest
script: travis_retry travis_wait 30 mvn -B -V clean install -DskipTests -Dmaven.javadoc.skip=true -Pags -Ppush-docker-images
script: travis_retry travis_wait 30 mvn -B -V clean install -DskipTests -Dmaven.javadoc.skip=true -Pinternal
- name: "Release and Copy to S3 Staging Bucket"
stage: release
@@ -138,10 +124,6 @@ jobs:
- mkdir -p deploy_dir
- cp distribution/target/alfresco.war deploy_dir
- cp distribution/target/*-distribution*.zip deploy_dir
- ls -lA deploy_dir
- mkdir -p deploy_dir_ags
- cp distribution-ags/target/*.zip deploy_dir_ags
- ls -lA deploy_dir_ags
deploy:
- provider: s3
access_key_id: "${AWS_STAGING_ACCESS_KEY}"
@@ -154,17 +136,6 @@ jobs:
upload_dir: "alfresco-content-services-community/release/${TRAVIS_BRANCH}/${TRAVIS_BUILD_NUMBER}"
on:
all_branches: true
- 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_ags"
upload_dir: "community/RM/${RELEASE_VERSION}"
on:
all_branches: true
after_deploy:
- echo "Finished release and deployed to https://s3.console.aws.amazon.com/s3/buckets/alfresco-artefacts-staging/alfresco-content-services/release/${TRAVIS_BRANCH}/${TRAVIS_BUILD_NUMBER}"
@@ -179,7 +150,3 @@ jobs:
script: bash scripts/travis/copy_to_release_bucket.sh
on:
all_branches: true
- provider: script
script: bash scripts/travis/copy_ags_to_release_bucket.sh
on:
all_branches: true
-116
View File
@@ -1,119 +1,3 @@
<h1> 7.2.0 Community
</h1>
<h2>
New Features
</h2>
<h1> 7.1.0 Community
</h1>
<h2>
New Features
</h2>
<li>Removal of 3rd party libraries
With the offloading of both transforms and metadata extraction to T-Engines a number of 3rd party libraries
are no longer needed within the content repository. They do still exist within the T-Engines performing the
same tasks. Any AMPs that where making use of these will need to provide these libraries themselves. This will
reduce the footprint of the repository and allow more frequent releases of the T-Engines to take advantage of
new functionality or security patches in these libraries.
<ul>
<li>PdfBox org.apache.pdfbox:pdfbox:2.0.21 removed - transforms are now performed in T-Engines</li>
<li>PdfBox org.apache.pdfbox:fontbox:2.0.21 removed - transforms are now performed in T-Engines</li>
<li>PdfBox org.apache.pdfbox:pdfbox-tools:2.0.21 removed - transforms are now performed in T-Engines</li>
</ul>
<br>
<h1> 7.0.0 Community
</h1>
<h2>
New Features
</h2>
<ul>
<li>Metadata Extract
The out of the box extraction of metadata is now generally performed asynchronously via a T-Engine connected to the
repository either as part of the Alfresco Transform Service or as a Local transformer. This provides better security,
scalability and reliability. The framework used for metadata extraction within the content repository remains,
allowing custom extractors / embedders of metadata to still function, as long as they don't extend the extractors
that have been removed. Ideally such custom code should be gradually moved into a T-Engine. For more information see
[Metadata Extractors](https://github.com/Alfresco/acs-packaging/blob/master/docs/metadata-extract-embbed.md). </li>
<li>Removal of Legacy transformers
In ACS 6, the Alfresco Transform Service and Local transformers where introduced to help offload the transformation
of content to a separate process. In ACS 7, the out of the box Legacy transformers and transformation framework have
been removed. This helps provide greater clarity around installation and administration of transformations and
technically a more scalable, reliable and secure environment.</li>
<li>Custom Transforms and Renditions
ACS 7 provides a number of content transforms, but also allows custom transforms to be added.
It is possible to create custom transforms that run in separate processes known as T-Engines. The same engines may
be used in Community and Enterprise Editions.
For more information, see [Custom Transforms and Renditions](https://github.com/Alfresco/acs-packaging/blob/master/docs/custom-transforms-and-renditions.md)
</li>
<li>Core All-In-One (AIO) Transform Engine
We have previously used T-Engines for Community and Enterprise Editions that run in separate processes. (https://docs.alfresco.com/transform-service/latest/)
The Core All-In-One (AIO) Transform Engine combines the current 5x core T-Engines (LibreOffice, imagemagick,
Alfresco PDF Renderer, Tika) packaged together into a single Docker image. Enterprise deployments require
greater scalability and we anticipate in these situations the individual T-Engines will be preferable.
For Community deployments the AIO T-Engine, running it in a single JVM is recommended. In addition the
AIO solution has been updated at with the option to build a single AIO T-Engine.
</li>
<li>Events related to node and association actions
With Alfresco Content Services 7.0, the Content Repository publishes events related to an initial set of actions
to nodes and associations. This is the first time that this feature is introduced as part of the ACS Core Services,
and it will be used in many use cases, as an example by the Alfresco SDK 5. For the moment the supported events
are related to node creation/update/deletion, secondary child association creation/deletion, peer association
creation/deletion.
</li>
<li>New REST API Endpoints:
File Rendition Management API is now available under /s
POST '/nodes/{nodeId}/s/{Id}/renditions'
GET '/nodes/{nodeId}/s/{Id}/renditions'
GET '/nodes/{nodeId}/s/{Id}/renditions/{renditionId}'
GET '/nodes/{nodeId}/s/{Id}/renditions/{renditionId}/content'
Site Membership Management API is now available under /sites
GET '/sites/{siteId}/group-members'
POST '/sites/{siteId}/group-members'
GET '/sites/{siteId}/group-members/{groupId}'
PUT '/sites/{siteId}/group-members/{groupId}'
DELETE '/sites/{siteId}/group-members/{groupId}'
Model API: https://develop.envalfresco.com/api-explorer/?urls.primaryName=Model API
</li>
<li>Recommended Database Patch
ACS 7 contains a recommended database patch, which adds two indexes to the alf_node table and three to alf_transaction.
This patch is optional, but recommended for larger implementations as it can have a big positive performance impact.
These indexes are not automatically applied during upgrade, as the amount of time needed to create them might be
considerable. They should be run manually after the upgrade process completes.
To apply the patch, an admin should set the following Alfresco global property to “true”. Like other patches it will
only be run once, so there is no need to reset the property afterwards.
system.new-node-transaction-indexes.ignored=false
Until this step is completed, you will see Schema Validation warnings reported in the alfresco.log on each startup.
The log will also indicate that the patch was not run.
INFO [org.alfresco.repo.domain.schema.SchemaBootstrap] [...] Ignoring script patch (post-Hibernate): patch.db-V6.3-add-indexes-node-transaction
...
WARN [org.alfresco.repo.domain.schema.SchemaBootstrap] [...] Schema validation found ... potential problems, results written to ...
</li>
<h1> Release Notes - Alfresco - Version Community Edition 201911 GA
</h1>
<h2> Bug
+16 -36
View File
@@ -1,56 +1,36 @@
# Alfresco Content Services Community Packaging
This project is producing packaging for Alfresco Content Services Community.
This project is producing packaging for [Alfresco Content Services Repository](https://community.alfresco.com/docs/DOC-6385-project-overview-repository).
The SNAPSHOT version of artifacts are **never** published.
The SNAPSHOT version of the artifacts is **never** published.
### Contributing guide
Please use [this guide](CONTRIBUTING.md) to make a contribution to the project.
This produces the docker images for alfresco-content-repository-community and the distribution zip for the entire Alfresco Content Services Community product
# General
This project is the Community equivalent of the [Enterprise Packaging Project](https://github.com/Alfresco/acs-packaging).
### Build:
* ```mvn clean install``` in the root of the project will build everything.
This project creates the `alfresco/alfresco-content-repository-community` docker image and the distribution zip
for the Alfresco Content Services Community product.
The `alfresco/alfresco-content-repository-community` image extends the `alfresco-community-repo-base` created by the
`alfresco-community-repo` project to add additional ACS components.
# Build:
For more detailed build instructions, see the [Development Tomcat Environment](https://github.com/Alfresco/acs-community-packaging/tree/master/dev/README.md)
page.
To build the project, including the distribution zip, but not the Docker images, issue the following commands:
```
$ # The comP alias includes the following:
$ cd acs-community-packaging
$ mvn clean install
$ cd ..
```
## Docker Alfresco
Releases are published to https://hub.docker.com/r/alfresco/alfresco-content-repository-community/tags/
On official releases, the image is published: https://hub.docker.com/r/alfresco/alfresco-content-repository-community/tags/
To build the Docker images, you will need to build the `alfresco-community-repo`, `alfresco-community-share` and
`acs-community-packaging` projects. The simplest way is to use the `comRD`, `comSD` and `comPD` aliases.
For more information, see [build aliases](dev/aliases). `latest` images are created locally.
```
comRD && comSD && comPD
```
## Docker-compose & Kubernetes
Use the https://github.com/Alfresco/acs-deployment project as the basis for your own docker-compose or helm chart deployments.
For testing locally:
1. Go to docker-alfresco folder
2. Run *mvn clean install* if you have not done so
3. Build the docker image: ```docker build . --tag acr-community:6.0.tag```
4. Check that the image has been created locally with your desired name/tag: ```docker images```
### Docker-compose & Kubernetes
Use the deployment project if you want the sample docker-compose or helm: https://github.com/Alfresco/acs-deployment
## Distribution zip
The distribution zip contains the war files, libraries, certificates and settings files you need, to deploy
Alfresco Content Services on the supported application servers.
In this folder the distribution zip is build. It contains all the war files, libraries, certificates and settings files you need to deploy Alfresco Content Services Community on the supported application servers.
## How to
# How to
* [Development Tomcat Environment](dev/README.md)
* [aliases](dev/aliases)
* [Create a custom Docker image](https://github.com/Alfresco/acs-packaging/blob/master/docs/create-custom-image.md)
* [Creating customized Docker images using an existing Docker image](https://github.com/Alfresco/acs-packaging/blob/master/docs/create-custom-image-using-existing-docker-image.md)
* [Verifying that AMPs have been applied](https://github.com/Alfresco/acs-packaging/blob/master/docs/verify-the-amp-has-been-applied.md)
+47 -84
View File
@@ -2,82 +2,29 @@
It is possible to use Docker containers to test your code, but it is normally more convenient to simply run the
repository webapp (`alfresco.war`) and Share webapp (`share.war`) in a tomcat instance. Options are also available to
apply selected AMPs
## Setting up your development environment
Although it is possible to work on individual github projects, we recommend working on
the `alfresco-community-repo`, `alfresco-community-share` and `acs-community-packaging`
in a single Intellij IDEA project. They depend on each other and typically you
will want to make changes to all of them if you are changing the repository code.
repository webapp (`alfresco.war`) in a tomcat instance.
## Build -repo projects
Build the `alfresco-community-repo` (if you have not done so already), so that your changes are in the enterprise alfresco.war file.
~~~
mkdir work
cd work
git clone git@github.com:Alfresco/alfresco-community-repo.git
git clone git@github.com:Alfresco/alfresco-community-share.git
git clone git@github.com:Alfresco/acs-community-packaging.git
~~~
## Aliases
There are a set of aliases to help with building. You may find them useful, as they will help you only build selected parts
of the code base and will save you lots of typing.
Aliases ending in `D` provide Maven commands for building local Docker images. The AMPS environment variable will be of
interest, if you wish to build AMPs included in the repo and share projects.
The `aliases` file includes a more detailed description.
~~~
source acs-community-packaging/dev/aliases
~~~
## Link the projects
Generally you will want to link the different projects together by modifying the top level
pom.xml files of each downstream project so that they reference the SNAPSHOT versions of the
upstream projects. To help do this see the `acs-community-packaging` project's `scripts/dev/linkPoms.sh` and
`scripts/dev/unlinkPoms.sh` scripts.
~~~
sh acs-community-packaging/scripts/dev/linkPoms.sh
~~~
## Build the alfresco-community-repo project
Build the `alfresco-community-repo` projects (if you have not
done so already), so that your changes are in the community alfresco.war file.
~~~
# The `comR` alias includes the following commands:
cd alfresco-community-repo
mvn clean install -DskipTests=true -Dversion.edition=Community
cd ..
~~~
## Build the Share project
Build the `alfresco-community-share` project (if you have not done so already), so that your
changes are in the community share.war file, which also depends on your `alfresco-community-repo` project version.
~~~
# The `entS` alias is the same as the following commands:
cd alfresco-community-share
mvn clean install -DskipTests -Dmaven.javadoc.skip=true
cd ..
$ # The `comR` alias includes the following commands:
$ cd alfresco-community-repo
$ mvn clean install -PcommunityDocker -DskipTests=true -Dversion.edition=Community
$ cd ..
~~~
## Docker test environment
The repository code will need to talk to other ACS components, such as a database, message queue and transformers.
The repository code will need to talk to other ACS components, such as a databases, message queue and transformers.
The simplest way to create these, is to use the `docker-compose.yml` file in the `dev` directory.
~~~
# The `envUp` alias is the same as the following commands. Run these in a new terminal session, or add a `-d` flag to
the `docker-compose` command.
cd acs-community-packaging
docker-compose -f dev/docker-compose.yml up
Creating dev_activemq_1 ... done
Creating dev_solr6_1 ... done
Creating dev_postgres_1 ... done
Creating dev_transform-core-aio_1 ... done
$ # The `envUp` alias is the same as the following commands:
$ cd acs-community-packaging
$ docker-compose -f dev/docker-compose.yml up -d
...
cd ..
$ cd ..
~~~
## Alfresco global properties and Log4j
## Alfresco Global Properties and Log4j
Set any alfresco-global.properties or log4j properties you may need in the following files. They will be copied
to the `dev/dev-acs-amps-overlay/target` directory. Other customisations may also be placed in the `extension` directory.
~~~
@@ -90,49 +37,57 @@ Create the development tomcat environment, apply AMPs on top of the repository c
run tomcat. The `run` profile is what starts tomcat. The `withShare` applies
the Share services AMP and adds the `share.war` to tomcat.
Once started, you will be able to access Share on `http://localhost:8080/share` and various repository
endpoints via `http://localhost:8080/alfresco/`. `comT` is an alias for the
following command and `comTDebug` will allow a debugger to be attached.
endpoints via `http://localhost:8080/alfresco/`. `entT` is an alias for the
following command and `entTDebug` will allow a debugger to be attached.
~~~
# The alias comT is the same as the following commands:
cd acs-community-packaging
mvn clean install -Prun -rf dev
[INFO] Scanning for projects...
$ # The alias comT is the same as the following mvn command. comTDebug may also be used.
$ mvn clean install -Prun,withShare
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] Development Tomcat Environment [pom]
[INFO] Tomcat Configuration [pom]
[INFO] Repo WAR with amps [war]
[INFO] Share WAR with amps [war]
[INFO] Tomcat [war]
[INFO] Alfresco Content Services Community Packaging [pom]
[INFO] Alfresco Content Services Community Distribution zip [jar]
[INFO] Alfresco Content Services Public API Javadoc [pom]
[INFO] ACS Community Docker Image Builder for Alfresco Community [pom]
[INFO] Scanning for projects...
[INFO] --------------------------------[ pom ]---------------------------------
...
INFO: Starting ProtocolHandler ["http-bio-8080"]
cd ..
$ cd ..
~~~
If you kill the tomcat instance (^C) and wish to restart it, use the following command
or the `comO` alias, or `comODebug` to attach a debugger.
or the `comO` alias, or `comODebug` to attach a debuger.
~~~
mvn install -Prun,withShare -rf dev-acs-amps-overlay
$ mvn install -Prun,withShare -rf dev-acs-amps-overlay
~~~
## Clean up
When finished, kill the tomcat instance and stop the Docker instances. You will normally also
remove the Docker containers, as you will need a clean database if you are going to issue
another `mvn clean install` command. If you started `docker-compose` in a separate terminal session,
simply use `^C` or if you used a `-d` flag, use `docker-compose -f dev/docker-compose.yml stop`.
another `mvn clean install` command.
~~~
^C
$ ^C
... Stopped 'sysAdmin' subsystem, ID: [sysAdmin, default]
docker-compose -f dev/docker-compose.yml rm
$ docker-compose -f dev/docker-compose.yml stop
Stopping dev_transform-core-aio_1 ... done
Stopping dev_transform-router_1 ... done
Stopping dev_solr6_1 ... done
Stopping dev_postgres_1 ... done
Stopping dev_activemq_1 ... done
Stopping dev_shared-file-store_1 ... done
$ docker-compose -f dev/docker-compose.yml rm
Going to remove dev_transform-core-aio_1, dev_transform-router_1, dev_solr6_1, dev_postgres_1, dev_activemq_1, dev_shared-file-store_1
Are you sure? [yN] y
Removing dev_transform-core-aio_1 ... done
Removing dev_transform-router_1 ... done
Removing dev_solr6_1 ... done
Removing dev_postgres_1 ... done
Removing dev_activemq_1 ... done
Removing dev_shared-file-store_1 ... done
~~~
If you have not removed the containers, it is possible to restart the tomcat instance with
@@ -142,3 +97,11 @@ Any changes made to alfresco-global properties or log4j will not be picked up, u
directly edit `dev/dev-acs-amps-overlay/target/dev-instance/tomcat/shared/classes/alfresco/extension/custom-log4j.properties`
and `dev/dev-acs-amps-overlay/target/dev-instance/tomcat/shared/classes/alfresco-global.properties`, but they will be thrown away
on the next `mvn clean`.
## Aliases
You may also find the aliases specified in the following file useful, as they may save you some typing.
Aliases ending in `D` provide Maven commands for building local Docker images.
~~~
$ source acs-community-packaging/dev/aliases
~~~
+21 -34
View File
@@ -1,8 +1,8 @@
# The aliases in this script provide simple commands to build projects, start tomcat and combinations of these. This
# give the flexibility to only rebuild or repackage parts of the codebase that have changed.
#
# Once the repository component has been built, it will need to be combined with other ACS components such as Share
# in the acs_community_packaging projects.
# Once the repository component has been built, it will need to be combined with other ACS components in the
# acs_community_packaging projects.
#
# When developing code, you will normally not be creating repository docker images, or TAS test jar files, but will be
# creating war files and then running them in a local tomcat instance. To provide the environment needed to do this you
@@ -11,20 +11,15 @@
# If need to create Docker images or create TAS test jar files (extended in downstream projects), use the aliases that
# end in D for Docker.
#
# By default only the share-services AMP is built by these aliases. Additional AMPS may be included by adding their
# profile to the AMPS environment variable. For example: export AMPS="-Pags"
#
# Aliases to build a sequence of projects and start tomcat - remember to start a CLEAN docker-compose environment - see envUp
# com - builds alfresco-community-repo & acs-community-packaging
#
# Aliases to build projects WITHOUT creating docker images or TAS tests jars
# comR - alfresco-community-repo
# comS - alfresco-community-share
# comP - acs-community-packaging
#
# Aliases to build projects including DOCKER images and TAS tests jars
# comRD - alfresco-community-repo
# comSD - alfresco-community-share
# comPD - acs-community-packaging
# Aliases to start tomcat in a CLEAN environment - remember to start a docker-compose environment - see envUp
@@ -35,36 +30,28 @@
# comO - acs-community-packaging
# comODebug - acs-community-packaging (uses mvnDebug to allow a debugger to be attached)
# Set environment variables if not already set
if [ -z ${AMPS+x} ]
then
export AMPS=""
fi
export TAG=latest
alias comR='(cd alfresco-community-repo && mvn clean install $AMPS -DskipTests=true -Dversion.edition=Community)'
alias comS='(cd alfresco-community-share && mvn clean install $AMPS -DskipTests -Dmaven.javadoc.skip=true)'
alias comP='(cd acs-community-packaging && mvn clean install $AMPS -Dmaven.javadoc.skip=true)'
alias comR='(cd alfresco-community-repo && mvn clean install -DskipTests=true -Dversion.edition=Community)'
alias comP='(cd acs-community-packaging && mvn clean install -Dmaven.javadoc.skip=true)'
alias comRD='(cd alfresco-community-repo && mvn clean install $AMPS -DskipTests=true -Dversion.edition=Community -Pall-tas-tests -Pbuild-docker-images -Dimage.tag=latest)'
alias comSD='(cd alfresco-community-share && mvn clean install $AMPS -DskipTests=true -DskipTests -Dmaven.javadoc.skip=true -Pall-tas-tests -Pbuild-docker-images -Dimage.tag=latest -Drepo.image.tag=latest)'
alias comPD='(cd acs-community-packaging && mvn clean install $AMPS -DskipTests=true -Dmaven.javadoc.skip=true -Pall-tas-tests -Pbuild-docker-images -Dimage.tag=latest -Drepo.image.tag=latest -Dshare.image.tag=latest)'
alias comRD="(cd alfresco-community-repo && mvn clean install -PcommunityDocker -Pall-tas-tests -DskipTests=true -Dimage.tag=$TAG -Dversion.edition=Community)"
alias comPD="(cd acs-community-packaging && mvn clean install -PcommunityDocker -Pall-tas-tests -DskipTests=true -Dimage.tag=$TAG -Drepo.image.tag=$TAG -Dmaven.javadoc.skip=true)"
alias comT='(cd acs-community-packaging && mvn clean install -Prun $AMPS -rf dev)'
alias comTDebug='(cd acs-community-packaging && mvnDebug clean install -Prun $AMPS -rf dev)'
alias comO='(cd acs-community-packaging && mvn install -Prun $AMPS -rf dev/dev-repo-amps-overlay)'
alias comODebug='(cd acs-community-packaging && mvnDebug install -Prun $AMPS -rf dev/dev-repo-amps-overlay)'
alias comT=' (cd acs-community-packaging && mvn clean install -Prun,withShare)'
alias comTDebug='(cd acs-community-packaging && mvnDebug clean install -Prun,withShare)'
alias comO=' (cd acs-community-packaging && mvn install -Prun,withShare -rf dev/dev-acs-amps-overlay)'
alias comODebug='(cd acs-community-packaging && mvnDebug install -Prun,withShare -rf dev/dev-acs-amps-overlay)'
alias com='comR && comS && comP && comT'
alias comD='comRD && comSD && comPD'
alias comX='comR && comS && comP'
alias comDR='comRD && comRD && comPD'
alias comXR='comR && comR && comP'
alias comXS='comS && comP'
alias com='comR && comP && comT'
alias comD='comRD && comPD'
alias comX='comR && comP'
# Clean up of docker images and content stores (alf_data directories)
alias drm='docker rm -f $(docker ps -q)'
alias arm='rm -rf `find . -name alf_data`'
alias envUp='docker-compose -f acs-community-packaging/dev/docker-compose.yml up'
alias envStop='docker-compose -f acs-community-packaging/dev/docker-compose.yml stop'
alias envKill='docker-compose -f acs-community-packaging/dev/docker-compose.yml kill'
alias envRm='docker-compose -f acs-community-packaging/dev/docker-compose.yml rm'
alias drm='docker rm -f $(docker ps -q)'
alias arm='rm -rf `find . -name alf_data`'
alias envUp='docker-compose -f acs-community-packaging/dev/docker-compose.yml up'
alias envStop='docker-compose -f acs-community-packaging/dev/docker-compose.yml stop'
alias envKill='docker-compose -f acs-community-packaging/dev/docker-compose.yml kill'
alias envRm='docker-compose -f acs-community-packaging/dev/docker-compose.yml rm'
+360 -326
View File
@@ -1,326 +1,360 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>dev-acs-community-amps-overlay</artifactId>
<name>Run Tomcat</name>
<packaging>war</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<version>7.2.0-A7</version>
</parent>
<properties>
<dependency.sis.version>1.0</dependency.sis.version>
<tomcat.version>7.0.86</tomcat.version>
<tomcat.default.solr6.port>8983</tomcat.default.solr6.port>
</properties>
<dependencies>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>dev-community-repo-amps-overlay</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
<build>
<finalName>alfresco</finalName>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<overlays>
<overlay>
<groupId>org.alfresco</groupId>
<artifactId>dev-community-repo-amps-overlay</artifactId>
<type>war</type>
</overlay>
</overlays>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
<executions>
<execution>
<id>prepare-exploded-war</id>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<systemProperties>
<index.subsystem.name>solr6</index.subsystem.name>
<solr.port>${tomcat.default.solr6.port}</solr.port>
<dir.root>${runtime.data.folder}/alf_data</dir.root>
<solr.host>localhost</solr.host>
<solr.base.url>/solr</solr.base.url>
<solr.secureComms>none</solr.secureComms>
<encryption.keystore.type>pkcs12</encryption.keystore.type>
<encryption.cipherAlgorithm>AES/CBC/PKCS5Padding</encryption.cipherAlgorithm>
<encryption.keyAlgorithm>AES</encryption.keyAlgorithm>
<metadata-keystore.password>mp6yc0UD9e</metadata-keystore.password>
<metadata-keystore.aliases>metadata</metadata-keystore.aliases>
<metadata-keystore.metadata.password>mp6yc0UD9e</metadata-keystore.metadata.password>
<metadata-keystore.metadata.algorithm>AES</metadata-keystore.metadata.algorithm>
</systemProperties>
<delegate>false</delegate>
<useSeparateTomcatClassLoader>true</useSeparateTomcatClassLoader>
<contextFile>${runtime.tomcat.conf.folder}/alfresco-context.xml</contextFile>
<tomcatUsers>${runtime.tomcat.conf.folder}/tomcat-users.xml</tomcatUsers>
<webapps>
<webapp>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-server-root</artifactId>
<version>${dependency.alfresco-server-root.version}</version>
<contextPath>/</contextPath>
<type>war</type>
<asWebapp>true</asWebapp>
<!-- Workaround for https://issues.apache.org/jira/browse/MTOMCAT-269 -->
<!-- tomcat7-maven-plugin does not pick up the context.xml file from META-INF -->
<contextFile>
${project.build.directory}/tomcat/webapps/alfresco-server-root/META-INF/context.xml
</contextFile>
</webapp>
<webapp>
<groupId>org.alfresco</groupId>
<artifactId>api-explorer</artifactId>
<version>${alfresco.api-explorer.version}</version>
<contextPath>/api-explorer</contextPath>
<type>war</type>
<asWebapp>true</asWebapp>
</webapp>
<webapp>
<groupId>org.alfresco</groupId>
<artifactId>dev-community-share-amps-overlay</artifactId>
<contextPath>/share</contextPath>
<version>${project.version}</version>
<type>war</type>
<asWebapp>true</asWebapp>
</webapp>
</webapps>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-util</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-coyote</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-dbcp</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper-el</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-el-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-tribes</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina-ha</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-annotations-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-juli</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-juli</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-log4j</artifactId>
<version>${tomcat.version}</version>
</dependency>
<!-- Workaround required to make Share work after Tika upgrade -->
<dependency>
<groupId>org.apache.sis.core</groupId>
<artifactId>sis-utility</artifactId>
<version>${dependency.sis.version}</version>
</dependency>
<dependency>
<groupId>org.apache.sis.core</groupId>
<artifactId>sis-metadata</artifactId>
<version>${dependency.sis.version}</version>
</dependency>
<dependency>
<groupId>org.apache.sis.storage</groupId>
<artifactId>sis-storage</artifactId>
<version>${dependency.sis.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<!-- Download and unpack the tomcat config zip file -->
<execution>
<id>unpack-tomcat-config</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/tomcat-conf</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat</artifactId>
<version>${project.version}</version>
<classifier>config</classifier>
<overWrite>true</overWrite>
<type>zip</type>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!-- Copy tomcat config from build directory to correct location -->
<!--
Q. Why not unpack directly to ${runtime.tomcat.conf.folder} ?
A. There is no way of telling maven NOT to overwrite the directory if it is already there.
overWrite doesn't work, overWriteIfNewer doesn't work either. The plugin uses marker files
to determine whether the zip has already been unpacked, rather than using the actual folder
where the contents are being unpacked - so if a clean is performed the marker files disappear
and the zip is unpacked regardless (overwriting your customised tomcat config). Whilst you
can change the location of the marker files, doing things this way really is going to be more
reliable, since the existing directory will be respected properly.
-->
<execution>
<id>copy-tomcat-config</id>
<goals>
<goal>run</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpathref="maven.plugin.classpath" />
<if>
<available file="${runtime.tomcat.conf.folder}" type="dir" />
<then>
<echo message="Skipping creation of tomcat configuration, already exists: ${runtime.tomcat.conf.folder}" />
</then>
<else>
<echo message="Creating tomcat runtime configuration: ${runtime.tomcat.conf.folder}" />
<copy todir="${runtime.tomcat.conf.folder}">
<fileset dir="${project.build.directory}/tomcat-conf" />
</copy>
</else>
</if>
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>20020829</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>run</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<executions>
<execution>
<id>run-exploded-webapp</id>
<phase>verify</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>dev-acs-community-amps-overlay</artifactId>
<name>Content Services WAR with amps</name>
<packaging>war</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<version>7.0.2-SNAPSHOT</version>
</parent>
<properties>
<dependency.sis.version>1.0</dependency.sis.version>
<tomcat.version>7.0.86</tomcat.version>
<tomcat.default.solr6.port>8983</tomcat.default.solr6.port>
</properties>
<dependencies>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>content-services-community</artifactId>
<type>war</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-share-services</artifactId>
<type>amp</type>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
<build>
<finalName>alfresco</finalName>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<overlays>
<overlay>
<groupId>org.alfresco</groupId>
<artifactId>content-services-community</artifactId>
<type>war</type>
</overlay>
<overlay>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-share-services</artifactId>
<type>amp</type>
</overlay>
</overlays>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
<executions>
<execution>
<id>prepare-exploded-war</id>
<goals>
<goal>exploded</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.alfresco.maven.plugin</groupId>
<artifactId>alfresco-maven-plugin</artifactId>
<version>4.1.0</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<systemProperties>
<index.subsystem.name>solr6</index.subsystem.name>
<solr.port>${tomcat.default.solr6.port}</solr.port>
<dir.root>${runtime.data.folder}/alf_data</dir.root>
<solr.host>localhost</solr.host>
<solr.base.url>/solr</solr.base.url>
<solr.secureComms>none</solr.secureComms>
<encryption.keystore.type>pkcs12</encryption.keystore.type>
<encryption.cipherAlgorithm>AES/CBC/PKCS5Padding</encryption.cipherAlgorithm>
<encryption.keyAlgorithm>AES</encryption.keyAlgorithm>
<metadata-keystore.password>mp6yc0UD9e</metadata-keystore.password>
<metadata-keystore.aliases>metadata</metadata-keystore.aliases>
<metadata-keystore.metadata.password>mp6yc0UD9e</metadata-keystore.metadata.password>
<metadata-keystore.metadata.algorithm>AES</metadata-keystore.metadata.algorithm>
</systemProperties>
<delegate>false</delegate>
<useSeparateTomcatClassLoader>true</useSeparateTomcatClassLoader>
<contextFile>${runtime.tomcat.conf.folder}/alfresco-context.xml</contextFile>
<tomcatUsers>${runtime.tomcat.conf.folder}/tomcat-users.xml</tomcatUsers>
<webapps>
<webapp>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-server-root</artifactId>
<version>${dependency.alfresco-server-root.version}</version>
<contextPath>/</contextPath>
<type>war</type>
<asWebapp>true</asWebapp>
<!-- Workaround for https://issues.apache.org/jira/browse/MTOMCAT-269 -->
<!-- tomcat7-maven-plugin does not pick up the context.xml file from META-INF -->
<contextFile>${project.build.directory}/tomcat/webapps/alfresco-server-root/META-INF/context.xml</contextFile>
</webapp>
<webapp>
<groupId>org.alfresco</groupId>
<artifactId>api-explorer</artifactId>
<version>${alfresco.api-explorer.version}</version>
<contextPath>/api-explorer</contextPath>
<type>war</type>
<asWebapp>true</asWebapp>
</webapp>
</webapps>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-util</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-coyote</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-dbcp</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-servlet-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jsp-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper-el</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-el-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-tribes</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina-ha</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-annotations-api</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-juli</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-juli</artifactId>
<version>${tomcat.version}</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-logging-log4j</artifactId>
<version>${tomcat.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<!-- Download and unpack the tomcat config zip file -->
<execution>
<id>unpack-tomcat-config</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/tomcat-conf</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat</artifactId>
<version>${project.version}</version>
<classifier>config</classifier>
<overWrite>true</overWrite>
<type>zip</type>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!-- Copy tomcat config from build directory to correct location -->
<!--
Q. Why not unpack directly to ${runtime.tomcat.conf.folder} ?
A. There is no way of telling maven NOT to overwrite the directory if it is already there.
overWrite doesn't work, overWriteIfNewer doesn't work either. The plugin uses marker files
to determine whether the zip has already been unpacked, rather than using the actual folder
where the contents are being unpacked - so if a clean is performed the marker files disappear
and the zip is unpacked regardless (overwriting your customised tomcat config). Whilst you
can change the location of the marker files, doing things this way really is going to be more
reliable, since the existing directory will be respected properly.
-->
<execution>
<id>copy-tomcat-config</id>
<goals>
<goal>run</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antcontrib.properties"
classpathref="maven.plugin.classpath"/>
<if>
<available file="${runtime.tomcat.conf.folder}" type="dir"/>
<then>
<echo message="Skipping creation of tomcat configuration, already exists: ${runtime.tomcat.conf.folder}"/>
</then>
<else>
<echo message="Creating tomcat runtime configuration: ${runtime.tomcat.conf.folder}"/>
<copy todir="${runtime.tomcat.conf.folder}">
<fileset dir="${project.build.directory}/tomcat-conf"/>
</copy>
</else>
</if>
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>20020829</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>run</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<executions>
<execution>
<id>run-exploded-webapp</id>
<phase>verify</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>withShare</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<webapps combine.children="append">
<webapp>
<groupId>org.alfresco</groupId>
<artifactId>share</artifactId>
<contextPath>/share</contextPath>
<version>${alfresco.share.version}</version>
<type>war</type>
<asWebapp>true</asWebapp>
</webapp>
</webapps>
</configuration>
<!-- Workaround required to make Share work after Tika upgrade -->
<dependencies>
<dependency>
<groupId>org.apache.sis.core</groupId>
<artifactId>sis-utility</artifactId>
<version>${dependency.sis.version}</version>
</dependency>
<dependency>
<groupId>org.apache.sis.core</groupId>
<artifactId>sis-metadata</artifactId>
<version>${dependency.sis.version}</version>
</dependency>
<dependency>
<groupId>org.apache.sis.storage</groupId>
<artifactId>sis-storage</artifactId>
<version>${dependency.sis.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
-141
View File
@@ -1,141 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>dev-community-repo-amps-overlay</artifactId>
<name>Repo WAR with amps</name>
<packaging>war</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<version>7.2.0-A7</version>
</parent>
<build>
<finalName>alfresco</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-war-file</id>
<phase>process-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>content-services-community</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>war</type>
<outputDirectory>${project.build.directory}/alfresco</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<execution>
<id>copy-base-amps</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-share-services</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps</outputDirectory>
</artifactItem>
<!-- Inclusion of AOS results in
java.lang.ClassNotFoundException: org.alfresco.repo.web.filter.beans.BeanProxyFilter
This is probably because, the configuration of the dev tomcat, unlike production
is shared between webapps and something (possibly a web.xml fragment) is
incorrectly being picked up by the /share webapp. The previous version did
not include aos or googledrive.
<artifactItem>
<groupId>org.alfresco.aos-module</groupId>
<artifactId>alfresco-aos-module</artifactId>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps</outputDirectory>
</artifactItem>
-->
<artifactItem>
<groupId>org.alfresco.integrations</groupId>
<artifactId>alfresco-googledrive-repo-community</artifactId>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.alfresco.maven.plugin</groupId>
<artifactId>alfresco-maven-plugin</artifactId>
<executions>
<execution>
<id>install-amps</id>
<goals>
<goal>install</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<backup>true</backup>
<ampLocation>
${project.build.directory}/amps
</ampLocation>
<warLocation>${project.build.directory}/alfresco</warLocation>
</configuration>
</execution>
</executions>
<configuration>
<includeWebResources>true</includeWebResources>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>ags</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-ags-amp</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
-120
View File
@@ -1,120 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>dev-community-share-amps-overlay</artifactId>
<name>Share WAR with amps</name>
<packaging>war</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<version>7.2.0-A7</version>
</parent>
<build>
<finalName>share</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-war-file</id>
<phase>process-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>share</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<type>war</type>
<outputDirectory>${project.build.directory}/share</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<execution>
<id>copy-base-amps</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco.integrations</groupId>
<artifactId>alfresco-googledrive-share</artifactId>
<version>${alfresco.googledrive.version}</version>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps-share</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.alfresco.maven.plugin</groupId>
<artifactId>alfresco-maven-plugin</artifactId>
<executions>
<execution>
<id>install-amps</id>
<goals>
<goal>install</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<backup>true</backup>
<ampLocation>
${project.build.directory}/amps-share
</ampLocation>
<warLocation>${project.build.directory}/share</warLocation>
</configuration>
</execution>
</executions>
<configuration>
<includeWebResources>true</includeWebResources>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>ags</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-ags-amp</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-share</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps-share</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
+62 -62
View File
@@ -1,62 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-dev-community-tomcat</artifactId>
<name>Tomcat Configuration</name>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<version>7.2.0-A7</version>
</parent>
<properties>
<dev.tomcat.conf.folder>${basedir}/src/main/tomcat</dev.tomcat.conf.folder>
</properties>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<id>dev-tomcat-config-zip</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<attach>true</attach>
<descriptors>
<descriptor>src/assembly/tomcat-conf.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<executions>
<!-- Read alfresco-global.properties if it exists, to use it for cleaning runtime data (e.g. which database?) -->
<execution>
<id>read-alfresco-global-properties</id>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${alfresco.properties.file}</file>
</files>
<quiet>true</quiet>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-dev-community-tomcat</artifactId>
<name>Tomcat Configuration</name>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<version>7.0.2-SNAPSHOT</version>
</parent>
<properties>
<dev.tomcat.conf.folder>${basedir}/src/main/tomcat</dev.tomcat.conf.folder>
</properties>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<id>dev-tomcat-config-zip</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<attach>true</attach>
<descriptors>
<descriptor>src/assembly/tomcat-conf.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<executions>
<!-- Read alfresco-global.properties if it exists, to use it for cleaning runtime data (e.g. which database?) -->
<execution>
<id>read-alfresco-global-properties</id>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>${alfresco.properties.file}</file>
</files>
<quiet>true</quiet>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
@@ -116,8 +116,3 @@ share.host=localhost
share.port=8080
transformer.debug.entries=10
mimetype.config.dir=dev/dev-acs-amps-overlay/target/dev-instance/tomcat/shared/classes/alfresco/extension/mimetypes
rendition.config.dir=dev/dev-acs-amps-overlay/target/dev-instance/tomcat/shared/classes/alfresco/extension/transform/renditions
local.transform.pipeline.config.dir=dev/dev-acs-amps-overlay/target/dev-instance/tomcat/shared/classes/alfresco/extension/transform/pipelines
@@ -10,6 +10,7 @@ log4j.logger.org.alfresco.repo.content.transform.TransformerDebug=debug
#log4j.logger.org.alfresco.enterprise.repo.rendition2.RemoteTransformClient=debug
#log4j.logger.org.alfresco.repo.content.transform.LocalTransformServiceRegistry=debug
#log4j.logger.org.alfresco.enterprise.repo.rendition2.RemoteTransformServiceRegistry=debug
#log4j.logger.org.alfresco.repo.rendition2.RenditionDefinitionRegistry2Impl=debug
#log4j.logger.org.alfresco.repo.content.MimetypeMap=debug
#log4j.logger.org.alfresco.repo.content.transform.LocalTransform=debug
+9 -2
View File
@@ -6,7 +6,7 @@ version: "2"
services:
transform-core-aio:
image: alfresco/alfresco-transform-core-aio:2.5.4
image: alfresco/alfresco-transform-core-aio:2.4.0
mem_limit: 1536m
environment:
JAVA_OPTS: " -Xms256m -Xmx1536m"
@@ -14,7 +14,7 @@ services:
- 8090:8090
postgres:
image: postgres:13.3
image: postgres:13.1
mem_limit: 512m
environment:
- POSTGRES_PASSWORD=alfresco
@@ -51,3 +51,10 @@ services:
- 61616:61616 # OpenWire
- 61613:61613 # STOMP
# proxy:
# image: alfresco/acs-community-ngnix:1.0.0
# mem_limit: 128m
# depends_on:
# - alfresco
# ports:
# - 8080:8080
+27 -41
View File
@@ -1,41 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<name>Development Tomcat Environment</name>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
</parent>
<properties>
<!-- Development Tomcat runtime environment configuration -->
<runtime.data.folder>${project.build.directory}/dev-instance/runtime</runtime.data.folder>
<runtime.tomcat.conf.folder>${project.build.directory}/dev-instance/tomcat</runtime.tomcat.conf.folder>
<alfresco.properties.file>${runtime.tomcat.conf.folder}/shared/classes/alfresco-global.properties</alfresco.properties.file>
</properties>
<modules>
<module>dev-tomcat</module>
<module>dev-repo-amps-overlay</module>
<module>dev-share-amps-overlay</module>
<module>dev-acs-amps-overlay</module>
</modules>
<build>
<pluginManagement>
<plugins>
<!-- Versions higher than 3.3.0 were causing the tomcat dev environment to fail to start with a
ClassNotFoundException: org.springframework.web.context.ContextLoaderListener -->
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-dev-community-tomcat-env</artifactId>
<name>Development Tomcat Environment</name>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.0.2-SNAPSHOT</version>
</parent>
<properties>
<!-- Development Tomcat runtime environment configuration -->
<runtime.data.folder>${project.build.directory}/dev-instance/runtime</runtime.data.folder>
<runtime.tomcat.conf.folder>${project.build.directory}/dev-instance/tomcat</runtime.tomcat.conf.folder>
<alfresco.properties.file>${runtime.tomcat.conf.folder}/shared/classes/alfresco-global.properties</alfresco.properties.file>
</properties>
<modules>
<module>dev-tomcat</module>
<module>dev-acs-amps-overlay</module>
</modules>
</project>
-60
View File
@@ -1,60 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>alfresco-governance-services-community-distribution</artifactId>
<name>Alfresco Governance Services Community Distribution Zip</name>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
</parent>
<dependencies>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>amp</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-rest-api-explorer</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-share</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<type>amp</type>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<id>create-distribution</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>alfresco-governance-services-community-${project.version}</finalName>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/assemble/ags-distribution.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
@@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
<id>distribution-ags</id>
<formats>
<format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<useProjectArtifact>false</useProjectArtifact>
<useTransitiveDependencies>false</useTransitiveDependencies>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
</assembly>
+1 -1
View File
@@ -7,7 +7,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<dependencies>
+2 -2
View File
@@ -38,7 +38,7 @@
<!-- Share -->
<fileSet>
<directory>${project.build.directory}/dependency/alfresco-content-services-share-distribution-${dependency.acs-packaging.version}</directory>
<directory>${project.build.directory}/dependency/alfresco-content-services-share-distribution-${alfresco.share.version}</directory>
<outputDirectory/>
<includes>
<include>web-server/**</include>
@@ -47,7 +47,7 @@
</includes>
</fileSet>
<fileSet>
<directory>${project.build.directory}/dependency/alfresco-content-services-share-distribution-${dependency.acs-packaging.version}/web-extension-samples</directory>
<directory>${project.build.directory}/dependency/alfresco-content-services-share-distribution-${alfresco.share.version}/web-extension-samples</directory>
<outputDirectory>web-server/shared/classes/alfresco/web-extension</outputDirectory>
</fileSet>
</fileSets>
+1 -1
View File
@@ -4,6 +4,6 @@ Alfresco Community (Build: ${project.version})
Contains:
- Alfresco Content Services Community: ${project.version}
- Alfresco Repository: ${dependency.alfresco-community-repo.version}
- Alfresco Share: ${dependency.alfresco-community-share.version}
- Alfresco Share: ${alfresco.share.version}
For users of Alfresco Community Edition, more information on this release is available at https://community.alfresco.com/community/ecm
-29
View File
@@ -1,29 +0,0 @@
### Apply AGS community repo AMP to ACS image
FROM alfresco/alfresco-content-repository-community:${image.tag}
# Alfresco user does not have permissions to modify webapps or configuration. Switch to root.
# The access will be fixed after all operations are done.
USER root
COPY target/alfresco-governance-services-community-repo-*.amp /usr/local/tomcat/amps/
# Install amps on alfresco.war
RUN java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt*.jar install \
/usr/local/tomcat/amps \
/usr/local/tomcat/webapps/alfresco -directory -nobackup
### Copy gs-api-explorer war into webapps folder
COPY target/gs-api-explorer-*.war /usr/local/tomcat/webapps/
### Unpack gs-api-explorer.war
RUN mkdir /usr/local/tomcat/webapps/gs-api-explorer && cd /usr/local/tomcat/webapps/gs-api-explorer && \
jar -xvf /usr/local/tomcat/webapps/gs-api-explorer-*.war && rm -f /usr/local/tomcat/webapps/gs-api-explorer-*.war
# All files in the tomcat folder must be owned by root user and Alfresco group as mentioned in the parent Dockerfile
RUN chgrp -R Alfresco /usr/local/tomcat && \
find /usr/local/tomcat/webapps -type d -exec chmod 0750 {} \; && \
find /usr/local/tomcat/webapps -type f -exec chmod 0640 {} \; && \
chmod -R g+r /usr/local/tomcat/webapps
# Switching back to alfresco user after having added amps files to run the container as non-root
USER alfresco
-72
View File
@@ -1,72 +0,0 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>content-services-community-docker-ags</artifactId>
<name>Alfresco Content Services Community Docker Image Builder for AGS</name>
<description>Alfresco Governance Services Community Repository Extension</description>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-services-community-docker</artifactId>
<version>7.2.0-A7</version>
</parent>
<properties>
<image.name>alfresco/alfresco-governance-repository-community</image.name>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-war-files</id>
<phase>process-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>api-explorer</artifactId>
<version>${alfresco.api-explorer.version}</version>
<type>war</type>
<outputDirectory>${project.build.directory}/war/api-explorer</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<execution>
<id>copy-amps</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-rest-api-explorer</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>war</type>
<destFileName>gs-api-explorer-${dependency.alfresco-community-repo.version}.war</destFileName>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-repo</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<type>amp</type>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
+5 -6
View File
@@ -7,12 +7,11 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<properties>
<image.name>alfresco/alfresco-content-repository-community</image.name>
<docker.quay-expires.value>NEVER</docker.quay-expires.value>
</properties>
<build>
@@ -50,7 +49,7 @@
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-share-services</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<version>${alfresco.alfresco-share-services.version}</version>
<type>amp</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/amps</outputDirectory>
@@ -65,7 +64,7 @@
<profiles>
<profile>
<id>build-docker-images</id>
<id>communityDocker</id>
<!-- builds "image:latest" locally -->
<build>
<plugins>
@@ -94,7 +93,7 @@
</profile>
<profile>
<id>push-docker-images</id>
<id>internal</id>
<!-- publishes "image:latest" to Quay -->
<build>
<plugins>
@@ -127,7 +126,7 @@
<profile>
<id>release</id>
<!-- publishes "image:release_version" to DockerHub and Quay -->
<!-- publishes "image:release_version" to DockerHub -->
<build>
<plugins>
<plugin>
-14
View File
@@ -1,14 +0,0 @@
### Apply AGS community share AMP to Share image
FROM alfresco/alfresco-share-base:${share.image.tag}
LABEL quay.expires-after=${docker.quay-expires.value}
### Copy the AMP from build context to amps_share
COPY target/alfresco-governance-services-community-share-*.amp /usr/local/tomcat/amps_share/
### Install AMP on share
RUN java -jar /usr/local/tomcat/alfresco-mmt/alfresco-mmt*.jar install \
/usr/local/tomcat/amps_share/alfresco-governance-services-community-share-*.amp /usr/local/tomcat/webapps/share -nobackup
ENTRYPOINT ["/usr/local/tomcat/shared/classes/alfresco/substituter.sh", "catalina.sh run"]
EXPOSE 8000
-158
View File
@@ -1,158 +0,0 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>share-community-docker-ags</artifactId>
<packaging>pom</packaging>
<name>Alfresco Share Community Docker Image Builder for AGS</name>
<description>Alfresco Governance Services Share Community Extension</description>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>share-community-docker</artifactId>
<version>7.2.0-A7</version>
</parent>
<properties>
<image.name>alfresco/alfresco-governance-share-community</image.name>
<docker.quay-expires.value>NEVER</docker.quay-expires.value>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-amps</id>
<phase>process-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-governance-services-community-share</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<type>amp</type>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>build-docker-images</id>
<!-- builds "image:latest" locally -->
<build>
<plugins>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<configuration>
<images>
<image>
<name>${image.name}:${image.tag}</name>
</image>
</images>
</configuration>
<executions>
<execution>
<id>build-image</id>
<phase>install</phase>
<goals>
<goal>build</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>push-docker-images</id>
<!-- publishes "image:latest" to Quay -->
<build>
<plugins>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<configuration>
<images>
<!-- Quay image -->
<image>
<name>${image.name}:${image.tag}</name>
<registry>${image.registry}</registry>
</image>
</images>
</configuration>
<executions>
<execution>
<id>build-push-image</id>
<phase>install</phase>
<goals>
<goal>build</goal>
<goal>push</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>release</id>
<!-- publishes "image:release_version" to DockerHub and Quay -->
<build>
<plugins>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<executions>
<execution>
<id>build-push-image</id>
<phase>deploy</phase>
<configuration combine.self="override">
<images>
<!-- DockerHub image -->
<image>
<name>${image.name}:${project.version}</name>
</image>
</images>
</configuration>
<goals>
<goal>build</goal>
<goal>push</goal>
</goals>
</execution>
<execution>
<id>build-push-quay-image</id>
<phase>deploy</phase>
<configuration combine.self="override">
<images>
<!-- Quay image -->
<image>
<name>${image.name}:${project.version}</name>
<registry>${image.registry}</registry>
</image>
</images>
</configuration>
<goals>
<goal>build</goal>
<goal>push</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
-12
View File
@@ -1,12 +0,0 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>share-community-docker</artifactId>
<name>Alfresco Share Community Docker Image Builder</name>
<packaging>pom</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
</parent>
</project>
+39 -53
View File
@@ -3,29 +3,31 @@
<artifactId>acs-community-packaging</artifactId>
<packaging>pom</packaging>
<name>Alfresco Content Services Community Packaging</name>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-community-repo</artifactId>
<relativePath>../alfresco-community-repo/pom.xml</relativePath>
<version>14.33</version>
<version>10.1</version>
</parent>
<properties>
<dependency.alfresco-community-repo.version>14.33</dependency.alfresco-community-repo.version>
<dependency.alfresco-community-share.version>14.22</dependency.alfresco-community-share.version>
<dependency.acs-packaging.version>7.2.0-M1</dependency.acs-packaging.version> <!-- for Share distribution zip -->
<dependency.alfresco-community-repo.version>10.1</dependency.alfresco-community-repo.version>
<alfresco.share.version>7.0.1</alfresco.share.version>
<alfresco.alfresco-share-services.version>${alfresco.share.version}</alfresco.alfresco-share-services.version>
<alfresco.api-explorer.version>7.0.0</alfresco.api-explorer.version>
<repo.image.tag>${dependency.alfresco-community-repo.version}</repo.image.tag>
<share.image.tag>${dependency.alfresco-community-share.version}</share.image.tag>
<share.image.tag>${alfresco.share.version}</share.image.tag>
</properties>
<scm>
<connection>scm:git:https://github.com/Alfresco/acs-community-packaging.git</connection>
<developerConnection>scm:git:https://github.com/Alfresco/acs-community-packaging.git</developerConnection>
<url>https://github.com/Alfresco/acs-community-packaging</url>
<tag>7.2.0-A7</tag>
<tag>HEAD</tag>
</scm>
<distributionManagement>
@@ -39,42 +41,30 @@
</snapshotRepository>
</distributionManagement>
<repositories>
<repository>
<id>alfresco-public</id>
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>alfresco-public-snapshots</id>
<url>https://artifacts.alfresco.com/nexus/content/groups/public-snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<modules>
<module>distribution</module>
<module>docker-alfresco</module>
<module>docker-share</module>
</modules>
<profiles>
<profile>
<id>ags</id>
<id>fullBuild</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<modules>
<module>distribution-ags</module>
<module>docker-alfresco/ags</module>
<module>docker-share/ags</module>
<module>distribution</module>
<module>public-javadoc</module>
<module>docker-alfresco</module>
</modules>
</profile>
<profile>
<id>communityDocker</id>
<modules>
<module>distribution</module>
<module>docker-alfresco</module>
</modules>
</profile>
<profile>
<id>internal</id>
<modules>
<module>distribution</module>
<module>docker-alfresco</module>
</modules>
</profile>
<profile>
@@ -86,8 +76,8 @@
<profile>
<id>release</id>
<modules>
<module>public-javadoc</module>
<module>dev</module>
<module>distribution</module>
<module>docker-alfresco</module>
</modules>
</profile>
<profile>
@@ -159,11 +149,6 @@
<artifactId>alfresco-community-repo-distribution</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-mmt</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
</dependency>
<dependency>
<groupId>org.alfresco.tas</groupId>
@@ -200,40 +185,41 @@
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-content-services-share-distribution</artifactId>
<version>${dependency.acs-packaging.version}</version>
<version>${alfresco.share.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-share-services</artifactId>
<version>${dependency.alfresco-community-repo.version}</version>
<version>${alfresco.alfresco-share-services.version}</version>
<type>amp</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>share</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<version>${alfresco.share.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-wcmqs-distribution</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<version>${alfresco.share.version}</version>
<type>zip</type>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-wcmqs-web</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<version>${alfresco.share.version}</version>
<classifier>classes</classifier>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-wcmqs-client-api</artifactId>
<version>${dependency.alfresco-community-share.version}</version>
<version>${alfresco.share.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
+2 -2
View File
@@ -5,7 +5,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<packaging>pom</packaging>
@@ -23,7 +23,7 @@
<groupId>org.alfresco</groupId>
<artifactId>share</artifactId>
<classifier>classes</classifier>
<version>${dependency.alfresco-community-share.version}</version>
<version>${alfresco.share.version}</version>
</dependency>
<!-- Downloads the docflex license -->
-52
View File
@@ -1,52 +0,0 @@
#!/usr/bin/env bash
function updatePomParent() {
local PROJECT="$1"
local PARENT_POM_VERSION="$2"
if [ -d "${ROOT_DIR}/${PROJECT}" -a -n "${PARENT_POM_VERSION}" ]
then
# Cannot use "mvn versions:update-parent" as the version must exist before it can be set. The ed command is also faster.
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
ed -s pom.xml &>/tmp/$$.log << EOF
/<parent>
/<version>.*<\/version>/s//<version>${PARENT_POM_VERSION}<\/version>/
wq
EOF
if [ $? -ne 0 ]
then
echo
echo "\"update of <pom><parent><version> version failed on ${PROJECT}"
cat "/tmp/$$.log"
exit 1
fi
printf "%-25s %46s=%s\n" "${PROJECT}" "<pom><parent><version>" "${PARENT_POM_VERSION}"
popd &>/dev/null
fi
}
function updatePomProperty() {
local PROJECT="$1"
local PROPERTY_VALUE="$2"
local PROPERTY_NAME="$3"
if [ -d "${ROOT_DIR}/${PROJECT}" -a -n "${PROPERTY_VALUE}" ]
then
# Can use "mvn versions:set-property", but ed is so much faster.
# mvn -B versions:set-property versions:commit -Dproperty="${PROPERTY_NAME}" "-DnewVersion=${PROPERTY_VALUE}"
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
ed -s pom.xml &>/tmp/$$.log << EOF
/\(<${PROPERTY_NAME}>\).*\(<\/${PROPERTY_NAME}>\)/s//\1${PROPERTY_VALUE}\2/
wq
EOF
if [ $? -ne 0 ]
then
echo
echo "\"update of <${PROPERTY_NAME}> failed on ${PROJECT}"
cat "/tmp/$$.log"
exit 1
fi
printf "%-25s %46s=%s\n" "${PROJECT}" "<${PROPERTY_NAME}>" "${PROPERTY_VALUE}"
popd &>/dev/null
fi
}
-245
View File
@@ -1,245 +0,0 @@
#!/usr/bin/env bash
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="${SCRIPT_DIR}/../../.."
ENV_FILE=".linkPoms.env"
ENV_PATH="${ROOT_DIR}/${ENV_FILE}"
source "$(dirname "${BASH_SOURCE[0]}")/dev_functions.sh"
usage() {
echo "Updates the downstream projects with the versions of the upstream projects. Reversed by unlinkPoms.sh" 1>&2;
echo 1>&2;
echo "Usage: $0 [-b <branch>] [-mpxuh]" 1>&2;
echo " -m: Checkout master of each project" 1>&2;
echo " -b: Checkout the <branch> of each project or master if <branch> is blank" 1>&2;
echo " -p: Pull the latest version of each project" 1>&2;
echo " -x: Skip the extract of values from each project" 1>&2;
echo " -u: Skip the update of values in each project" 1>&2;
echo " -h: Display this help" 1>&2;
exit 1;
}
function checkout() {
local PROJECT="${1}"
local BRANCH="${2}"
if [ -d "${ROOT_DIR}/${PROJECT}" ]
then
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
git checkout "${BRANCH}" &>/tmp/$$.log
if [ $? -ne 0 ]
then
echo
echo "\"git checkout ${BRANCH}\" failed on ${PROJECT}"
cat "/tmp/$$.log"
exit 1
fi
echo "${PROJECT} is now on ${BRANCH}"
popd &>/dev/null
fi
}
function pull_latest() {
local PROJECT="${1}"
if [ -d "${ROOT_DIR}/${PROJECT}" ]
then
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
git pull &>/tmp/$$.log
if [ $? -ne 0 ]
then
echo
echo "\"git pull\" failed on ${PROJECT}"
cat "/tmp/$$.log"
exit 1
fi
echo "${PROJECT} is now using latest"
popd &>/dev/null
fi
}
function readTopLevelTag() {
local TAG_NAME="${1}"
local POM_FILE="${2}"
# Might be possible to generalise this function to accept an XPath so it could be used in place of sed commands
# Read the file with an IFS (Input Field Separator) of the start of XML tag character <
local IFS=\>
local DEPTH=-99
while read -d \< ENTITY CONTENT
do
if [[ $ENTITY == project\ * ]] # outer <project> tag
then
DEPTH=0
elif [[ $ENTITY == /* ]] # end tag
then
((DEPTH=DEPTH-1))
else # start tag
((DEPTH=DEPTH+1))
fi
if [[ $ENTITY = "${TAG_NAME}" ]] && [[ $DEPTH == 1 ]] ; then
echo $CONTENT
exit
fi
done < $POM_FILE
exit 1
}
function exportPomVersion() {
local PROJECT="${1}"
local ENV_NAME="${2}"
if [ -d "${ROOT_DIR}/${PROJECT}" ]
then
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
# Same as slower/simpler: "mvn help:evaluate -Dexpression=project.version"
VERSION=$(readTopLevelTag version pom.xml)
if [ $? -ne 0 ]
then
echo
echo "\"readTopLevelTagContent version pom.xml\" failed on ${PROJECT}"
exit 1
fi
echo "export ${ENV_NAME}=${VERSION}" >> "${ENV_PATH}"
popd &>/dev/null
fi
}
function exportPomParent() {
local PROJECT="${1}"
local ENV_NAME="${2}"
if [ -d "${ROOT_DIR}/${PROJECT}" ]
then
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
# Same as slower/simpler: "mvn help:evaluate -Dexpression=project.parent.version"
PROPERTY_VALUE=$(sed -n '/<parent>/,/<\/parent>/p' pom.xml | sed -n "s/.*<version>\(.*\)<\/version>/\1/p" | sed 's/\r//g')
if [ $? -ne 0 ]
then
echo
echo "\"sed -n '/<parent>/,/<\/parent>/p' pom.xml | sed -n \\\"s/.*<version>\(.*\)<\/version>/\1/p\\\" | sed 's/\r//g'\" failed on ${PROJECT}"
exit 1
fi
echo "export ${ENV_NAME}=${PROPERTY_VALUE}" >> "${ENV_PATH}"
popd &>/dev/null
fi
}
# Original version was simpler/slower: exportPomPropertyOrig <project> <env_name> project.parent.version
function exportPomProperty() {
local PROJECT="${1}"
local ENV_NAME="${2}"
local PROPERTY_NAME="${3}"
if [ -d "${ROOT_DIR}/${PROJECT}" ]
then
pushd "${ROOT_DIR}/${PROJECT}" &>/dev/null
# Same as slower/simpler: "mvn help:evaluate -Dexpression=${PROPERTY_NAME}"
PROPERTY_VALUE=$(sed -n '/<properties>/,/<\/properties>/p' pom.xml | sed -n "s/.*<${PROPERTY_NAME}>\(.*\)<\/${PROPERTY_NAME}>/\1/p" | sed 's/\r//g')
if [ $? -ne 0 ]
then
echo
echo "\"sed -n '/<properties>/,/<\/properties>/p' pom.xml | sed -n \\\"s/.*<${PROPERTY_NAME}>\(.*\)<\/${PROPERTY_NAME}>/\1/p\\\" | sed 's/\r//g'\" failed on ${PROJECT}"
exit 1
fi
echo "export ${ENV_NAME}=${PROPERTY_VALUE}" >> "${ENV_PATH}"
popd &>/dev/null
fi
}
while getopts "b:mpxuh" arg; do
case $arg in
b)
B_FLAG_SET="true"
;;
m)
M_FLAG_B_FLAG_SET="true"
;;
p)
# git pull after git checkout
;;
x)
SKIP_EXPORT="true"
;;
u)
SKIP_UPDATE="true"
;;
h | *)
usage
exit 0
;;
esac
done
if [ -n "${B_FLAG_SET}" -a -n "${M_FLAG_B_FLAG_SET}" ]
then
echo "-m and -b may not both be set"
exit 1
fi
OPTIND=1
while getopts "b:mpxuh" arg; do
case $arg in
b)
BRANCH="${OPTARG:-master}"
checkout alfresco-community-repo "${BRANCH}"
checkout alfresco-community-share "${BRANCH}"
checkout acs-community-packaging "${BRANCH}"
;;
m)
BRANCH="master"
checkout alfresco-community-repo "${BRANCH}"
checkout alfresco-community-share "${BRANCH}"
checkout acs-community-packaging "${BRANCH}"
;;
esac
done
OPTIND=1
while getopts "b:mpxuh" arg; do
case $arg in
p)
pull_latest alfresco-community-repo
pull_latest alfresco-community-share
pull_latest acs-community-packaging
;;
esac
done
if [ -z ${SKIP_EXPORT+x} ]
then
rm -f "${ENV_FILE}"
exportPomVersion alfresco-community-repo COM_R_VERSION
exportPomVersion alfresco-enterprise-repo ENT_R_VERSION
exportPomParent alfresco-enterprise-repo ENT_R_PARENT
exportPomProperty alfresco-enterprise-repo ENT_R_DEP_COM_R dependency.alfresco-community-repo.version
exportPomVersion alfresco-community-share COM_S_VERSION
exportPomProperty alfresco-community-share COM_S_DEP_COM_R dependency.alfresco-community-repo.version
exportPomProperty alfresco-community-share COM_S_DEP_ENT_R dependency.alfresco-enterprise-repo.version
exportPomVersion acs-community-packaging COM_P_VERSION
exportPomParent acs-community-packaging COM_P_PARENT
exportPomProperty acs-community-packaging COM_P_DEP_COM_R dependency.alfresco-community-repo.version
exportPomProperty acs-community-packaging COM_P_DEP_COM_S dependency.alfresco-community-share.version
cat "${ENV_FILE}"
fi
if [ -z ${SKIP_UPDATE+x} ]
then
if [ ! -f "${ENV_FILE}" ]
then
echo ""${ENV_FILE}" does not exist."
exit 1
fi
source "${ENV_FILE}"
updatePomProperty alfresco-community-share "$COM_R_VERSION" dependency.alfresco-community-repo.version
updatePomParent acs-community-packaging "$COM_R_VERSION"
updatePomProperty acs-community-packaging "$COM_R_VERSION" dependency.alfresco-community-repo.version
updatePomProperty acs-community-packaging "$COM_S_VERSION" dependency.alfresco-community-share.version
fi
-37
View File
@@ -1,37 +0,0 @@
#!/usr/bin/env bash
set -o errexit
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="${SCRIPT_DIR}/../../.."
ENV_FILE=".linkPoms.env"
source "$(dirname "${BASH_SOURCE[0]}")/dev_functions.sh"
usage() {
echo "Reverts changes made by linkPoms.sh using values stored in ${ENV_FILE}" 1>&2;
echo 1>&2;
echo "Usage: $0 [-h]" 1>&2;
echo " -h: Display this help" 1>&2;
exit 1;
}
while getopts "lh" arg; do
case $arg in
l)
LOGGING_OUT=`tty`
;;
h | *)
usage
exit 0
;;
esac
done
source ${ENV_FILE}
updatePomProperty alfresco-community-share "$COM_S_DEP_COM_R" dependency.alfresco-community-repo.version
updatePomParent acs-community-packaging "$COM_P_PARENT"
updatePomProperty acs-community-packaging "$COM_P_DEP_COM_R" dependency.alfresco-community-repo.version
updatePomProperty acs-community-packaging "$COM_P_DEP_COM_S" dependency.alfresco-community-share.version
+16 -34
View File
@@ -6,63 +6,45 @@ pushd "$(dirname "${BASH_SOURCE[0]}")/../../"
source "$(dirname "${BASH_SOURCE[0]}")/build_functions.sh"
COM_DEPENDENCY_VERSION="$(retrievePomProperty "dependency.alfresco-community-repo.version")"
REPO_IMAGE=$([[ "${COM_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && echo "-Drepo.image.tag=latest" || echo)
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 [ "${COM_DEPENDENCY_VERSION}" != "$(retrievePomParentVersion)" ]; then
printf "Upstream dependency version (%s) is different then the project parent version!\n" "${COM_DEPENDENCY_VERSION}"
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) && "${COM_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ && "${TRAVIS_BRANCH}" =~ ^master$|^release/.+$ ]] ; then
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
# Prevent release jobs from starting when there are SNAPSHOT upstream dependencies
if [[ "${COM_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && [ "${TRAVIS_BUILD_STAGE_NAME,,}" = "release" ] ; then
if [[ "${DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && [ "${TRAVIS_BUILD_STAGE_NAME,,}" = "release" ] ; then
printf "Cannot release project with SNAPSHOT dependencies!\n"
exit 1
fi
UPSTREAM_REPO="github.com/Alfresco/alfresco-community-repo.git"
# For release jobs, check if the upstream dependency is the latest tag on the upstream repository (on the same branch)
if isBranchBuild && [ "${TRAVIS_BUILD_STAGE_NAME,,}" = "release" ] && [ "${DEPENDENCY_VERSION}" != "$(retieveLatestTag "${UPSTREAM_REPO}" "${TRAVIS_BRANCH}")" ] ; then
printf "Upstream dependency is not up to date with %s / %s\n" "${UPSTREAM_REPO}" "${TRAVIS_BRANCH}"
exit 1
fi
# Search, checkout and build the same branch on the upstream project in case of SNAPSHOT dependencies
# Otherwise, checkout the upstream tag and build its Docker image (use just "mvn package", without "mvn install")
if [[ "${COM_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] ; then
pullAndBuildSameBranchOnUpstream "${UPSTREAM_REPO}" "-Pbuild-docker-images -Pags"
if [[ "${DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] ; then
pullAndBuildSameBranchOnUpstream "${UPSTREAM_REPO}" "-PcommunityDocker"
else
pullUpstreamTagAndBuildDockerImage "${UPSTREAM_REPO}" "${COM_DEPENDENCY_VERSION}" "-Pbuild-docker-images -Pags"
fi
SHARE_DEPENDENCY_VERSION="$(retrievePomProperty "dependency.alfresco-community-share.version")"
SHARE_IMAGE=$([[ "${SHARE_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && echo "-Dshare.image.tag=latest" || echo)
# Prevent merging of any SNAPSHOT dependencies into the master or the release/* branches
if [[ $(isPullRequestBuild) && "${SHARE_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
# Prevent release jobs from starting when there are SNAPSHOT upstream dependencies
if [[ "${SHARE_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && [ "${TRAVIS_BUILD_STAGE_NAME,,}" = "release" ] ; then
printf "Cannot release project with SNAPSHOT dependencies!\n"
exit 1
fi
SHARE_UPSTREAM_REPO="github.com/Alfresco/alfresco-community-share.git"
# Checkout the upstream share project (tag or branch; + build if the latter)
if [[ "${SHARE_DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] ; then
pullAndBuildSameBranchOnUpstream "${SHARE_UPSTREAM_REPO}" "-Pbuild-docker-images -Pags -Ddocker.quay-expires.value=NEVER ${REPO_IMAGE} -Ddependency.alfresco-community-repo.version=${COM_DEPENDENCY_VERSION}"
else
pullUpstreamTagAndBuildDockerImage "${SHARE_UPSTREAM_REPO}" "${SHARE_DEPENDENCY_VERSION}" "-Pbuild-docker-images -Pags -Ddocker.quay-expires.value=NEVER -Ddependency.alfresco-community-repo.version=${COM_DEPENDENCY_VERSION}"
pullUpstreamTagAndBuildDockerImage "${UPSTREAM_REPO}" "${DEPENDENCY_VERSION}" "-PcommunityDocker"
fi
# Build the current project
mvn -B -V -q install -DskipTests -Dmaven.javadoc.skip=true -Pbuild-docker-images -Pags ${REPO_IMAGE} ${SHARE_IMAGE}
mvn -B -V -q install -DskipTests -Dmaven.javadoc.skip=true -PcommunityDocker \
$([[ "${DEPENDENCY_VERSION}" =~ ^.+-SNAPSHOT$ ]] && echo "-Drepo.image.tag=latest")
popd
@@ -1,27 +0,0 @@
#!/usr/bin/env bash
echo "=========================== Starting Copy to Release Bucket Script ==========================="
PS4="\[\e[35m\]+ \[\e[m\]"
set -vex
#
# Copy from S3 Release bucket to S3 eu.dl bucket
#
if [ -z "${RELEASE_VERSION}" ]; then
echo "Please provide a RELEASE_VERSION in the format <acs-version>-<additional-info> (7.2.0-EA or 7.2.0-SNAPSHOT)"
exit 1
fi
SOURCE="s3://alfresco-artefacts-staging/community/RM/${RELEASE_VERSION}"
DESTINATION="s3://eu.dl.alfresco.com/release/community/RM/${RELEASE_VERSION}"
printf "\n%s\n%s\n" "${SOURCE}" "${DESTINATION}"
aws s3 cp --acl private \
"${SOURCE}/alfresco-governance-services-community-${RELEASE_VERSION}.zip" \
"${DESTINATION}/alfresco-governance-services-community-${RELEASE_VERSION}.zip"
set +vex
echo "=========================== Finishing Copy to Release Bucket Script =========================="
+6 -3
View File
@@ -8,12 +8,15 @@ set -vex
#
if [ -z "${RELEASE_VERSION}" ]; then
echo "Please provide a RELEASE_VERSION in the format <acs-version>-<additional-info> (7.2.0-EA or 7.2.0-SNAPSHOT)"
echo "Please provide a RELEASE_VERSION in the format <acs-version>-<additional-info> (7.0.2-EA or 7.0.2-SNAPSHOT)"
exit 1
fi
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}"
BUILD_NUMBER="$(aws s3 ls --recursive s3://alfresco-artefacts-staging/alfresco-content-services-community/release/${TRAVIS_BRANCH}/ | grep 'alfresco.war' | awk '{print $4}' | cut -d/ -f5 | sort -n -r | head -1)"
echo "Release Build Number: ${BUILD_NUMBER}"
SOURCE="s3://alfresco-artefacts-staging/alfresco-content-services-community/release/${TRAVIS_BRANCH}/${BUILD_NUMBER}"
DESTINATION="s3://eu.dl.alfresco.com/release/community/${RELEASE_VERSION}-build-${BUILD_NUMBER}"
printf "\n%s\n%s\n" "${SOURCE}" "${DESTINATION}"
+7 -2
View File
@@ -9,8 +9,13 @@ 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 "${DOCKERHUB_PASSWORD}" | docker login -u="${DOCKERHUB_USERNAME}" --password-stdin
echo "${QUAY_PASSWORD}" | docker login -u="${QUAY_USERNAME}" --password-stdin quay.io
if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
echo "${DOCKERHUB_PASSWORD}" | docker login -u="${DOCKERHUB_USERNAME}" --password-stdin
echo "${QUAY_PASSWORD}" | docker login -u="${QUAY_USERNAME}" --password-stdin quay.io
fi
# not helpful in this script
# export HOST_IP=$(hostname -I | cut -f1 -d' ')
popd
set +vex
+3 -3
View File
@@ -6,7 +6,7 @@ pushd "$(dirname "${BASH_SOURCE[0]}")/../../"
if [ -z "${RELEASE_VERSION}" ] || [ -z "${DEVELOPMENT_VERSION}" ]; then
echo "Please provide a Release and Development version in the format <acs-version>-<additional-info> (7.2.0-EA or 7.2.0-SNAPSHOT)"
echo "Please provide a Release and Development version in the format <acs-version>-<additional-info> (7.0.2-EA or 7.0.2-SNAPSHOT)"
exit 1
fi
@@ -16,10 +16,10 @@ git checkout -B "${TRAVIS_BRANCH}"
git config user.email "${GIT_EMAIL}"
mvn -B \
-Prelease,all-tas-tests -Pags \
-Prelease,fullBuild,all-tas-tests \
-DreleaseVersion="${RELEASE_VERSION}" \
-DdevelopmentVersion="${DEVELOPMENT_VERSION}" \
"-Darguments=-Prelease,all-tas-tests -Pags -DskipTests -Dbuild-number=${TRAVIS_BUILD_NUMBER}" \
"-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}" \
+1 -1
View File
@@ -9,7 +9,7 @@ pushd "$(dirname "${BASH_SOURCE[0]}")/../../"
#
if [ -z "${RELEASE_VERSION}" ]; then
echo "Please provide a RELEASE_VERSION in the format <acs-version>-<additional-info> (7.2.0-EA or 7.2.0-SNAPSHOT)"
echo "Please provide a RELEASE_VERSION in the format <acs-version>-<additional-info> (7.0.2-EA or 7.0.2-SNAPSHOT)"
exit 1
fi
+2 -2
View File
@@ -1,4 +1,4 @@
TRANSFORMERS_TAG=2.5.4
TRANSFORMERS_TAG=2.4.0
SOLR6_TAG=2.0.2
POSTGRES_TAG=13.3
POSTGRES_TAG=13.1
ACTIVEMQ_TAG=5.16.1
+1 -2
View File
@@ -6,7 +6,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>acs-community-packaging</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<modules>
@@ -15,7 +15,6 @@
<module>tas-email</module>
<module>tas-webdav</module>
<module>tas-integration</module>
<module>tas-distribution-zip</module>
</modules>
<properties>
+1 -1
View File
@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-repository-community-tests</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<developers>
-76
View File
@@ -1,76 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.alfresco.tas</groupId>
<artifactId>content-repository-community-distribution-test</artifactId>
<name>Community Distribution test</name>
<packaging>jar</packaging>
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-repository-community-tests</artifactId>
<version>7.2.0-A7</version>
</parent>
<properties>
<dependency.assertj-core.version>3.13.2</dependency.assertj-core.version>
<suiteXmlFile>${project.basedir}/src/test/resources/distribution-suite.xml</suiteXmlFile>
</properties>
<dependencies>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.13.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.alfresco.tas</groupId>
<artifactId>restapi</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-model</artifactId>
<version>3.8.2</version>
</dependency>
</dependencies>
<profiles>
<profile>
<id>run-distribution-zip-contents-check</id>
<properties>
<suiteXmlFile>${project.basedir}/src/test/resources/distribution-suite.xml</suiteXmlFile>
</properties>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
</suiteXmlFiles>
<argLine>
--illegal-access=warn
</argLine>
</configuration>
</plugin>
<!-- Build only test jar -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
@@ -1,134 +0,0 @@
/*
* #%L
* Alfresco Remote API
* %%
* Copyright (C) 2005 - 2021 Alfresco Software Limited
* %%
* This file is part of the Alfresco software.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* Alfresco is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* Alfresco is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
* #L%
*/
package org.alfresco.distribution;
import org.testng.annotations.Test;
import static org.assertj.core.api.Assertions.assertThat;
import java.io.File;
import java.io.FileReader;
import java.io.FilenameFilter;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import org.apache.maven.model.Model;
import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
public class CheckDistributionZipContents
{
public static final String ACS_PREFIX = "alfresco-content-services-community-distribution";
public static final String ACS_DIR_NAME = "distribution";
public static final String AGS_PREFIX = "alfresco-governance-services-community";
public static final String AGS_DIR_NAME = "distribution-ags";
public static final String FORMAT = ".zip";
@Test
public void testAcsDistributionZipContents() throws Exception
{
File filesList[] = getDistributionZip(ACS_DIR_NAME, ACS_PREFIX);
for (File file : filesList)
{
List<String> zipEntries = getZipEntries(file.getAbsolutePath());
assertThat(zipEntries).
contains(
"keystore/metadata-keystore/keystore-passwords.properties",
"keystore/metadata-keystore/keystore",
"keystore/generate_keystores.bat",
"keystore/generate_keystores.sh",
"bin/alfresco-mmt.jar",
"bin/apply_amps.bat",
"bin/apply_amps.sh",
"web-server/webapps/ROOT.war",
"web-server/webapps/alfresco.war",
"web-server/webapps/share.war",
"web-server/webapps/_vti_bin.war",
"web-server/conf/Catalina/localhost/alfresco.xml",
"web-server/shared/classes/alfresco/web-extension/share-config-custom.xml"
);
}
}
@Test
public void testAgsDistributionZipContents() throws Exception
{
String repoVersion = getPomValues().getProperties().getProperty("dependency.alfresco-community-repo.version");
String shareVersion = getPomValues().getProperties().getProperty("dependency.alfresco-community-share.version");
File filesList[] = getDistributionZip(AGS_DIR_NAME, AGS_PREFIX);
for (File file : filesList)
{
List<String> zipEntries = getZipEntries(file.getAbsolutePath());
assertThat(zipEntries).
contains(
"alfresco-governance-services-community-repo-" + repoVersion + ".amp",
"alfresco-governance-services-community-rest-api-explorer-" + repoVersion + ".war",
"alfresco-governance-services-community-share-" + shareVersion + ".amp"
);
}
}
private File[] getDistributionZip(String dirName, String prefix) throws Exception
{
String resourcePath = Paths.get("").toAbsolutePath().getParent().getParent().toString() + "/" + dirName + "/" + "target" + "/";
File distributionZip = new File(resourcePath);
FilenameFilter zipFileFilter = (dir, name) -> {
if (name.startsWith(prefix) && name.endsWith(FORMAT))
{
return true;
}
else
{
return false;
}
};
return distributionZip.listFiles(zipFileFilter);
}
private List<String> getZipEntries(String filePath) throws Exception
{
List<String> zipEntries = new ArrayList<>();
ZipFile zipFile = new ZipFile(new File(filePath));
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements())
{
ZipEntry entry = entries.nextElement();
zipEntries.add(entry.toString());
}
return zipEntries;
}
private Model getPomValues() throws Exception
{
String parentPom = Paths.get("").toAbsolutePath().getParent().getParent().toString() + "/pom.xml";
MavenXpp3Reader reader = new MavenXpp3Reader();
Model model = reader.read(new FileReader(parentPom));
return model;
}
}
@@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Alfresco tests Community Distribution Zip" preserve-order="true" verbose="1">
<test name="distribution" verbose="3" preserve-order="true">
<classes>
<class name="org.alfresco.distribution.CheckDistributionZipContents"></class>
</classes>
</test>
</suite>
+1 -1
View File
@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-repository-community-tests</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<developers>
@@ -25,6 +25,6 @@ public class ImapReadMessagesAcsTests extends EmailTest
{
dataWiki.usingUser(testUser).usingSite(testSite).createRandomWiki();
/* @Category(IntermittentlyFailingTests.class) ACS-959 Intermittent failure on next line. @Category not supported by TAS tests. */
// ACS-2268 comment out: imapProtocol.authenticateUser(testUser).usingSiteWikiContainer(testSite).assertThat().countMessagesIs(1);
imapProtocol.authenticateUser(testUser).usingSiteWikiContainer(testSite).assertThat().countMessagesIs(1);
}
}
+2 -2
View File
@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-repository-community-tests</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<developers>
@@ -101,7 +101,7 @@
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<version>${dependency.jakarta-json-path.version}</version>
<version>2.5.0</version>
</dependency>
</dependencies>
+1 -1
View File
@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-repository-community-tests</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<developers>
+1 -1
View File
@@ -9,7 +9,7 @@
<parent>
<groupId>org.alfresco</groupId>
<artifactId>content-repository-community-tests</artifactId>
<version>7.2.0-A7</version>
<version>7.0.2-SNAPSHOT</version>
</parent>
<developers>