@@ -11,13 +11,16 @@ PROJ_DIR="$(dirname "$SCRIPT_DIR")"
1111
1212# Parse arguments
1313PARALLEL_MODE=false
14+ COPY_ONLY=false
1415JDK_VERSION=" "
1516BUILD_TOOL=" "
1617
17- # Check for parallel flag
18+ # Check for flags
1819for arg in " $@ " ; do
1920 if [[ " $arg " == " --parallel" ]] || [[ " $arg " == " -p" ]]; then
2021 PARALLEL_MODE=true
22+ elif [[ " $arg " == " --copy-files" ]] || [[ " $arg " == " -c" ]]; then
23+ COPY_ONLY=true
2124 else
2225 if [ -z " $JDK_VERSION " ]; then
2326 JDK_VERSION=" $arg "
@@ -40,14 +43,16 @@ usage() {
4043 echo " BUILD_TOOL : maven, gradle, or 'all' (default: all)"
4144 echo " "
4245 echo " Options:"
43- echo " --parallel, -p : Run builds in parallel (faster but uses more resources)"
46+ echo " --parallel, -p : Run builds in parallel (faster but uses more resources)"
47+ echo " --copy-files, -c : Only copy additional files (evomaster-agent, jacoco)"
4448 echo " "
4549 echo " Examples:"
4650 echo " $0 # Build all projects sequentially"
4751 echo " $0 --parallel # Build all projects in parallel"
4852 echo " $0 8 gradle # Build only JDK 8 Gradle projects"
4953 echo " $0 11 maven -p # Build JDK 11 Maven in parallel mode"
5054 echo " $0 all all --parallel # Build everything in parallel"
55+ echo " $0 --copy-files # Only copy evomaster-agent and jacoco files"
5156 echo " "
5257 exit 1
5358}
99104echo " Using: $DOCKER_COMPOSE "
100105echo " "
101106
107+ # If only copying files, do that and exit
108+ if [ " $COPY_ONLY " = true ]; then
109+ echo " ========================================"
110+ echo " Copy Additional Files Only Mode"
111+ echo " ========================================"
112+ echo " "
113+
114+ mkdir -p " $PROJ_DIR /dist"
115+
116+ echo " Copying additional files (evomaster-agent, jacoco)..."
117+ $DOCKER_COMPOSE -f docker-compose.build.yml run --rm -T copy-additional-files
118+
119+ echo " "
120+ echo " ========================================"
121+ echo " Files copied successfully!"
122+ echo " ========================================"
123+
124+ if [ -f " $PROJ_DIR /dist/evomaster-agent.jar" ]; then
125+ echo " evomaster-agent.jar"
126+ ls -lh " $PROJ_DIR /dist/evomaster-agent.jar"
127+ fi
128+
129+ if [ -f " $PROJ_DIR /dist/jacocoagent.jar" ]; then
130+ echo " jacocoagent.jar"
131+ ls -lh " $PROJ_DIR /dist/jacocoagent.jar"
132+ fi
133+
134+ if [ -f " $PROJ_DIR /dist/jacococli.jar" ]; then
135+ echo " jacococli.jar"
136+ ls -lh " $PROJ_DIR /dist/jacococli.jar"
137+ fi
138+
139+ exit 0
140+ fi
141+
102142# Clean dist folder only if building all projects
103143if [ " $JDK_VERSION " == " all" ] && [ " $BUILD_TOOL " == " all" ]; then
104144 echo " ========================================"
282322
283323 echo " "
284324 echo " All parallel builds completed successfully!"
325+ echo " "
285326 else
286327 echo " >>> Running builds in SEQUENTIAL mode..."
287328 echo " "
@@ -298,12 +339,14 @@ else
298339 echo " "
299340 done
300341 fi
301- fi
302342
303- # Copy additional files if any build was run
304- if [ $BUILDS_RUN -gt 0 ]; then
305- echo " >>> Copying additional files (evomaster-agent, jacoco)..."
343+ # Copy additional files after all builds
344+ echo " ========================================"
345+ echo " Copying Additional Files"
346+ echo " ========================================"
347+ echo " >>> Copying evomaster-agent and jacoco files to dist..."
306348 $DOCKER_COMPOSE -f docker-compose.build.yml run --rm -T copy-additional-files
349+ echo " Additional files copied!"
307350 echo " "
308351fi
309352
0 commit comments