Compare commits

..

11 Commits

Author SHA1 Message Date
dependabot[bot]
551ce8aa88 Bump commons-net from 3.6 to 3.9.0 in /plugins/alfresco-maven-plugin
Bumps commons-net from 3.6 to 3.9.0.

---
updated-dependencies:
- dependency-name: commons-net:commons-net
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-06 00:41:44 +00:00
George Evangelopoulos
9a5e70f324 MNT-22384: Inline keystore settings to avoid invalid docker-compose file (#644) 2022-11-08 15:43:15 +00:00
pzurek
b57196f46e Add maven central repo configuration 2022-10-27 13:43:19 +02:00
Piotr Żurek
a565f66c76 Merge pull request #643 from Alfresco/configure-maven-central
Add maven central repo configuration
2022-10-27 13:04:25 +02:00
pzurek
b3808e3e8b Add maven central repo configuration 2022-10-27 12:43:00 +02:00
kmagdziarz
3f51507ea7 4.6.0-SNAPSHOT 2022-10-27 10:57:09 +02:00
Kacper Magdziarz
0a082f3bfc SDK 4.5
Add tests for ACS 7.3.
Add java 17 profile.

Co-authored-by: Grzegorz Oleksy <grzegorz.oleksy@hyland.com>
Co-authored-by: mstrankowski <marcin.strankowski@hyland.com>
2022-10-27 10:11:59 +02:00
Vítor Moreira
35e2800858 MNT-22946: version bump of acs-*-packaging and share (#637)
* MNT-22946: version bump of acs-*-packaging and share
* MNT-22946: updated ACS 7.2.1 versions
* MNT-22946: updated ACS 7.1.1 versions
* MNT-22946: updated ACS 7.0.1 versions
2022-09-29 13:52:39 +01:00
Kacper Magdziarz
4a56544cad ACS-3556 Add maven profile for Java 17 (#640)
* ACS-3556 Add maven profile for Java 17

* ACS-3556 Add range up to java 17 for java 11 profile.
2022-09-16 12:42:51 +02:00
Andrea Ligios
9c2ac0c956 Update README.md 2022-03-25 18:18:01 +01:00
Alex Mukha
8d407356b7 REPO-5711 Fix repository to Search services comms (#634)
The Search Services is now using a new default "secret" communication method.
The changes also have updates to use the latest Search Services version (2.0.3)
2022-03-23 18:18:22 +01:00
23 changed files with 261 additions and 138 deletions

View File

@@ -6,6 +6,10 @@ import:
dist: focal
jdk:
- openjdk17
- openjdk11
git:
depth: false
quiet: true
@@ -15,7 +19,7 @@ branches:
- master
- /feature\/.*/
- /fix\/.*/
- sdk-4.4
- sdk-4.5
stages:
- name: test
@@ -29,38 +33,74 @@ env:
jobs:
include:
- name: "current version"
- name: "current version Java 17"
stage: test
script:
jdk: openjdk17
script:
- ${MAVEN_INSTALL_CMD}
- name: "current version Java 11"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD}
- name: "7.3 Enterprise Java 17"
stage: test
jdk: openjdk17
script:
- ${MAVEN_INSTALL_CMD} -Penterprise-73-tests
- name: "7.3 Community Java 17"
stage: test
jdk: openjdk17
script:
- ${MAVEN_INSTALL_CMD} -Pcommunity-73-tests
- name: "7.3 Enterprise Java 11"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Penterprise-73-tests
- name: "7.3 Community Java 11"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Pcommunity-73-tests
- name: "7.2 Enterprise"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Penterprise-72-tests
- name: "7.2 Community"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Pcommunity-72-tests
- name: "7.1 Enterprise"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Penterprise-71-tests
- name: "7.1 Community"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Pcommunity-71-tests
- name: "7.0 Enterprise"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Penterprise-70-tests
- name: "7.0 Community"
stage: test
jdk: openjdk11
script:
- ${MAVEN_INSTALL_CMD} -Pcommunity-70-tests

View File

@@ -13,10 +13,9 @@ and [Test Driven Development (TDD)](https://en.wikipedia.org/wiki/Test-driven_de
This project is released under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html) license.
If you are an Enterprise customer check the [Support](#alfresco-enterprise-customers-and-partners-support) section.
## News
- 2022-10: Alfresco SDK 4.5.0 released
- 2022-03: Alfresco SDK 4.4.0 released
- 2021-10: Alfresco SDK 4.3.0 released
- 2021-02: Alfresco SDK 4.2.0 released
@@ -77,9 +76,9 @@ the `alfresco.log` file has also been moved to a more appropriate location (Tomc
In Q4 2020, Alfresco Platform has undergone a major structural refactoring.
Depending on the Platform version desired, you might need to use SDK 4.1 or SDK 4.3 instead of SDK 4.4.
Depending on the Platform version desired, you might need to use SDK 4.1, 4.3 or SDK 4.4 instead of SDK 4.5.
- For Enterprise and Community versions of 7.x, SDK 4.4 must be used
- For Enterprise and Community versions of 7.x, SDK 4.4 or higher must be used
- For Enterprise versions of 6.0.x, 6.1.x, 6.2.x newer than November 2020, SDK 4.3 must be used
- For Enterprise and Community versions of 6.0.x, 6.1.x, 6.2.x older than November 2020, SDK 4.1 must be used
@@ -91,22 +90,23 @@ It's also important to remember that:
- Enterprise Docker images are published on *Quay.io*
### Latest Documentation
To get started with **Alfresco SDK 4.4.x** (latest) visit the [Alfresco Documentation](docs/README.md).
To get started with **Alfresco SDK 4.5.x** (latest) visit the [Alfresco Documentation](docs/README.md).
#### Documentation about Previous Versions
| SDK Version | Alfresco Enterprise Version | Alfresco Community Version | Documentation |
| ------------- |:-------------:| :-----:|:-----|
| SDK 4.4 | Alfresco 7.0.x / 7.1.x / 7.2.x | Alfresco 7.0.x / 7.1.x / 7.2.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.3 | Alfresco 6.0.x / 6.1.x / 6.2.x / 7.0.x / 7.1.x | Alfresco 7.0.x / 7.1.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.2 | Alfresco 6.0.x / 6.1.x / 6.2.x / 7.0.x | Alfresco 7.0.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.1 | Alfresco 6.0.x / 6.1.x / 6.2.x | Alfresco 6.0.x / 6.1.x / 6.2.x | https://github.com/Alfresco/alfresco-sdk/blob/sdk-4.1/docs/README.md |
| SDK 4.0 | Alfresco 6.0.x / 6.1.x | Alfresco 6.0.x / 6.1.x | https://github.com/Alfresco/alfresco-sdk/blob/sdk-4.0/docs/README.md |
| SDK 3.1 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/sdk-intro.html |
| SDK 3.0 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/sdk-intro.html |
| SDK 2.2 | Alfresco 5.1.x | Alfresco 5.1.x | https://docs.alfresco.com/5.1/concepts/alfresco-sdk-intro.html |
| SDK 2.1 | Alfresco 5.0.1 | Alfresco 5.0.d | https://docs.alfresco.com/sdk2.1/concepts/alfresco-sdk-intro.html |
| SDK 2.0 | Alfresco 5.0.0 | Alfresco 5.0.c | https://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html |
| SDK 1.1.1 | Alfresco 4.2.x | Alfresco 4.2.x | https://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-intro.html |
| SDK Version | Alfresco Enterprise Version | Alfresco Community Version | Documentation |
|-------------|:----------------------------------------------:|:--------------------------------------:|:-----|
| SDK 4.5 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.4 | Alfresco 7.0.x / 7.1.x / 7.2.x | Alfresco 7.0.x / 7.1.x / 7.2.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.3 | Alfresco 6.0.x / 6.1.x / 6.2.x / 7.0.x / 7.1.x | Alfresco 7.0.x / 7.1.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.2 | Alfresco 6.0.x / 6.1.x / 6.2.x / 7.0.x | Alfresco 7.0.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.1 | Alfresco 6.0.x / 6.1.x / 6.2.x | Alfresco 6.0.x / 6.1.x / 6.2.x | https://github.com/Alfresco/alfresco-sdk/blob/sdk-4.1/docs/README.md |
| SDK 4.0 | Alfresco 6.0.x / 6.1.x | Alfresco 6.0.x / 6.1.x | https://github.com/Alfresco/alfresco-sdk/blob/sdk-4.0/docs/README.md |
| SDK 3.1 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/sdk-intro.html |
| SDK 3.0 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/sdk-intro.html |
| SDK 2.2 | Alfresco 5.1.x | Alfresco 5.1.x | https://docs.alfresco.com/5.1/concepts/alfresco-sdk-intro.html |
| SDK 2.1 | Alfresco 5.0.1 | Alfresco 5.0.d | https://docs.alfresco.com/sdk2.1/concepts/alfresco-sdk-intro.html |
| SDK 2.0 | Alfresco 5.0.0 | Alfresco 5.0.c | https://docs.alfresco.com/sdk2.0/concepts/alfresco-sdk-intro.html |
| SDK 1.1.1 | Alfresco 4.2.x | Alfresco 4.2.x | https://docs.alfresco.com/4.2/concepts/dev-extensions-maven-sdk-intro.html |
## Reporting Issues and Community Support
Report issues (and contribute!) [here](https://github.com/Alfresco/alfresco-sdk/issues?milestone=1&state=open) or join us on the [IRC Channel](http://chat.alfresco.com/).

View File

@@ -11,7 +11,7 @@
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

View File

@@ -1,6 +1,6 @@
# Alfresco AIO Project - SDK 4.4
# Alfresco AIO Project - SDK 4.5
This is an All-In-One (AIO) project for Alfresco SDK 4.4.
This is an All-In-One (AIO) project for Alfresco SDK 4.5.
Run with `./run.sh build_start` or `./run.bat build_start` and verify that it

View File

@@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Integration Tests Module</name>
<description>Integration Tests module for in-container integration testing - part of AIO - SDK 4.4</description>
<description>Integration Tests module for in-container integration testing - part of AIO - SDK 4.5</description>
<packaging>jar</packaging> <!-- Note. this just runs Integration Tests, but it needs to be a JAR otherwise
nothing is compiled (i.e. you cannot set it to pom) -->

View File

@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId>
<name>Alfresco Platform/Repository JAR Module</name>
<description>Platform/Repo JAR Module (to be included in the alfresco.war) - part of AIO - SDK 4.4
<description>Platform/Repo JAR Module (to be included in the alfresco.war) - part of AIO - SDK 4.5
</description>
<packaging>jar</packaging>

View File

@@ -5,7 +5,7 @@
<artifactId>${artifactId}</artifactId>
<name>Alfresco Share JAR Module</name>
<packaging>jar</packaging>
<description>Sample Share JAR Module (to be included in the share.war) - part of AIO - SDK 4.4</description>
<description>Sample Share JAR Module (to be included in the share.war) - part of AIO - SDK 4.5</description>
<parent>
<groupId>${groupId}</groupId>

View File

@@ -5,8 +5,8 @@
<groupId>${groupId}</groupId>
<artifactId>${artifactId}</artifactId>
<version>${version}</version>
<name>AIO - SDK 4.4</name>
<description>All-In-One (AIO) project for SDK 4.4</description>
<name>AIO - SDK 4.5</name>
<description>All-In-One (AIO) project for SDK 4.5</description>
<packaging>pom</packaging>
<prerequisites>
@@ -59,8 +59,8 @@
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.9.5</version>
<artifactId>mockito-core</artifactId>
<version>4.2.0</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -397,7 +397,7 @@
<profile>
<id>java11</id>
<activation>
<jdk>[11.0,)</jdk>
<jdk>[11.0,17)</jdk>
</activation>
<build>
<plugins>
@@ -412,6 +412,24 @@
</plugins>
</build>
</profile>
<profile>
<id>java17</id>
<activation>
<jdk>[17,)</jdk>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>17</release>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<!--

View File

@@ -12,7 +12,7 @@
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

View File

@@ -1,6 +1,6 @@
# Alfresco ACS JAR Module - SDK 4.4
# Alfresco ACS JAR Module - SDK 4.5
This is an ACS project for Alfresco SDK 4.4.
This is an ACS project for Alfresco SDK 4.5.
Run with `./run.sh build_start` or `./run.bat build_start` and verify that it

View File

@@ -55,8 +55,8 @@
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>1.9.5</version>
<artifactId>mockito-core</artifactId>
<version>4.2.0</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -481,7 +481,7 @@
<profile>
<id>java11</id>
<activation>
<jdk>[11.0,)</jdk>
<jdk>[11.0, 17)</jdk>
</activation>
<build>
<plugins>
@@ -496,6 +496,24 @@
</plugins>
</build>
</profile>
<profile>
<id>java17</id>
<activation>
<jdk>[17,)</jdk>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>17</release>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<!--

View File

@@ -14,7 +14,7 @@
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

View File

@@ -1,6 +1,6 @@
# Alfresco Share JAR Module - SDK 4.4
# Alfresco Share JAR Module - SDK 4.5
This is a Share project for Alfresco SDK 4.4.
This is a Share project for Alfresco SDK 4.5.
Run with `./run.sh build_start` or `./run.bat build_start` and verify that it

View File

@@ -368,7 +368,7 @@
<profile>
<id>java11</id>
<activation>
<jdk>[11.0,)</jdk>
<jdk>[11.0,17)</jdk>
</activation>
<build>
<plugins>
@@ -383,6 +383,24 @@
</plugins>
</build>
</profile>
<profile>
<id>java17</id>
<activation>
<jdk>[17,)</jdk>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>17</release>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<!--

View File

@@ -17,7 +17,7 @@
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

View File

@@ -1,7 +1,7 @@
---
Title: Alfresco SDK 4.4
Title: Alfresco SDK 4.5
Added: v3.0.0
Last reviewed: 2022-03-22
Last reviewed: 2022-09-22
---
# Alfresco SDK 4
@@ -18,7 +18,7 @@ Alfresco SDK 4.x is released under [Apache License version 2.0](http://www.apach
in Community Edition and Enterprise Edition. If you're an Enterprise customer, please check the [Alfresco SDK Support status](https://www.alfresco.com/alfresco-product-support-status)
for the version you're using. If your version is in Limited or Full Support and you need help, contact our Support team [http://support.alfresco.com](http://support.alfresco.com/).
Alfresco SDK 4.4 is a minor update to the SDK and provides support for Alfresco 7.2.x.
Alfresco SDK 4.5 is a minor update to the SDK and provides support for Alfresco 7.3.x.
The 4.0 release takes advantage of Semantic Versioning ([SEMVER](http://semver.org/)), which means that this new release is not directly compatible with the
previous releases of the SDK.

View File

@@ -118,7 +118,7 @@ Choose archetype:
* `org.alfresco.maven.archetype:alfresco-platform-jar-archetype`
* `org.alfresco.maven.archetype:alfresco-share-jar-archetype`
3. Choose the latest version, such as 4.4.0.
3. Choose the latest version, such as 4.5.0.
```
Choose org.alfresco.maven.archetype:alfresco-allinone-archetype version:
@@ -139,6 +139,7 @@ Choose org.alfresco.maven.archetype:alfresco-allinone-archetype version:
15: 4.2.0
16: 4.3.0
17: 4.4.0
18: 4.5.0
```
4. Next you will be prompted for additional values, like groupId, artifactId, and package, as shown below:
@@ -167,7 +168,7 @@ If everything has been configured correctly, you should see something similar to
```
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: alfresco-allinone-archetype:4.4.0
[INFO] Using following parameters for creating project from Archetype: alfresco-allinone-archetype:4.5.0
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: com.acme
[INFO] Parameter: artifactId, Value: my-all-in-one

View File

@@ -67,3 +67,10 @@ Alfresco SDK 4.1 provides support for Alfresco 6.2.x.
## Support for Alfresco 7.0.x, 7.1.x, and 7.2.x
Alfresco SDK 4.4 provides support for Alfresco 7.0.x, 7.1.x, and 7.2.x.
## Support for Java 17
[Java 17](https://openjdk.java.net/projects/jdk/17/) is the latest stable long term (8 year support) version after Java 11. Alfresco 7.3.x already offers
support for this version of the Java platform.
Alfresco SDK 4.5 has been modified to add support for Java 17 as well. This way, if you're working as a developer in customisations for Alfresco 7.3.x you can
now use SDK 4.5 + JDK 17 to work on them. The Apache Maven plugins included in the archetypes has been updated to avoid any issue with Java 17.

View File

@@ -6,10 +6,10 @@ Last reviewed: 2021-02-09
# Working with an All-In-One project
Before you continue make sure that you have read and completed the tasks in the
[Getting started](../getting-started.md) tutorial to generate an All-In-One (AIO) project,
which means selecting the `org.alfresco.maven.archetype:alfresco-allinone-archetype`
Maven archetype when generating the project. The following information assumes that
Before you continue make sure that you have read and completed the tasks in the
[Getting started](../getting-started.md) tutorial to generate an All-In-One (AIO) project,
which means selecting the `org.alfresco.maven.archetype:alfresco-allinone-archetype`
Maven archetype when generating the project. The following information assumes that
the AIO project was generated with the name `my-all-in-one-project`.
- [Introduction](#introduction)
@@ -21,23 +21,23 @@ the AIO project was generated with the name `my-all-in-one-project`.
- [Stopping the project](#stopping-the-project)
## Introduction
An AIO SDK project is used to build extensions for both [Alfresco Content Services (ACS) Repository](https://docs.alfresco.com/6.2/concepts/dev-platform-extensions.html)
An AIO SDK project is used to build extensions for both [Alfresco Content Services (ACS) Repository](https://docs.alfresco.com/6.2/concepts/dev-platform-extensions.html)
and [Alfresco Share UI](https://docs.alfresco.com/6.2/concepts/dev-extensions-share.html). The runtime environment
for ACS is Docker so not only is this project building the source code for your extensions but also the
custom Docker images for the Alfresco Repository and Alfresco Share. The custom Docker images includes the
JARs, or AMPs, with your extension code.
for ACS is Docker so not only is this project building the source code for your extensions but also the
custom Docker images for the Alfresco Repository and Alfresco Share. The custom Docker images includes the
JARs, or AMPs, with your extension code.
Looking into the generated AIO parent project we can see that we got a Docker Compose file (**my-all-in-one-project/docker/docker-compose.yml**)
that will be used to build custom Docker images and run the project, one sub-project called `my-all-in-one-project-platform` that will be
Looking into the generated AIO parent project we can see that we got a Docker Compose file (**my-all-in-one-project/docker/docker-compose.yml**)
that will be used to build custom Docker images and run the project, one sub-project called `my-all-in-one-project-platform` that will be
used to build Repository customizations, and one sub-project called `my-all-in-one-project-share` that can be used to build Alfresco Share UI customizations.
There are also the `my-all-in-one-project-platform-docker` and `my-all-in-one-project-share-docker` projects that are
used to assemble (aggregate) all the Repository and Share extensions
(there are usually more than one of each in a bigger project) and then build the custom Docker images with the
There are also the `my-all-in-one-project-platform-docker` and `my-all-in-one-project-share-docker` projects that are
used to assemble (aggregate) all the Repository and Share extensions
(there are usually more than one of each in a bigger project) and then build the custom Docker images with the
extension(s) applied.
The Repository and Share extensions that are aggregated can either be extensions that you develop locally or extensions
that are available in a Maven repository somewhere.
The Repository and Share extensions that are aggregated can either be extensions that you develop locally or extensions
that are available in a Maven repository somewhere.
## Configuration properties
There are a number of properties that we can customise when we run the Alfresco SDK project.
@@ -62,12 +62,12 @@ When you first start out you don't need to change any of these properties, just
## Building and running the project
The first thing you need to do before you can run anything is to build the custom ACS Docker images with the custom extensions.
We can build images and extensions at the same time as we start (run) the project by using the `./run.sh build_start` script
We can build images and extensions at the same time as we start (run) the project by using the `./run.sh build_start` script
(on Windows use the `run.bat build_start` script instead).
Note that if you have another Alfresco SDK project running, then you need to stop it first. Also, make sure that the
Note that if you have another Alfresco SDK project running, then you need to stop it first. Also, make sure that the
following ports are free: 8180 (Share), 8080 (Alfresco Repo), 9898 (Share Debug), 8888 (Alfresco Repo Debug), 5555 (Postgres).
If you want to change the ports see the properties section of **my-all-in-one-project/pom.xml**. This project file also
If you want to change the ports see the properties section of **my-all-in-one-project/pom.xml**. This project file also
contains the versions of Alfresco Repository and Alfresco Share that will be used.
```
@@ -77,8 +77,8 @@ my-all-in-one-project mbergljung$ ./run.sh build_start
[WARNING] The project com.example:my-all-in-one-project:pom:1.0-SNAPSHOT uses prerequisites which is only intended for maven-plugin projects but not for non maven-plugin projects. For such purposes you should use the maven-enforcer-plugin. See https://maven.apache.org/enforcer/enforcer-rules/requireMavenVersion.html
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] AIO - SDK 4.4
[INFO]
[INFO] AIO - SDK 4.5
[INFO] Alfresco Platform/Repository JAR Module
[INFO] Alfresco Share JAR Module
[INFO] Integration Tests Module
@@ -87,8 +87,8 @@ my-all-in-one-project mbergljung$ ./run.sh build_start
...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] AIO - SDK 4.4 ...................................... SUCCESS [ 0.680 s]
[INFO]
[INFO] AIO - SDK 4.5 ...................................... SUCCESS [ 0.680 s]
[INFO] Alfresco Platform/Repository JAR Module ............ SUCCESS [ 5.461 s]
[INFO] Alfresco Share JAR Module .......................... SUCCESS [ 0.557 s]
[INFO] Integration Tests Module ........................... SUCCESS [ 0.900 s]
@@ -114,11 +114,11 @@ Successfully tagged alfresco-content-services-my-all-in-one-project:development
my-all-in-one-project-acs_1 | 27-Mar-2019 06:53:39.191 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
my-all-in-one-project-acs_1 | 27-Mar-2019 06:53:39.233 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
my-all-in-one-project-acs_1 | 27-Mar-2019 06:53:39.249 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 84022 ms
```
```
The `./run.sh build_start` script will do the following:
* Stop anything running already with this project's Docker Compose file: **my-all-in-one-project/docker/docker-compose.yml**
* Stop anything running already with this project's Docker Compose file: **my-all-in-one-project/docker/docker-compose.yml**
* Build the Repository and Share Extension JARs so we are sure to get the latest changes
* Assemble/Aggregate all Repository extension JARs into the **my-all-in-one-project/my-all-in-one-project-platform-docker/target/extensions** directory
* Assemble/Aggregate all Share extension JARs into the **my-all-in-one-project/my-all-in-one-project-share-docker/target/extensions** directory
@@ -128,12 +128,12 @@ The `./run.sh build_start` script will do the following:
This will build the following two Docker images:
```
```
$ docker image ls|more
REPOSITORY TAG IMAGE ID CREATED SIZE
alfresco-content-services-my-all-in-one-project development 48e61e882567 16 hours ago 2.07GB
alfresco-share-my-all-in-one-project development d6cbb6143578 16 hours ago 749MB
```
```
The different web applications should now be accessible:
@@ -141,49 +141,49 @@ The different web applications should now be accessible:
* **ACS Share**: http://localhost:8180/share/ - login with admin/admin
## Trying out the sample code
The AIO project has some sample extension code that you can try out. There is a one Repository extension and one Share extension
The AIO project has some sample extension code that you can try out. There is a one Repository extension and one Share extension
that you can test to make sure the extension JARs have been applied properly.
The Repository extension is a Web Script that can be called with the following URL: `http://localhost:8080/alfresco/service/sample/helloworld`.
The source code for the Web Script is located here: **my-all-in-one-project/my-all-in-one-project-platform/src/main/resources/alfresco/extension/templates/webscripts/alfresco/tutorials**
The source code for the Web Script is located here: **my-all-in-one-project/my-all-in-one-project-platform/src/main/resources/alfresco/extension/templates/webscripts/alfresco/tutorials**
and here: **my-all-in-one-project/my-all-in-one-project-platform/src/main/java/ com/example/platformsample/HelloWorldWebScript.java**.
The Share extension is a custom Aikau page with a custom widget, you reach it with the following URL: `http://localhost:8180/share/page/hdp/ws/simple-page`.
The source code for the Page and Widget is located here: **my-all-in-one-project/my-all-in-one-project-share/src/main/resources/alfresco/web-extension/site-webscripts/com/example/pages**
The source code for the Page and Widget is located here: **my-all-in-one-project/my-all-in-one-project-share/src/main/resources/alfresco/web-extension/site-webscripts/com/example/pages**
and here: **my-all-in-one-project/my-all-in-one-project-share/src/main/resources/META-INF/resources/my-all-in-one-project-share/js/tutorials/widgets**.
## Looking inside the containers
Sometimes it's good to be able to look at what has actually been deployed in the containers. For example, how do I
access the Repository container and list the custom Repository extension JARs that have been deployed?
Sometimes it's good to be able to look at what has actually been deployed in the containers. For example, how do I
access the Repository container and list the custom Repository extension JARs that have been deployed?
You can do that as follows:
First **Ctrl-C** out of the log tailing:
```
```
my-all-in-one-project-acs_1 | 27-Mar-2019 07:26:23.893 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
my-all-in-one-project-acs_1 | 27-Mar-2019 07:26:23.914 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
my-all-in-one-project-acs_1 | 27-Mar-2019 07:26:23.940 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 83197 ms
my-all-in-one-project-acs_1 | 2019-03-27 07:26:24,304 INFO [management.subsystems.ChildApplicationContextFactory] [http-nio-8080-exec-3] Starting 'Search' subsystem, ID: [Search, managed, solr6]
my-all-in-one-project-acs_1 | 2019-03-27 07:26:25,555 INFO [management.subsystems.ChildApplicationContextFactory] [http-nio-8080-exec-3] Startup of 'Search' subsystem, ID: [Search, managed, solr6] complete
^CERROR: Aborting.
my-all-in-one-project mbergljung$
```
my-all-in-one-project mbergljung$
```
Then check the name of the ACS Repository container:
```
```
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
733867a70117 alfresco-content-services-my-all-in-one-project:development "catalina.sh run -se…" 5 minutes ago Up 5 minutes 0.0.0.0:8080->8080/tcp, 0.0.0.0:8888->8888/tcp docker_my-all-in-one-project-acs_1
1f197e52b4f2 alfresco/alfresco-search-services:1.2.0 "/bin/sh -c '$DIST_D…" 5 minutes ago Up 5 minutes 0.0.0.0:8983->8983/tcp docker_my-all-in-one-project-ass_1
1f197e52b4f2 alfresco/alfresco-search-services:2.0.3 "/bin/sh -c '$DIST_D…" 5 minutes ago Up 5 minutes 0.0.0.0:8983->8983/tcp docker_my-all-in-one-project-ass_1
4eff0cc9cc25 alfresco-share-my-all-in-one-project:development "/usr/local/tomcat/s…" 5 minutes ago Up 5 minutes 8000/tcp, 0.0.0.0:8180->8080/tcp, 0.0.0.0:9898->8888/tcp docker_my-all-in-one-project-share_1
a7854ff16d72 postgres:9.6 "docker-entrypoint.s…" 5 minutes ago Up 5 minutes 0.0.0.0:5555->5432/tcp docker_my-all-in-one-project-postgres_1
```
```
Then open up a shell into the ACS Repository container:
```
```
my-all-in-one-project mbergljung$ docker exec -it docker_my-all-in-one-project-acs_1 /bin/bash
[root@733867a70117 tomcat]# pwd
/usr/local/tomcat
@@ -191,55 +191,55 @@ my-all-in-one-project mbergljung$ docker exec -it docker_my-all-in-one-project-a
-rw-r--r-- 1 root root 17220 Mar 27 07:24 my-all-in-one-project-platform-1.0-SNAPSHOT.jar
[root@733867a70117 tomcat]# exit
exit
```
```
## Updating extension code
So now you probably want to write some new code, or update the existing code, and see how that works with the containers running.
What do you need to do, restart etc. First just update the code. For example, let's update the Repository Web Script
to return a different message. Open up the **my-all-in-one-project/my-all-in-one-project-platform/src/main/resources/alfresco/extension/templates/webscripts/alfresco/tutorials/helloworld.get.html.ftl**
So now you probably want to write some new code, or update the existing code, and see how that works with the containers running.
What do you need to do, restart etc. First just update the code. For example, let's update the Repository Web Script
to return a different message. Open up the **my-all-in-one-project/my-all-in-one-project-platform/src/main/resources/alfresco/extension/templates/webscripts/alfresco/tutorials/helloworld.get.html.ftl**
file and change it to look as follows:
```
```
Message: '${fromJS}' '${fromJava}' UPDATED!
```
```
To get this code update deployed we just have to run the following command in another console then where we are tailing the logs,
and stand in the directory where the `run.sh` script is located:
```
```
my-all-in-one-project mbergljung$ ./run.sh reload_acs
```
```
What this will do is the following:
* Kill the `my-all-in-one-project-acs` container
* Kill the `my-all-in-one-project-acs` container
* Remove the killed (stopped) `my-all-in-one-project-acs` container, so a new Docker image can be created with `development` tag
* Build the Repository extension JAR: **my-all-in-one-project/my-all-in-one-project-platform**
* Build the Repository extension JAR: **my-all-in-one-project/my-all-in-one-project-platform**
* Copy the newly built Repository extension JAR over to the **my-all-in-one-project/my-all-in-one-project-platform-docker/target/extensions** where it will be picked up when the new Docker image is built.
* Build a new `alfresco-content-services-my-all-in-one-project:development` image
* Start up the `my-all-in-one-project-acs` container based on new image
You will be left with the console tailing the logs, but you can **Ctrl-C** out of this as you are already tailing the logs
You will be left with the console tailing the logs, but you can **Ctrl-C** out of this as you are already tailing the logs
in the initial console where we started things up.
You can now check if the change took effect by accessing the `http://localhost:8080/alfresco/service/sample/helloworld` Web Script.
## Stopping the project
To stop the solution you need to first `Ctrl-C` out of the log tailing. This does not stop the containers
To stop the solution you need to first `Ctrl-C` out of the log tailing. This does not stop the containers
as they run in daemon mode in the background. Check this by executing the following command that lists running containers:
```
```
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
49015432f1b2 alfresco-content-services-my-all-in-one-project:development "catalina.sh run -se…" 20 minutes ago Up 20 minutes 0.0.0.0:8080->8080/tcp, 0.0.0.0:8888->8888/tcp docker_my-all-in-one-project-acs_1
edb9ea129a5d postgres:9.6 "docker-entrypoint.s…" 20 minutes ago Up 20 minutes 0.0.0.0:5555->5432/tcp docker_my-all-in-one-project-postgres_1
6992d183986f alfresco/alfresco-search-services:1.2.0 "/bin/sh -c '$DIST_D…" 20 minutes ago Up 20 minutes 0.0.0.0:8983->8983/tcp docker_my-all-in-one-project-ass_1
6992d183986f alfresco/alfresco-search-services:2.0.3 "/bin/sh -c '$DIST_D…" 20 minutes ago Up 20 minutes 0.0.0.0:8983->8983/tcp docker_my-all-in-one-project-ass_1
107d00733efd alfresco-share-my-all-in-one-project:development "/usr/local/tomcat/s…" 20 minutes ago Up 20 minutes 8000/tcp, 0.0.0.0:8180->8080/tcp, 0.0.0.0:9898->8888/tcp docker_my-all-in-one-project-share_1
```
```
Now, standing in the directory where the `run.sh` script is located execute the following command to stop and remove the containers:
```
```
my-all-in-one-project mbergljung$ ./run.sh stop
Stopping docker_my-all-in-one-project-acs_1 ... done
Stopping docker_my-all-in-one-project-postgres_1 ... done
@@ -250,7 +250,4 @@ Removing docker_my-all-in-one-project-postgres_1 ... done
Removing docker_my-all-in-one-project-ass_1 ... done
Removing docker_my-all-in-one-project-share_1 ... done
Removing network docker_default
```
```

View File

@@ -10,7 +10,7 @@
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>

View File

@@ -8,7 +8,7 @@
<parent>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
@@ -112,7 +112,7 @@
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.6</version>
<version>3.9.0</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>

73
pom.xml
View File

@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.4.0</version>
<version>4.6.0-SNAPSHOT</version>
<name>Alfresco SDK</name>
<description>This aggregator Project builds all modules required for the Alfresco SDK</description>
<packaging>pom</packaging>
@@ -56,31 +56,24 @@
<alfresco.sdk.tests.exclude>*/*-enterprise*/*</alfresco.sdk.tests.exclude>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.2.0</alfresco.platform.version>
<alfresco.platform.version>7.3.0</alfresco.platform.version>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
<alfresco.share.docker.version>7.2.0</alfresco.share.docker.version>
<alfresco.share.docker.version>7.3.0</alfresco.share.docker.version>
<!--
The following value is now obtained by looking at the
- alfresco-community-share.version (eg. https://github.com/Alfresco/acs-community-packaging/blob/7.1.0/pom.xml#L17)
- alfresco-community-share.version (eg. https://github.com/Alfresco/acs-community-packaging/blob/7.2.1/pom.xml#L17)
or
- alfresco-enterprise-share.version (eg. https://github.com/Alfresco/acs-packaging/blob/7.1.0.1/pom.xml#L18)
- alfresco-enterprise-share.version (eg. https://github.com/Alfresco/acs-packaging/blob/7.2.1/pom.xml#L18)
for the GitHub Tag related to the above Docker version.
-->
<alfresco.share.version>14.96</alfresco.share.version>
<alfresco.share.version>17.137</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image>
<alfresco.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
<keystore.settings>
-Dencryption.keystore.type=JCEKS
-Dencryption.cipherAlgorithm=AES/CBC/PKCS5Padding
-Dencryption.keyAlgorithm=AES
-Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore
-Dmetadata-keystore.password=mp6yc0UD9e
-Dmetadata-keystore.aliases=metadata
-Dmetadata-keystore.metadata.password=oKIWzVdEdA
-Dmetadata-keystore.metadata.algorithm=AES
-Dencryption.keystore.type=JCEKS -Dencryption.cipherAlgorithm=AES/CBC/PKCS5Padding -Dencryption.keyAlgorithm=AES -Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore -Dmetadata-keystore.password=mp6yc0UD9e -Dmetadata-keystore.aliases=metadata -Dmetadata-keystore.metadata.password=oKIWzVdEdA -Dmetadata-keystore.metadata.algorithm=AES
</keystore.settings>
<test.acs.endpoint.path />
<test.acs.endpoint.path/>
<scm.url.base>https://github.com/Alfresco/alfresco-sdk</scm.url.base>
</properties>
@@ -107,8 +100,8 @@
<properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.0.1-A7</alfresco.platform.version>
<alfresco.share.docker.version>7.0.1.2</alfresco.share.docker.version>
<alfresco.share.version>7.0.1.2</alfresco.share.version>
<alfresco.share.docker.version>7.0.1.3</alfresco.share.docker.version>
<alfresco.share.version>7.0.1.3</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image>
<alfresco.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
@@ -118,7 +111,7 @@
<id>enterprise-70-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.0.1.6</alfresco.platform.version>
<alfresco.platform.version>7.0.1.7</alfresco.platform.version>
<alfresco.share.docker.version>7.0.1.3</alfresco.share.docker.version>
<alfresco.share.version>7.0.1.3</alfresco.share.version>
<alfresco.platform.docker.image>quay.io/alfresco/alfresco-content-repository</alfresco.platform.docker.image>
@@ -134,7 +127,7 @@
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.1.1.2</alfresco.platform.version>
<alfresco.share.docker.version>7.1.1.2</alfresco.share.docker.version>
<alfresco.share.version>12.22</alfresco.share.version>
<alfresco.share.version>13.10</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image>
<alfresco.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
@@ -146,7 +139,7 @@
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.1.1.2</alfresco.platform.version>
<alfresco.share.docker.version>7.1.1.2</alfresco.share.docker.version>
<alfresco.share.version>12.22</alfresco.share.version>
<alfresco.share.version>13.10</alfresco.share.version>
<alfresco.platform.docker.image>quay.io/alfresco/alfresco-content-repository</alfresco.platform.docker.image>
<alfresco.share.docker.image>quay.io/alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
@@ -158,9 +151,9 @@
<id>community-72-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.2.0</alfresco.platform.version>
<alfresco.share.docker.version>7.2.0</alfresco.share.docker.version>
<alfresco.share.version>14.96</alfresco.share.version>
<alfresco.platform.version>7.2.1</alfresco.platform.version>
<alfresco.share.docker.version>7.2.1</alfresco.share.docker.version>
<alfresco.share.version>15.17</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image>
<alfresco.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
@@ -170,9 +163,35 @@
<id>enterprise-72-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.2.0</alfresco.platform.version>
<alfresco.share.docker.version>7.2.0</alfresco.share.docker.version>
<alfresco.share.version>14.96</alfresco.share.version>
<alfresco.platform.version>7.2.1</alfresco.platform.version>
<alfresco.share.docker.version>7.2.1</alfresco.share.docker.version>
<alfresco.share.version>15.17</alfresco.share.version>
<alfresco.platform.docker.image>quay.io/alfresco/alfresco-content-repository</alfresco.platform.docker.image>
<alfresco.share.docker.image>quay.io/alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
</properties>
</profile>
<!-- 7.3 -->
<profile>
<id>community-73-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.3.0</alfresco.platform.version>
<alfresco.share.docker.version>7.3.0</alfresco.share.docker.version>
<alfresco.share.version>17.137</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image>
<alfresco.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
</properties>
</profile>
<profile>
<id>enterprise-73-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>7.3.0</alfresco.platform.version>
<alfresco.share.docker.version>7.3.0</alfresco.share.docker.version>
<alfresco.share.version>17.137</alfresco.share.version>
<alfresco.platform.docker.image>quay.io/alfresco/alfresco-content-repository</alfresco.platform.docker.image>
<alfresco.share.docker.image>quay.io/alfresco/alfresco-share</alfresco.share.docker.image>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
@@ -489,4 +508,4 @@
<timezone>+1</timezone>
</contributor>
</contributors>
</project>
</project>

View File

@@ -43,5 +43,10 @@
<username>${env.MAVEN_USERNAME}</username>
<password>${env.MAVEN_PASSWORD}</password>
</server>
<server>
<id>central-releases-staging</id>
<username>${env.MAVEN_CENTRAL_USERNAME}</username>
<password>${env.MAVEN_CENTRAL_PASSWORD}</password>
</server>
</servers>
</settings>