Skip to content

Can't reference environment variables on AppVeyor with GitVersion 5.1.3 #1938

@Caleb9

Description

@Caleb9

Hi, I have a YAML script for building application on AppVeyor. GitVersion is used to calculate the version. It used to work fine in 4.0.0, but doesn't seem to in the new version. I tested this with 5.1.3-beta1-29 (although the behavior is the same on previous 5.x.x releases, basically everything more recent than 4.0.0).

Here's the log when using GitVersion 4.0.0. First I'm outputting GitVersion's version (4.0.0) for debugging. Then GitVersion is executed with gitversion /verbosity warn /l console /output buildserver /nofetch /b %APPVEYOR_REPO_BRANCH%. As the last thing, on the bottom of the log, I'm doing echo $Env:GitVersion_SemVer which outputs the calculated sem-ver correctly.

gitversion /version
4.0.0+Branch.master.Sha.e715eb5dd515037d90a257f527e62442cae8c1c5
echo *** Calculating semantic version ***
*** Calculating semantic version ***
gitversion /verbosity warn /l console /output buildserver /nofetch /b %APPVEYOR_REPO_BRANCH%
Executing GenerateSetVersionMessage for 'AppVeyor'.
Set AppVeyor build number to '2.1.0-gitversion-update.1+2'.
Executing GenerateBuildLogOutput for 'AppVeyor'.
Adding Environment Variable. name='GitVersion_Major' value='2']
Adding Environment Variable. name='GitVersion_Minor' value='1']
Adding Environment Variable. name='GitVersion_Patch' value='0']
Adding Environment Variable. name='GitVersion_PreReleaseTag' value='gitversion-update.1']
Adding Environment Variable. name='GitVersion_PreReleaseTagWithDash' value='-gitversion-update.1']
Adding Environment Variable. name='GitVersion_PreReleaseLabel' value='gitversion-update']
Adding Environment Variable. name='GitVersion_PreReleaseNumber' value='1']
Adding Environment Variable. name='GitVersion_BuildMetaData' value='2']
Adding Environment Variable. name='GitVersion_BuildMetaDataPadded' value='0002']
Adding Environment Variable. name='GitVersion_FullBuildMetaData' value='2.Branch.feature/gitversion-update.Sha.c500102f4f9f8f9a758cb2d6cd0c40d40bbbb300']
Adding Environment Variable. name='GitVersion_MajorMinorPatch' value='2.1.0']
Adding Environment Variable. name='GitVersion_SemVer' value='2.1.0-gitversion-update.1']
Adding Environment Variable. name='GitVersion_LegacySemVer' value='2.1.0-gitversion-update1']
Adding Environment Variable. name='GitVersion_LegacySemVerPadded' value='2.1.0-gitversion-updat0001']
Adding Environment Variable. name='GitVersion_AssemblySemVer' value='2.1.0.0']
Adding Environment Variable. name='GitVersion_AssemblySemFileVer' value='2.1.0.0']
Adding Environment Variable. name='GitVersion_FullSemVer' value='2.1.0-gitversion-update.1+2']
Adding Environment Variable. name='GitVersion_InformationalVersion' value='2.1.0-gitversion-update.1+2.Branch.feature/gitversion-update.Sha.c500102f4f9f8f9a758cb2d6cd0c40d40bbbb300']
Adding Environment Variable. name='GitVersion_BranchName' value='feature/gitversion-update']
Adding Environment Variable. name='GitVersion_Sha' value='c500102f4f9f8f9a758cb2d6cd0c40d40bbbb300']
Adding Environment Variable. name='GitVersion_ShortSha' value='c500102']
Adding Environment Variable. name='GitVersion_NuGetVersionV2' value='2.1.0-gitversion-updat0001']
Adding Environment Variable. name='GitVersion_NuGetVersion' value='2.1.0-gitversion-updat0001']
Adding Environment Variable. name='GitVersion_NuGetPreReleaseTagV2' value='gitversion-updat0001']
Adding Environment Variable. name='GitVersion_NuGetPreReleaseTag' value='gitversion-updat0001']
Adding Environment Variable. name='GitVersion_CommitsSinceVersionSource' value='2']
Adding Environment Variable. name='GitVersion_CommitsSinceVersionSourcePadded' value='0002']
Adding Environment Variable. name='GitVersion_CommitDate' value='2019-11-26']
echo $Env:GitVersion_SemVer
2.1.0-gitversion-update.1

