Supported platforms for CloudBees Core on traditional platforms

When running CloudBees Core on traditional platforms, consult this page for supported platforms.

Java support

The following sections detail Java support for CloudBees Core on traditional platforms.

Supported Java application servers

For CloudBees Core on traditional platforms, CloudBees recommends running it as a standalone application installed with one of the following:

  • java -jar cloudbees-core-cm.war

  • The native package for Red Hat (.rpm), Debian/Ubuntu (.deb) or Windows (.msi)

CloudBees also supports running CloudBees Core on traditional platforms on Java application servers with the following requirements:

  1. The WAR application must be the only web application running on the Java application server.

  2. The restart capabilities of the application server must not be used; the instance must be restarted either via the JVM or using the instance’s built-in restart function.

CloudBees only supports two versions of Apache Tomcat and strives to support the latest GA version.
Application Server Minimum Version End Of Support

Apache Tomcat 8.0 and lower

Not supported

2017-03-01

Apache Tomcat 8.5

8.5.0

Apache Tomcat 9.0

9.0.0

Supported JDK versions

CloudBees supports only JDKs or JREs provided by either Oracle or OpenJDK for only the following versions:

  • Oracle JRE / JDK 8 - 64 bits

  • OpenJDK JDK / JRE 8 - 64 bits

In some cases, to fix a problem, CloudBees may occasionally require you to move forward to a specific update release (for example, _uXX) of a currently supported JDK/JRE version.

If you not running a supported JDK version, CloudBees Support may ask you to move to a supported JDK version before diagnosing your problem. If you are running an outdated version of a supported JDK, CloudBees Support may ask you to move to a more recent JDK version since the more recent version may benefit from bug fixes and performance improvements. CloudBees recommends you keep your JDK version up-to-date.

How CloudBees Core is affected by the end of public updates for Oracle Java 8

Oracle Java 8 reaches the end of public updates in December 2020. Java 11 is the next Java LTS. Therefore, CloudBees is actively working to modify CloudBees Core to run on Java 11.

Some of the CloudBees public activities surrounding Java 11 support can be viewed at the Jenkins Platform Special Interest Group.

Until CloudBees Core supports Java 11, CloudBees recommends using either:

  • An actively supported version of OpenJDK 8, such as those maintained by:

Alternately, you may purchase extended support from Oracle for the Oracle 1.8 JVM (EOL in December 2020).

Plugin compatibility

CloudBees endeavors to build plugins against the JDK that corresponds to the minimum Java requirements of the oldest supported CloudBees Core on traditional platforms version.

CloudBees tests its binaries and plugins against the supported JDKs.

Some third party plugins may have different requirements which are outside of CloudBees control. Where a third party plugin is bundled within a CloudBees product, CloudBees endeavor to ensure that the plugins’ Java requirements are compatible with our supported Java versions.

Supported Docker environments

CloudBees supports running CloudBees Core on traditional platforms in Docker containers, subject to the following constraints:

  1. The Docker image must be the image provided by CloudBees, which is cloudbees/cloudbees-core-cm or cloudbees/cloudbees-core-oc for CloudBees Core on traditional platforms

  2. The Docker Engine used to run these containers must run on a Linux platform and must be a standalone Docker Engine provided by Docker, Inc. or by a Linux distribution provider (such as Red Hat or CentOS). Container orchestration environments (such as Docker Swarm and Mesos) are consequently not supported.

Supported operating systems

CloudBees Core on traditional platforms is supported on the following platforms as long as the operating system is actively supported by the vendor:

  • Debian

  • Red Hat Enterprise Linux

  • Ubuntu

  • CentOS

  • Fedora

  • openSUSE

  • Microsoft Windows

There are no universally applicable OS-level requirements. Some customers find that they need to increase the per-process open files limit on Linux (ulimit -n); or increase the maximum size of the Java heap or permanent generation (refer to JVM tuning guides for specifics).

Supported NFS versions

CloudBees supports the following versions of NFS:

  • NFS v.3.x

  • NFS v4.1 and higher

There are known performance issues with NFS v4.0. CloudBees supports NFS v4.1 and higher, but CloudBees does not support NFS v4.0.

Configuration as Code (CasC) for Masters support in CloudBees Core on traditional platforms

Configuration as Code (CasC) for Masters is supported in CloudBees Core on traditional platforms as of May 2020.

Specific issues with the Configuration as Code (CasC) for Masters within CloudBees Core on traditional platforms include:

  • Operations Center cannot be configured as code

  • Role Based Access control is not supported

Tier 1 plugin support for Jenkins Configuration as Code

The following plugins support Jenkins Configuration as Code (JCasC).

If you don’t see a plugin in this list, this can mean one of two things: that plugin does not support JCasC or that plugin does not require configuration.

