Cloud Foundry plugin

10 minute readExtensibilityDeveloper productivity

Cloud Foundry is an open-source, multi-cloud application platform as a service.

Plugin Version 2.0.1.2024020705

Revised on April 2, 2024

Create Cloud Foundry plugin configurations

Plugin configurations are sets of parameters that can be applied across some, or all, plugin procedures. They can reduce the repetition of common values, create predefined parameter sets, and securely store credentials. Each configuration is given a unique name that is entered in the designated parameter for the plugin procedures that use them. The following steps illustrate how to create a plugin configuration that can be used by one or more plugin procedures.

To create a plugin configuration:

  1. Navigate to DevOps Essentials  Plugin Management  Plugin configurations.

  2. Select Add plugin configuration to create a new configuration.

  3. In the New Configuration window, specify a Name for the configuration.

  4. Select the Project that the configuration belongs to.

  5. Optionally, add a Description for the configuration.

  6. Select the appropriate Plugin for the configuration.

  7. Configure the plugin configuration parameters.

  8. Select OK.

Depending on your plugin configuration and how you run procedures, the Input parameters  Configuration name field may behave differently in the CloudBees CD/RO UI. For more information, refer to Differences in plugin UI behavior.

Cloud Foundry plugin configuration parameters

Parameter Description

Configuration

The unique name for the configuration.

Description

Description for the configuration.

API endpoint

API endpoint to your Cloud Foundry installation (for example, api.mycloud.com).

Organization

Name of the organization, for example, myorg. An organization is a development account that an individual or multiple collaborators can own and use. All collaborators access an organization with user accounts. Collaborators in an organization share a resource quota plan, applications, services availability, and custom domains. For more information, refer to the Cloud Foundry documentation.

Space

Space name, for example, test. Every application and service are scoped to a space. Each org contains at least one space. A space provides users with access to a shared location for application development, deployment, and maintenance. Each space role applies only to a particular space. For more information, refer to the Cloud Foundry documentation.

Username and password

Username and password that CloudBees CD/RO uses to communicate with the Cloud Foundry server.

Debug level

Level of log message verbosity. Info is selected by default.

Create Cloud Foundry plugin procedures

Plugin procedures can be used in procedure steps, process steps, and pipeline tasks, allowing you to orchestrate third-party tools at the appropriate time in your component, application process, or pipeline.

Depending on your plugin configuration and how you run procedures, the Input parameters  Configuration name field may behave differently in the CloudBees CD/RO UI. For more information, refer to Differences in plugin UI behavior.

Create or update application

Creates a new application or recreates the existing application and pushes application content from the specified directory. If the application with the specified name already exists, it is deleted and created anew. For more information, refer to Deploy an Application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

Provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Name for the application to be pushed.

Application path

Path to the application directory or to an archive file of the contents of the application directory (for example, /tmp/hello-spring-cloud/target/hello-spring-cloud-0.0.1.BUILD-SNAPSHOT.jar).

Hostname

Hostname (for example, my-subdomain). It is used for route creation.

Disk limit

Disk limit (for example, 256M, 1024M, 1G).

Memory limit

Memory limit (for example, 256M, 1024M, 1G).

Route path

Path for the route (for example, my-sample-app).

Random route?

Create a random route for this application.

Instances

Number of instances.

Startup command

Startup command. Specify null to reset to the default start command.

Domain

Domain (for example, example.com).

Buildpack

