aws-toolkit-azure-devops icon indicating copy to clipboard operation
aws-toolkit-azure-devops copied to clipboard

Does node16 need to be added "Node runner update guidance for Azure Pipelines task authors"?

Open hansterwal opened this issue 1 year ago • 6 comments

Hi,

First of this is more of a question than a bug.

Our concern is that tasks will start to fail when the support for the node10 runner is dropped as with the node 6 runner prior which was fixed with version 1.1.3.0 . Microsoft released the following call to action last year:

To ensure tasks that use a Node runner remain working on the Azure Pipelines agent, task authors need to update Node dependent tasks to use the Node 16 runner.

As Microsoft Hosted agents and various Azure DevOps Server versions have different lifecycles, there can be different Node runner versions installed depending on where a task is running. To be able to run the same task on agents with different Node runner versions, task.json can contain multiple execution sections:

Copy

 "execution": {
    "Node10": {
      "target": "bash.js",
      "argumentFormat": ""
    },
    "Node16": {
      "target": "bash.js",
      "argumentFormat": ""
    }

In the above example, Azure Pipeline agents which include the Node 16 runner will choose it by default, and those which don’t will fall back to the Node 10 implementation."

Reference to call to action

Is this something to be worried about?

hansterwal avatar Mar 28 '24 13:03 hansterwal

Just had this issue with the azure-pipelines-agent v3.238.0 (which is the latest version per now).

##[error]This step requires a node version that does not exist in the agent filesystem. Path: /opt/azure-pipelines-agent/externals/node10/bin/node

The failing task was AWSShellScript@1, but I assume all tasks will be affected. You'll probably need to add in Node16 like suggested, and update all tasks like you did in #454.

yaunj avatar Apr 23 '24 10:04 yaunj

I did some more checking, and for now, node10 is only removed from the "Alternate Agent Downloads" release for 3.238.0 (pipelines-agent, not vsts-agent), so currently it's only affecting users who chose the pipelines agent over the vsts agent to avoid running node6.

yaunj avatar Apr 29 '24 13:04 yaunj

@hansterwal @yaunj thanks for bringing this to our attention. I'm taking a look into this + #551. Will update with more details as they come.

rbbarad avatar May 06 '24 20:05 rbbarad

Any update on this @rbbarad?

yaunj avatar Jul 03 '24 19:07 yaunj

Approved the PR. Aiming to release this next week. Thanks for your contribution!

rbbarad avatar Jul 18 '24 20:07 rbbarad

Supporting Node 16 migration requires updating azure-pipelines-task-lib dependency (see https://github.com/aws/aws-toolkit-azure-devops/pull/560). We are currently blocked from doing this due to an issue with bundling azure-pipelines-task-lib's shelljs dependency (see description in https://github.com/aws/aws-toolkit-azure-devops/pull/539 for more details).

We've temporarily reverted PR #551 (https://github.com/aws/aws-toolkit-azure-devops/pull/560) as we investigate a workaround for this issue.

rbbarad avatar Aug 02 '24 17:08 rbbarad

Good evening @rbbarad, Any update on the status of your investigation? Any help needed?

stefanfreitag avatar Oct 27 '24 18:10 stefanfreitag

Pipelines are now throwing warnings due to node version

##[warning]Task 'AWS CLI' version 1 (AWSCLI@1) is dependent on a Node version (10) that is end-of-life. Contact the extension owner for an updated version of the task. Task maintainers should review Node upgrade guidance: https://aka.ms/node-runner-guidance

##[warning]Task 'AWS Shell Script' version 1 (AWSShellScript@1) is dependent on a Node version (10) that is end-of-life. Contact the extension owner for an updated version of the task. Task maintainers should review Node upgrade guidance: https://aka.ms/node-runner-guidance

bfeliano avatar Nov 04 '24 15:11 bfeliano

same here , even after updating AWSCLI1 to 2 , issue is still arising @rbbarad any suggestions

sameerahmed720 avatar Nov 05 '24 04:11 sameerahmed720

https://github.com/aws/aws-toolkit-azure-devops/pull/581

justinmk3 avatar Dec 12 '24 21:12 justinmk3