Propositions for Joid integration in CI
Please follow HOW TO here: https://wiki.opnfv.org/wiki/jenkins#how_to_connect_servers_from_labs_to_opnfv_jenkins
Jump host preparation
The jumphost must be a flavor of Ubuntu
The following things must be set on the jumphost before starting any deploy:
- applications must be installed
- The network must also be set to host 3 bridges (TO BE DISCUSSED)
All those pre-requisits can be managed by Master MAAS.
Now you can launch jenkins
Jenkins fixes those parameters:
The file containing installer defaults is releng/jjb/opnfv/installer-params.yml
The file containing pod default is releng/jjb/opnfv/slave-params.yml
Those parameters shall be present in the pod default.
The cleanup is done at each deploy in the script
Run CI deploy script without jenkins
- Copy all jenkins parameters (see list 'Jenkins parameters' section) in a file (~/deploy_params.sh) and set them according to your platform (don't forget to set DEPLOY_SCENARIO value !)
- Load this file
- Get the script
- Run the script
Add my pod deployed by jenkins
- Edit Releng jjb/joid/joid-ci-jobs.yml
- to add your node to pod list in the project section
- to add your trigger macro at the end of the file
- Add your pod description in jjb/opnfv/slave-params.yml
- Setup (or not) your local config file, as described in "Set specific pod parameters".
- If your $POD_NAME is not formated like this: <POD_DATA_CENTER>-<POD_ID> as set in joid/ci/maas/<POD_DATA_CENTER>/<POD_ID> subfolders, please modify section "Set Joid pod config name" in releng/jjb/joid/joid-deploy.sh
- Ask jenkins to deploy
Set specific pod parameters
The pod admin can set a few parameters
Deploy or not MAAS at each time
Testing MAAS deploy is not the core of CI tests, so to gain time, MAAS reinstall can be disabled by setting local parameter MAAS_REINSTALL=false. Juju will be cleaned and all nodes managed will return in ready mode.