Contains the common transformer (T-Engine) code, plus a few implementations.
When upgrading to 3.0.0, you will find that a number of classes in the alfresco-transform-model have moved. See the alfresco-transform-model README
model
- library packaged as a jar file which contains the data model of json configuration files and messages sent between clients, T-Engines and T-Router. Also contains code to to combine and then work out which transform to use for a combination of source and target mimetypes and transform options.engines/base
- contains code common to t-engines, packaged as a jar. READMEengines/<name>
- multiple T-Engines, which extend theengines/base
; each one builds a SpringBoot jar and a Docker imagedeprecated/alfresco-base-t-engine
- The original t-engine base, which may still be used, but has been replaced by the simplerengines/base
.
docs
- provides additional documentation.- ACS Packaging docs folder
- If you're interested in the Alfresco Transform Service (ATS) see https://docs.alfresco.com/transform/concepts/transformservice-overview.html
The project can be built by running the Maven command:
mvn clean install -Plocal,docker-it-setup
The
local
Maven profile builds local Docker images for each T-Engine.
Execute the following commands to run a t-engine in detached mode on port 8090 and to show the logs:
docker run -d -p 8090:8090 --name <t-engine-project-name> <t-engine-project-name>:latest
docker logs -f <t-engine-project-name>
Since a T-Engine is a Spring Boot application, it might be helpful to run it as such during development by executing one of the following:
mvn spring-boot:run
java -jar target/helloworld-t-engine-{version}.jar
in the project directory.- Run or debug the application
org.alfresco.transform.base.Application
from within an IDE.
The application will be accessible on port 8090 and the test page is: http://localhost:8090/
.
The config is available on http://localhost:8090/transform/config
.
The artifacts can be obtained by:
- downloading from Alfresco repository
- getting as Maven dependency by adding the dependency to your pom file:
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-transform-model</artifactId>
<version>version</version>
</dependency>
<dependency>
<groupId>org.alfresco</groupId>
<artifactId>alfresco-base-t-engine</artifactId>
<version>version</version>
</dependency>
and Alfresco Maven repository:
<repository>
<id>alfresco-maven-repo</id>
<url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
</repository>
The core T-Engine images are available on Docker Hub.
Either as a single Core AIO (All-In-One) T-Engine:
Or as a set of individual T-Engines:
- alfresco/alfresco-imagemagick
- alfresco/alfresco-pdf-renderer
- alfresco/alfresco-libreoffice
- alfresco/alfresco-tika
- alfresco/alfresco-transform-misc
You can find examples of using Core AIO in the reference ACS Deployment for Docker Compose:
You can find examples of using the individual T-Engines in the reference ACS Deployment for Helm / Kubernetes:
For a complete walk-through check out the
build-and-release.MD
under the docs
folder.
Please use this guide to make a contribution to the project.