/aliases (NOT IMPLEMENTED)

get

List all aliases visible to you.

Aliases in v3 perform the same function as aliases in v2. The main difference is that in v3 an alias is associated with a service, not an application.

post

Create an alias for this service.

get

Get a specific alias.

put

Update a specific alias.

delete

Delete a specific alias.

/buildConfigHooks/{buildID}/{secret}/{plugin}

post

Webhook on push event from external repository.

buildID specifies which build to trigger, whereas plugin defines source of the request, this might be github, bitbucket or others.

/buildConfigs

get

List all BuildConfigs.

BuildConfig contains the inputs needed to produce a new deployable image.

post

Create a new build.

get

Get a specific build configuration.

put

Update a specific build configuration.

delete

Delete a specific build configuration.

/builds

get

List all builds.

Build encapsulates the inputs needed to produce a new deployable image, as well as the status of the operation and a reference to the Pod which runs the build.

post

Create a new build.

get

Get details about a specific build.

put

Update a specific build.

delete

Delete a specific build.

/configs (NOT IMPLEMENTED)

get

List all configs that your account has access to.

A config defines 0..n Kubernetes resources.

post

Create a new config.

get

Get a specific config.

put

Update a specific config.

delete

Delete a specific config.

/deploymentConfigs

get

List all DeploymentConfigs.

A DeploymentConfig represents a configuration for a single deployment of a replication controller: a template for the deployment, how new deployments are triggered, what the current deployed state is.

post

Create a new build.

get

Get a specific build configuration.

put

Update a specific build configuration.

delete

Delete a specific build configuration.

/deployments

get

List all deployments.

A deployment represents a single unique realization of a deployment config.

post

Create a new deployment.

get

Get details about a specific deployment.

put

Update a specific deployment.

delete

Delete a specific deployment.

/imageRepositories

get

List all image repositories.

An image repository is a collection of images that share the same metadata. It may reference a Docker image repository on a Docker registry, but this is optional. An image repository also contains a mapping of tags to images.

post

Create a new image repository.

get

Get information about a specific image repository.

put

Update an image repository.

delete

Delete an image repository.

/imageRepositoryMappings

post

Create an image and update an image repository.

This is designed as a webhook that a Docker registry can invoke when a new tag is created. The image repository mapping contains a reference to the repository, the image's metadata, and the name of the new tag. Upon execution, a new image is created if it doesn't already exist, and the image repository is updated with the new tag.

/images

get

List all images.

An image is a reference to an image in a Docker image repository on a Docker registry, plus a set of metadata. The metadata that Openshift stores for an image will augment the metadata that has already been specified in the image through its Dockerfile.

post

Create a new image definition.

get

Get a specific image definition.

delete

Delete a specific image.

/projects (NOT IMPLEMENTED)

get

List all projects for your account.

Projects are a similar concept to v2 domains. A project is a grouping of services with shared access control and resource limits. Applications can be assembled from services in a project by linking them together via service endpoints.

post

Create a new project.

get

Get a specific project.

put

Update a project.

delete

Delete a project.

post

Instantiate a template in the given project.

/templateConfigs

post

Process a template into a config. See /templates endpoint for details on template transformation, parameters and generators.

/templates (NOT IMPLEMENTED)

get

List all templates that your account has access to.

A template represents generic config with parameters.

Parameters:

Example #1 - static paramater:

{

  "name": "DB_NAME",

  "description": "PostgreSQL database name",

  "type": "string",

  "value": "mydb"

}

The above parameter can be referenced in the rest of the template as ${DB_NAME} expression, which is to be substituted by its value (the "mydb" string) during the transformation.

Example #2 - parameter with generator:

{

  "name": "DB_PASSWORD",

  "description": "PostgreSQL admin user password",

  "type": "string",

  "expression": "[a-zA-Z0-9]{8}"

}

The above parameter can be referenced in the rest of the template as ${DB_PASSWORD} expression, which is to be substituted by its newly generated value during the transformation.

Generators:

Generators generate random values based on the input. OpenShift 3 currently support expression value generator only.

Expression value generator generates random string based on the input expression. The input expression is a string, which may contain "[a-zA-Z0-9]{length}" expression constructs, defining range and length of the result random characters.

Examples ("expression" => "value"):

"test[0-9]{1}x" => "test7x"

"[0-1]{8}" => "01001100"

"0x[A-F0-9]{4}" => "0xB3AF"

"[a-zA-Z0-9]{8}" => "hW4yQU5i"
post

Create a new template.

get

Get a specific template.

put

Update a specific template.

delete

Delete a specific template.