I want to add some automated tests to run the project overnight. The project currently has several assignments that create several assemblies of various project components.
In assemblies, rpm files are created, there are several tasks that create several rpms, I want to capture all rpms and install them and test them under one test task, there are many dependencies on each other. I can install via the command line, but these rpms are stored on the Jenkins main machine.
This, as I understand it,
- I set up work in Jenkins
- I created a slave to work on
- I used Jenkins to run a bash script on a slave (works)
I want to do the following:
- At regular intervals (say, once a day, when I know that all assemblies are complete), you will receive the latest processed assemblies of all projects and copy them to the subordinate.
- Install rpms with a script.
- The script performs certain tests during installation (looking at the logs, etc.), so I want to collect all this data and send the results back to Jenkins (maybe in the end they will also conduct other tests).
- I want the status of the last assembly image to be determined by my own tests
- I also want test results, logs, etc. were saved in the Jenkins testing task so we can view them and admire their awesomeness!
What I do not know how to do this:
- How to copy files to slave? Should this be handled on the most subordinate using wget or something else, or does Jenkins have functionality (possibly a plugin) that handles all this for me?
- How can I report my custom results to Jenkins assignment?
I just started working with Jenkins three days ago (the project and work on creating Jenkins is much older than this), apologies if I miss anything obvious.
UPDATE
I think that combining these plugins can do the trick, but I haven't looked at them too much yet, though.
Copy the artifact plugin to copy rpms from the latest stable builds of other jobs
xUnit plugin for interpreting some xml files that I generate during the test process
source share