JENKINS
Overview
JENKINS is a Java-based program that can be used for continuous integration, continuous delivery and other automation tasks. It supports hundreds of plugins and can run on various operating systems and platforms. This appliance deploys a Jenkins Service along with any necessary configuration in your site out of the box to start deploying Trial Networks.
Download
The latest version of the Jenkins appliance can be downloaded from the 6G-SANDBOX official Marketplace
Requirements
- OpenNebula version: >= 6.4
- Minimum RAM: 4GiB
- Minimum vCPU: 2
- Minimum storage: 10GiB
Features and usage
The appliance comes with Jenkins completely preinstalled, along with:
- All necessary plugins to effectively run Trial Networks in your site.
- Pipelines TN_DEPLOY and TN_DESTROY already loaded.
- Jenkins credentials loaded at boot time according to the contextualization variables sent as input.
You might need to manually access the VM to gather some files generated at bootstrap from /var/lib/jenkins/consult_me/
in order to proceed with the installation of a Site:
jenkins_tnlcm_token
: The first time the VM boots, a Jenkins user gets created using contextualization variablesJENKINS_USERNAME
andJENKINS_PASSWORD
. Following this creation, a token is generated to connect to the Jenkins API. This token is needed when deploying the TNLCMid_ed25519.pub
: The first time the VM boots, a pair of SSH keys gets generated for Linux userjenkins
. In order to access the Trial Networks VMs deployed by Jenkins, you must setOPENNEBULA_USERNAME
public key from the OpenNebula Frontend. Use this generated key and place it there.
Contextualization
Contextualization parameters provided in the Virtual Machine template (CONTEXT section) control the initial VM configuration. Except for the common set of parameters supported by every appliance on the OpenNebula Marketplace, there are few specific to this particular jenkins appliance:
GNB_*
andUE_*
parameters replace the variables of their respective config file at/etc/ueransim/
.RUN_GNB
andRUN_UE
determine if their respective service should be started at boot time.
The parameters should be provided in the CONTEXT section of the Virtual Machine template, read the OpenNebula Management and Operations Guide for more details.
Parameter | Description | Default Value |
---|---|---|
JENKINS_USERNAME | The username for the Jenkins admin user | admin |
JENKINS_PASSWORD | The password for the Jenkins admin user | admin |
ANSIBLE_VAULT_PASSWORD | Password to encrypt and decrypt the 6G-Sandbox-Sites repository files for your site using Ansible Vault | <undefined> |
OPENNEBULA_ENDPOINT | The URL of your OpenNebula XML-RPC Endpoint API (for example, 'http://example.com:2633/RPC2') | <undefined> |
OPENNEBULA_FLOW_ENDPOINT | The URL of your OneFlow HTTP Endpoint API (for example, 'http://example.com:2474') | <undefined> |
OPENNEBULA_USERNAME | The OpenNebula username used to deploy each component | <undefined> |
OPENNEBULA_PASSWORD | The OpenNebula password matching OPENNEBULA_USERNAME | <undefined> |
OPENNEBULA_INSECURE | Allow insecure connexion into the OpenNebula XML-RPC Endpoint API (skip TLS verification) | true |
AWS_ACCESS_KEY_ID | S3 Storage access key. Same as used in the MinIO instance | <undefined> |
AWS_SECRET_ACCESS_KEY | S3 Storage secret key. Same as used in the MinIO instance | <undefined> |