OctopusDeploy / OctoTFS

| Public | Octopus extensions for Azure DevOps, TFS, VSTS, and VSO
https://marketplace.visualstudio.com/items?itemName=octopusdeploy.octopus-deploy-build-release-tasks
Other
0 stars 42 forks source link

Update Octo TFS to support spaces nicely #137

Closed robpearson closed 5 years ago

robpearson commented 5 years ago

Note: This summary has been substantially rewritten July 4 by @thedewi to reflect changes in direction and new features and fixes.

The current TFS plugin doesn't fully support spaces. This PR:

Fixes #135. Fixes #136.

Because this turned into a significant branch, this PR addresses some other issues:

Notes

To support a richer UI, this package now includes v3 tasks for compatibility, and v4 tasks to better support new features like Spaces, richer dropdowns, etc.

Tests

Overall goal is to add the enhancements and not break anyone existing builds.

Broad Tests against Azure DevOps online.

Rob created broad tests hitting a mixture of servers:

Octopus 2018.x - No spaces Octopus 2019.1.x - Supports spaces but I removed the default space and didn't set a new one. Octopus 2019.2.x - Supports spaces fully and it has a default spaces numerous other ones.

2019-04-08_14-17-49

Regression Tests

Rob's general approach to regression tests was to test against the following:

This included build processes for each scenario that did the following:

Builds were created as per the above and successfully deployed to Octopus, then upgraded to the latest plugin and re-tested. Then updated to opt-in to use Spaces fully using the new UI.

Regression tests against TFS 2017 Update 1

2019-04-08_10-48-02

Regression tests against Azure Devops Server vLatest

2019-04-08_10-53-30

mudra-octopus commented 5 years ago

Consider removal of checkbox Octopus Server has Spaces? for older versions that doesn’t support spaces. i.e. Octopus 2018.2.8. Not sure if we can detect Octopus Deploy server version somehow and control the UI checkbox display. image

mudra-octopus commented 5 years ago

The Space tooltip text is The space name within Octopus. You can leave this blank to use the default space. We may not be able to leave space blank if we have selected Octopus Server has Spaces? option. image

mudra-octopus commented 5 years ago

Spaces dropdown should be mandatory once Octopus Server has Spaces? checkbox is ticked for all tasks in newer Octopus Deploy versions. It is currently a bit inconsistent on different task pages. image

mudra-octopus commented 5 years ago

Project dropdown will be empty when an Octopus Deploy server will be selected with no default space option selected and Create Release in Space option not selected. image

Will it make easier for user to have a message saying Select appropriate space if applicable or something.

mudra-octopus commented 5 years ago

Create Release in Space is unselected and View YAML has DeploymentProgressInSpace: true. Which selection is DeploymentProgressInSpace is this referring to ?

image image

thedewi commented 5 years ago

I have rewritten the summary (top) to reflect changes in direction.