-
Improvement
-
Resolution: Not A Defect
-
Major
-
None
-
Jenkins version=2.46.2
OS: Win7 Professional SP1 64-bit
Web browser: Chrome 57.0.3029.110
Java version: Java8 Update121
I have a Jenkins server to run a Makefile in bash environment.
The bash I use from Git for Windows installation. Eg: "C:\Program Files\Git\bin\bash.exe"
This is the build command in Jenkins:
"C:\Program Files\Git\bin\bash.exe" build.bat
The content of "build.bat" is
"make clean
make"
In the Makefile, it defines a list of rules by using a "foreach" command like below:
"
EXTRA_TUTORIALS= \
analog \
analog2 \
audioplay \
bitmaps \
bgvideo \
capturescreen \
circles \
circles2 \
clock1 \
clock2 \
clock3 \
clock4 \
colorpicker \
digital \
..........
all: \
$(foreach T, $(EXTRA_TUTORIALS), build/tutorials/$(T).ino)
build/tutorials/%.ino: tutorials/%.m4 cleo.m4
@m4 -D _WIDTH=320 -D _HEIGHT=480 cleo.m4 tutorials/$.m4 > build/tutorials/$.ino
"
The issue I got is Jenkins takes about 1 minutes to have "m4" program done for one iteration in "all" rule which is so long because the EXTRA_TUTORIALS list contains many Arduino sketches to build. So it can take several hours just to run the build on Jenkins
If I run the Jenkins build command manually on a Console window command, it can run very fast (less than 1 minute to complete all). And I also tried to increase heap memory for Jenkins to 1024 but not help
So my question is:
Why Jenkins takes so long (around 1minute) to execute one loop iteration in the loop of "all" rule? Do we have any settings to reduce that iteration timeout?
Best regards,
HuyK