redhat-buildpacks / testing

Project aiming to help us to perform e2e tests using Buildpacks
Apache License 2.0
0 stars 3 forks source link

Shipwright: The env vars used by the build phase do not match what we defined as ENV vars #13

Closed cmoulliard closed 1 year ago

cmoulliard commented 1 year ago

Issue

The env vars used by the build phase

Paketo Buildpack for Maven 6.14.1
  https://github.com/paketo-buildpacks/maven
  Build Configuration:
    $BP_EXCLUDE_FILES                                                                 colon separated list of glob patterns, matched source files are removed
    $BP_INCLUDE_FILES                                                                 colon separated list of glob patterns, matched source files are included
    $BP_JAVA_INSTALL_NODE      false                                                  whether to install Yarn/Node binaries based on the presence of a package.json or yarn.lock file
    $BP_MAVEN_BUILD_ARGUMENTS  -Dmaven.test.skip=true --no-transfer-progress package  the arguments to pass to Maven
    $BP_MAVEN_BUILT_ARTIFACT   target/*.[ejw]ar                                       the built application artifact explicitly.  Supersedes $BP_MAVEN_BUILT_MODULE
    $BP_MAVEN_BUILT_MODULE                                                            the module to find application artifact in
    $BP_MAVEN_DAEMON_ENABLED   false                                                  use maven daemon
    $BP_MAVEN_POM_FILE         pom.xml                                                the location of the main pom.xml file, relative to the application root
    $BP_MAVEN_SETTINGS_PATH                                                           the path to a Maven settings file
    $BP_MAVEN_VERSION          3                                                      the Maven version
    $BP_NODE_PROJECT_PATH                                                             configure a project subdirectory to look for `package.json` and `yarn.lock` files
    Creating cache directory /home/cnb/.m2

do not match what we defined as ENV vars within the build paramValues

      name: BP_NATIVE_IMAGE
      value: "false"
    - # TODO: Should be defined using ENV_VARS. To be reviewed
      name: BP_MAVEN_BUILT_ARTIFACT
      value: "target/quarkus-app/lib/ target/quarkus-app/*.jar target/quarkus-app/app/ target/quarkus-app/quarkus/"
    - # TODO: Should be defined using ENV_VARS. To be reviewed
      name: BP_MAVEN_BUILD_ARGUMENTS
      value: "package -DskipTests=true -Dmaven.javadoc.skip=true -Dquarkus.package.type=fast-jar"

and passed as env var to the build step here

      env:
        - name: CNB_PLATFORM_API
          value: $(params.CNB_PLATFORM_API)
        # TODO: Can we retrieve the ENV VARs using Build.Spec.ParamsValues.ENV_VARs ?
        # instead of hard coding them here
        - name: BP_NATIVE_IMAGE
          value: $(params.BP_NATIVE_IMAGE)
        - name: BP_MAVEN_BUILT_ARTIFACT
          value: $(params.BP_MAVEN_BUILT_ARTIFACT)
        - name: BP_MAVEN_BUILD_ARGUMENTS
          value: $(params.BP_MAVEN_BUILD_ARGUMENTS)