Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to buildpack API 0.10, invoke processes via bash #205

Merged
merged 9 commits into from
Feb 22, 2024

Conversation

joshwlewis
Copy link
Member

@joshwlewis joshwlewis commented Feb 16, 2024

This PR:

  • Updates to Buildpack API 0.10
  • Adds[[targets]] directive to buildpack.toml to support requirement in Buildpack API 0.10
  • Drops [[stacks]] directive from buildpack.toml, which has been deprecated in Buildpack API 0.10
  • Drops direct = true from launch processes (removed from Buildpack API 0.9) and wraps them with bash -c so that procfile entries that rely on bash still work.
  • Updates to the latest libcnb (0.18)

Supersedes #150 and #197.
Fixes #151.
GUS-W-13119392.

@joshwlewis joshwlewis marked this pull request as ready for review February 17, 2024 00:06
@joshwlewis joshwlewis requested a review from a team as a code owner February 17, 2024 00:06
@joshwlewis joshwlewis changed the title Update to buildpack API 0.10, update to libcnb 0.18, invoke via bash Update to buildpack API 0.10, invoke processes via bash Feb 17, 2024
Copy link
Member

@edmorley edmorley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! It will be great to have the Procfile CNB using modern libcnb for the first time in a while!

CHANGELOG.md Outdated Show resolved Hide resolved
buildpack.toml Show resolved Hide resolved
src/launch.rs Outdated Show resolved Hide resolved
tests/integration_test.rs Show resolved Hide resolved
Copy link
Member

@edmorley edmorley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

@joshwlewis joshwlewis merged commit 891de26 into main Feb 22, 2024
4 checks passed
@joshwlewis joshwlewis deleted the buildpack-api-0.10 branch February 22, 2024 14:29
@joshwlewis joshwlewis mentioned this pull request Feb 22, 2024
edmorley added a commit to heroku/libcnb.rs that referenced this pull request Feb 28, 2024
…801)

Procfile CNB v3.0.0 was just released with an intentional change to the
way that `command` vs `args` are handled in the CNB process type
definition. (Before the `Procfile` file entry would be set as the
process `command`, but now it's set as `args`.)

That change improves the overall UX of running images that use the
Procfile CNB, but is breaking in some lesser used scenarios that
happened to be tested via the `starting_containers` test in this repo.

See:
- heroku/buildpacks-procfile#205 (comment)
- heroku/buildpacks-procfile@v2.0.2...v3.0.0#diff-782521a81713992d3a07e85975d367cfac60afc78583133551efcddc2026bd3eL19-R20

The tests have been updated to account for the new behaviour, and an
additional test added for the "overriding command only" scenario (that
wasn't possible to easily test before due to the way the Procfile CNB
was previously implemented).

Fixes #800.
GUS-W-15139634.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Migrate away from using direct=false process types
2 participants