Distribuire un NodeJs (FrontEnd) e un progetto Spring (BackEnd) come un artefatto

0

Ho un progetto attuale che consiste in due progetti sviluppati in modo indipendente:

  • Spring REST come back-end
  • Angolare come front-end

Ho a disposizione un'istanza di Jenkins per costruire i miei progetti e mi piacerebbe "sposare" entrambi i progetti in un lavoro CD su un singolo file distribuibile ( .jar )

Questo è un lavoro di Jenkins, per copiare tutti i file necessari insieme? O questo è solitamente risolto con un plugin Maven? Non sono riuscito a trovare molte informazioni a riguardo, anche se mi sembra un passaggio molto comune.

    
posta Herr Derb 23.01.2018 - 09:41
fonte

1 risposta

0

Normalmente vengono usati Ant o Maven per questo. Ad esempio, Apache Wicket chiama npm e Grunt da pom.xml :

<artifactId>wicket-js-tests</artifactId>
<packaging>jar</packaging>
<name>Wicket JavaScript Tests</name>
<description>JavaScript tests for all Wicket modules</description>


<execution>
  <id>install node and npm</id>
  <goals>
    <goal>install-node-and-npm</goal>
  </goals>
  <phase>generate-resources</phase>
  <configuration>
    <npmVersion>5.6.0</npmVersion>
    <nodeVersion>v8.9.0</nodeVersion>
  </configuration>
</execution>

<execution>
  <id>npm install</id>
  <goals>
    <goal>npm</goal>
  </goals>
  <configuration>
    <arguments>install</arguments>
  </configuration>
</execution>

<execution>
  <id>grunt build</id>
  <goals>
    <goal>grunt</goal>
  </goals>
  <configuration>
    <!--<arguments> - -verbose </arguments>-->
  </configuration>
</execution>

E Apache Freemarker Docgen chiama npm e Gulp da build.xml :

  <!-- See README.md about installing node.js and Gulp! -->
  <target name="node-deps">
    <exec executable="npm" dir="${basedir}" failonerror="true" osfamily="unix">
      <arg line="install" />
    </exec>
    <exec executable="cmd" dir="${basedir}" failonerror="true" osfamily="windows">
        <arg line="/c npm install" />
    </exec>
  </target>

  <target name="gulp">
    <exec executable="node" failonerror="true" dir="${basedir}">
      <arg line="node_modules/gulp/bin/gulp.js"/>
    </exec>

    <!--
    <exec executable="${nodeJsCommand}" failonerror="true" dir="${basedir}">
      <arg value="node_modules/gulp/bin/gulp.js"/>
    </exec>
  -->
  </target>

Riferimenti

risposta data 26.09.2018 - 00:01
fonte

Leggi altre domande sui tag