The previous logic failed when there are no artifacts for archiving, for multiple reasons. Fix all of them:
* "allow-empty" needs to be set, so jenkins doesn't fail the job when it can't find any artifacts to archive. * The "artifacts" string must not be empty even if "allow-empty" is set, as otherwise it assumes a configuration error. * The jenkins jobs fails in the archiving step if the workspace dir doesn't exist.
Ensure the JDK can always be installed to /home/{{ jenkins_user }}/jenkins/jdk/bin/java, even if ~/jenkins does not exist yet at this point. This could be because jenkins didn't connect to the node yet, or because the jenkins dir isn't set to ~/jenkins.
Add a script for downloading artifacts from the build job in a gerrit pipeline, so it can be used in the hwtest job job.
pipeline: <--- URL to the pipeline is passed to all jobs parallel: sequential: build <--- artifacts are here hwtest <--- will call the new script with the pipeline URL lint binpkgs ...
Add a new test that flashes the firmware from the previous build job and runs tests against it. Tests are intentionally from the master branch for security reasons.
New jenkins versions require newer java versions to be installed on the jenkins nodes. Install openjdk from download.java.net instead of using distribution packages, so we are not limited by what the distribution offers (which is oftentimes not recent enough).
Use the openntpd package, as there isn't a ntp package anymore. The service gets enabled and started automatically after installing it, so remove the block that did it manually.