This list of plugins applies to CloudBees Core, CloudBees Jenkins Distribution, and CloudBees Jenkins Platform.

These plugins are not supported on Operations Center.
Table 1. List of plugins in CAP supporting Configuration as Code
Plugin Name Minimum version Configuration example

ant

1.10

https://github.com/jenkinsci/ant-plugin/blob/master/src/test/resources/hudson/tasks/configuration-as-code.yaml

antisamy-markup-formatter

1.6

https://github.com/jenkinsci/antisamy-markup-formatter-plugin/blob/master/src/test/resources/hudson/markup/configuration-as-code.yaml

artifact-manager-s3

1.1

https://github.com/jenkinsci/artifact-manager-s3-plugin/blob/master/src/test/resources/io/jenkins/plugins/artifact_manager_jclouds/s3/configuration-as-code.yml

cloudbees-assurance

2.138.0.13

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-assurance-plugin/configuration-as-code.yml

cloudbees-cyberark-credentials

1.0.5

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-cyberark-credentials-plugin/configuration-as-code.yml

cloudbees-even-scheduler

3.10

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-even-scheduler-plugin/configuration-as-code.yml

cloudbees-jenkins-advisor

3.0

https://github.com/jenkinsci/cloudbees-jenkins-advisor-plugin/blob/master/src/test/resources/com/cloudbees/jenkins/plugins/advisor/casc/configuration-as-code.yaml

cloudbees-label-throttling-plugin

3.8

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-label-throttling-plugin/labelLimits.yaml

cloudbees-monitoring

2.9

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-monitoring-plugin/configuration-as-code.yml

cloudbees-nodes-plus

1.20

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-nodes-plus-plugin/configuration-as-code.yml

cloudbees-ssh-slaves

2.7

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloudbees-ssh-slaves-plugin/configuration-as-code.yml

config-file-provider

3.4

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/config-file-provider

credentials

2.2.0

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/credentials

electricflow

1.1.14

https://github.com/jenkinsci/electricflow-plugin/blob/master/src/test/resources/casc/configuration-as-code.yml

git

3.10.1

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/git

github-branch-source

2.5.8

https://github.com/jenkinsci/github-branch-source-plugin/blob/master/src/test/resources/org/jenkinsci/plugins/github_branch_source/configuration-as-code.yaml

git-validated-merge

3.27

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/git-validated-merge-plugin/configuration-as-code.yml

gradle

1.30

https://github.com/jenkinsci/gradle-plugin/blob/master/src/test/resources/hudson/plugins/gradle/ConfigurationAsCodeTest/configuration-as-code.yml

kube-agent-management

1.1.32

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/kube-agent-management-plugin/configuration-as-code.yml

kubernetes

1.25.3

https://github.com/jenkinsci/kubernetes-plugin/tree/master/src/test/resources/org/csanchez/jenkins/plugins/kubernetes/casc

ldap

1.16

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/ldap

mailer

1.25

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/mailer

master-provisioning-kubernetes

2.5.1

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/cloud-platform-master-provisioning-plugin/configuration-as-code.yml

metrics

4.0.2.4

https://github.com/jenkinsci/metrics-plugin/blob/master/src/test/resources/jenkins/metrics/configuration-as-code.yaml

msbuild

1.29

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/msbuild

mstestrunner

1.3.0

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/mstestrunner

notification-api

1.2

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/notification-api-plugin/configuration-as-code.yml

plain-credentials

1.5

https://github.com/jenkinsci/plain-credentials-plugin/blob/master/src/test/resources/org/jenkinsci/plugins/plaincredentials/ConfigurationAsCode.yaml

saml

1.1.3

https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos/saml

script-security

1.64

https://github.com/jenkinsci/script-security-plugin/blob/master/src/test/resources/org/jenkinsci/plugins/scriptsecurity/scripts/smoke_test.yaml

secure-requester-whitelist

1.4

https://github.com/jenkinsci/secure-requester-whitelist-plugin/blob/master/src/test/resources/org/jenkinsci/plugins/secure_requester_whitelist/CasCTest.yml

skip-plugin

4.6

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/skip-plugin/skipGroupsFolder.yaml

ssh-credentials

1.17

https://github.com/jenkinsci/ssh-credentials-plugin/blob/master/src/test/resources/com/cloudbees/jenkins/plugins/sshcredentials/jcasc/configuration-as-code.yaml

ssh-slaves

1.30.0

https://github.com/jenkinsci/ssh-slaves-plugin/blob/master/src/test/resources/hudson/plugins/sshslaves/SSHCasCConfig.yml

trigger-restrictions

1.3

https://github.com/cloudbees/cloudbees-examples/tree/master/cloudbees-ci/configuration-as-code-examples/trigger-restrictions-plugin/labelLimits.yaml