Integrations
Customize the base image for your pipelines.
Chalk’s runs your feature pipelines on Docker images. If your code relies only on the resolvers and data definitions you define, using Chalk’s base image with no modification is a good option. However, if you require additional dependencies, you’ll need to specify how to install and manage them.
You can specify build options on a per-environment basis, and you can provide a default set of configuration for environments that do not have explicit configuration values.
Chalk can install extra dependencies with pip.
By default, Chalk looks for a file named requirements.txt
in the base
of your project.
However, you can override this location or specify requirements
files per-environment in the chalk.yaml
file located at the base
of your repo.
project: my-project-id
environments:
default:
runtime: python310
requirements: ./requirements.txt
dockerfile: Dockerfile
prod:
requirements: ./requirements-prod.txt
You may have dependencies that cannot be expressed through pip
.
For those dependencies, you need to customize the base image Chalk uses
to run your pipelines.
Chalk allows you to specify a custom Dockerfile
that will be used to build a base image for your deploys.
project: my-project-id
environments:
default:
dockerfile: ./Dockerfile
prod:
dockerfile: ./DockerfileProd
You build any Debian-based image that you like, with a few requirements:
python
must be on the pathpip
must be on the path== 3.10
/app
Chalk is responsible for mounting your code into the image, and for installing your requirements with pip.
The Python version for a Chalk project is set at the project level.
The version is set with the .chalk.yml
file in your project repo.
Today, Chalk accepts only python310
as the value for runtime
,
but as the platform supports more runtimes, more values will
be allowed here.
project: my-project-id
environments:
default:
runtime: python310
prod:
runtime: python310