nrwl / nx

Smart Monorepos · Fast CI

Home Page:https://nx.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nx-cloud start-ci-run unable to find dynamic-changesets.yaml

sindresolh opened this issue · comments

Current Behavior

npx nx-cloud start-ci-run --distribute-on=".nx/workflows/dynamic-changesets.yaml"
========================== Starting Command Output ===========================
/usr/bin/bash --noprofile --norc /home/vsts/work/_temp/fc6756d5-57ed-49d6-b65e-d628b34e54fa.sh
Request failed with status code 400

Failed to find dynamic changeset config file in repository: .nx/workflows/dynamic-changesets.yaml
Ensure that the changeset file is named correctly in your distribute-on command and is pushed to the remote repository.
##[error]Bash exited with code '1'.
Finishing: Start nx-cloud ci

Expected Behavior

npx nx-cloud start-ci-run --distribute-on=".nx/workflows/dynamic-changesets.yaml"
========================== Starting Command Output ===========================
/usr/bin/bash --noprofile --norc /home/vsts/work/_temp/1bef6aee-ef11-4379-9949-593b840d67bb.sh
npm warn exec The following package was not found and will be installed: nx-cloud@19.0.0
Finishing: Start nx-cloud ci

GitHub Repo

No response

Steps to Reproduce

Following this guide: https://nx.dev/ci/features/dynamic-agents

  1. Create a file .nx/workflows/dynamic-changesets.yaml with the following content
      distribute-on:
        small-changeset: 3 linux-medium-js
        medium-changeset: 6 linux-medium-js
        large-changeset: 10 linux-medium-js
    
  2. Run this command in a pipeline:
    npx nx-cloud start-ci-run --distribute-on=".nx/workflows/dynamic-changesets.yaml"

Nx Report

Cannot run nx report after pipeline failure since it exits

Failure Logs

No response

Package Manager Version

pnpm --version 9.3.0
Inside azure pipelines

Operating System

  • macOS
  • Linux
  • Windows
  • Other (Please specify)

Additional Information

Worked fine on friday 12. July, but stopped working monday 15. July at 2:00 (UTC)
No changes were made in the repo during the weekend.

Tried to run the pipeline with:
npx nx-cloud start-ci-run --distribute-on="3 linux-medium-js"
It then fails on 'nx build' and 'nx test' with:

NX   Unable to complete a run.

CI execution '356853' failed. Reason: One or more workflows failed. Visit https://nx.dev/ci/recipes/troubleshooting/ci-execution-failed#one-or-more-workflows-failed for more information.

There were no additional error messages when I tried to run 'nx build-my-project --verbose'

I also tried with 5 and 8 agents.

As for now we are using legacy DTE, it seems to work:
npx nx-cloud start-ci-run --distribute-on="manual"

Please let me now if there is more I can do to provide better information for you!

I think we figured it out, by looking at the logs in nx cloud.
it seems to be an issue with the url encoding of spaces in the project name when setting up version control integration.
Our devops project containts spaces, and spaces are url encoded to '+'instead of correctly to '%20'
'%20' is url encoded into '%2520'