BUILD ENV
The BUILD ENV
instruction tells the layerfile to rebuild when a variable
changes.
Examples
- Commonly used with
$SUBDOMAIN
to ensure each branch has the proper value:
Possible values
SUBDOMAIN
SUBDOMAIN=my-branch
The SUBDOMAIN
variable is often used to set the HOST
variable for
webservers.
It is a cleaned up version of the $GIT_BRANCH
variable, acceptable for use in
a URL.
feat/add-some-dashboard-pages
becomesadd-some-dashboard-pages
Common use is to set HOST=$SUBDOMAIN.demo.example.com
DEPLOYMENT_HOST
DEPLOYMENT_HOST=job-5.demo.example.com
The DEPLOYMENT_HOST
variable is set if a deployment exists for your run.
It’s often used to tell a webserver where it is being hosted.
If there are multiple deployments, a single one is returned.
CI
CI=true
, IS_CI_MACHINE=true
, CI_MACHINE=true
, IN_CI_MACHINE=true
,
IN_CI=true
These CI
variables are always true
while running a Layerfile.
DEBIAN_FRONTEND
DEBIAN_FRONTEND=noninteractive
The DEBIAN_FRONTEND
variable is always set to noninteractive
in webapp.io.
To change this behavior, use, e.g., ENV DEBIAN_FRONTEND=readline
GIT_TAG
GIT_TAG=v1.0.0
GIT_TAG
is the result of running git describe --always
in the repository.
GIT_COMMIT
GIT_COMMIT=111122223333444455556666777788889999aaaa
GIT_COMMIT
is the result of running git rev-parse HEAD
in the repository.
GIT_SHORT_COMMIT
GIT_COMMIT=111122223333
GIT_COMMIT
is the first 12 characters of running git rev-parse HEAD
in the
repository.
GIT_COMMIT_TITLE
GIT_COMMIT_TITLE="[improvement] do something"
GIT_CLONE_USER
GIT_CLONE_USER=x-access-token:<token>
GIT_CLONE_URL
is a token which can be used to clone this repository.
git clone https://[email protected]/org/repo.git
EXPOSE_WEBSITE_HOST
EXPOSE_WEBSITE_HOST=(uuid).cidemo.co
EXPOSE_WEBSITE_HOST
is the hostname exposed by EXPOSE WEBSITE
It’s often used to link a frontend with a backend when running both with
EXPOSE WEBSITE
and RUN BACKGROUND
You can even reference this before EXPOSE WEBSITE
is ever used, but the URL is
only live after the run passes.
Note: Unavailable for use by BUILD ENV
WEBAPPIO
WEBAPPIO=true
WEBAPPIO
is always true
when running a Layerfile
GIT_BRANCH
GIT_BRANCH=staging
GIT_BRANCH
is the branch which is checked out in this repository.
JOB_ID
JOB_ID=5
JOB_ID
always exists. It’s set to the ID of the current running job.
PULL_REQUEST_URL
PULL_REQUEST_URL=https://github.com/some/repo/pull_requests/5
PULL_REQUEST_URL
may or may not exist. It’s a link to the pull request that
triggered this pipeline.
REPOSITORY_NAME
REPOSITORY_NAME=somerepo
REPOSITORY_NAME
is the name of the repository. If the repository is at
github.com/a/b, this would be “b”
REPOSITORY_OWNER
REPOSITORY_OWNER=repoowner
REPOSITORY_OWNER
is the name of the owner of this repository. If the
repository is at github.com/a/b, this would be “a”
ORGANIZATION_NAME
ORGANIZATION_NAME=myorg
ORGANIZATION_NAME
is the name of the current organization. If the dashboard is
at webapp.io/myorg, this would be “myorg”
RUNNER_ID
RUNNER_ID=main-layerfile
RUNNER_ID
is the id of the current layerfile runner.
RETRY_INDEX
RETRY_INDEX=1
RETRY_INDEX
is the current retry for the given runner (initially 1, then when
retried once, 2, etc)
API_EXTRA
API_EXTRA=some data passed from API
API_EXTRA
is optional data passed in when a run is started by the API.