Skip to content

Alfresco/alfresco-transform-core

Folders and files

NameName
Last commit message
Last commit date
Mar 4, 2025
Jul 26, 2024
Mar 10, 2025
Feb 6, 2024
Mar 10, 2025
May 20, 2019
Mar 10, 2025
Oct 29, 2024
Feb 9, 2023
Mar 7, 2018
Mar 27, 2020
Sep 27, 2024
Sep 27, 2024
May 20, 2019
Feb 9, 2023
Sep 27, 2024
Mar 10, 2025
Dec 10, 2021

Repository files navigation

Alfresco Transform Core

Build Status

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

Sub-projects

  • 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. README
  • engines/<name> - multiple T-Engines, which extend the engines/base; each one builds a SpringBoot jar and a Docker image
  • deprecated/alfresco-base-t-engine - The original t-engine base, which may still be used, but has been replaced by the simpler engines/base.

Documentation

Building and testing

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.

Run in Docker

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>

Run the Spring Boot Application

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.

Test page

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.

Artifacts

Maven

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>

Docker

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:

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:

Release Process

For a complete walk-through check out the build-and-release.MD under the docs folder.

Contributing guide

Please use this guide to make a contribution to the project.