- From Jenkins Server console, click Manage Jenkins > Configure System
- In Cloud section, click Add a new cloud and select Oracle Cloud Infrastructure Compute. Enter credentials to access your OCI account. You can create multiple Clouds.
- Name - Provide a name for this OCI Compute Cloud.
- Fingerprint - Enter the Fingerprint from your OCI API Signing Key. If you do not have one, it can be left blank. For more information see Security Credentials.
- API Key - Enter the OCI API Signing Private Key. For more information see Security Credentials.
- User Id - Enter your User OCID.
- Tenant Id - Enter your Tenant OCID.
- Region - Enter Region, for example, us-phoenix-1.
Click Add in Instance Templates section to add the OCI configuration. You can add multiple Templates to a Cloud configuration.
2. Input or select values in the 'Instance Template' section:
- Description - Provide a description for this Template.
- Usage - It's recommended that you select "Only build jobs with label expressions matching this node" for now.
- Labels - Enter a unique identifier which allows Jenkins to pick the right instance template to run Job.
- Compartment - Select a compartment where the instance will be created.
- Availability Domain - Select the Availability Domain for your instance.
- Shape - Select the Shape for your instance.
- Image Compartment - The compartment from which to select the Instance's image. Note: if upgrading from v1.0.2 (or earlier) and Image is in a separate compartment than Default Compartment above, you may have to update the values in your existing Template configuration.
- Image - Select the Image the instance will use. The Drop Down values are in the format - Image(Compartment). Note: Java should be installed on the image as a Jenkins requirement. Alternatively refer to "Init Script" in Step 10 to install Java on the newly launched instances.
- Virtual Cloud Network - Select the Virtual Cloud Network for your instance.
- Subnet - Select Subnet of your Virtual Cloud Network.
- Assign Public IP Address - By default, the plugin will assign a public IP to an instance, provided the subnet has an available public IP range. If this Option is unchecked, only the private IP is assigned.
- Connect Agent using Public IP - By default the Plugin will connect to the public IP of the instance (agent). If this Option is unchecked, the Plugin will connect to the private IP of the instance.
- SSH Public Key Name - Enter ssh public key for your instance. For more information see Security Credentials.
- SSH Private Key - Enter ssh private key for your instance. For more information see Security Credentials.
3. Click Verify SSH Key Pair to verify the public key and private key entered are a match.
4. Click Advanced for more configuration options:
- Remote FS root - Dedicated directory for Jenkins agent in instance.
- Remote SSH user - ssh user used for Jenkins master to access instance. The ssh user should have written permission on Remote FS root directory.
- Instance Creation Timeout - Number of seconds to wait for instance to reach state "ready", default value is 300.
- Instance SSH Connection Timeout - Number of seconds to wait for instance from state "ready" to be able to ssh connect from Jenkins master. Default value is 60.
- Idle Termination Minutes - Number of minutes for Jenkins to wait before deleting and completely removing an idle instance. A value of 0 (or an empty string) indicates that instance should never be stopped/deleted.
- Number of Executors - Number of concurrent builds that Jenkins can perform. Value should be at least 1.
- Init Script - You can define several lines of shell based commands to configure the instance (one-time) before the Jenkins Job runs. For example, if the image selected does not have Java pre-installed, you can add command "sudo yum -y install java"
- Init Script Timeout - Number of seconds to wait for the completion of Init Script. Default value is 120 seconds.
45. Click Save or Apply