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

[ISSUE]: Azure Pipelines failing GitVersion 6.1 (no GitTools v4 released) #1378

Open
2 tasks done
connorjs opened this issue Dec 9, 2024 · 13 comments
Open
2 tasks done
Labels
Milestone

Comments

@connorjs
Copy link

connorjs commented Dec 9, 2024

Edit: Active recommendation: Pin version 6.0.5 and use a tool like RenovateBot to handle updates.

- versionSpec: 6.x
+ versionSpec: 6.0.5

Prerequisites

  • I have written a descriptive issue title
  • I have searched issues to ensure it has not already been reported

GitVersion package

AzureDevops task

What are you seeing?

I see the error message

##[error]Version spec '6.x' resolved as '6.1.0' does not satisfy the range '>=5.2.0 <6.1.0'.See https://github.com/GitTools/actions/blob/main/docs/versions.md for more information.

That page (link) shows that I should be able to use GitTools 3.x, but maybe that I need 4.x

At time of writing, 4.x does not exist for ADO: https://marketplace.visualstudio.com/items?itemName=gittools.gittools&ssr=false#overview.

Version | 3.0.3.24112005
Last updated | 11/20/2024, 12:13:29 AM

What is expected?

I expect that my pipeline using GitVersion 6.x does not require a GitTools upgrade. (It was working, now it is broken with minor version release.) If this is not expected, please update documentation, at least the linked page.

Second, I expect that GitTools 4.x is available on Azure DevOps.

Steps to Reproduce

Something like

  1. Have an Azure DevOps project.
  2. Search marketplace for GitTools. See that no 4.x exists.
  3. Create an ADO pipeline, using GitVersion with versionSpec 6.x. See it fail.

Output log or link to your CI build (if appropriate).

N/A
@arturcic
Copy link
Member

arturcic commented Dec 9, 2024

v4 is not yet released, and 6.1.0 cannot be used yet. For now please use v6.0.5 as it's not that different in terms of functionality. 6.1.0 it's just dropping .net 6.0 and adding .net 9.0.

@arturcic
Copy link
Member

arturcic commented Dec 9, 2024

There is one issue I need to fix before releasing v4

@connorjs
Copy link
Author

connorjs commented Dec 9, 2024

Thank you.

I have updated our primary pipeline to use

- versionSpec: 6.x
+ versionSpec: 6.0.5

If possible, it would be helpful to learn why we needed a new GitTools version for underlying minor version change. Maybe it upgraded the .NET runtime? (I'm mostly wondering if I should use 6.x in the future, like I always used 5.x or if that is wrong.)

But this latter part can wait. Thank you for the prompt response and thank you for your contributions to GitTools!!

@arturcic
Copy link
Member

arturcic commented Dec 9, 2024

I would recommend to have a specific version pinned like 6.0.5 (like major.minor.patch) to avoid any potential issues and have a tool like dependabot or renovate automatically creating PRs with new version as they appear. The reason for that is those PRs will fail if there is anything wrong with the task/tool and that is not breaking the main pipelines. You merge only there is a successful build. So I'd avoid using 6.x.

A new GitTools version will be released whenever there is a new minor or major version of GitVersion or GitReleaseManager tools that require changes, or there are changes to the supported Agent versions for Azure Pipelines or GitHub Actions, or nodejs versions.

@arturcic
Copy link
Member

arturcic commented Dec 9, 2024

I will try my best documenting the versions.md file with the current and planned changes (that's why you see v4 which is planned)

@chiptech-mitchell
Copy link

Based on the documentation, shouldn't any 3.x version of GitTools/actions support GitVersion 6.1.0? The error message in this ticket: ##[error]Version spec '6.x' resolved as '6.1.0' does not satisfy the range '>=5.2.0 <6.1.0' seems to reference the range for 2.x versions of GitTools/actions. Is this correct, or am I misunderstanding something?

@arturcic
Copy link
Member

I will fix version file, it should be '>=5.2.0 <6.1.0' for version v3

@tjmoore
Copy link

tjmoore commented Dec 16, 2024

This is a breaking change which breaks actions that were working before without any code changes.

i.e. our actions are now breaking, but they were working fine. We've made no changes, our actions just specify:

    - name: Install GitVersion
      uses: gittools/actions/gitversion/setup@v3.0.0
      with:
        versionSpec: '6.x'

@arturcic
Copy link
Member

This is a breaking change which breaks actions that were working before without any code changes.

i.e. our actions are now breaking, but they were working fine. We've made no changes, our actions just specify:

    - name: Install GitVersion
      uses: gittools/actions/gitversion/setup@v3.0.0
      with:
        versionSpec: '6.x'

Please change to 6.0.x

@StephanBis
Copy link

This is a breaking change which breaks actions that were working before without any code changes.
i.e. our actions are now breaking, but they were working fine. We've made no changes, our actions just specify:
- name: Install GitVersion
uses: gittools/actions/gitversion/setup@v3.0.0
with:
versionSpec: '6.x'

Please change to 6.0.x

As others said, this is a breaking change. All of our pipelines are failing because a breaking change was introduced without a major version bump. The fix is simple, but spread out over various (critical) pipelines could have a big impact!

@timmkrause
Copy link

This is a breaking change which breaks actions that were working before without any code changes.
i.e. our actions are now breaking, but they were working fine. We've made no changes, our actions just specify:
- name: Install GitVersion
uses: gittools/actions/gitversion/setup@v3.0.0
with:
versionSpec: '6.x'

Please change to 6.0.x

As others said, this is a breaking change. All of our pipelines are failing because a breaking change was introduced without a major version bump. The fix is simple, but spread out over various (critical) pipelines could have a big impact!

So you did a critical dependency analysis on picking this dependency or is your company financially supporting the project? What is your point? Just fix it and wait for the release I'd say.

@connorjs
Copy link
Author

I also would like to discuss the major version relationship, but I figured discussing after GitTools v4 landed on AzureDevOps might be more productive.

For now, I am taking #1378 (comment) as the official recommendation (regardless of whether or not I agree).

@arturcic
Copy link
Member

I also would like to discuss the major version relationship, but I figured discussing after GitTools v4 landed on AzureDevOps might be more productive.

For now, I am taking #1378 (comment) as the official recommendation (regardless of whether or not I agree).

Please open a discussion and we can discuss the options. Just don't forget to take in consideration we have Gitversion, GitReleaseManager, nodejs and Azure Pipelines agent versions that need to be maintained

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants