initial checkin

This commit is contained in:
2021-04-22 15:58:20 -04:00
commit a7fef4641b
278 changed files with 14028 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
# Eclipse
.project
.classpath
.settings
# Maven
pom.xml.versionsBackup
target

View File

@@ -0,0 +1,64 @@
# BeeDK ACS Web Application Builder Maven Tile for RAD
This is a component within the proposed [BeeDK](/inteligr8/ootbee-beedk). It is considered to be part of the **Private API** of the BeeDK.
## Purpose
This project creates a [Maven Tile](https://github.com/repaint-io/maven-tiles) that provides the basis for building Alfresco web applications for rapid application development purposes.
## Usage
To use this plugin, just reference it with the Maven Tiles plugin as shown in the following snippet. Do not forget the `extensions` element in the *plugin* configuration.
```xml
<project ...>
...
<build>
...
<plugins>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>[2.0,3.0)</version>
<extensions>true</extensions>
<configuration>
<tiles>
...
<!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-artifact-rad-tile -->
<tile>com.inteligr8.ootbee:beedk-acs-webapp-artifact-rad-tile:[1.0.0,2.0.0)</tile>
</tiles>
</configuration>
</plugin>
...
</plugins>
...
</build>
...
</project>
```
## Configuration
In your Maven project, set the following properties to define the behavior of this Maven Tile. Unless otherwise stated, they can only be overridden in the project POM or other Maven Tiles loaded earlier than this Maven Tile.
### Public API
The following properties are intended to be exposed by inheriting Public API Maven Tiles.
| Maven Property | Required | Default | Description |
| ---------------------------- |:--------:| ----------------- | ----------- |
| `alfresco.sdk.version` | **YES** | | For a list of versions and more details, see the [Alfresco SDK](https://github.com/Alfresco/alfresco-sdk). This is used for AMP packaging functionality. |
| `alfresco.war.groupId` | | `org.alfresco` | The Maven `groupId` of a Maven `war` Type Project defined in a Maven Repository.<br/>*Inherited from [`beedk-acs-webapp-artifact-tile`](/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-artifact-tile)* |
| `alfresco.war.artifactId` | **YES** | | The Maven `artifactId` of a Maven `war` Type Project defined in a Maven Repository.<br/>*Inherited from [`beedk-acs-webapp-artifact-tile`](/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-artifact-tile)* |
| `alfresco.war.version` | **YES** | | The Maven `version` of a Maven `war` Type Project defined in a Maven Repository.<br/>*Inherited from [`beedk-acs-webapp-artifact-tile`](/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-artifact-tile)* |
| `project.build.ampDirectory` | | `${project.build.directory}/amp` | This is where AMPs are temporarily copied during the build process. |
### Other APIs
Additional less important configurations are inherited from the following Maven Tiles.
* [`beedk-acs-webapp-artifact-tile`](/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-artifact-tile)
## Results
The configured WAR will downloaded to your local Maven Repository and copied into the configured directory during the configured Maven phase. The project's AMP `compile`, `runtime`,and `test` dependencies will be downloaded to your local Maven Repository and copied into the configured directory during the `generate-resources` Maven phase. The AMPs will be installed into the WAR during that same `generate-resources` Maven phase. The downloaded and copied AMPs will remain in place.

View File

@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.inteligr8.ootbee</groupId>
<artifactId>beedk-acs-webapp-artifact-rad-tile</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>tile</packaging>
<name>Order of the Bee Development Kit: Alfresco Web Application Artifact for RAD</name>
<scm>
<url>https://bitbucket.org/inteligr8/ootbee-beedk</url>
</scm>
<organization>
<name>Order of the Bee</name>
<url>https://orderofthebee.net</url>
</organization>
<developers>
<developer>
<name>Brian Long</name>
<email>brian@inteligr8.com</email>
<organization>Inteligr8</organization>
<organizationUrl>https://www.inteligr8.com</organizationUrl>
<url>https://twitter.com/brianmlong</url>
</developer>
</developers>
<build>
<plugins>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>2.20</version>
<extensions>true</extensions>
<configuration>
<tiles>
<tile>com.inteligr8:maven-public-deploy-tile:[1.0.0,2.0.0)</tile>
</tiles>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0 https://bitbucket.org/inteligr8/maven-tiles/raw/xsd/src/main/resources/maven-tiles.xsd">
<build>
<plugins>
<!-- This plugin downloads the dependency AMPs -->
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.2</version>
<executions>
<!-- This execution downloads the dependency AMPs in the `compile`, `runtime`, and `test' scopes -->
<execution>
<id>download-test-amp-modules</id>
<phase>${beedk.download.war.phase}</phase>
<goals><goal>copy-dependencies</goal></goals>
<configuration>
<skip>${beedk.amp.test.empty}</skip>
<excludeScope>provided</excludeScope>
<includeTypes>amp</includeTypes>
<outputDirectory>${project.build.ampDirectory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<!-- This plugin installs the aforementioned AMPs into the aforementioned WAR -->
<plugin>
<groupId>org.alfresco.maven.plugin</groupId>
<artifactId>alfresco-maven-plugin</artifactId>
<version>${alfresco.sdk.version}</version>
<executions>
<execution>
<id>build-test-webapp</id>
<phase>${beedk.download.war.phase}</phase>
<goals><goal>install</goal></goals>
<configuration>
<skipAmpInstallation>${beedk.amp.test.empty}</skipAmpInstallation>
<warLocation>${project.build.warFile}</warLocation>
<ampLocation>${project.build.ampDirectory}</ampLocation>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<!-- This profile is always active; it defines default values for all optional properties -->
<profile>
<id>default-props</id>
<activation>
<property>
<name>!some-prop-that-never-exists</name>
</property>
</activation>
<properties>
<!-- configurable -->
<project.build.ampDirectory>${project.build.directory}/amps</project.build.ampDirectory>
<!-- configuring beedk-acs-webapp-artifact-tile -->
<beedk.download.war.phase>generate-resources</beedk.download.war.phase>
</properties>
</profile>
</profiles>
<tiles>
<!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-artifact-tile -->
<tile>com.inteligr8.ootbee:beedk-acs-webapp-artifact-tile:1.0-SNAPSHOT</tile>
</tiles>
</project>