renevanosnabrugge / vsts-promotepackage-task

Promote a package in VSTS to a Release View
MIT License
21 stars 25 forks source link

Does this task work on non-windows agents? #57

Open btrepp opened 4 years ago

btrepp commented 4 years ago

Not 100% sure if non-windows OS is supported?

Running through azure devops yaml piplines, with 'ubuntu-latest'. Gives the below.

image

jessehouwing commented 4 years ago

It does not. The task is built with Powershell and the Linux and Mac agents don't support tasks written in powershell as long as Microsoft doesn't add a powershell core executionhandler.

You could add a 2nd job to your pipeline, have it run Windows and do the promotion from there as a workaround.

On Wed, Jun 3, 2020, 07:36 btrepp notifications@github.com wrote:

Not 100% sure if non-windows OS is supported?

Running through azure devops yaml piplines, with 'ubuntu-latest'. Gives the below.

[image: image] https://user-images.githubusercontent.com/262933/83599549-0cb82800-a59f-11ea-8b88-835662cfd290.png

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/renevanosnabrugge/vsts-promotepackage-task/issues/57, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA724S7FC53JKQXJOGPHLILRUXOONANCNFSM4NRKXGJQ .

DeluxZ commented 3 years ago

@jessehouwing Maybe we can add support for PowerShell Core? You can run the 'normal' PowerShell@2 task with the input pwsh: true.

jessehouwing commented 3 years ago

@jessehouwing Maybe we can add support for PowerShell Core? You can run the 'normal' PowerShell@2 task with the input pwsh: true.

No, it's not easy to convert this extension to pwsh-core. The agent initializes the context for the task and for the SDK to work. The agent has 3 modes:

Only the Node/Node10 runtime is supported on non-windows-agents. So to enable this task on Linux, the task needs to be ported to a task host that is cross-platform. Maybe a thin wrapper in Node could in turn invoke pwsh, but that introduces a bunch of new headaches around return codes, error stream handling and such.