Skip to content

Latest commit

 

History

History
58 lines (39 loc) · 3.84 KB

whats-new.md

File metadata and controls

58 lines (39 loc) · 3.84 KB
Title Added Last reviewed
What's new?
v2.1.1
2019-01-17

What's new?

Alfresco SDK 4.0 brings some changes oriented to assist the way the customizations are built, packaged, run and tested for Alfresco Content Services 6 and Alfresco Share 6.

This is a mayor release oriented to support Alfresco 6, so it is not compatible with previous versions of the SDK.

Embracing containers and Docker

The main change included in SDK 4.0 is the addition of container technologies. Specifically, the new SDK is highly based on Docker and Docker compose to offer a solution aligned with the architectural decisions made in Alfresco for version 6: moving towards microservices-oriented solutions.

Working with Docker images gives the developers the opportunity to easily customise the deployment of the local environment to adapt it to their requirements. Adding, removing and configuring services in the environment is as easy as modifying the Docker compose descriptor file.

Support for Java 11

Java 11 is the next Long Term Support (LTS) version that provides support for 3 years. Alfresco 6.1 already offers support for this version of the Java platform.

Alfresco SDK 4.0 has been modified to add support for Java 11 as well. This way, if you're working as a developer in customisations for Alfresco 6.1 you must now use SDK 4.0 + JDK 11 to work on them. The Apache Maven plugins included in the archetypes has been updated to avoid any issue with Java 11.

Easy dependency configuration

The configuration of the Maven dependency management has been greatly improved thanks to the addition of a bill of materials (BOM).

The inclusion of the BOM dependency in the dependencyManagement section of the pom.xml file of the projects generated using the archetypes imports all artifacts in the selected Alfresco platform version. It is still needed to define dependencies in the POM files, but the version can be omitted as it's enforced by this dependencyManagement.

That incredibly eases the management of the versions of the different Alfresco platform's dependencies required in a customisation project.

Alfresco Maven Plugin no longer needed

Alfresco SDK 4.0 manages the lifecycle of the generated projects making use of proper utility scripts (run.sh / run.bat). That avoids the need of using the Alfresco Maven Plugin and eases the process to modify the lifecycle of the customisation projects.

If a development team has straightforward requirements and doesn't want to worry about the complexity of working with containers, it can use the utility scripts as they are. But, if any development team has a requirement or a development process that requires a customisation in the project development lifecycle, it is easy to modify the utility scripts, the Docker files or the Docker compose descriptor to adapt the SDK projects to their needs.

The Alfresco Maven Plugin is only required in those cases in which it is required to package the customisation project as an AMP. For more information about how to work with AMPs, please visit Working with AMPs.

Integration testing

The integration tests and the mechanisms to execute them in an Alfresco Content Service instance remains the same as in the previous version of the SDK.

However, the inclusion of Docker and the utility scripts provides a different perspective about the environment on which the integration tests are executed. In this version, the integration tests are run against the dockerised environment defined using Docker and Docker compose. By doing so, the integration test environment can be more similar to a real one, including whatever other service is required for a full featured integration test execution.