vault-maven-plugin
Used in
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>com.homeofthewizard</groupId> <artifactId>vault-maven-plugin</artifactId> <version>1.1.7</version> </dependency>
<?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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.homeofthewizard</groupId> <artifactId>vault-maven-plugin</artifactId> <version>1.1.7</version> <packaging>maven-plugin</packaging> <name>Vault Maven Plugin</name> <description>A plugin that supports retrieving values from HashiCorp Vault.</description> <url>https://github.com/homeofthewizard/vault-maven-plugin</url> <licenses> <license> <name>Apache License, Version 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> </license> </licenses> <scm> <connection>scm:git:git@github.com:homeofthewizard/vault-maven-plugin</connection> <developerConnection>scm:git:git@github.com:homeofthewizard/vault-maven-plugin.git</developerConnection> <url>https://github.com/homeofthewizard/vault-maven-plugin</url> <tag>vault-maven-plugin-1.1.7</tag> </scm> <distributionManagement> <snapshotRepository> <id>ossrh</id> <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url> </snapshotRepository> </distributionManagement> <developers> <developer> <name>Ozgun OZ</name> <email>ozgunn.oz@gmail.com</email> </developer> </developers> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.build.outputTimestamp>2024-05-03T16:19:25Z</project.build.outputTimestamp> <maven.test.runOrder>hourly</maven.test.runOrder> <docker.network>vault-maven-plugin-${maven.build.timestamp}</docker.network> <docker.nginx.host>nginx.docker</docker.nginx.host> <docker.vault.host>vault.docker</docker.vault.host> <docker.nginx.port>443</docker.nginx.port> <docker.vault.token>6edb70bd-3398-1f42-d67e-b9db377223cd</docker.vault.token> <docker.vault.github.token>${env.MY_GITHUB_PAT_FOR_VAULT_LOGIN}</docker.vault.github.token> <jacoco.integration.file>${project.build.directory}/jacoco-integration.exec</jacoco.integration.file> <jacoco.merged.file>${project.build.directory}/jacoco.exec</jacoco.merged.file> <jacoco.unit.file>${project.build.directory}/jacoco-unit.exec</jacoco.unit.file> <version.bouncycastle.plugin>1.0.0</version.bouncycastle.plugin> <version.checkstyle.plugin>2.17</version.checkstyle.plugin> <version.compiler.plugin>3.8.1</version.compiler.plugin> <version.java.source>11</version.java.source> <version.java.target>11</version.java.target> <version.freemarker>2.3.30</version.freemarker> <version.guava>32.0.0-jre</version.guava> <version.jacoco>0.8.7</version.jacoco> <version.jacoco.plugin>${version.jacoco}</version.jacoco.plugin> <version.javadoc.plugin>3.2.0</version.javadoc.plugin> <version.maven>3.9.1</version.maven> <version.nginx>1.11</version.nginx> <version.plugin.api>3.8.1</version.plugin.api> <version.plugin.annotations>3.6.2</version.plugin.annotations> <version.plugin.testing>4.0.0-alpha-1</version.plugin.testing> <version.plugin.plugin>3.6.2</version.plugin.plugin> <version.source.plugin>3.2.1</version.source.plugin> <version.surefire.plugin>2.22.0</version.surefire.plugin> <version.failsafe.plugin>${version.surefire.plugin}</version.failsafe.plugin> <version.docker.plugin>0.38.0</version.docker.plugin> <version.vault>latest</version.vault> <version.mockito-core>5.2.0</version.mockito-core> <version.nexus-staging-maven-plugin>1.6.13</version.nexus-staging-maven-plugin> <version.maven-release-plugin>3.0.1</version.maven-release-plugin> <version.junit-jupiter>5.9.2</version.junit-jupiter> <version.jackson-databind>2.15.2</version.jackson-databind> <version.vault-java-driver>6.1.0</version.vault-java-driver> <version.maven-jar-plugin>3.4.1</version.maven-jar-plugin> </properties> <dependencies> <dependency> <groupId>io.github.jopenlibs</groupId> <artifactId>vault-java-driver</artifactId> <version>${version.vault-java-driver}</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>${version.guava}</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava-testlib</artifactId> <version>${version.guava}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> <version>${version.junit-jupiter}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${version.mockito-core}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-artifact</artifactId> <version>${version.maven}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-compat</artifactId> <version>${version.maven}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-core</artifactId> <version>${version.maven}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-plugin-api</artifactId> <version>${version.plugin.api}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.maven.plugin-tools</groupId> <artifactId>maven-plugin-tools-annotations</artifactId> <version>${version.plugin.annotations}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>${version.freemarker}</version> </dependency> <dependency> <groupId>org.jacoco</groupId> <artifactId>org.jacoco.agent</artifactId> <classifier>runtime</classifier> <version>${version.jacoco}</version> <scope>test</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${version.jackson-databind}</version> </dependency> </dependencies> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${version.javadoc.plugin}</version> <configuration> <notimestamp>true</notimestamp> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>${version.docker.plugin}</version> <configuration> <autoCreateCustomNetworks>true</autoCreateCustomNetworks> <images> <image> <alias>${docker.vault.host}</alias> <name>hashicorp/vault:${version.vault}</name> <run> <capAdd> <capAdd>IPC_LOCK</capAdd> </capAdd> <env> <VAULT_DEV_ROOT_TOKEN_ID>${docker.vault.token}</VAULT_DEV_ROOT_TOKEN_ID> <VAULT_ADDR>http://127.0.0.1:8200</VAULT_ADDR> </env> <hostname>${docker.vault.host}</hostname> <volumes> <bind> <volume>${project.basedir}/docker/vault:/home/vault</volume> </bind> </volumes> <network> <mode>custom</mode> <name>${docker.network}</name> <alias>${docker.vault.host}</alias> </network> <wait> <time>10000</time> <!-- <http>--> <!-- <url>http://127.0.0.1:8200/v1/sys/health</url>--> <!-- <method>GET</method>--> <!-- <status>200..399</status>--> <!-- </http>--> <exec> <postStart>sh /home/vault/enable-auth.sh</postStart> </exec> </wait> </run> </image> <image> <alias>${docker.nginx.host}</alias> <name>nginx:${version.nginx}-alpine</name> <run> <hostname>${docker.nginx.host}</hostname> <network> <mode>custom</mode> <name>${docker.network}</name> <alias>${docker.nginx.host}</alias> </network> <ports> <port>docker.nginx.port:443</port> </ports> <volumes> <bind> <volume>${project.basedir}/docker/nginx/etc/ssl:/etc/ssl</volume> <volume>${project.basedir}/docker/nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf</volume> </bind> </volumes> </run> </image> </images> </configuration> <executions> <execution> <id>start</id> <phase>pre-integration-test</phase> <goals> <goal>start</goal> </goals> </execution> <execution> <id>stop</id> <phase>post-integration-test</phase> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> <version>1.2.0</version> <executions> <execution> <phase>pre-integration-test</phase> <goals> <goal>read-project-properties</goal> </goals> <configuration> <files> <file>docker/vault/appRole.properties</file> </files> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>${version.checkstyle.plugin}</version> <configuration> <configLocation>checkstyle.xml</configLocation> <consoleOutput>true</consoleOutput> <encoding>UTF-8</encoding> <linkXRef>false</linkXRef> </configuration> <executions> <execution> <id>checkstyle</id> <phase>verify</phase> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${version.compiler.plugin}</version> <configuration> <source>${version.java.source}</source> <target>${version.java.target}</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>${version.failsafe.plugin}</version> <configuration> <redirectTestOutputToFile>true</redirectTestOutputToFile> <runOrder>${maven.test.runOrder}</runOrder> <includes> <include>**/IntTest*.class</include> <include>**/IntSpec*.class</include> </includes> <systemPropertyVariables> <jdk.net.hosts.file>src/test/resources/hosts</jdk.net.hosts.file> <javax.net.ssl.trustStore>docker/nginx/etc/ssl/truststore.jks</javax.net.ssl.trustStore> <javax.net.ssl.trustStorePassword>changeit</javax.net.ssl.trustStorePassword> <vault.host>${docker.nginx.host}</vault.host> <vault.port>${docker.nginx.port}</vault.port> <vault.token>${docker.vault.token}</vault.token> <vault.appRole.id>${roleId}</vault.appRole.id> <vault.appRole.secret>${secretId}</vault.appRole.secret> <vault.github.token>${docker.vault.github.token}</vault.github.token> </systemPropertyVariables> </configuration> <executions> <execution> <id>integration-test</id> <phase>integration-test</phase> <goals> <goal>integration-test</goal> </goals> </execution> <execution> <id>verify</id> <phase>verify</phase> <goals> <goal>verify</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>3.3.1</version> <executions> <execution> <id>clean-integration-test</id> <phase>post-integration-test</phase> <goals> <goal>clean</goal> </goals> <configuration> <excludeDefaultDirectories>true</excludeDefaultDirectories> <filesets> <fileset> <directory>docker/vault</directory> <includes> <include>appRole.properties</include> </includes> </fileset> </filesets> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-plugin-plugin</artifactId> <version>${version.plugin.plugin}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>${version.surefire.plugin}</version> <configuration> <redirectTestOutputToFile>true</redirectTestOutputToFile> <runOrder>${maven.test.runOrder}</runOrder> <includes> <include>**/Test*.class</include> <include>**/Spec*.class</include> </includes> </configuration> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>${version.jacoco.plugin}</version> <executions> <execution> <id>prepare-agent</id> <phase>initialize</phase> <goals> <goal>prepare-agent</goal> </goals> <configuration> <destFile>${jacoco.unit.file}</destFile> <sessionId>${project.artifactId}-unit-${maven.build.timestamp}</sessionId> </configuration> </execution> <execution> <id>prepare-agent-integration</id> <phase>pre-integration-test</phase> <goals> <goal>prepare-agent-integration</goal> </goals> <configuration> <destFile>${jacoco.integration.file}</destFile> <sessionId>${project.artifactId}-integration-${maven.build.timestamp}</sessionId> </configuration> </execution> <execution> <id>merge</id> <phase>verify</phase> <goals> <goal>merge</goal> </goals> <configuration> <destFile>${jacoco.merged.file}</destFile> <fileSets> <fileSet> <directory>${project.build.directory}</directory> <includes> <include>*.exec</include> </includes> </fileSet> </fileSets> </configuration> </execution> <execution> <id>report</id> <phase>verify</phase> <goals> <goal>report</goal> </goals> <configuration> <dataFile>${jacoco.merged.file}</dataFile> </configuration> </execution> <execution> <id>check</id> <phase>verify</phase> <goals> <goal>check</goal> </goals> <configuration> <rules> <rule> <element>BUNDLE</element> <limits> <limit> <counter>COMPLEXITY</counter> <value>COVEREDRATIO</value> <minimum>0.80</minimum> </limit> </limits> </rule> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>${version.maven-jar-plugin}</version> </plugin> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <version>${version.nexus-staging-maven-plugin}</version> <extensions>true</extensions> <configuration> <serverId>ossrh</serverId> <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl> <autoReleaseAfterClose>true</autoReleaseAfterClose> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>${version.maven-release-plugin}</version> <configuration> <autoVersionSubmodules>true</autoVersionSubmodules> <useReleaseProfile>false</useReleaseProfile> <releaseProfiles>deploy</releaseProfiles> <goals>deploy</goals> </configuration> </plugin> </plugins> </build> <profiles> <profile> <id>deploy</id> <build> <plugins> <plugin> <groupId>com.deciphernow</groupId> <artifactId>bouncycastle-maven-plugin</artifactId> <version>${version.bouncycastle.plugin}</version> <configuration> <passphrase>${env.PGP_PASSPHRASE}</passphrase> <rings>${env.PGP_RINGS}</rings> <userId>${env.PGP_USER_ID}</userId> </configuration> <executions> <execution> <id>sign-artifacts</id> <phase>verify</phase> <goals> <goal>sign</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${version.javadoc.plugin}</version> <executions> <execution> <id>attach-javadocs</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>${version.source.plugin}</version> <executions> <execution> <id>attach-sources</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </profile> </profiles> </project>