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

ci: Implement Semantic Versioning for Docker Image Deployment #3474

Open
wants to merge 2 commits into
base: dev
Choose a base branch
from

Conversation

yuvraj-wale
Copy link

Added major/minor tags support for docker image workflow.

linked to issue #1957

All Submissions:

  • Contributions should target the dev branch. Did you create your branch from dev?
  • Have you followed the guidelines in our Contributing document?
  • Have you checked to ensure there aren't other open Pull Requests for the same update/change?

.github/workflows/docker-image.yml Show resolved Hide resolved
.github/workflows/docker-image.yml Show resolved Hide resolved
id: version
run: |
FULL_VERSION=${{ steps.vars.outputs.tag }}
MAJOR_VERSION=$(echo $FULL_VERSION | cut -d '.' -f 1)
Copy link
Member

@timvisee timvisee Jan 30, 2024

Choose a reason for hiding this comment

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

Thank you for elaborating on the other comments!

Before I approve, I have a final thing to decide on. I wonder if we should remove major version tagging.

I don't think it makes much sense based on our current releases. What do you think?

Maybe @generall has a good opinion on this.

Copy link
Author

Choose a reason for hiding this comment

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

Yes makes sense, but I feel maintaining major tags is a standard practice & usually beneficial long-term. Your call, though.

DOCKERHUB_TAG_LATEST="qdrant/qdrant:latest"
TAGS="-t ${DOCKERHUB_TAG} -t ${DOCKERHUB_TAG_LATEST}"
TAGS="-t ${DOCKERHUB_TAG} -t ${DOCKERHUB_TAG_MAJOR} -t ${DOCKERHUB_TAG_MINOR} -t ${DOCKERHUB_TAG_LATEST}"
Copy link
Contributor

Choose a reason for hiding this comment

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

Before we can merge this, I believe we first need to update our logic in cloud.qdrant.io (link to a private repo): https://github.com/qdrant/qdrant-cloud-cluster-api/blob/6d759e0d5293c99e8ceb0db9e9ce035a8c1b2ad6/cluster_api/cluster/util.py#L75-L82

Our code currently will grab the first-listed image that has the same sha256 digest as the "latest" image, and only lets people deploy that version of Qdrant for new clusters, which is a bit naive. We'd need to make the code ignore any images that don't strictly match vX.Y.Z.

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.

None yet

4 participants