Skip to content

Commit

Permalink
Merge pull request #202 from xenit-eu/master
Browse files Browse the repository at this point in the history
Release 5.0.1
  • Loading branch information
pvriel authored Mar 19, 2024
2 parents ea844d7 + b727159 commit 8a8da4d
Show file tree
Hide file tree
Showing 8 changed files with 4,327 additions and 31 deletions.
47 changes: 32 additions & 15 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,13 @@ on:
env:
ALFRESCO_NEXUS_USERNAME: ${{ secrets.ALFRESCO_NEXUS_USERNAME }}
ALFRESCO_NEXUS_PASSWORD: ${{ secrets.ALFRESCO_NEXUS_PASSWORD }}
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.MAVEN_CENTRAL_GPG_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MAVEN_CENTRAL_GPG_PASSWORD }}
ORG_GRADLE_PROJECT_sonatype_username: ${{ secrets.SONATYPE_S01_USERNAME }}
ORG_GRADLE_PROJECT_sonatype_password: ${{ secrets.SONATYPE_S01_PASSWORD }}
BRANCH_NAME: ${{ github.ref_name }}
jobs:
BuildAndPublish:
strategy:
matrix:
alfresco_version: [ 70, 71, 72, 73, 74 ]
fail-fast: false
apix-interface:
runs-on: ubuntu-latest
steps:
- name: Check out
Expand All @@ -26,16 +27,40 @@ jobs:
registry: private.docker.xenit.eu
username: ${{ secrets.CLOUDSMITH_USER }}
password: ${{ secrets.CLOUDSMITH_APIKEY }}

- name: Build interface # Execute before integration testing to catch errors early
uses: gradle/[email protected]
with:
arguments: :apix-interface:build :apix-interface:javadoc

- name: Unit test REST API
uses: gradle/[email protected]
with:
arguments: --info :apix-rest-v1:test
- name: Publish
if: ${{ startsWith(github.ref, 'refs/heads/master') || startsWith(github.ref, 'refs/heads/release') }}"
uses: gradle/[email protected]
with:
arguments: --info -PsigningKeyId=DF8285F0 :apix-interface:publish

apix-impl:
strategy:
matrix:
alfresco_version: [ 70, 71, 72, 73, 74 ]
fail-fast: false
runs-on: ubuntu-latest
steps:
- name: Check out
uses: actions/checkout@v3
- name: Set up JDK
uses: actions/setup-java@v3
with:
java-version: 11
distribution: temurin
- name: Login to Docker
uses: docker/login-action@v2
with:
registry: private.docker.xenit.eu
username: ${{ secrets.CLOUDSMITH_USER }}
password: ${{ secrets.CLOUDSMITH_APIKEY }}
- name: Build and test
uses: gradle/[email protected]
with:
Expand All @@ -51,18 +76,10 @@ jobs:
report_paths: '**/build/test-results/**/TEST-*.xml'
github_token: ${{ secrets.GITHUB_TOKEN }}
detailed_summary: true

- name: Publish
if: ${{ startsWith(github.ref, 'refs/heads/master') || startsWith(github.ref, 'refs/heads/release') }}"
uses: gradle/[email protected]
env:
ORG_GRADLE_PROJECT_signingKey: ${{ secrets.MAVEN_CENTRAL_GPG_KEY }}
ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.MAVEN_CENTRAL_GPG_PASSWORD }}
ORG_GRADLE_PROJECT_sonatype_username: ${{ secrets.SONATYPE_S01_USERNAME }}
ORG_GRADLE_PROJECT_sonatype_password: ${{ secrets.SONATYPE_S01_PASSWORD }}
BRANCH_NAME: ${{ github.ref_name }}
with:
arguments: >-
--info -PsigningKeyId=DF8285F0
:apix-interface:publish
:alfresco:${{ matrix.alfresco_version }}:publish
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
# Alfred API - Changelog

## 5.0.1 (2024-03-19)

The artifact name of `apix-interface` has been changed to `alfred-api-interface`.

### Added

### Changed

