github.com/noqcks/syft@v0.0.0-20230920222752-a9e2c4e288e5/syft/pkg/cataloger/java/test-fixtures/java-builds/build-example-jenkins-plugin.sh (about)

     1  #!/usr/bin/env bash
     2  set -uxe
     3  
     4  # note: this can be easily done in a 1-liner, however circle CI does NOT allow volume mounts from the host in docker executors (since they are on remote hosts, where the host files are inaccessible)
     5  
     6  PKGSDIR=$1
     7  CTRID=$(docker create -u "$(id -u):$(id -g)" -e MAVEN_CONFIG=/tmp/.m2 -v /example-jenkins-plugin -w /example-jenkins-plugin maven:3.8.6-openjdk-18 mvn -Duser.home=/tmp -DskipTests package)
     8  
     9  function cleanup() {
    10    docker rm "${CTRID}"
    11  }
    12  
    13  trap cleanup EXIT
    14  set +e
    15  
    16  docker cp "$(pwd)/example-jenkins-plugin" "${CTRID}:/"
    17  docker start -a "${CTRID}"
    18  mkdir -p "$PKGSDIR"
    19  docker cp "${CTRID}:/example-jenkins-plugin/target/example-jenkins-plugin.hpi" "$PKGSDIR"
    20  docker cp "${CTRID}:/example-jenkins-plugin/target/example-jenkins-plugin.jar" "$PKGSDIR"