Executor

Currently you have 2 types of drivers for the executors:

  • localDriver

  • openStackDriver

LocalDriver

The local driver executes your builds on the server where Free Commit is installed. It requires no configuration. An executor will be created by default when Free Commit starts, with the driver set to localDriver.

You can use this one if your builds don't require too much CPU time or if you prefer to scale vertically

OpenStackDriver

The OpenStack driver is useful if you want to run an unlimited number of simultaneous builds or if you're concerned about your costs. It will allow you to start servers on demand, in just a few minutes while your provider uses OpenStack.

This driver requires more configuration than the localDriver, you will need to fill in the variables to make it work

Variables to configure

Variable
Description
Required

OS_REGION_NAME

Datacenter where to start the servers

Yes

OS_PASSWORD

User password

Yes

OS_IDENTITY_API_VERSION

Provided in RC file

Yes

IMAGE_NAME

OS of your server (provided by your provider)

Yes

OS_USERNAME

User name

Yes

NETWORK_NAME

Network to attach on your server

Depend on provider

DOCKER_HUB_PASSWORD

Used to pull your docker image ("from" in your spec file)

Yes

DOCKER_HUB_USERNAME

Used to pull your docker image ("from" in your spec file)

Yes

OS_PROJECT_NAME

Provided in RC file

Yes

OS_AUTH_URL

Provided in RC file

Yes

FLAVOR_NAME

The hardware configuration of your server

Yes

OS_PROJECT_ID

Provided in RC file

Yes

OS_INTERFACE

Provided in RC file

Yes

OS_PROJECT_DOMAIN_NAME

Provided in RC file

Yes

VOLUME_ID

If empty, your server will start with a new volume

No

SECURITY_GROUP_NAME

Yes

OS_USER_DOMAIN_NAME

Provided in RC file

Yes

How it work ?

Drawing

IP consideration

When starting temporary servers, the IPs are random, so if your builds need to SSH into other servers, you'll want to restrict your firewalls to only allow known IPs to SSH into. You'll need to use a VPN.

See OpenVPN

⚠️This step is optional

Create executor

Go to Menu -> Executor -> New

The fields to create an executor are :

Field
Description
Required

Name

Name of executor

Yes

Driver

Driver to use

Yes

Last updated