Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,368,408
Community Members
 
Community Events
168
Community Groups

Version increment for the dll files

Hello team,

 

Is there any plugin or parameter in Bamboo through which we can do the version increment of the different files like dlls along with the build.

 

Regards,

Atul

1 answer

1 accepted

0 votes
Answer accepted

We dug into the issue and found that like the Jenkins, Bamboo doesn't offer any plugin for the version increment for the dll files. Although you can make the script using PowerShell or bash for the version increment. Remember to use proper variables while using Bamboo yaml. We used Bamboo specs for setting up our pipelines.

 

Here is our script for the reference,

 

dir -Path $bamboo_build_working_directory -Filter AssemblyInfo.cs -Recurse | %{$_.FullName} >> assemblyfiles.txt
(Get-Content -Path assemblyfiles.txt) -notmatch "ExternalComponents" -notmatch "ThirdPartyLibraries" | Out-File assemblyfiles.txt
$BUILD_NUMBER= "2.1.0.$Env:bamboo_buildNumber"

ForEach ($system in Get-Content "assemblyfiles.txt")
{

## Replace the variables with the verions values

Get-Content -Path $system | Select-String -Pattern 'assembly: AssemblyVersion' -CaseSensitive | Select-String -Pattern '// \[assembly: AssemblyVersion' -CaseSensitive -notmatch > assemblyversion.txt
Get-Content -Path $system | Select-String -Pattern 'assembly: AssemblyFileVersion' -CaseSensitive > assemblyfileversion.txt
$ASEMBLY_VERSION=Get-Content -Path assemblyversion.txt |%{"$($_.Split('"')[01])"} | Foreach-Object { $_ -replace "\s", ""} { $_ -replace "\*","123"} | where-object {$_}
$ASSEMBLY_FILE_VERSION=Get-Content -Path assemblyfileversion.txt |%{"$($_.Split('"')[01])"} | Foreach-Object { $_ -replace "\s", ""} | where-object {$_}
$fileNames = Get-ChildItem $system -Recurse |
select -expand fullname

foreach ($filename in $filenames)
{
( Get-Content $fileName) | Foreach-Object { $_ -replace "$ASEMBLY_VERSION", "$BUILD_NUMBER" } | Set-Content $fileName
( Get-Content $fileName) | Foreach-Object { $_ -replace "$ASSEMBLY_FILE_VERSION", "$BUILD_NUMBER" } | Set-Content $fileName
}

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events