Releases: OctopusDeploy/OctoTFS
v5.2.131
v5.0.109
Smaller vsix package
The VSIX package has recently been growing and growing and this prevented customers from installing it in on-premise older version of TFS.
In this release, we have put the package on a diet without any loss of functionality and made it much smaller, the package is now standing at 23 MB.
v5.0.66
"Package Application for Octopus" task v4 is back
After listening to all our customers about the previous deprecation notice on this task, we are bringing it back.
We understand changing existing pipelines is difficult. Thank you for the amazing feedback.
We are still displaying a warning about its usage but hopefully not as scary as before.
##[warning]This task is supported, but it no longer actively maintained.
It was originally created for the Octopus CLI when Octopus Deploy only supported NuGet packages.
It is recommended to migrate to the built-in 'Archive Files' task (https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/utility/archive-files).
Alternatively, if NuGet package metadata is required, consider using the 'NuGet' task (https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget) or the 'dotnet pack' task (https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli).
Support wildcards in OctoInstaller task
As part of the v5 release, we've removed the option of specifying latest
for the OctopusCli installer task as its version.
We are "kind of" bringing it back but with a lot more options.
So you can now specify the following formats:
8.*
=> Install latest in major version;7.3.*
=> Install latest in major and minor version;8.0.1
=> Install exact version;*
=> Install whatever is latest;
To migrate from latest
, just replace it with *
.
v5.0.57
v5 tasks released
A new major version of all the tasks has been released.
Octopus CLI installer task
Up till v4 of this extension we have been shipping as part of the vsix extension the embedded version of OctopusCLI.
This has the benefit of letting the user use our tasks without having to remember to install the OctopusCLI beforehand.
However this is also an antipattern,
- It locks customers on a specific version of OctopusCLI
- It makes the vsix package larger and therefore very difficult to keep it under the 25MB limit of TFS 2018
- It is not what MS recommends, see https://github.com/microsoft/azure-pipelines-tool-lib/blob/master/docs/overview.md
- It requires .NET Core 2.0/3.1 to be installed on the agent
So in v5 the Octopus CLI Installer task downloads a self-contained (not dependant on .Net Core being installed on the agent) version of the Octopus CLI. We also continue to support having the Octopus CLI pre-installed in the agent, added to the PATH environment variable and also listed in the capabilities of the agent (for on-prem).
A typical v5 pipeline looks like this now:
steps:
- task: OctoInstaller@5
displayName: Install Octopus CLI tool
inputs:
version: $(cliVersion)
- task: ArchiveFiles@2
displayName: Package TestProject
inputs:
rootFolderOrFile: $(Build.Repository.LocalPath)
archiveFile: $(Build.ArtifactStagingDirectory)/MyPackage.$(Build.BuildNumber).zip
- task: OctopusPush@5
displayName: Push Packages to Octopus
inputs:
OctoConnectedServiceName: 'Octopus Server'
Space: $(space)
Package: $(Build.ArtifactStagingDirectory)/MyPackage.$(Build.BuildNumber).zip
Replace: 'true'
- task: OctopusCreateRelease@5
displayName: Create Octopus Release
inputs:
OctoConnectedServiceName: 'Octopus Server'
Space: $(space)
ProjectName: 'Test Project'
ReleaseNumber: $(Build.BuildNumber)
Remove Task, "Package Application for Octopus"
The task entitled "Package Application for Octopus" or "OctopusPack" packages an application into a NuGet package or a ZIP archive.
This task was created and supported through the Octopus CLI back when Octopus Deploy only supported NuGet packages.
At that time, it wasn't easy to package applications as NuGet packages. Later, we added support for ZIP archives, tarballs, etc. Eventually, the need/use for this task diminished due to alternatives like dotnet pack
.
Packaging applications is different from producing artifacts to be consumed by development tools like nuget.
Migrating from "Package Application for Octopus"
The recommended path forward is to replace this task with the Archive Files task.
Here is an example of how it would look like
Before:
After:
Allow users to add Release Notes as part of CreateRelease task
In V3 we used to support adding "custom release notes"
Then in V4 we decided to deprecate that feature in favour of the "Build Information" task
However Build Information is not for everyone, and some customers want to just add "Release Notes" to a release in textual format.
So in V5 we have removed the "ChangeSets and Workitems" but left the text field to add Release notes.
This means users can just type their release notes in the field to be included in the release.
This means users need to make a choice about release notes, they can include them manually, or use the "Build Information" task.
v4.3.27
No more Node6 warnings in our tasks
##[warning]This task uses Node 6 execution handler, which will be deprecated soon. If you are the developer of the task — please consider the migration guideline to Node 10 handler — https://aka.ms/migrateTaskNode10. If you are the user — feel free to reach out to the owners of this task to proceed on migration.
This release ensures all our tasks run on Node10.
Both V3 and V4 tasks have been updated to run on Node10 as per these instructions.
Deprecation messages on older trask versions
As part of this release we have started warning users about new task versions.
0.6.0
Using SYSTEM_DEFAULTWORKINGDIRECTORY for temporary files. This will enable the extension to work in both Build and Release.