🚧 This repo is experimental. Use at your own risk. 🚧
This repository is the home of Heroku Cloud Native Buildpacks for Release Phase, the mechanism offered by Heroku to execute code for each App Release, such as builds, pipeline promotions, and config var changes. Release Phase provides a hook useful for automating deployments, such as database migrations, object storage for caching, and other application-specific operations.
This buildpack enhances Release Phase capabilities to support multiple, ordered release
commands and release-build
for generating static web artifacts during Release Phase.
ID | Name |
---|---|
heroku/release-phase |
Release Phase |
cargo test -- --include-ignored
cargo libcnb package --target aarch64-unknown-linux-musl
pack build cnb-release-phase-test \
--buildpack packaged/aarch64-unknown-linux-musl/debug/heroku_release-phase \
--builder heroku/builder:24 \
--path buildpacks/release-phase/tests/fixtures/project_uses_release_build
docker run -it cnb-release-phase-test bash
/workspace$ export \
RELEASE_ID=my-test-1 \
STATIC_ARTIFACTS_ACCESS_KEY_ID=xxxxx \
STATIC_ARTIFACTS_SECRET_ACCESS_KEY=xxxxx \
STATIC_ARTIFACTS_URL=s3://xxxxx \
STATIC_ARTIFACTS_REGION=us-east-1
/workspace$ mkdir -p static-artifacts; echo "Hello static world!" > static-artifacts/note.txt
/workspace$ save-release-artifacts static-artifacts/
Action workflows are used to automate the release process:
- Run Prepare Buildpack Releases.
- Await completion of the preparation step.
- Run Release Buildpacks.