Builds and publishes the shared Docker image used by Fender/Presonus Lambda CI pipelines:
opsfender/circleci:lambda_<branch>
Consumers typically use opsfender/circleci:lambda_main.
| Tooling | Versions / notes |
|---|---|
| Base | buildpack-deps (Ubuntu Focal) |
| Node (nvm) | 20.12.1 (default), 24.14.1 + yarn + serverless@3.39.0 |
| Python (pyenv) | 3.6.8 (default), 3.7.2, 3.8.5, 3.12.10, 3.14.3 |
| Go | 1.26.1 (+ cover, goveralls, honeymarker) |
| Terraform | tfenv (latest stable), tflint, tfsec, terraform-compliance |
| Other | awscli, ansible, boto/boto3, zip/rsync/parallel/jq, etc. |
Versions are configured in .circleci/config.yml under image_config.
- Edit
image_configin.circleci/config.yml(Node/Python/Go/tf versions, etc.). - Push to GitHub; CircleCI runs the
buildjob. scripts/generate.shemits aDockerfilefrom those env vars.- The image is built and pushed to Docker Hub as
$DOCKERHUB_USERNAME/circleci:lambda_$CIRCLE_BRANCH. - The generated
Dockerfileis stored as a build artifact.
Docker Hub credentials come from the CircleCI Global context (DOCKERHUB_USERNAME, DOCKERHUB_PASSWORD).
scripts/setup.sh/make setupare leftover interactive wizard helpers; prefer editing.circleci/config.ymldirectly.- Image builds run on CircleCI (
machineexecutor); you do not need Docker Hub push access locally to change versions.