Custom buildpack by name (for example, my-buildpack), a Git URL (for example, https://github.com/cloudfoundry/java-buildpack.git), or a Git URL with a branch or tag (for example, https://github.com/cloudfoundry/java-buildpack.git#v3.3.0 for a v3.3.0 tag). To use built-in buildpacks only, specify default or null.

Endpoint property name

Property name for saving the application endpoint.

Start application?

If selected, the application is started after the deployment.

Push application

Pushes application files to the server. This procedure does not delete the application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

A name for the application to be pushed.

Application path

Path to the application directory or to an archive file of the contents of the application directory (for example, /tmp/hello-spring-cloud/target/hello-spring-cloud-0.0.1.BUILD-SNAPSHOT.jar).

Hostname

Hostname (for example, my-subdomain).

Disk limit

Disk limit (for example, 256M, 1024M, 1G).

Memory limit

Memory limit (for example, 256M, 1024M, 1G).

Route path

Path for the route (for example, my-sample-app).

Random route?

Create a random route for this application.

Instances

Number of instances.

Startup command

Startup command. Specify null to reset to the default start command.

Domain

Domain (for example, example.com).

Buildpack

Custom buildpack by name (for example, my-buildpack), a Git URL (for example, https://github.com/cloudfoundry/java-buildpack.git), or a Git URL with a branch or tag (for example, https://github.com/cloudfoundry/java-buildpack.git#v3.3.0 for a v3.3.0 tag). To use built-in buildpacks only, specify default or null.

Endpoint property name

Property name for saving the application endpoint.

Start application?

If selected, the application is started after the deployment.

Blue-green deploy

Deploys and redeploys the application with reduced downtime. To accomplish this, a new application is created, routes and services are then bound to the new application, and then the old application is deleted. For more information about blue-green deploy, refer to Using blue-green deployment to reduce downtime.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

A name for the application to be pushed.

Application path

Path to the application directory or to an archive file of the contents of the application directory (for example, /tmp/hello-spring-cloud/target/hello-spring-cloud-0.0.1.BUILD-SNAPSHOT.jar).

Hostname

Hostname (for example, my-subdomain).

Disk limit

Disk limit (for example, 256M, 1024M, 1G).

Memory limit

Memory limit (for example, 256M, 1024M, 1G).

Route path

Path for the route (for example, my-sample-app).

Random route?

Create a random route for this application.

Instances

Number of instances.

Startup command

Startup command. Specify null to reset to the default start command.

Domain

Domain (for example, example.com).

Buildpack

Custom buildpack by name (for example, my-buildpack), a Git URL (for example, https://github.com/cloudfoundry/java-buildpack.git), or a Git URL with a branch or tag (for example, https://github.com/cloudfoundry/java-buildpack.git#v3.3.0 for a v3.3.0 tag). To use built-in buildpacks only, specify default or null.

Endpoint property name

Property name for saving the application endpoint.

Start application?

If selected, the application is started after the deployment.

Start application

Starts the specified application. The first time you deploy an application, Cloud Foundry uses the buildpack start command by default. To override these defaults, provide the appropriate Startup Command option.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

A name for the application to be started.

Stop application

Stops the specified application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application to be stopped.

Restage application

Restage the specified application. Restaging your application stops your application and then restages it, by compiling a new droplet and starting it. Restage your application if you have changed the environment in a way that affects your staging process, such as setting an environment variable that the buildpack consumes. The staging process has access to environment variables, so the environment can affect the contents of the droplet.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application to be restaged.

Restart application

Restarts the specified application. Restarting your application stops your application and restarts it with the already compiled droplet. A droplet is a tarball that includes:

  • stack

  • buildpack

  • application source code

The Diego cell unpacks, compiles, and runs a droplet on a container. Restart your application to refresh the application’s environment after actions such as binding a new service to the application or setting an environment variable that only the application consumes.

If your environment variable is consumed by the buildpack in addition to the application, then you must restage the application for the change to take effect.
Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application to be restarted.

Set environment variables

Sets environment variables for the specified application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application to set environment variables for.

Variables

Environment variables in JSON format (for example, {"MYVAR": "VALUE"}).

Delete application

Deletes the specified application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application to be deleted.

Get application

Retrieves information about the specified application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application to retrieve information for.

Property name

Property name for the retrieved application data.

List applications

Lists applications on the Cloud Foundry server.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Property name

Property name for saving applications list.

Create or update service

Creates a new Service Instance or updates the existing one. Cloud Foundry offers a marketplace of services, from which users can provision reserved resources on-demand. Examples of resources services provide include databases on a shared or dedicated server, or accounts on a SaaS application. These resources are known as service instances, and the systems that deliver and operate these resources are known as services. Think of a service as a factory that delivers service instances.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Service name

Service name to be created (for example, APIConnect).

Service instance name

Service instance name (for example, my service).

Service plan

Service plan (for example, Silver).

Parameters as JSON

Service-specific configuration parameters in a valid JSON object in-line.

Tags

Comma-separated list of tags.

Bind service

Depending on the service, binding a service instance to your application may deliver credentials for the service instance to the application. Refer to the Delivering service credentials to an app for more information.

Binding a service instance to an application may also trigger application logs to be streamed to the service instance. For more information, refer to Streaming app logs to log management services.
Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Service instance name

Service instance name to bind to the application.

Application name

Application name to bind the service instance to.

Unbind service

Unbinds the specified service instance from the application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Service instance name

Service instance name to unbind from the application.

Application name

Application name to unbind the server instance from.

Delete service

Deletes the specified service instance.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Service instance name

Service instance name to delete.

Create route

Creates a new route.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Domain

Domain for the route.

Hostname

Hostname for the HTTP route (required for shared domains).

Path

Path for the HTTP route.

Port

Port for the HTTP route (required for shared domains).

Random port?

If selected, a random port is created.

Map route

Maps a route to an application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application name for the route.

Domain

Domain for the route.

Hostname

Hostname for the HTTP route (required for shared domains).

Path

Path for the HTTP route.

Port

Port for the HTTP route (required for shared domains).

Random port?

If selected, a random port is created.

Unmap route

Unmaps a route from an application.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Application name

Application name for the route.

Domain

Domain for the route.

Hostname

Hostname for the HTTP route (required for shared domains).

Path

Path for the HTTP route.

Port

Port for the HTTP route (required for shared domains).

Delete route

Deletes the specified route.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space

A space provides users with access to a shared location for application development, deployment, and maintenance. It is inherited from the plugin configuration, if already defined.

Domain

Domain for the route.

Hostname

Hostname for the HTTP route (required for shared domains).

Path

Path for the HTTP route.

Port

Port for the HTTP route (required for shared domains).

Create space

Creates a new space.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space name

Name for the space.

Organization

Organization for the space.

Quota

Quota to assign to the newly created space.

Delete space

Deletes the specified space.

Parameter Description

Configuration name

The previously defined configuration for the plugin.

Space name

Name for the space.

Cloud Foundry plugin release notes

EC-CloudFoundry 2.0.1

  • Improved SSL/TLS certificate validation to ensure that when the Ignore SSL issues parameter is selected that SSL/TLS validation is properly disabled.

EC-CloudFoundry 2.0.0

  • Upgraded from Perl 5.8 to Perl 5.32. The plugin is not backward compatible with CloudBees CD/RO versions prior to 10.3. Starting from this release, a new agent is required to run EC-CloudFoundry plugin procedures.

  • Added capability to the plugin setup procedure to process dependencies for CloudBees CD/RO IPv6 instances.

EC-CloudFoundry 1.6.1

  • The documentation has been migrated to the main documentation site.

EC-CloudFoundry 1.6.0

  • Changed dependency delivery procedure.

  • Renamed to "CloudBees CD".

EC-CloudFoundry 1.5.1

  • Renamed to "CloudBees"

EC-CloudFoundry 1.5.0

  • Improved plugin promotion time.

EC-CloudFoundry 1.4.2

  • Configurations can be created by users with an "@" sign in a name.

EC-CloudFoundry 1.4.1

  • The plugin icon has been updated.

EC-CloudFoundry 1.4.0

  • Added support for the Set Environment Variables procedure.

EC-CloudFoundry 1.3.2

  • Added support for the Blue-Green Deploy procedure.

EC-CloudFoundry 1.3.1

  • Documentation has been refined.

EC-CloudFoundry 1.3.0

  • Added support for the Create Space and Update Space procedures.

EC-CloudFoundry 1.2.1

  • Fixed a bug with the Start Application checkbox in the Create or Update Application procedure.

EC-CloudFoundry 1.2.0

  • Added support for the List Application procedure.

  • Added support for the Restage, Restart, and Push Application procedures.

EC-CloudFoundry 1.0.1

  • Added support for the Get Application procedure.

EC-CloudFoundry 1.0.0

  • First release.