oglimmer/fulgens

View on GitHub
classes/plugins/MvnPlugin.tmpl

Summary

Maintainability
Test Coverage

{{ header }}

if [ "$START_{{softwareComponentName|upper}}" = "YES" ]; then

{{ preparecomp }}

{{ getsource }}

{# prestart must come before the build code, as it might set JAVA_HOME in BasePlugin #}
{{ prestart }}

if [ "${{typeSourceVarName}}" == "local" ]; then
  f_build() {
    verbosePrint "pwd=$(pwd)\nmvn {{GoalIgnoreClean}} $MVN_OPTS {{Goal}}"
    {{BeforeBuild}}
    {{AllEnvVarsShell}}
    mvn {{GoalIgnoreClean}} $MVN_OPTS {{Goal}}
    {{AfterBuild}}
  }
fi

if [ "${{typeSourceVarName}}" == "docker" ]; then

  {% if dependencyManager.hasAnyBuildDep() %} 
  dockerImage=maven_build
  mkdir -p localrun/dockerbuild
  cat <<- EOFDOCK > localrun/dockerbuild/Dockerfile
    FROM {{DockerImage}}:${{typeSourceVarName}}_VERSION
    RUN apt-get update && \\ {{dependencyManager.getAptBuild()}} && \\
      apt-get clean && \\
      rm -rf /tmp/* /var/tmp/* /var/lib/apt/archive/* /var/lib/apt/lists/*
    {{dependencyManager.getNpmBuild('RUN')}}
    ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"]
    CMD ["mvn"]
EOFDOCK
  verbosePrint "docker build --tag maven_build:${{typeSourceVarName}}_VERSION localrun/dockerbuild/"
  docker build --tag maven_build:${{typeSourceVarName}}_VERSION localrun/dockerbuild/
  {% else %}
  dockerImage={{DockerImage}}
  {% endif %}

  f_build() {
    verbosePrint "pwd=$(pwd)\ndocker run --name={{softwareComponentName}} --rm -v $(pwd):/usr/src/build -v {{m2Mapping}}:/root/.m2 -w /usr/src/build $dockerImage:${{typeSourceVarName}}_VERSION mvn {{GoalIgnoreClean}} $MVN_OPTS {{Goal}}"
    {{BeforeBuild}}
    docker run --name={{softwareComponentName}} --rm {{AllEnvVarsDocker}} -v "$(pwd)":/usr/src/build -v {{m2Mapping}}:/root/.m2 -w /usr/src/build $dockerImage:${{typeSourceVarName}}_VERSION mvn {{GoalIgnoreClean}} $MVN_OPTS {{Goal}}
    {{AfterBuild}}
  }
fi   

if [ "$SKIP_BUILD" != "YES" ]; then
  if [ -n "$CLEAN" ]; then
    MVN_CLEAN=clean
  fi
  f_build
else
  verbosePrint "Mvn build skipped."
fi  

{{ poststart }}

{{ leavecomp }}

fi