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

feat: add tags to docker image with release-please #88

Merged
merged 9 commits into from
Jul 31, 2024

Conversation

ninabernick
Copy link
Collaborator

@ninabernick ninabernick commented Jul 26, 2024

Use release-please to assign versions, create changelog, and tag the docker image with the appropriate version. Enables downstream versioning of platformics in apps: users can add tags to the base platformics docker image used in test_app/Dockerfile
When a PR is merged to main, the release please workflow will determine the current version and add to/open release PR.
When the release PR is merged and a release is created, the we push a docker image with the release tag and the latest tag.

The version in pyproject.toml is a placeholder, the version is dynamically managed by poetry-dynamic-versioning using the release tags.

Notes:

Testing:

  • tested by running release please workflow on my branch, which generated release PR. Won't be able to test release build + push until release PR is merged

@ninabernick ninabernick changed the title add tags to docker image with release-please feat: add tags to docker image with release-please Jul 26, 2024
@ninabernick ninabernick requested a review from jgadling July 29, 2024 20:11
@ninabernick ninabernick requested a review from j-x-han July 31, 2024 20:36
@@ -51,8 +52,12 @@ sqlalchemy_utils = "^0.41.1"
strawberry-graphql = "^0.217.0"

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"
requires = ["poetry-core", "poetry-dynamic-versioning>=1.0.0,<2.0.0"]
Copy link
Contributor

Choose a reason for hiding this comment

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

How does poetry-dynamic-versioning figure out what version to use? Does it look at a git tag or something?

Copy link
Contributor

@jgadling jgadling left a comment

Choose a reason for hiding this comment

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

I have some questions about how versions are determined, but since this looks like progress, let's give it a shot.

Copy link
Contributor

@jgadling jgadling left a comment

Choose a reason for hiding this comment

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

Errr actually I take that back -- it looks like we need to explicitly install the plugin package in order for it to work properly, according to its readme: https://github.com/mtkennerly/poetry-dynamic-versioning

@ninabernick
Copy link
Collaborator Author

Errr actually I take that back -- it looks like we need to explicitly install the plugin package in order for it to work properly, according to its readme: https://github.com/mtkennerly/poetry-dynamic-versioning

Ah! Good point! I added it to the github workflow for build and push. Do we also need to add it to makefile commands?

Copy link
Contributor

@jgadling jgadling left a comment

Choose a reason for hiding this comment

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

Let's see how this goes!

@ninabernick ninabernick merged commit 012b6e3 into main Jul 31, 2024
4 checks passed
@ninabernick ninabernick linked an issue Aug 1, 2024 that may be closed by this pull request
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.

platformics release versioning
2 participants