Where is Bamboo looking for artifacts?

I created a Bamboo build plan that should generate artifacts. And this is so - I see the generated files on the server. Unfortunately, Bamboo does not copy files to the right place β†’ it does not consider them as artifacts that can be downloaded from the Bamboo server.

I work with Bamboo 4.3.3. The documentation describes the location of artifacts relative to the "working directory", so I'm trying to copy everything to ${bamboo.build.working.directory} .

I tried different location / copy settings, but to no avail.

Where should I put them? I have a scripting environment and I don't need Maven or Ant.

+4
source share
1 answer

Finally, I realized what was going on with my artifacts and test results that Bamboo hadn't seen:

  • Test results: there is a known bug that affects all versions up to 4.4.5, which manifests itself in scripting environments. Fortunately, it has a workaround: JUnit Parser: no test results found

Bamboo uses the bamboo.fs.timestamp.precision system property to determine the FS timestamp resolution. The default value is 100 (ms), set it to a higher value to make checking the file date less stringent. Bamboo performs the verification as follows:

 private boolean isFileRecentEnough(final File file) { return file.lastModified() >= (taskStartDate.getTime() - SystemProperty.FS_TIMESTAMP_RESOLUTION_MS.getTypedValue()); } 

Other items to check

Double-check the configuration of the task and make sure that it is configured to search for the file of test results in the current working directory of the task (example: C: \ Users \ ssetayeshfar \ bamboo-home-445 \ xml-data \ build-dir \ PROJECT-PLAN-JOB) and NOT a subdirectory (example C: \ Users \ ssetayeshfar \ bamboo-home-445 \ xml-data \ build-dir \ PROJECT-PLAN-JOB / test results).

If the test report is not created by the assembly (it was created earlier), use the "touch" command right before the JUnit task.

  1. Artifacts: at the beginning of my work with Bamboo, I did not understand that the working directory was defined by PER JOB and tried to copy something created in the previous task, as an artifact of the current one.
+1
source

Source: https://habr.com/ru/post/1496976/


All Articles