dmitryserbin / azdev-release-orchestrator

Azure DevOps extension to manage and orchestrate release pipelines
MIT License
23 stars 13 forks source link

Dropdown selection with variables #43

Closed splusq closed 4 years ago

splusq commented 4 years ago

This task has been so great! We use it heavily.

We came across a minor issue where the Release Definition we pass in a variable like $(Release). This works when the value of this variable are the definition ID. However, if you pass in the release name, even though it actually exists in the dropdown, the task fails. Can this please be fixed?

dmitryserbin commented 4 years ago

Thanks for reporting this.

The task interface uses IDs to fetch subsequent property value in the UI. For example, to get available target definitions in the dropdown menu you need to know project ID. This means we stuck with IDs to enable dropdown menu auto-complete, otherwise it won't work. Nice for classic release pipelines, but not so convenient for YAMLs.

The root cause is Azure DevOps task API limitation (last time I checked at least), and I already did a few attempts trying workaround this, but none successful. The best option I got so far (more like a hack) is to introduce an optional boolean parameter to force task using names instead of IDs for target project, definition and release. May work fine with YAML pipelines, but will be quite ugly in the classic pipeline interface.

I might give it another go and try to solve this problem one more time - I don't like having IDs in my YAMLs either. Will keep you updated.

dmitryserbin commented 4 years ago

This will be addressed in the next release.