mta-web-distribution
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>org.jboss.windup.web</groupId>
<artifactId>mta-web-distribution</artifactId>
<version>5.3.0.Final</version>
</dependency><?xml version="1.0" encoding="UTF-8"?>
<!-- ~ Copyright 2012 Red Hat, Inc. and/or its affiliates. ~ ~ Licensed under the Eclipse Public License version 1.0, available
at ~ http://www.eclipse.org/legal/epl-v10.html -->
<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>
<parent>
<groupId>org.jboss</groupId>
<artifactId>jboss-parent</artifactId>
<version>22</version>
<relativePath />
</parent>
<groupId>org.jboss.windup.web</groupId>
<artifactId>mta-web-distribution</artifactId>
<version>5.3.0.Final</version>
<name>Windup Web - Distribution Build</name>
<packaging>pom</packaging>
<properties>
<version.keycloak>15.1.1</version.keycloak>
<wildfly.groupId>org.wildfly</wildfly.groupId>
<wildfly.artifactId>wildfly-dist</wildfly.artifactId>
<version.wildfly>23.0.2.Final</version.wildfly>
<wildfly.directory>wildfly-${version.wildfly}</wildfly.directory>
<version.wildfly.maven.plugin>2.1.0.Final</version.wildfly.maven.plugin>
<windup.scm.connection>scm:git:https://github.com/windup/windup-web-distribution.git</windup.scm.connection>
<windup.developer.connection>scm:git:git@github.com:windup/windup-web-distribution.git</windup.developer.connection>
<windup.scm.url>http://github.com/windup/windup-web-distribution</windup.scm.url>
<keycloak.tool.basedir>${project.build.directory}/keycloak-tool</keycloak.tool.basedir>
<keycloak.tool.name>keycloak-tool.jar</keycloak.tool.name>
<keycloak.tool.path>${keycloak.tool.basedir}/${keycloak.tool.name}</keycloak.tool.path>
<skip.deployment>false</skip.deployment>
<assembly.baseDirectory>${project.build.finalName}</assembly.baseDirectory>
</properties>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<dependencyManagement>
<dependencies>
</dependencies>
</dependencyManagement>
<dependencies>
<!-- Keeping this here so that Maven knows about it. -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.194</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
</plugin>
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<version>${version.wildfly.maven.plugin}</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.0.0</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<!-- Get the Keycloak tool locally -->
<execution>
<id>copy-keycloak-tool</id>
<phase>compile</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.jboss.windup.web</groupId>
<artifactId>windup-keycloak-tool</artifactId>
<version>5.7.0.Final</version>
<outputDirectory>${keycloak.tool.basedir}</outputDirectory>
<destFileName>${keycloak.tool.name}</destFileName>
<overWrite>true</overWrite>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<!-- Copy the applications to deploy locally -->
<execution>
<id>copy-web-applications</id>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<skip>${skip.deployment}</skip>
<artifactItems>
<artifactItem>
<groupId>${project.groupId}</groupId>
<artifactId>windup-web-services</artifactId>
<version>${project.version}</version>
<type>war</type>
<overWrite>true</overWrite>
<destFileName>api.war</destFileName>
<outputDirectory>${project.build.directory}/${wildfly.directory}/standalone/deployments/</outputDirectory>
</artifactItem>
<artifactItem>
<groupId>${project.groupId}</groupId>
<artifactId>windup-web-ui-pf4</artifactId>
<version>${project.version}</version>
<type>war</type>
<overWrite>true</overWrite>
<destFileName>mta-ui.war</destFileName>
<outputDirectory>${project.build.directory}/${wildfly.directory}/standalone/deployments/</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<!-- Unpack Wildfly and the required overlays -->
<execution>
<id>unpack</id>
<phase>compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${wildfly.groupId}</groupId>
<artifactId>${wildfly.artifactId}</artifactId>
<version>${version.wildfly}</version>
<type>zip</type>
<overWrite>true</overWrite>
<excludes>**/README.txt</excludes>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
<artifactItem>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-server-overlay</artifactId>
<version>${version.keycloak}</version>
<type>zip</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/${wildfly.directory}/</outputDirectory>
</artifactItem>
<artifactItem>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-wildfly-adapter-dist</artifactId>
<version>${version.keycloak}</version>
<type>zip</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/${wildfly.directory}/</outputDirectory>
</artifactItem>
<artifactItem>
<groupId>org.jboss.windup</groupId>
<artifactId>windup-web-openshift-templates</artifactId>
<version>${project.version}</version>
<type>jar</type>
<overWrite>true</overWrite>
<excludes>META-INF/</excludes>
<outputDirectory>${project.build.directory}/${wildfly.directory}/openshift/templates</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<!-- Unpack only logging.properties from Wildfly -->
<execution>
<id>unpack-logging-properties</id>
<phase>test</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${wildfly.groupId}</groupId>
<artifactId>${wildfly.artifactId}</artifactId>
<version>${version.wildfly}</version>
<type>zip</type>
<overWrite>true</overWrite>
<includes>**/logging.properties</includes>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
<!-- Overlay an updated H2 jar -->
<execution>
<id>copy-h2db</id>
<phase>generate-test-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.194</version>
<outputDirectory>${project.build.directory}/${wildfly.directory}/modules/com/h2database/h2/main</outputDirectory>
<overWrite>true</overWrite>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<!-- Create the Keycloak admin user file -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<id>create-keycloak-admin-user</id>
<phase>compile</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<arguments>
<argument>-jar</argument>
<argument>${keycloak.tool.path}</argument>
<argument>initialize-keycloak</argument>
<argument>--username</argument>
<argument>admin</argument>
<argument>--password</argument>
<argument>password</argument>
<argument>--file</argument>
<argument>${project.build.directory}/${wildfly.directory}/standalone/configuration/keycloak-add-user.json</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>create-windup-realm</id>
<phase>prepare-package</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<outputFile>${project.build.directory}/create-realm.output</outputFile>
<arguments>
<argument>-jar</argument>
<argument>${keycloak.tool.path}</argument>
<argument>create-windup-realm</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>create-keycloak-guest-user</id>
<phase>prepare-package</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<outputFile>${project.build.directory}/create-guest.output</outputFile>
<arguments>
<argument>-jar</argument>
<argument>${keycloak.tool.path}</argument>
<argument>create-windup-user</argument>
<argument>--newUserID</argument>
<argument>mta</argument>
<argument>--newUserPassword</argument>
<argument>password</argument>
<argument>--firstName</argument>
<argument>mta</argument>
<argument>--lastName</argument>
<argument>mta</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>get-windup-realm-public-key</id>
<phase>prepare-package</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<outputFile>${project.build.directory}/publickey.cli</outputFile>
<arguments>
<argument>-jar</argument>
<argument>${keycloak.tool.path}</argument>
<argument>print-windup-realm-public-key</argument>
</arguments>
</configuration>
</execution>
<execution>
<id>install keycloak</id>
<phase>compile</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${project.build.directory}/${wildfly.directory}/bin/jboss-cli.sh</executable>
<outputFile>${project.build.directory}/keycloak-server-install.out</outputFile>
<arguments>
<argument>--file=src/main/cli/keycloak-install.cli</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
<!-- Startup wildfly and configure keycloak -->
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-maven-plugin</artifactId>
<executions>
<execution>
<id>start-wildfly</id>
<phase>compile</phase>
<goals>
<goal>start</goal>
<goal>execute-commands</goal>
</goals>
<configuration>
<fork>true</fork>
<jbossHome>${project.build.directory}/${wildfly.directory}</jbossHome>
<serverConfig>standalone-full.xml</serverConfig>
<stdout>${project.build.directory}/jboss.stdout</stdout>
<systemProperties>
<windup.data.dir>${jboss.server.data.dir}/h2/windup-web</windup.data.dir>
</systemProperties>
<serverArgs>
<serverArg>--admin-only</serverArg>
</serverArgs>
<scripts>
<script>${project.build.directory}/${wildfly.directory}/bin/adapter-install.cli</script>
<script>src/main/cli/setup-eap.cli</script>
<script>src/main/cli/adding-redirect.cli</script>
</scripts>
<startupTimeout>300</startupTimeout>
</configuration>
</execution>
<execution>
<id>stop-wildfly</id>
<phase>prepare-package</phase>
<goals>
<goal>execute-commands</goal>
<goal>shutdown</goal>
</goals>
<configuration>
<jbossHome>${project.build.directory}/${wildfly.directory}</jbossHome>
<serverConfig>standalone-full.xml</serverConfig>
<scripts>
<script>${project.build.directory}/publickey.cli</script>
<script>src/main/cli/setup-windup-keycloak-properties.cli</script>
</scripts>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!--
This insures that the windup-web-redirect directory exists.
Without this, the CLI script may fail later on.
-->
<execution>
<id>create-windup-web-redirect-directory</id>
<phase>process-resources</phase>
<configuration>
<target>
<mkdir dir="${project.build.directory}/${wildfly.directory}/windup-web-redirect" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<!--
This plugin causes a small sleep before packaging. This fixes a
(somewhat) common case that can cause packaging to happen before
the server is fully shutdown, which can result in either
a failure or some partial files.
So far, I have only seen that failure on CI. (jsight - 2018/04/25)
-->
<execution>
<id>sleep-for-a-while</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<sleep seconds="5" />
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>distribution</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/assembly-offline.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>release</id>
<activation>
<property>
<name>release</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>license-maven-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<goals>
<goal>download-licenses</goal>
</goals>
<phase>package</phase>
<configuration>
<licensesOutputDirectory>
${project.build.directory}/mta-web-distribution-${project.version}/docs/licenses
</licensesOutputDirectory>
<licensesOutputFile>
${project.build.directory}/mta-web-distribution-${project.version}/docs/licenses/licenses.xml
</licensesOutputFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>windup-wildfly4development</id>
<properties>
<skip.deployment>true</skip.deployment>
<classifier.wildfly4development>wildfly4development</classifier.wildfly4development>
<wildfly4development.name>windup-${classifier.wildfly4development}</wildfly4development.name>
<assembly.baseDirectory>${wildfly4development.name}-${project.version}</assembly.baseDirectory>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>distribution</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<finalName>${wildfly4development.name}</finalName>
<appendAssemblyId>false</appendAssemblyId>
<attach>true</attach>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<executions>
<execution>
<id>default-install</id>
<phase>install</phase>
<goals>
<goal>install</goal>
</goals>
<configuration>
<skip>true</skip>
</configuration>
</execution>
<execution>
<id>install-${wildfly4development.name}</id>
<phase>install</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<file>${project.build.directory}/${wildfly4development.name}.zip</file>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<packaging>zip</packaging>
<classifier>${classifier.wildfly4development}</classifier>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<scm>
<tag>5.3.0.Final</tag>
<connection>${windup.scm.connection}</connection>
<developerConnection>${windup.developer.connection}</developerConnection>
<url>${windup.scm.url}</url>
</scm>
<issueManagement>
<system>JBoss Jira</system>
<url>https://issues.jboss.org/browse/WINDUP</url>
</issueManagement>
<mailingLists>
<mailingList>
<name>Windup Rules Development and Usage</name>
<post>windup-users@lists.jboss.org</post>
<archive>http://lists.jboss.org/pipermail/windup-users/</archive>
</mailingList>
<mailingList>
<name>Windup Core Development</name>
<post>windup-dev@lists.jboss.org</post>
<archive>http://lists.jboss.org/pipermail/windup-dev/</archive>
</mailingList>
</mailingLists>
</project>