### Fixed
* [ALFREDAPI-537](https://xenitsupport.jira.com/browse/ALFREDAPI-537): Fix conflicts between artifacts when publishing to Sonatype
* [ALFREDAPI-538](https://xenitsupport.jira.com/browse/ALFREDAPI-538): Fixed issue where errors related to jackson library conflicts would occurs while Alfresco is running
* [ALFREDAPI-540](https://xenitsupport.jira.com/browse/ALFREDAPI-540): Realign interface artifact name
* [ALFREDAPI-541](https://xenitsupport.jira.com/browse/ALFREDAPI-541): Clarify dependency installation instructions

### Removed


## 5.0.0 (2023-12-12)
From this version onward Dynamic Extensions is replaced by [Alfresco MVC](https://github.com/dgradecak/alfresco-mvc)
as framework to reduce maintenance efforts.
Expand Down
17 changes: 7 additions & 10 deletions apix-impl/build.gradle
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
sourceSets.main.java.srcDirs += 'src/main/java'
apply plugin: 'java-library'
dependencies {
api project(":apix-interface")
implementation group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final'
}
subprojects {
def shortAlfrescoVersion = project.name.split("-")[2]
apply from: "${rootProject.projectDir}/alfresco/${shortAlfrescoVersion}/overrides.gradle"
Expand Down Expand Up @@ -33,23 +37,16 @@ allprojects {
apply plugin: 'java-library'

dependencies {
api(project(":apix-interface")) {
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-annotations'
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'
}
implementation group: 'commons-lang', name: 'commons-lang', version: '1.0'
implementation group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final'
implementation group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-yaml', version: '2.16.0'

alfrescoProvided platform("org.alfresco:acs-community-packaging:${alfresco_version}")
alfrescoProvided "org.alfresco:alfresco-repository"
alfrescoProvided 'org.alfresco:alfresco-remote-api'
alfrescoProvided 'com.fasterxml.jackson.dataformat:jackson-dataformat-yaml'

testImplementation platform("org.alfresco:acs-community-packaging:${alfresco_version}")
testImplementation 'org.alfresco:alfresco-repository'
testImplementation 'org.alfresco:alfresco-remote-api'
testImplementation 'org.alfresco:alfresco-data-model'
testImplementation group: 'org.mockito', name: 'mockito-core', version: '2.25.1'
testImplementation 'org.mockito:mockito-core'
}

task generateVersionFile(type: Task) {
Expand Down
3 changes: 2 additions & 1 deletion apix-interface/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ task javadocJar(type: Jar) {
publishing {
publications {
mavenJava(MavenPublication) {
artifactId 'alfred-api-interface'
from components.java
artifact sourcesJar
artifact javadocJar
Expand All @@ -25,6 +26,6 @@ publishing {
dependencies {
compileOnly "com.fasterxml.jackson.core:jackson-annotations:${jackson_version}"
compileOnly "com.fasterxml.jackson.core:jackson-databind:${jackson_version}"
testImplementation group: 'junit', name: 'junit', version: '4.12'
testImplementation group: 'junit', name: 'junit', version: '4.13.1'
}

2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ def static getVersionQualifier(String branch_name) {
}

ext {
versionWithoutQualifier = '5.0.0'
versionWithoutQualifier = '5.0.1'

de_version = '3.1.0' // Only used for integration testing
mvc = '8.0.0'
Expand Down
20 changes: 19 additions & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,22 @@ This is done by manually executing:
```

This will generate a ZIP containing the documentation website, which still needs to be
uploaded and unzipped on our host.
uploaded and unzipped on our host.

## Publishing

To upload to docs.xenit.eu, you first need to have key-based SSH access to the `xeniteu` account.
Example to upload the website tarball:
```bash
scp -i ~/.ssh/a2hosting-key -P 7822 build/website-alfred-api_2024-02-21.tar.gz [email protected]:~/docs.xenit.eu/
```

After that login via SSH to unpack the website. The folder hosting the Alfred API docs is `~/docs.xenit.eu/alfred-api`.
Example to unpack:
```bash
ssh -i ~/.ssh/a2hosting-key -p 7822 [email protected]
$ cd docs.xenit.eu
$ mv alfred-api alfred-api_backup2024-02-21
$ tar xvzf website-alfred-api_2024-02-21.tar.gz
```

4,219 changes: 4,218 additions & 1 deletion docs/swagger-ui/swagger.json

Large diffs are not rendered by default.

33 changes: 31 additions & 2 deletions docs/user/user-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -742,9 +742,38 @@ Currently Alfred API supports the following Alfresco versions:
* 7.3
* 7.4

Note that previous versions of Alfred API needed
Alfred API depends on the [Alfresco MVC framework](https://github.com/dgradecak/alfresco-mvc) version `8.0.0`.
Installation depends on the tools that you use to build and install, but below are examples of a few common ways.
Further details can be found on its [README](https://github.com/dgradecak/alfresco-mvc/blob/master/README.md).

(Note that previous versions of Alfred API needed
[Dynamic Extensions For Alfresco](https://github.com/xenit-eu/dynamic-extensions-for-alfresco).
Since version 5.0.0, however, Dynamic Extensions is no longer needed.
Since version 5.0.0, however, Dynamic Extensions is no longer needed.)


### Install with Gradle

An example when using Gradle and the
[Alfresco Docker Gradle plugin](https://github.com/xenit-eu/alfresco-docker-gradle-plugin/blob/master/docs/02-plugin-docker-alfresco.md)
is:
```groovy
alfrescoSM group: 'com.gradecak.alfresco-mvc', name: 'alfresco-mvc-rest', version: '8.0.0'
alfrescoSM group: 'com.gradecak.alfresco-mvc', name: 'alfresco-mvc-aop', version: '8.0.0'
alfrescoAmp group: 'eu.xenit.alfred.api', name: 'alfred-api-74', version: '5.0.0'
```
Note above example also installs Alfred API as AMP.

### Install manually

If you install your Alfresco manually, you can download the JARs directly from
[Maven Central](https://search.maven.org/search?q=g:com.gradecak.alfresco-mvc)
and place them on your Tomcat's classpath.

```bash
cp alfresco-mvc-aop-8.0.0.jar /usr/local/tomcat/shared/lib/
cp alfresco-mvc-rest-8.0.0.jar /usr/local/tomcat/shared/lib/
```


## Artifacts
### Prebuilt
Expand Down

0 comments on commit 8a8da4d

Please sign in to comment.