Compare commits

..
30 changed files with 109 additions and 507 deletions
-5
View File
@@ -3,11 +3,6 @@
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers> <servers>
<server>
<id>central</id>
<username>${MAVEN_CENTRAL_USERNAME}</username>
<password>${MAVEN_CENTRAL_PASSWORD}</password>
</server>
<server> <server>
<id>alfresco-private-repository</id> <id>alfresco-private-repository</id>
<username>${env.MAVEN_USERNAME}</username> <username>${env.MAVEN_USERNAME}</username>
+14 -70
View File
@@ -6,11 +6,13 @@ on:
- master - master
- fix/** - fix/**
- feature/** - feature/**
- sdk-4.5
push: push:
branches: branches:
- master - master
- fix/** - fix/**
- feature/** - feature/**
- sdk-4.5
workflow_dispatch: workflow_dispatch:
env: env:
@@ -18,14 +20,12 @@ env:
MAVEN_PASSWORD: ${{ secrets.NEXUS_PASSWORD }} MAVEN_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
MAVEN_CENTRAL_USERNAME: ${{ secrets.OSS_SONATYPE_USERNAME }} MAVEN_CENTRAL_USERNAME: ${{ secrets.OSS_SONATYPE_USERNAME }}
MAVEN_CENTRAL_PASSWORD: ${{ secrets.OSS_SONATYPE_PASSWORD }} MAVEN_CENTRAL_PASSWORD: ${{ secrets.OSS_SONATYPE_PASSWORD }}
GPG_SIGNING_PASSPHRASE: ${{ secrets.GPG_SIGNING_PASSPHRASE }}
GITHUB_ACTIONS_DEPLOY_TIMEOUT: 90
jobs: jobs:
pre_commit: pre_commit:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: Alfresco/alfresco-build-tools/.github/actions/pre-commit@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/pre-commit@v7.0.0
veracode_sca: veracode_sca:
name: "Veracode - Source Clear Scan (SCA)" name: "Veracode - Source Clear Scan (SCA)"
@@ -35,11 +35,11 @@ jobs:
github.event_name == 'pull_request' github.event_name == 'pull_request'
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v7.0.0
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v7.0.0
- name: "Clean-up SNAPSHOT artifacts" - name: "Clean-up SNAPSHOT artifacts"
run: find "${HOME}/.m2/repository/" -type d -name "*-SNAPSHOT*" | xargs -r -l rm -rf run: find "${HOME}/.m2/repository/" -type d -name "*-SNAPSHOT*" | xargs -r -l rm -rf
- uses: Alfresco/alfresco-build-tools/.github/actions/veracode@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/veracode@v7.0.0
continue-on-error: true continue-on-error: true
with: with:
srcclr-api-token: ${{ secrets.SRCCLR_API_TOKEN }} srcclr-api-token: ${{ secrets.SRCCLR_API_TOKEN }}
@@ -54,7 +54,7 @@ jobs:
-B -q -e -fae -V -DinstallAtEnd=true -U -B -q -e -fae -V -DinstallAtEnd=true -U
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v7.0.0
- name: "Build" - name: "Build"
run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
- name: "Verify" - name: "Verify"
@@ -73,21 +73,6 @@ jobs:
include: include:
- name: "current version Java 17" - name: "current version Java 17"
java-version: 17 java-version: 17
- name: "25.2 Enterprise Java 17"
java-version: 17
suite: -Penterprise-252-tests
- name: "25.2 Community Java 17"
java-version: 17
suite: -Pcommunity-252-tests
- name: "25.1 Enterprise Java 17"
java-version: 17
suite: -Penterprise-251-tests
- name: "25.1 Community Java 17"
java-version: 17
suite: -Pcommunity-251-tests
- name: "23.5 Enterprise Java 17"
java-version: 17
suite: -Penterprise-235-tests
- name: "23.4 Enterprise Java 17" - name: "23.4 Enterprise Java 17"
java-version: 17 java-version: 17
suite: -Penterprise-234-tests suite: -Penterprise-234-tests
@@ -150,8 +135,8 @@ jobs:
suite: -Pcommunity-71-tests suite: -Pcommunity-71-tests
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v7.0.0
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v7.0.0
with: with:
java-version: ${{ matrix.java-version }} java-version: ${{ matrix.java-version }}
- name: "Login to Docker Hub" - name: "Login to Docker Hub"
@@ -168,59 +153,18 @@ jobs:
- name: "Build" - name: "Build"
run: mvn clean install -B ${{ matrix.suite }} run: mvn clean install -B ${{ matrix.suite }}
check_version: publish:
name: "Check version" name: "Publish artifacts"
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [tests] needs: [tests]
if: > if: >
contains(github.event.head_commit.message, '[publish]') contains(github.event.head_commit.message, '[publish]')
outputs:
is_ga: ${{ steps.publish_version.outputs.is_ga }}
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v7.0.0
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v12.11.0 - uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v7.0.0
- name: "Check version"
id: publish_version
run: |
VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
if [[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "is_ga=true" >> $GITHUB_OUTPUT
echo "GA version detected: $VERSION"
else
echo "is_ga=false" >> $GITHUB_OUTPUT
echo "Non GA version detected: $VERSION"
fi
publish:
name: "Publish artifacts"
runs-on: ubuntu-latest
needs: [tests, check_version]
if: >
contains(github.event.head_commit.message, '[publish]') && needs.check_version.outputs.is_ga == 'true'
steps:
- uses: actions/checkout@v4
- uses: Alfresco/alfresco-build-tools/.github/actions/get-build-info@v12.11.0
- uses: Alfresco/alfresco-build-tools/.github/actions/setup-java-build@v12.11.0
- name: "Build" - name: "Build"
run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
- name: Set up Maven Central credentials
run: |
mkdir -p ~/.m2
envsubst < ${{ github.workspace }}/.ci.settings.xml > ~/.m2/settings.xml
env:
MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }}
MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }}
- name: Import GPG key
env:
GPG_TTY: $(tty)
run: |
echo "${{ secrets.GPG_SIGNING_PRIVATE_KEY }}" | gpg --batch --import
echo "use-agent" >> ~/.gnupg/gpg.conf
echo "pinentry-mode loopback" >> ~/.gnupg/gpg.conf
echo "allow-loopback-pinentry" >> ~/.gnupg/gpg-agent.conf
gpg --batch --yes --pinentry-mode loopback --passphrase $GPG_SIGNING_PASSPHRASE --list-keys
- name: "Publish" - name: "Publish"
timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }} timeout-minutes: ${{ fromJSON(env.GITHUB_ACTIONS_DEPLOY_TIMEOUT) }}
run: | run: mvn deploy $MAVEN_CLI_OPTS -DskipTests
mvn --batch-mode clean package gpg:sign central-publishing:publish -P sdk-release -DskipTests=true -Dgpg.passphrase=$GPG_SIGNING_PASSPHRASE
+20 -38
View File
@@ -14,8 +14,6 @@ This project is released under the [Apache License, Version 2.0](http://www.apac
If you are an Enterprise customer check the [Support](#alfresco-enterprise-customers-and-partners-support) section. If you are an Enterprise customer check the [Support](#alfresco-enterprise-customers-and-partners-support) section.
## News ## News
- 2025-07: Alfresco SDK 4.12.0 released
- 2025-03: Alfresco SDK 4.11.0 released
- 2024-11: Alfresco SDK 4.10.0 released - 2024-11: Alfresco SDK 4.10.0 released
- 2024-08: Alfresco SDK 4.9.0 released - 2024-08: Alfresco SDK 4.9.0 released
- 2024-03: Alfresco SDK 4.8.0 released - 2024-03: Alfresco SDK 4.8.0 released
@@ -82,7 +80,7 @@ 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. 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, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 4.9, 4.10 or SDK 4.11 instead of SDK 4.12.0. Depending on the Platform version desired, you might need to use SDK 4.1, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8 or SDK 4.9 instead of SDK 4.10.
- For Enterprise and Community versions of 7.x, SDK 4.4 or higher 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 versions of 6.0.x, 6.1.x, 6.2.x newer than November 2020, SDK 4.3 must be used
@@ -99,27 +97,25 @@ It's also important to remember that:
To get started with **Alfresco SDK 4.9.x** (latest) visit the [Alfresco Documentation](docs/README.md). To get started with **Alfresco SDK 4.9.x** (latest) visit the [Alfresco Documentation](docs/README.md).
#### Documentation about Previous Versions #### Documentation about Previous Versions
| SDK Version | Alfresco Enterprise Version | Alfresco Community Version | Documentation | | SDK Version | Alfresco Enterprise Version | Alfresco Community Version | Documentation |
|-------------|:---------------------------------------------------------------------------------------------------:|:---------------------------------------------------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |-------------|:---------------------------------------------------------------------------------:|:-------------------------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| SDK 4.12.0 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x / 23.4.x / 25.1.x / 25.2.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x / 23.4.x / 25.1.x / 25.2.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md | | SDK 4.10 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x / 23.4.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x / 23.3.x / 23.4.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.11.0 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x / 23.4.x / 25.1.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x / 23.3.x / 23.4.x / 25.1.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md | | SDK 4.9 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x / 23.3.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.10 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x / 23.4.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x / 23.3.x / 23.4.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md | | SDK 4.8 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.9 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x / 23.3.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x / 23.3.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md | | SDK 4.7 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.8 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x/ 23.2.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.2.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md | | SDK 4.6 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md |
| SDK 4.7 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x / 23.1.x | https://github.com/Alfresco/alfresco-sdk/tree/master/docs/README.md | | 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.6 | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.x | Alfresco 7.0.x / 7.1.x / 7.2.x / 7.3.x / 7.4.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.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.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.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.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.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.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.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.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 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 3.1 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/sdk-intro.html |
| 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.0 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/sdk-intro.html |
| SDK 3.1 | 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 3.0 | Alfresco 5.2.x | Alfresco 5.2.x | http://docs.alfresco.com/5.2/concepts/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.2 | Alfresco 5.1.x | Alfresco 5.1.x | https://docs.alfresco.com/5.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 2.1 | Alfresco 5.0.1 | Alfresco 5.0.d | https://docs.alfresco.com/sdk2.1/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 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 ## 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/). 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/).
@@ -166,17 +162,3 @@ To test new unreleased (unsupported) features, you can use the following snippet
## For Developers that want to contribute to the SDK ## For Developers that want to contribute to the SDK
See the [Developers Wiki page](https://github.com/Alfresco/alfresco-sdk/wiki/Developer-Wiki). See the [Developers Wiki page](https://github.com/Alfresco/alfresco-sdk/wiki/Developer-Wiki).
## Creating a Release
For detailed instructions on how to create a release of the Alfresco SDK, please see the [RELEASE.md](RELEASE.md) documentation.
### Quick Reference
The release process involves:
1. Update version from SNAPSHOT to final (e.g., `4.12.0-SNAPSHOT``4.12.0`)
2. Commit with message `[publish]` to trigger automated publishing to Maven Central
3. Create a GitHub release tag (e.g., `sdk-4.12.0`) with release notes
4. Update version to next SNAPSHOT (e.g., `4.12.0``4.13.0-SNAPSHOT`)
See [RELEASE.md](RELEASE.md) for complete details, prerequisites, and troubleshooting.
-203
View File
@@ -1,203 +0,0 @@
# Alfresco SDK Release Process
This document describes the process for creating a new release of the Alfresco SDK.
## Overview
The Alfresco SDK uses a semi-automated release process that combines:
- Manual version changes in the POM files
- Automated publishing to Maven Central via GitHub Actions
- Manual creation of GitHub release tags
- Manual version bump to the next SNAPSHOT
## Prerequisites
Before starting a release, ensure you have:
1. **Permissions**: Write access to the Alfresco/alfresco-sdk repository
2. **All tests passing**: The CI pipeline should be green on the master branch
3. **Credentials configured** (for maintainers):
- Maven Central credentials (OSS Sonatype)
- GPG signing key for artifact signing
- These are configured as GitHub secrets:
- `OSS_SONATYPE_USERNAME`
- `OSS_SONATYPE_PASSWORD`
- `GPG_SIGNING_PRIVATE_KEY`
- `GPG_SIGNING_PASSPHRASE`
## Release Steps
### Step 1: Update Version from SNAPSHOT to Release
1. **Update the version** in all `pom.xml` files from SNAPSHOT to the final release version.
Example: When releasing SDK 4.12.0, replace all occurrences of `4.12.0-SNAPSHOT` with `4.12.0`
Files to update:
- `/pom.xml` (root aggregator)
- `/modules/alfresco-rad/pom.xml`
- `/plugins/alfresco-maven-plugin/pom.xml`
- `/archetypes/alfresco-platform-jar-archetype/pom.xml`
- `/archetypes/alfresco-share-jar-archetype/pom.xml`
- `/archetypes/alfresco-allinone-archetype/pom.xml`
- `/archetypes/archetypes-it/pom.xml`
You can use this command to find all pom.xml files that need updating:
```bash
find . -name "pom.xml" -not -path "*/target/*" -not -path "*/.git/*"
```
2. **Commit the changes** with the commit message `[publish]`
The `[publish]` keyword is important as it triggers the GitHub Actions release workflow.
```bash
git add .
git commit -m "[publish] Release version 4.12.0"
git push origin master
```
### Step 2: Automated Publishing
Once you push the commit with `[publish]` in the message:
1. The **GitHub Actions CI workflow** (`.github/workflows/ci.yml`) will automatically:
- Run all tests to ensure everything passes
- Check if the version is a GA (General Availability) release (format: `X.Y.Z`)
- If it's a GA version:
- Build the artifacts
- Sign them with GPG
- Publish to Maven Central using the `central-publishing-maven-plugin`
2. **Monitor the workflow**:
- Go to: https://github.com/Alfresco/alfresco-sdk/actions
- Check the "Alfresco SDK CI" workflow
- Ensure all jobs complete successfully, especially the "Publish artifacts" job
3. **Verify publication**:
- Check Maven Central: https://repo1.maven.org/maven2/org/alfresco/maven/
- Note: It may take a few minutes for artifacts to appear on Maven Central after publication
### Step 3: Create GitHub Release Tag
After successful publication to Maven Central:
1. **Navigate to GitHub Releases**:
- Go to: https://github.com/Alfresco/alfresco-sdk/releases
2. **Create a new release**:
- Click "Draft a new release"
- Tag version: Use the format `sdk-X.Y.Z` (e.g., `sdk-4.12.0`)
- Target: `master` branch
- Release title: `Alfresco SDK X.Y.Z` (e.g., `Alfresco SDK 4.12.0`)
3. **Write release notes**:
- Include a summary of new features, improvements, and bug fixes
- Reference important pull requests and issues
- Mention supported Alfresco versions
- Include any breaking changes or upgrade notes
4. **Publish the release**
### Step 4: Bump Version to Next SNAPSHOT
After creating the GitHub release:
1. **Update version** to the next SNAPSHOT version in all `pom.xml` files
Example: After releasing 4.12.0, update to `4.13.0-SNAPSHOT`
Note: Only update `pom.xml` files, not README documentation (unless the documentation needs updating for other reasons)
2. **Commit and push**:
```bash
git add .
git commit -m "Bump version to 4.13.0-SNAPSHOT"
git push origin master
```
### Step 5: Update Documentation (if needed)
If the release requires documentation updates:
1. Update the **News** section in `README.md` with the new release
2. Update the **Documentation about Previous Versions** table if necessary
3. Update any other relevant documentation
## Release Checklist
Use this checklist when performing a release:
- [ ] All tests are passing on master branch
- [ ] Version updated from SNAPSHOT to release version in all pom.xml files
- [ ] Committed and pushed with `[publish]` message
- [ ] GitHub Actions workflow completed successfully
- [ ] Artifacts verified on Maven Central
- [ ] GitHub release tag created (`sdk-X.Y.Z`)
- [ ] Release notes published on GitHub
- [ ] Version bumped to next SNAPSHOT in all pom.xml files
- [ ] Documentation updated (if necessary)
## Understanding the CI/CD Pipeline
The release automation is defined in `.github/workflows/ci.yml`:
### Key Workflow Jobs:
1. **pre_commit**: Runs pre-commit checks
2. **build**: Builds the application and runs verification
3. **tests**: Runs integration tests against multiple Alfresco versions
4. **check_version**: Triggered when commit message contains `[publish]`
- Validates if version is a GA release (X.Y.Z format)
- Non-GA versions (like SNAPSHOT, RC, etc.) are not published
5. **publish**: Triggered after successful tests when version is GA
- Builds artifacts with source and javadoc
- Signs artifacts with GPG
- Publishes to Maven Central using Central Publishing Maven Plugin
### Maven Profile: `sdk-release`
The release process uses the `sdk-release` Maven profile defined in the root `pom.xml`, which configures:
- **central-publishing-maven-plugin**: For publishing to Maven Central
- **maven-source-plugin**: Attaches source JARs
- **maven-javadoc-plugin**: Attaches Javadoc JARs
- **maven-gpg-plugin**: Signs artifacts
- **maven-release-plugin**: Release management
## Troubleshooting
### Release workflow not triggering
- Ensure commit message contains `[publish]`
- Check that version in pom.xml is in GA format (X.Y.Z, no SNAPSHOT, RC, etc.)
- Verify all tests pass
### GPG signing failures
- Check that `GPG_SIGNING_PRIVATE_KEY` and `GPG_SIGNING_PASSPHRASE` secrets are correctly configured
- Ensure GPG key is valid and not expired
### Maven Central publication failures
- Verify `OSS_SONATYPE_USERNAME` and `OSS_SONATYPE_PASSWORD` credentials are valid
- Check that artifacts meet Maven Central requirements (sources, javadocs, POM metadata)
- Review the Central Publishing Maven Plugin documentation for requirements
### Version conflicts
- Ensure all module pom.xml files have consistent version numbers
- Verify parent version references match
## Additional Resources
- [Maven Central Publishing](https://central.sonatype.org/publish/)
- [Central Publishing Maven Plugin](https://central.sonatype.org/publish/publish-portal-maven/)
- [GPG Signing](https://central.sonatype.org/publish/requirements/gpg/)
- [Alfresco SDK Developer Wiki](https://github.com/Alfresco/alfresco-sdk/wiki/Developer-Wiki)
## Contact
For questions about the release process:
- Open an issue on [GitHub](https://github.com/Alfresco/alfresco-sdk/issues)
- Contact the Alfresco SDK maintainers
@@ -11,7 +11,7 @@
<parent> <parent>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<relativePath>../../pom.xml</relativePath> <relativePath>../../pom.xml</relativePath>
</parent> </parent>
@@ -1,6 +1,6 @@
# Alfresco AIO Project - SDK 4.11.0 # Alfresco AIO Project - SDK 4.10
This is an All-In-One (AIO) project for Alfresco SDK 4.11.0. This is an All-In-One (AIO) project for Alfresco SDK 4.10.
Run with `./run.sh build_start` or `./run.bat build_start` and verify that it Run with `./run.sh build_start` or `./run.bat build_start` and verify that it
@@ -43,4 +43,4 @@ All the services of the project are now run as docker containers. The run script
# TODO # TODO
* Abstract assembly into a dependency so we don't have to ship the assembly in the archetype * Abstract assembly into a dependency so we don't have to ship the assembly in the archetype
* Functional/remote unit tests * Functional/remote unit tests
@@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId> <artifactId>${artifactId}</artifactId>
<name>Integration Tests Module</name> <name>Integration Tests Module</name>
<description>Integration Tests module for in-container integration testing - part of AIO - SDK 4.11.0</description> <description>Integration Tests module for in-container integration testing - part of AIO - SDK 4.10</description>
<packaging>jar</packaging> <!-- Note. this just runs Integration Tests, but it needs to be a JAR otherwise <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) --> nothing is compiled (i.e. you cannot set it to pom) -->
@@ -73,4 +73,4 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
</project> </project>
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>${artifactId}</artifactId> <artifactId>${artifactId}</artifactId>
<name>Alfresco Platform/Repository JAR Module</name> <name>Alfresco Platform/Repository JAR Module</name>
<description>Platform/Repo JAR Module (to be included in the alfresco.war) - part of AIO - SDK 4.11.0</description> <description>Platform/Repo JAR Module (to be included in the alfresco.war) - part of AIO - SDK 4.10</description>
<packaging>jar</packaging> <packaging>jar</packaging>
<parent> <parent>
@@ -27,4 +27,4 @@
</plugins> </plugins>
</build> </build>
</project> </project>
@@ -101,13 +101,5 @@
</endpoint> </endpoint>
</remote> </remote>
</config> </config>
<config evaluator="string-compare" condition="Users" replace="true">
<users>
<username-min-length>2</username-min-length>
<password-min-length>3</password-min-length>
<show-authorization-status>false</show-authorization-status>
</users>
<enable-external-users-panel>false</enable-external-users-panel>
</config>
</alfresco-config> </alfresco-config>
@@ -5,7 +5,7 @@
<artifactId>${artifactId}</artifactId> <artifactId>${artifactId}</artifactId>
<name>Alfresco Share JAR Module</name> <name>Alfresco Share JAR Module</name>
<packaging>jar</packaging> <packaging>jar</packaging>
<description>Sample Share JAR Module (to be included in the share.war) - part of AIO - SDK 4.11.0</description> <description>Sample Share JAR Module (to be included in the share.war) - part of AIO - SDK 4.10</description>
<parent> <parent>
<groupId>${groupId}</groupId> <groupId>${groupId}</groupId>
@@ -36,4 +36,4 @@
</plugins> </plugins>
</build> </build>
</project> </project>
@@ -34,7 +34,7 @@ services:
depends_on: depends_on:
- ${rootArtifactId}-postgres - ${rootArtifactId}-postgres
${rootArtifactId}-postgres: ${rootArtifactId}-postgres:
image: postgres:16.5 image: postgres:9.6
environment: environment:
POSTGRES_DB: alfresco POSTGRES_DB: alfresco
POSTGRES_USER: alfresco POSTGRES_USER: alfresco
@@ -45,7 +45,7 @@ services:
volumes: volumes:
- ${rootArtifactId}-db-volume:/var/lib/postgresql/data - ${rootArtifactId}-db-volume:/var/lib/postgresql/data
${rootArtifactId}-ass: ${rootArtifactId}-ass:
image: alfresco/alfresco-search-services:2.0.15 image: alfresco/alfresco-search-services:2.0.3
environment: environment:
SOLR_ALFRESCO_HOST: ${rootArtifactId}-acs SOLR_ALFRESCO_HOST: ${rootArtifactId}-acs
SOLR_ALFRESCO_PORT: 8080 SOLR_ALFRESCO_PORT: 8080
@@ -60,7 +60,7 @@ services:
- ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/contentstore - ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/contentstore
- ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/data - ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/data
${rootArtifactId}-activemq: ${rootArtifactId}-activemq:
image: alfresco/alfresco-activemq:5.18-jre17-rockylinux8 image: alfresco/alfresco-activemq:5.16.1
mem_limit: 1g mem_limit: 1g
ports: ports:
- 8161:8161 # Web Console - 8161:8161 # Web Console
@@ -5,8 +5,8 @@
<groupId>${groupId}</groupId> <groupId>${groupId}</groupId>
<artifactId>${artifactId}</artifactId> <artifactId>${artifactId}</artifactId>
<version>${version}</version> <version>${version}</version>
<name>AIO - SDK 4.14.0-A1</name> <name>AIO - SDK 4.10</name>
<description>All-In-One (AIO) project for SDK 4.14.0-A1</description> <description>All-In-One (AIO) project for SDK 4.10</description>
<packaging>pom</packaging> <packaging>pom</packaging>
<prerequisites> <prerequisites>
@@ -12,7 +12,7 @@
<parent> <parent>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<relativePath>../../pom.xml</relativePath> <relativePath>../../pom.xml</relativePath>
</parent> </parent>
@@ -1,6 +1,6 @@
# Alfresco ACS JAR Module - SDK 4.11.0 # Alfresco ACS JAR Module - SDK 4.10
This is an ACS project for Alfresco SDK 4.11.0. This is an ACS project for Alfresco SDK 4.10.
Run with `./run.sh build_start` or `./run.bat build_start` and verify that it Run with `./run.sh build_start` or `./run.bat build_start` and verify that it
@@ -41,4 +41,4 @@ All the services of the project are now run as docker containers. The run script
# TODO # TODO
* Abstract assembly into a dependency so we don't have to ship the assembly in the archetype * Abstract assembly into a dependency so we don't have to ship the assembly in the archetype
* Functional/remote unit tests * Functional/remote unit tests
@@ -30,7 +30,7 @@ services:
depends_on: depends_on:
- ${rootArtifactId}-postgres - ${rootArtifactId}-postgres
${rootArtifactId}-postgres: ${rootArtifactId}-postgres:
image: postgres:16.5 image: postgres:9.6
environment: environment:
POSTGRES_DB: alfresco POSTGRES_DB: alfresco
POSTGRES_USER: alfresco POSTGRES_USER: alfresco
@@ -41,7 +41,7 @@ services:
volumes: volumes:
- ${rootArtifactId}-db-volume:/var/lib/postgresql/data - ${rootArtifactId}-db-volume:/var/lib/postgresql/data
${rootArtifactId}-ass: ${rootArtifactId}-ass:
image: alfresco/alfresco-search-services:2.0.15 image: alfresco/alfresco-search-services:2.0.3
environment: environment:
SOLR_ALFRESCO_HOST: ${rootArtifactId}-acs SOLR_ALFRESCO_HOST: ${rootArtifactId}-acs
SOLR_ALFRESCO_PORT: 8080 SOLR_ALFRESCO_PORT: 8080
@@ -56,7 +56,7 @@ services:
- ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/contentstore - ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/contentstore
- ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/data - ${rootArtifactId}-ass-volume:/opt/alfresco-search-services/data
${rootArtifactId}-activemq: ${rootArtifactId}-activemq:
image: alfresco/alfresco-activemq:5.18-jre17-rockylinux8 image: alfresco/alfresco-activemq:5.16.1
mem_limit: 1g mem_limit: 1g
ports: ports:
- 8161:8161 # Web Console - 8161:8161 # Web Console
@@ -206,8 +206,8 @@ logger.alfresco-repo-workflow.name=org.alfresco.repo.workflow
logger.alfresco-repo-workflow.level=info logger.alfresco-repo-workflow.level=info
# CIFS server debugging # CIFS server debugging
logger.alfresco-smb-protocol.name=org.alfresco.smb.protocol logger.alfresco-smb.protocol.name=org.alfresco.smb.protocol
logger.alfresco-smb-protocol.level=error logger.alfresco-smb.protocol.level=error
# FTP server debugging # FTP server debugging
logger.alfresco-ftp-protocol.name=org.alfresco.ftp.protocol logger.alfresco-ftp-protocol.name=org.alfresco.ftp.protocol
@@ -385,7 +385,7 @@ logger.alfresco-repo-content-metadata-AbstractMappingMetadataExtracter.level=war
logger.apache-pdfbox-pdmodel-font-PDSimpleFont.name=org.apache.pdfbox.pdmodel.font.PDSimpleFont logger.apache-pdfbox-pdmodel-font-PDSimpleFont.name=org.apache.pdfbox.pdmodel.font.PDSimpleFont
logger.apache-pdfbox-pdmodel-font-PDSimpleFont.level=fatal logger.apache-pdfbox-pdmodel-font-PDSimpleFont.level=fatal
logger.apache-pdfbox-pdmodel-font-PDFont.name=org.apache.pdfbox.pdmodel.font.PDFont logger.apache-pdfbox-pdmodel-font-PDFont.name=org.apache.pdfbox.pdmodel.font.PDFont
logger.apache-pdfbox-pdmodel-font-PDFont.level=fatal logger.apache-pdfbox-pdmodel-font-PDFont=fatal
logger.apache-pdfbox-pdmodel-font-PDCIDFont.name=org.apache.pdfbox.pdmodel.font.PDCIDFont logger.apache-pdfbox-pdmodel-font-PDCIDFont.name=org.apache.pdfbox.pdmodel.font.PDCIDFont
logger.apache-pdfbox-pdmodel-font-PDCIDFont.level=fatal logger.apache-pdfbox-pdmodel-font-PDCIDFont.level=fatal
@@ -14,7 +14,7 @@
<parent> <parent>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<relativePath>../../pom.xml</relativePath> <relativePath>../../pom.xml</relativePath>
</parent> </parent>
@@ -1,6 +1,6 @@
# Alfresco Share JAR Module - SDK 4.11.0 # Alfresco Share JAR Module - SDK 4.10
This is a Share project for Alfresco SDK 4.11.0. This is a Share project for Alfresco SDK 4.10.
Run with `./run.sh build_start` or `./run.bat build_start` and verify that it Run with `./run.sh build_start` or `./run.bat build_start` and verify that it
@@ -37,4 +37,4 @@ All the services of the project are now run as docker containers. The run script
# TODO # TODO
* Abstract assembly into a dependency so we don't have to ship the assembly in the archetype * Abstract assembly into a dependency so we don't have to ship the assembly in the archetype
* Functional/remote unit tests * Functional/remote unit tests
@@ -101,13 +101,5 @@
</endpoint> </endpoint>
</remote> </remote>
</config> </config>
<config evaluator="string-compare" condition="Users" replace="true">
<users>
<username-min-length>2</username-min-length>
<password-min-length>3</password-min-length>
<show-authorization-status>false</show-authorization-status>
</users>
<enable-external-users-panel>false</enable-external-users-panel>
</config>
</alfresco-config> </alfresco-config>
+1 -1
View File
@@ -17,7 +17,7 @@
<parent> <parent>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<relativePath>../../pom.xml</relativePath> <relativePath>../../pom.xml</relativePath>
</parent> </parent>
+4 -4
View File
@@ -1,7 +1,7 @@
--- ---
Title: Alfresco SDK 4.11.0 Title: Alfresco SDK 4.10
Added: v3.0.0 Added: v3.0.0
Last reviewed: 2025-03-18 Last reviewed: 2024-11-21
--- ---
# Alfresco SDK 4 # 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) 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/). 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.11.0 is a minor update to the SDK and provides support for Alfresco 25.1.x. Alfresco SDK 4.10 is a minor update to the SDK and provides support for Alfresco 23.4.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 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. previous releases of the SDK.
@@ -55,4 +55,4 @@ code into place.
* [How to configure and use JRebel](advanced-topics/hot-reloading/jrebel.md) * [How to configure and use JRebel](advanced-topics/hot-reloading/jrebel.md)
* [How to configure and use Hotswap Agent](advanced-topics/hot-reloading/hotswap-agent.md) * [How to configure and use Hotswap Agent](advanced-topics/hot-reloading/hotswap-agent.md)
* [Switching Alfresco Content Services database](advanced-topics/switching-dbs.md) * [Switching Alfresco Content Services database](advanced-topics/switching-dbs.md)
* [Troubleshooting](troubleshooting.md) * [Troubleshooting](troubleshooting.md)
+3 -5
View File
@@ -118,7 +118,7 @@ Choose archetype:
* `org.alfresco.maven.archetype:alfresco-platform-jar-archetype` * `org.alfresco.maven.archetype:alfresco-platform-jar-archetype`
* `org.alfresco.maven.archetype:alfresco-share-jar-archetype` * `org.alfresco.maven.archetype:alfresco-share-jar-archetype`
3. Choose the latest version, such as 4.12.0. 3. Choose the latest version, such as 4.10.0.
``` ```
Choose org.alfresco.maven.archetype:alfresco-allinone-archetype version: Choose org.alfresco.maven.archetype:alfresco-allinone-archetype version:
@@ -145,8 +145,6 @@ Choose org.alfresco.maven.archetype:alfresco-allinone-archetype version:
21: 4.8.0 21: 4.8.0
22: 4.9.0 22: 4.9.0
23: 4.10.0 23: 4.10.0
24: 4.11.0
25: 4.12.0
``` ```
4. Next you will be prompted for additional values, like groupId, artifactId, and package, as shown below: 4. Next you will be prompted for additional values, like groupId, artifactId, and package, as shown below:
@@ -175,7 +173,7 @@ If everything has been configured correctly, you should see something similar to
``` ```
[INFO] ---------------------------------------------------------------------------- [INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: alfresco-allinone-archetype:4.12.0 [INFO] Using following parameters for creating project from Archetype: alfresco-allinone-archetype:4.10.0
[INFO] ---------------------------------------------------------------------------- [INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: com.acme [INFO] Parameter: groupId, Value: com.acme
[INFO] Parameter: artifactId, Value: my-all-in-one [INFO] Parameter: artifactId, Value: my-all-in-one
@@ -213,4 +211,4 @@ In the terminal window, use:
If this is the first time you are doing this, it will take a while for Maven to download all the required dependencies and for Docker to download all the If this is the first time you are doing this, it will take a while for Maven to download all the required dependencies and for Docker to download all the
required images. required images.
For more information about how to work with the projects, please visit [Working with generated projects](working-with-generated-projects/README.md). For more information about how to work with the projects, please visit [Working with generated projects](working-with-generated-projects/README.md).
+3 -3
View File
@@ -10,7 +10,7 @@ Alfresco Share 6.
This was a mayor release oriented to support Alfresco 6, so it is not compatible with previous versions of the SDK. This was a mayor release oriented to support Alfresco 6, so it is not compatible with previous versions of the SDK.
Alfresco SDK 4.12.0 extends the support to Alfresco 25.2. Alfresco SDK 4.10 extends the support to Alfresco 23.4.
Use an older SDK version for Alfresco 6. Use an older SDK version for Alfresco 6.
## Embracing containers and Docker ## Embracing containers and Docker
@@ -64,9 +64,9 @@ environment can be more similar to a real one, including whatever other service
Alfresco SDK 4.1 provides support for Alfresco 6.2.x. Alfresco SDK 4.1 provides support for Alfresco 6.2.x.
## Support for Alfresco 7.0.x, 7.1.x, 7.2.x, 7.3.x, 7.4.x. 23.1.x, 23.2.x, 23.3.x, 23.4.x, 25.1.x and 25.2.x ## Support for Alfresco 7.0.x, 7.1.x, 7.2.x, 7.3.x, 7.4.x. 23.1.x, 23.2.x, 23.3.x and 23.4.x
Alfresco SDK 4.12.0 provides support for Alfresco 7.0.x, 7.1.x, 7.2.x, 7.3.x, 7.4.x, 23.1.x, 23.2.x, 23.3.x, 23.4.x, 25.1.x and 25.2.x. Alfresco SDK 4.10 provides support for Alfresco 7.0.x, 7.1.x, 7.2.x, 7.3.x, 7.4.x, 23.1.x, 23.2.x, 23.3.x and 23.4.x.
## Support for Java 17 ## 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 [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
@@ -78,7 +78,7 @@ my-all-in-one-project mbergljung$ ./run.sh build_start
[INFO] ------------------------------------------------------------------------ [INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order: [INFO] Reactor Build Order:
[INFO] [INFO]
[INFO] AIO - SDK 4.11.0 [INFO] AIO - SDK 4.10
[INFO] Alfresco Platform/Repository JAR Module [INFO] Alfresco Platform/Repository JAR Module
[INFO] Alfresco Share JAR Module [INFO] Alfresco Share JAR Module
[INFO] Integration Tests Module [INFO] Integration Tests Module
@@ -88,7 +88,7 @@ my-all-in-one-project mbergljung$ ./run.sh build_start
[INFO] ------------------------------------------------------------------------ [INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary: [INFO] Reactor Summary:
[INFO] [INFO]
[INFO] AIO - SDK 4.11.0 ...................................... SUCCESS [ 0.680 s] [INFO] AIO - SDK 4.10 ...................................... SUCCESS [ 0.680 s]
[INFO] Alfresco Platform/Repository JAR Module ............ SUCCESS [ 5.461 s] [INFO] Alfresco Platform/Repository JAR Module ............ SUCCESS [ 5.461 s]
[INFO] Alfresco Share JAR Module .......................... SUCCESS [ 0.557 s] [INFO] Alfresco Share JAR Module .......................... SUCCESS [ 0.557 s]
[INFO] Integration Tests Module ........................... SUCCESS [ 0.900 s] [INFO] Integration Tests Module ........................... SUCCESS [ 0.900 s]
@@ -250,4 +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-ass_1 ... done
Removing docker_my-all-in-one-project-share_1 ... done Removing docker_my-all-in-one-project-share_1 ... done
Removing network docker_default Removing network docker_default
``` ```
+2 -1
View File
@@ -10,7 +10,7 @@
<parent> <parent>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<relativePath>../../pom.xml</relativePath> <relativePath>../../pom.xml</relativePath>
</parent> </parent>
@@ -49,4 +49,5 @@
</dependency> </dependency>
</dependencies> </dependencies>
</project> </project>
+5 -5
View File
@@ -8,7 +8,7 @@
<parent> <parent>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<relativePath>../../pom.xml</relativePath> <relativePath>../../pom.xml</relativePath>
</parent> </parent>
@@ -92,7 +92,7 @@
<dependency> <dependency>
<groupId>org.codehaus.plexus</groupId> <groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-archiver</artifactId> <artifactId>plexus-archiver</artifactId>
<version>4.11.0</version> <version>4.10.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.maven</groupId> <groupId>org.apache.maven</groupId>
@@ -135,9 +135,9 @@
<version>0.6.0</version> <version>0.6.0</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.commons</groupId> <groupId>commons-lang</groupId>
<artifactId>commons-lang3</artifactId> <artifactId>commons-lang</artifactId>
<version>3.18.0</version> <version>2.6</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.twdata.maven</groupId> <groupId>org.twdata.maven</groupId>
@@ -17,7 +17,7 @@
*/ */
package org.alfresco.maven.plugin; package org.alfresco.maven.plugin;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.net.telnet.TelnetClient; import org.apache.commons.net.telnet.TelnetClient;
import org.apache.http.HttpHost; import org.apache.http.HttpHost;
import org.apache.http.HttpStatus; import org.apache.http.HttpStatus;
@@ -20,7 +20,7 @@ package org.alfresco.maven.plugin;
import org.alfresco.maven.plugin.config.ModuleDependency; import org.alfresco.maven.plugin.config.ModuleDependency;
import org.alfresco.maven.plugin.config.TomcatDependency; import org.alfresco.maven.plugin.config.TomcatDependency;
import org.alfresco.maven.plugin.config.TomcatWebapp; import org.alfresco.maven.plugin.config.TomcatWebapp;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.CloseableHttpClient;
@@ -18,7 +18,7 @@
package org.alfresco.maven.plugin.config; package org.alfresco.maven.plugin.config;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang.StringUtils;
/** /**
* <p> * <p>
+22 -121
View File
@@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.alfresco.maven</groupId> <groupId>org.alfresco.maven</groupId>
<artifactId>alfresco-sdk-aggregator</artifactId> <artifactId>alfresco-sdk-aggregator</artifactId>
<version>4.14.0-A1</version> <version>4.10.0</version>
<name>Alfresco SDK</name> <name>Alfresco SDK</name>
<description>This aggregator Project builds all modules required for the Alfresco SDK</description> <description>This aggregator Project builds all modules required for the Alfresco SDK</description>
<packaging>pom</packaging> <packaging>pom</packaging>
@@ -30,7 +30,7 @@
<connection>scm:git:${scm.url.base}.git</connection> <connection>scm:git:${scm.url.base}.git</connection>
<developerConnection>scm:git:${scm.url.base}</developerConnection> <developerConnection>scm:git:${scm.url.base}</developerConnection>
<url>${scm.url.base}</url> <url>${scm.url.base}</url>
<tag>alfresco-sdk-aggregator-${project.version}</tag> <tag>alfresco-sdk-aggregator-4.10.0</tag>
</scm> </scm>
<!-- All the modules of the Alfresco SDK --> <!-- All the modules of the Alfresco SDK -->
@@ -44,7 +44,7 @@
<module>archetypes/alfresco-share-jar-archetype</module> <module>archetypes/alfresco-share-jar-archetype</module>
<module>archetypes/alfresco-allinone-archetype</module> <module>archetypes/alfresco-allinone-archetype</module>
<module>archetypes/archetypes-it</module> <module>archetypes/archetypes-it</module>
</modules> </modules>
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -56,17 +56,17 @@
<alfresco.sdk.tests.exclude>*/*-enterprise*/*</alfresco.sdk.tests.exclude> <alfresco.sdk.tests.exclude>*/*-enterprise*/*</alfresco.sdk.tests.exclude>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId> <alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>25.3.0-A.15</alfresco.platform.version> <alfresco.platform.version>23.4.0</alfresco.platform.version>
<alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user> <alfresco.platform.docker.user>alfresco</alfresco.platform.docker.user>
<alfresco.share.docker.version>25.3.0-A.15</alfresco.share.docker.version> <alfresco.share.docker.version>23.4.0</alfresco.share.docker.version>
<!-- <!--
The following value is now obtained by looking at the The following value is now obtained by looking at the
- alfresco-community-share.version (eg. https://github.com/Alfresco/acs-community-packaging/blob/25.1.0/pom.xml#L17) - alfresco-community-share.version (eg. https://github.com/Alfresco/acs-community-packaging/blob/23.4.0/pom.xml#L17)
or or
- alfresco-enterprise-share.version (eg. https://github.com/Alfresco/acs-packaging/blob/25.1.0/pom.xml#L18) - alfresco-enterprise-share.version (eg. https://github.com/Alfresco/acs-packaging/blob/23.4.0/pom.xml#L18)
for the GitHub Tag related to the above Docker version. for the GitHub Tag related to the above Docker version.
--> -->
<alfresco.share.version>25.3.0.36</alfresco.share.version> <alfresco.share.version>23.4.0.46</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image> <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.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
<keystore.settings> <keystore.settings>
@@ -255,8 +255,8 @@
<id>community-233-tests</id> <id>community-233-tests</id>
<properties> <properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId> <alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>23.3.3</alfresco.platform.version> <alfresco.platform.version>23.3.0</alfresco.platform.version>
<alfresco.share.docker.version>23.3.3</alfresco.share.docker.version> <alfresco.share.docker.version>23.3.0</alfresco.share.docker.version>
<alfresco.share.version>23.3.0.85</alfresco.share.version> <alfresco.share.version>23.3.0.85</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image> <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.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
@@ -267,8 +267,8 @@
<id>enterprise-233-tests</id> <id>enterprise-233-tests</id>
<properties> <properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId> <alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>23.3.3</alfresco.platform.version> <alfresco.platform.version>23.3.0</alfresco.platform.version>
<alfresco.share.docker.version>23.3.3</alfresco.share.docker.version> <alfresco.share.docker.version>23.3.0</alfresco.share.docker.version>
<alfresco.share.version>23.3.0.85</alfresco.share.version> <alfresco.share.version>23.3.0.85</alfresco.share.version>
<alfresco.platform.docker.image>quay.io/alfresco/alfresco-content-repository</alfresco.platform.docker.image> <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.share.docker.image>quay.io/alfresco/alfresco-share</alfresco.share.docker.image>
@@ -281,8 +281,8 @@
<id>community-234-tests</id> <id>community-234-tests</id>
<properties> <properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId> <alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>23.4.1</alfresco.platform.version> <alfresco.platform.version>23.4.0</alfresco.platform.version>
<alfresco.share.docker.version>23.4.1</alfresco.share.docker.version> <alfresco.share.docker.version>23.4.0</alfresco.share.docker.version>
<alfresco.share.version>23.4.0.46</alfresco.share.version> <alfresco.share.version>23.4.0.46</alfresco.share.version>
<alfresco.platform.docker.image>alfresco/alfresco-content-repository-community</alfresco.platform.docker.image> <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.share.docker.image>alfresco/alfresco-share</alfresco.share.docker.image>
@@ -293,8 +293,8 @@
<id>enterprise-234-tests</id> <id>enterprise-234-tests</id>
<properties> <properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId> <alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>23.4.1</alfresco.platform.version> <alfresco.platform.version>23.4.0</alfresco.platform.version>
<alfresco.share.docker.version>23.4.1</alfresco.share.docker.version> <alfresco.share.docker.version>23.4.0</alfresco.share.docker.version>
<alfresco.share.version>23.4.0.46</alfresco.share.version> <alfresco.share.version>23.4.0.46</alfresco.share.version>
<alfresco.platform.docker.image>quay.io/alfresco/alfresco-content-repository</alfresco.platform.docker.image> <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.share.docker.image>quay.io/alfresco/alfresco-share</alfresco.share.docker.image>
@@ -302,112 +302,14 @@
</properties> </properties>
</profile> </profile>
<!-- 23.5 -->
<profile>
<id>enterprise-235-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>23.5.0</alfresco.platform.version>
<alfresco.share.docker.version>23.5.0</alfresco.share.docker.version>
<alfresco.share.version>23.5.0.11</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>
<!-- 25.1 -->
<profile>
<id>community-251-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>25.1.0</alfresco.platform.version>
<alfresco.share.docker.version>25.1.0</alfresco.share.docker.version>
<alfresco.share.version>25.1.0.56</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-251-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>25.1.0</alfresco.platform.version>
<alfresco.share.docker.version>25.1.0</alfresco.share.docker.version>
<alfresco.share.version>25.1.0.56</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>
<!-- 25.2 -->
<profile>
<id>community-252-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-community-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>25.2.0</alfresco.platform.version>
<alfresco.share.docker.version>25.2.0</alfresco.share.docker.version>
<alfresco.share.version>25.2.0.46</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-252-tests</id>
<properties>
<alfresco.bomDependency.artifactId>acs-packaging</alfresco.bomDependency.artifactId>
<alfresco.platform.version>25.2.0</alfresco.platform.version>
<alfresco.share.docker.version>25.2.0</alfresco.share.docker.version>
<alfresco.share.version>25.2.0.46</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>
<profile> <profile>
<id>sdk-release</id> <id>sdk-release</id>
<properties>
<maven.site.url>https://artifacts.alfresco.com/nexus/content/repositories/alfresco-docs/alfresco-sdk-aggregator/latest</maven.site.url>
<maven.release.goals>deploy site-deploy</maven.release.goals>
</properties>
<build> <build>
<plugins> <plugins>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.8.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<autoPublish>true</autoPublish>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.8.0</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId> <artifactId>maven-gpg-plugin</artifactId>
@@ -424,7 +326,6 @@
<arg>--pinentry-mode</arg> <arg>--pinentry-mode</arg>
<arg>loopback</arg> <arg>loopback</arg>
</gpgArguments> </gpgArguments>
<passphrase>${gpg.passphrase}</passphrase>
</configuration> </configuration>
</execution> </execution>
</executions> </executions>
@@ -622,7 +523,7 @@
<distributionManagement> <distributionManagement>
<repository> <repository>
<id>alfresco-public</id> <id>alfresco-public</id>
<url>https://nexus.alfresco.com/nexus/repository/releases</url> <url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
</repository> </repository>
<snapshotRepository> <snapshotRepository>
<id>alfresco-public-snapshots</id> <id>alfresco-public-snapshots</id>
@@ -711,4 +612,4 @@
<timezone>+1</timezone> <timezone>+1</timezone>
</contributor> </contributor>
</contributors> </contributors>
</project> </project>