463 lines
14 KiB
XML
463 lines
14 KiB
XML
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
|
|
<modelVersion>4.0.0</modelVersion>
|
|
|
|
<artifactId>spring-vault-distribution</artifactId>
|
|
|
|
<packaging>pom</packaging>
|
|
|
|
<name>Spring Vault - Distribution</name>
|
|
<description>Distribution build for Spring Vault</description>
|
|
|
|
<parent>
|
|
<groupId>org.springframework.vault</groupId>
|
|
<artifactId>spring-vault-parent</artifactId>
|
|
<version>2.4.0-SNAPSHOT</version>
|
|
<relativePath>../pom.xml</relativePath>
|
|
</parent>
|
|
|
|
<properties>
|
|
<project.root>${basedir}/..</project.root>
|
|
</properties>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>wagon-maven-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.asciidoctor</groupId>
|
|
<artifactId>asciidoctor-maven-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jfrog.buildinfo</groupId>
|
|
<artifactId>artifactory-maven-plugin</artifactId>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
|
|
<!--
|
|
Profile to be activated when building the distribution atrifacts.
|
|
|
|
Generates reference documentation, aggregates JavaDoc etc. Has to be combined with
|
|
profiles "release" or "milestone" to deploy artifacts into the appropriate places.
|
|
-->
|
|
|
|
<id>distribute</id>
|
|
|
|
<properties>
|
|
<shared.resources>${project.build.directory}/shared-resources
|
|
</shared.resources>
|
|
<generated-asciidoc-sources.directory>
|
|
${project.build.directory}/generated-asciidoc-sources/source
|
|
</generated-asciidoc-sources.directory>
|
|
<generated-docs.directory>${project.build.directory}/generated-docs
|
|
</generated-docs.directory>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>io.spring.docresources</groupId>
|
|
<artifactId>spring-doc-resources</artifactId>
|
|
<version>0.2.5</version>
|
|
<scope>provided</scope>
|
|
<type>zip</type>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>spring-libs-milestone</id>
|
|
<url>https://repo.spring.io/libs-milestone</url>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<build>
|
|
|
|
<plugins>
|
|
|
|
<!--
|
|
Provide shared resources for Javadoc and Asciidoc.
|
|
-->
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<executions>
|
|
|
|
<execution>
|
|
<id>unpack-shared-resources</id>
|
|
<goals>
|
|
<goal>unpack-dependencies</goal>
|
|
</goals>
|
|
<phase>generate-resources</phase>
|
|
<configuration>
|
|
<includeGroupIds>org.springframework.data
|
|
</includeGroupIds>
|
|
<includeArtifactIds>spring-data-build-resources
|
|
</includeArtifactIds>
|
|
<includeTypes>zip</includeTypes>
|
|
<excludeTransitive>true</excludeTransitive>
|
|
<outputDirectory>${shared.resources}</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>unpack-doc-resources</id>
|
|
<goals>
|
|
<goal>unpack-dependencies</goal>
|
|
</goals>
|
|
<phase>generate-resources</phase>
|
|
<configuration>
|
|
<includeGroupIds>io.spring.docresources
|
|
</includeGroupIds>
|
|
<includeArtifactIds>spring-doc-resources
|
|
</includeArtifactIds>
|
|
<includeTypes>zip</includeTypes>
|
|
<excludeTransitive>true</excludeTransitive>
|
|
<outputDirectory>
|
|
${generated-asciidoc-sources.directory}
|
|
</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
</plugins>
|
|
|
|
<pluginManagement>
|
|
<plugins>
|
|
|
|
<!--
|
|
Copies all namespaces schemas to target/schemas flatten the directory structure.
|
|
Depended on by the site.xml assembly descriptor.
|
|
-->
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<executions>
|
|
|
|
<execution>
|
|
<id>copy-documentation-resources</id>
|
|
<phase>generate-resources</phase>
|
|
<configuration>
|
|
<target>
|
|
<copy todir="${generated-asciidoc-sources.directory}">
|
|
<fileset dir="${basedir}/../src/main/asciidoc">
|
|
<include name="**/*.adoc" />
|
|
</fileset>
|
|
</copy>
|
|
<copy todir="${project.root}/target/site/reference/html/images">
|
|
<fileset dir="${basedir}/src/main/asciidoc" erroronmissingdir="false">
|
|
<include name="**/*.png" />
|
|
<include name="**/*.gif" />
|
|
<include name="**/*.jpg" />
|
|
</fileset>
|
|
<flattenmapper />
|
|
</copy>
|
|
</target>
|
|
</configuration>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>collect-schema-files</id>
|
|
<phase>prepare-package</phase>
|
|
<configuration>
|
|
<target>
|
|
<copy todir="${project.build.directory}/schemas">
|
|
<fileset dir="${basedir}" erroronmissingdir="false">
|
|
<include name="**/src/main/resources/**/config/spring-*.xsd" />
|
|
</fileset>
|
|
<flattenmapper />
|
|
</copy>
|
|
</target>
|
|
</configuration>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>create-generated-docs-resources</id>
|
|
<phase>process-resources</phase>
|
|
<configuration>
|
|
<target>
|
|
<copy failonerror="false" todir="${project.build.directory}/working">
|
|
<fileset dir="${project.build.directory}/doc-resources" includes="**" />
|
|
</copy>
|
|
<copy failonerror="false" todir="${generated-asciidoc-sources.directory}/images/">
|
|
<fileset dir="${project.root}/src/main/asciidoc/images" />
|
|
</copy>
|
|
|
|
<copy todir="${generated-docs.directory}">
|
|
<fileset dir="${generated-asciidoc-sources.directory}">
|
|
<include name="css/**" />
|
|
<include name="js/**" />
|
|
</fileset>
|
|
</copy>
|
|
</target>
|
|
</configuration>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>rename-reference-docs</id>
|
|
<phase>prepare-package</phase>
|
|
<configuration>
|
|
<target>
|
|
|
|
<!-- Copy files for the single-file HTML version -->
|
|
<copy failonerror="false" todir="${project.root}/target/site/reference/html/images">
|
|
<fileset dir="${generated-docs.directory}/images" />
|
|
</copy>
|
|
|
|
<copy todir="${project.root}/target/site/reference/html/">
|
|
<fileset dir="${generated-asciidoc-sources.directory}">
|
|
<include name="css/**" />
|
|
<include name="js/**" />
|
|
<include name="*.ico" />
|
|
</fileset>
|
|
</copy>
|
|
|
|
<copy file="${project.build.directory}/generated-docs/index.html" todir="${project.root}/target/site/reference/html/" />
|
|
<!-- Copy and rename the Epub file -->
|
|
<copy file="${generated-docs.directory}/index.pdf" tofile="${project.root}/target/site/reference/pdf/${dist.id}-reference.pdf" />
|
|
<!-- Copy and rename the PDF file -->
|
|
<copy file="${generated-docs.directory}/index.epub" tofile="${project.root}/target/site/reference/epub/${dist.id}-reference.epub" />
|
|
</target>
|
|
</configuration>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
</execution>
|
|
|
|
</executions>
|
|
|
|
</plugin>
|
|
|
|
<!--
|
|
Asciidoctor
|
|
-->
|
|
|
|
<plugin>
|
|
<groupId>org.asciidoctor</groupId>
|
|
<artifactId>asciidoctor-maven-plugin</artifactId>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.asciidoctor</groupId>
|
|
<artifactId>asciidoctorj-pdf</artifactId>
|
|
<version>1.5.0-alpha.16</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.asciidoctor</groupId>
|
|
<artifactId>asciidoctorj-epub3</artifactId>
|
|
<version>1.5.0-alpha.8.1</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<executions>
|
|
|
|
<execution>
|
|
<id>html</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>process-asciidoc</goal>
|
|
</goals>
|
|
<configuration>
|
|
<sourceDirectory>
|
|
${generated-asciidoc-sources.directory}
|
|
</sourceDirectory>
|
|
<sourceDocumentName>index.adoc
|
|
</sourceDocumentName>
|
|
<backend>html5</backend>
|
|
<outputDirectory>${generated-docs.directory}
|
|
</outputDirectory>
|
|
<sourceHighlighter>highlight.js
|
|
</sourceHighlighter>
|
|
<attributes>
|
|
<sectanchors>true</sectanchors>
|
|
<docinfo>shared</docinfo>
|
|
<stylesdir>css/</stylesdir>
|
|
<stylesheet>spring.css</stylesheet>
|
|
<linkcss>true</linkcss>
|
|
<icons>font</icons>
|
|
<toc>left</toc>
|
|
<source-highlighter>highlightjs
|
|
</source-highlighter>
|
|
<highlightjsdir>js/highlight</highlightjsdir>
|
|
<highlightjs-theme>github</highlightjs-theme>
|
|
</attributes>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>epub</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>process-asciidoc</goal>
|
|
</goals>
|
|
<configuration>
|
|
<sourceDirectory>
|
|
${generated-asciidoc-sources.directory}
|
|
</sourceDirectory>
|
|
<sourceDocumentName>index.adoc
|
|
</sourceDocumentName>
|
|
<backend>epub3</backend>
|
|
<outputDirectory>
|
|
${project.build.directory}/generated-docs
|
|
</outputDirectory>
|
|
<sourceHighlighter>coderay</sourceHighlighter>
|
|
</configuration>
|
|
</execution>
|
|
|
|
<execution>
|
|
<id>pdf</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>process-asciidoc</goal>
|
|
</goals>
|
|
<configuration>
|
|
<sourceDirectory>
|
|
${generated-asciidoc-sources.directory}
|
|
</sourceDirectory>
|
|
<sourceDocumentName>index.adoc
|
|
</sourceDocumentName>
|
|
<backend>pdf</backend>
|
|
<outputDirectory>
|
|
${project.build.directory}/generated-docs
|
|
</outputDirectory>
|
|
<sourceHighlighter>coderay</sourceHighlighter>
|
|
</configuration>
|
|
</execution>
|
|
|
|
</executions>
|
|
|
|
<configuration>
|
|
<doctype>book</doctype>
|
|
<attributes>
|
|
<doctype>book</doctype>
|
|
<docinfo>shared</docinfo>
|
|
<icons>font</icons>
|
|
<sectids>false</sectids>
|
|
<imagesdir>images</imagesdir>
|
|
<version>${project.version}</version>
|
|
<projectName>${project.name}</projectName>
|
|
<projectVersion>${project.version}</projectVersion>
|
|
<springVersion>${spring.version}</springVersion>
|
|
<springDataVersion>
|
|
${spring-data-bom.version}
|
|
</springDataVersion>
|
|
<allow-uri-read>true</allow-uri-read>
|
|
<toclevels>4</toclevels>
|
|
<numbered>true</numbered>
|
|
</attributes>
|
|
</configuration>
|
|
|
|
</plugin>
|
|
|
|
<!--
|
|
Creates two zip files for download as well as API and reference documentation distribution.
|
|
-->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>docs</id>
|
|
<goals>
|
|
<goal>single</goal>
|
|
</goals>
|
|
<phase>package</phase>
|
|
<configuration>
|
|
<descriptors>
|
|
<descriptor>src/assembly/docs.xml</descriptor>
|
|
</descriptors>
|
|
<finalName>spring-vault-${project.version}-docs
|
|
</finalName>
|
|
<appendAssemblyId>false</appendAssemblyId>
|
|
<attach>true</attach>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Deploy to Artifactory -->
|
|
|
|
<plugin>
|
|
<groupId>org.jfrog.buildinfo</groupId>
|
|
<artifactId>artifactory-maven-plugin</artifactId>
|
|
<version>2.7.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>deploy-docs</id>
|
|
<goals>
|
|
<goal>publish</goal>
|
|
</goals>
|
|
<phase>deploy</phase>
|
|
<configuration>
|
|
<artifactory>
|
|
<includeEnvVars>false</includeEnvVars>
|
|
</artifactory>
|
|
<deployProperties>
|
|
<zip.name>spring-vault</zip.name>
|
|
<zip.displayname>spring-vault</zip.displayname>
|
|
<zip.deployed>false</zip.deployed>
|
|
<zip.type>docs</zip.type>
|
|
</deployProperties>
|
|
<buildInfo>
|
|
<!-- Retain only a single build -->
|
|
<buildName>Spring Vault Docs ${project.version}</buildName>
|
|
<buildRetentionCount>1</buildRetentionCount>
|
|
</buildInfo>
|
|
<publisher>
|
|
<contextUrl>https://repo.spring.io</contextUrl>
|
|
<username>${artifactory.username}</username>
|
|
<password>${artifactory.password}</password>
|
|
<repoKey>temp-private-local</repoKey>
|
|
<snapshotRepoKey>temp-private-local</snapshotRepoKey>
|
|
<includePatterns>*.zip</includePatterns>
|
|
</publisher>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
</build>
|
|
|
|
<pluginRepositories>
|
|
<pluginRepository>
|
|
<id>bintray-plugins</id>
|
|
<name>bintray-plugins</name>
|
|
<url>https://jcenter.bintray.com</url>
|
|
</pluginRepository>
|
|
|
|
<pluginRepository>
|
|
<id>spring-plugins-release</id>
|
|
<url>https://repo.spring.io/plugins-release</url>
|
|
</pluginRepository>
|
|
</pluginRepositories>
|
|
</profile>
|
|
</profiles>
|
|
|
|
</project>
|