Skip to content

Commit

Permalink
[Fixed JENKINS-31747] Add node/npm profiles to plugin parent pom
Browse files Browse the repository at this point in the history
  • Loading branch information
tfennelly committed Nov 25, 2015
1 parent e930da4 commit 6e5a067
Showing 1 changed file with 230 additions and 0 deletions.
230 changes: 230 additions & 0 deletions plugins/pom.xml
Expand Up @@ -36,6 +36,8 @@
<concurrency>2</concurrency> <!-- may use e.g. 2C for 2 × (number of cores) -->
<!-- same version as in org.jenkins-ci.main:pom -->
<slf4jVersion>1.7.7</slf4jVersion>
<node.version>4.0.0</node.version>
<npm.version>2.13.1</npm.version>
</properties>
<dependencyManagement>
<!-- mark logging dependencies as provided by war -->
Expand Down Expand Up @@ -425,5 +427,233 @@
<maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
</properties>
</profile>

<profile>
<id>node-classifier-linux</id>
<activation>
<os>
<family>Linux</family>
<arch>amd64</arch>
</os>
</activation>
<properties>
<node.download.file>node-v${node.version}-linux-x64.tar.gz</node.download.file>
<node.download.classifier/>
</properties>
</profile>
<profile>
<id>node-classifier-mac</id>
<activation>
<os>
<family>mac</family>
</os>
</activation>
<properties>
<node.download.file>node-v${node.version}-darwin-x64.tar.gz</node.download.file>
<node.download.classifier/>
</properties>
</profile>
<profile>
<id>node-classifier-windows</id>
<activation>
<os>
<family>windows</family>
<arch>x64</arch>
</os>
</activation>
<properties>
<node.download.file>win-x64/node.exe</node.download.file>
<node.download.classifier>/x64</node.download.classifier>
</properties>
</profile>
<profile>
<id>node-classifier-windows-amd64</id>
<activation>
<os>
<family>windows</family>
<arch>amd64</arch>
</os>
</activation>
<properties>
<node.download.file>win-x64/node.exe</node.download.file>
<node.download.classifier>/x64</node.download.classifier>
</properties>
</profile>
<profile>
<id>node-classifier-windows-x86</id>
<activation>
<os>
<family>windows</family>
<arch>x86</arch>
</os>
</activation>
<properties>
<node.download.file>win-x86/node.exe</node.download.file>
<node.download.classifier/>
</properties>
</profile>
<profile>
<id>node-download</id>
<activation>
<file>
<exists>package.json</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>com.googlecode.maven-download-plugin</groupId>
<artifactId>download-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<id>get-node</id>
<phase>initialize</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://nodejs.org/dist/v${node.version}/${node.download.file}</url>
<unpack>false</unpack>
<outputDirectory>
${project.build.directory}/frontend/v${node.version}${node.download.classifier}
</outputDirectory>
</configuration>
</execution>
<execution>
<id>get-npm</id>
<phase>initialize</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>http://registry.npmjs.org/npm/-/npm-${npm.version}.tgz</url>
<unpack>false</unpack>
<outputDirectory>${project.build.directory}/frontend/</outputDirectory>
<outputFileName>npm-${npm.version}.tgz</outputFileName>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>gulp-execution</id>
<activation>
<file>
<exists>gulpfile.js</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.3.1</version>
<executions>
<execution>
<id>enforce-versions</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>3.1.0</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>0.0.23</version>

<executions>

<execution>
<phase>initialize</phase>
<id>install node and npm</id>
<goals>
<goal>install-node-and-npm</goal>
</goals>
<configuration>
<nodeVersion>v${node.version}</nodeVersion>
<npmVersion>${npm.version}</npmVersion>
<!-- Use the pre-download node and npm packages. See download-maven-plugin config above. -->
<downloadRoot>${project.baseUri}target/frontend/</downloadRoot>
</configuration>
</execution>

<execution>
<phase>initialize</phase>
<id>npm install</id>
<goals>
<goal>npm</goal>
</goals>
<configuration>
<!-- Note that this may not be omitted lest maven-release-plugin be confused (frontend-maven-plugin #109): -->
<arguments>install</arguments>
</configuration>
</execution>

<execution>
<phase>generate-sources</phase>
<id>gulp bundle</id>
<goals>
<goal>gulp</goal>
</goals>
<configuration>
<arguments>bundle</arguments>
</configuration>
</execution>

<execution>
<phase>test</phase>
<id>gulp test</id>
<goals>
<goal>gulp</goal>
</goals>
</execution>

</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>clean-node</id>
<activation>
<file>
<exists>package.json</exists>
</file>
<property>
<name>cleanNode</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>node</directory>
<followSymlinks>false</followSymlinks>
</fileset>
<fileset>
<directory>node_modules</directory>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>

0 comments on commit 6e5a067

Please sign in to comment.