Architecture

Similar to OPNFV (and old Openstack before the transition to Zuul), Jenkins (and probably JJB) will be used for all CI/CD purposes.

Each POD will be connected as a Jenkins slave node to one public Jenkins master node or to a local Jenkins master node in the current lab (TBD).

Pipelines

Artifacts


Setting up a static Jenkins Slave

To setup a static Jenkins Slave for CI, follow the instructions here but make sure you replace all instances of "opnfv" with "akraino", and in step 5, replace "git clone https://gerrit.opnfv.org/gerrit/p/releng.git" with "git clone https://gerrit.akraino.org/r/ci-management".

Two servers have been set up for development in Enea Lab https://jenkins.akraino.org/computer/prd-ubuntu1604-dev-48c-256g-1/ and https://jenkins.akraino.org/computer/prd-ubuntu1604-dev-48c-256g-2/

The same servers are available in sandbox too: https://jenkins.akraino.org/sandbox/computer/snd-ubuntu1604-dev-48c-256g-1/ and https://jenkins.akraino.org/sandbox/computer/snd-ubuntu1604-dev-48c-256g-2/

Don't run any jobs in sandbox if there are CI jobs running on the slaves in the production environment, as the two jobs will interfere with each other!

Jenkins Jobs

Daily: https://jenkins.akraino.org/view/iec/job/iec-fuel-virtual-ubuntu1604-daily-master/

We're using Jenkins (the standard community version) 2.164.3 Long-Term Support (LTS) release.


Logs

From https://nexus.akraino.org/#view-repositories;public~browsestorage

You need to go to

Production -> vex-yul-akraino-jenkins-prod-1 -> iec-deploy-fuel-virtual-daily-master