Now the same thing for 5.1.3-beta1-29:

gitversion /version
5.1.3-beta.1+29.Branch.master.Sha.4ef26270d1c944bb38f1c38a6144b3ce8ed76039
echo *** Calculating semantic version ***
*** Calculating semantic version ***
gitversion /verbosity warn /l console /output buildserver /nofetch /b %APPVEYOR_REPO_BRANCH%
Executing GenerateSetVersionMessage for 'AppVeyor'.
Set AppVeyor build number to '2.1.0-gitversion-update.1+17'.
Executing GenerateBuildLogOutput for 'AppVeyor'.
Adding Environment Variable. name='GitVersion_Major' value='2']
Adding Environment Variable. name='GitVersion_Minor' value='1']
Adding Environment Variable. name='GitVersion_Patch' value='0']
Adding Environment Variable. name='GitVersion_PreReleaseTag' value='gitversion-update.1']
Adding Environment Variable. name='GitVersion_PreReleaseTagWithDash' value='-gitversion-update.1']
Adding Environment Variable. name='GitVersion_PreReleaseLabel' value='gitversion-update']
Adding Environment Variable. name='GitVersion_PreReleaseNumber' value='1']
Adding Environment Variable. name='GitVersion_WeightedPreReleaseNumber' value='30001']
Adding Environment Variable. name='GitVersion_BuildMetaData' value='17']
Adding Environment Variable. name='GitVersion_BuildMetaDataPadded' value='0017']
Adding Environment Variable. name='GitVersion_FullBuildMetaData' value='17.Branch.feature-gitversion-update.Sha.3043e767da7518f58cef06bbb2cf86d5c323ef86']
Adding Environment Variable. name='GitVersion_MajorMinorPatch' value='2.1.0']
Adding Environment Variable. name='GitVersion_SemVer' value='2.1.0-gitversion-update.1']
Adding Environment Variable. name='GitVersion_LegacySemVer' value='2.1.0-gitversion-update1']
Adding Environment Variable. name='GitVersion_LegacySemVerPadded' value='2.1.0-gitversion-updat0001']
Adding Environment Variable. name='GitVersion_AssemblySemVer' value='2.1.0.0']
Adding Environment Variable. name='GitVersion_AssemblySemFileVer' value='2.1.0.0']
Adding Environment Variable. name='GitVersion_FullSemVer' value='2.1.0-gitversion-update.1+17']
Adding Environment Variable. name='GitVersion_InformationalVersion' value='2.1.0-gitversion-update.1+17.Branch.feature-gitversion-update.Sha.3043e767da7518f58cef06bbb2cf86d5c323ef86']
Adding Environment Variable. name='GitVersion_BranchName' value='feature/gitversion-update']
Adding Environment Variable. name='GitVersion_Sha' value='3043e767da7518f58cef06bbb2cf86d5c323ef86']
Adding Environment Variable. name='GitVersion_ShortSha' value='3043e76']
Adding Environment Variable. name='GitVersion_NuGetVersionV2' value='2.1.0-gitversion-updat0001']
Adding Environment Variable. name='GitVersion_NuGetVersion' value='2.1.0-gitversion-updat0001']
Adding Environment Variable. name='GitVersion_NuGetPreReleaseTagV2' value='gitversion-updat0001']
Adding Environment Variable. name='GitVersion_NuGetPreReleaseTag' value='gitversion-updat0001']
Adding Environment Variable. name='GitVersion_VersionSourceSha' value='99da305df4208fc451b6a73c4000313680b82378']
Adding Environment Variable. name='GitVersion_CommitsSinceVersionSource' value='17']
Adding Environment Variable. name='GitVersion_CommitsSinceVersionSourcePadded' value='0017']
Adding Environment Variable. name='GitVersion_CommitDate' value='2019-11-26']
echo $Env:GitVersion_SemVer

The last echo command does not output anything. Further on (not included above) when I'm trying to use GitVersion_SemVer variable I'm getting

GitVersion_SemVer : The term 'GitVersion_SemVer' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct 
and try again.

which indicates that AppVeyor is not able to resolve the variable when using GitVersion 5.1.3.

So it seems GitVersion can calculate the version number correctly, but fails to add the variables to environment?

Couple of extra details. We're running "Visual Studio 2019" image on AppVeyor, and the application is developed in .NET Core 3.0, although I observed similar problems for .NET Framework 4.7.2 project, if that's relevant.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions