Using jenkins as a task runner
Jenkins can be used a distributed task queue. It's not pretty, but it can work...
Creating a Build Job that qa
will use
- QA-Board needs to be setup with the ENV variable
JENKINS_AUTH
, in order to communicate with jenkins. - Create a Build Job configured with:
- Enable "Trigger builds remotely", note the token
- Parametrized: task should be a String parameter that gets a command to run
- Build > "Execute Windows Batch command"
# if you need to make sure shared drive are available...
net use \\netapp\algo_data
net use \\netapp\raid
net use \\mars\stage\jenkins_ws
net use \\mars\stage\algo_jenkins_ws
net use \\mars\raid
@echo "%task%"
"%task%""
- qaboard.yaml needs to be configured with something like:
runners:
jenkins:
build_url: http://jenmaster1:8080/job/ALGO/job/WindowsExecutor
token: "1234"
How to use this runner?
Multiple options:
- On the CLI:
qa batch --runner=windows
- In our YAML files defining batches:
my-batch:
runner: windows
inputs:
- my/images/
configurations: [base, delta]