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

git tag "latest" behaves in a mutable way. #157

Open
jacobweinstock opened this issue Jan 20, 2023 · 0 comments
Open

git tag "latest" behaves in a mutable way. #157

jacobweinstock opened this issue Jan 20, 2023 · 0 comments

Comments

@jacobweinstock
Copy link
Member

We currently use the git tag of "latest" to point to the top of tree commit. We update(delete and create) this tag with every merged PR. This effectively makes the latest tag mutable.

As far as I understand the latest tag's sole purpose is to enable the creation of a single GitHub release pointing to the top of tree. Deleting and creating the latest tag for every new top of tree commit causes some unexpected behavior for clients interacting with this repo.

I find the creation of a GitHub release pointing to the top of tree to be valuable but I think we should revisit the way in which we generate these releases.

Expected Behaviour

I expect git tags to always point to the same commit.

Current Behaviour

Possible Solution

One possible option could be to create a unique tag for all top of tree commits. Then from there a new GitHub release is created. When a new top of tree commit comes along, we delete the previous top of tree commit tag and the previous GitHub release and start the process over. Create a new unique tag and an associated GitHub release.

Steps to Reproduce (for bugs)

Context

Your Environment

  • Operating System and version (e.g. Linux, Windows, MacOS):

  • How are you running Tinkerbell? Using Vagrant & VirtualBox, Vagrant & Libvirt, on Packet using Terraform, or give details:

  • Link to your project or a code example to reproduce issue:

jacobweinstock added a commit to jacobweinstock/eks-anywhere-build-tooling that referenced this issue Jan 20, 2023
This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
jacobweinstock added a commit to jacobweinstock/eks-anywhere-build-tooling that referenced this issue Jan 23, 2023
This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
eks-distro-bot pushed a commit to aws/eks-anywhere-build-tooling that referenced this issue Jan 23, 2023
* Update for enabling tagged VLAN support in Tinkerbell stack.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Use tag instead of version:

This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Bump tinkerbell chart version

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
jacobweinstock added a commit to jacobweinstock/eks-anywhere-build-tooling that referenced this issue Jan 24, 2023
This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
eks-distro-bot pushed a commit to aws/eks-anywhere-build-tooling that referenced this issue Jan 24, 2023
* Update for enabling tagged VLAN support in Tinkerbell stack.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Use tag instead of version:

This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Update to version of Boots that has vlan support:

This version has the correct iPXE binaries in it.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
nkvetsinski pushed a commit to nkvetsinski/eks-anywhere-build-tooling that referenced this issue Feb 22, 2023
* Update for enabling tagged VLAN support in Tinkerbell stack.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Use tag instead of version:

This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Bump tinkerbell chart version

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
nkvetsinski pushed a commit to nkvetsinski/eks-anywhere-build-tooling that referenced this issue Feb 22, 2023
* Update for enabling tagged VLAN support in Tinkerbell stack.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Use tag instead of version:

This is needed because of an idiosyncrasy of Hook.
The top of tree commit always points to the git tag
of "latest". So our tooling here will find that this
commit hash has an associated git tag. Once the top of
tree commit in Hook changes (i.e. a PR is merged) the
"latest" git tag will not point to this commit has anymore
and we will need to update the back to "commit" instead of
"tag".

Hook tracking issue: tinkerbell/hook#157

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

* Update to version of Boots that has vlan support:

This version has the correct iPXE binaries in it.

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>

Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
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

No branches or pull requests

1 participant