Azure / azure-cli-extensions

Public Repository for Extensions of Azure CLI.
https://docs.microsoft.com/en-us/cli/azure
MIT License
382 stars 1.23k forks source link

Node applications deployed to Polyglot Enterprise Tier apps hang because of the node_modules folder being operated on #6346

Open Ajsalemo opened 1 year ago

Ajsalemo commented 1 year ago

Describe the bug

Note: Spoke with Yuwei Zhou on the Spring Apps product team separately about this and was advised to file a bug report about this.

Preface: this is not customer reported - this is behavior I've came across while testing some things.

When deploying a React application (but really, this would be for any application with node_modules) - we are looping over the entirety of the node_modules directory on this line here: https://github.com/Azure/azure-cli-extensions/blob/main/src/spring-cloud/azext_spring_cloud/_utils.py#L78

This is even with node_modules in .gitignore. I've tried multiple Glob patterns (ideally, we shouldn't have to do this), only some seem to have any difference, then it enters this line: https://github.com/Azure/azure-cli-extensions/blob/main/src/spring-cloud/azext_spring_cloud/_utils.py#L74

Output looks something like this when --debug is added to the AZ CLI: _cli.azext_spring._utils: .gitignore: no rule for 'nodemodules/.bin/css-blank-pseudo.cmd'. parent ignore 'False'

(this repeats for every single file under node_modules - and is what is causing this behavior. Obviously, if we have thousands or more of files under node_modules, this effectively has the deployment go on indefinitely)

I realize this also checks for everything in the project directory (not just node_modules). But when node_modules is present (locally), the command won't move past cli.azext_spring._buildservices_factory: [2/5] Uploading package to blob. until I'm assuming this is fully looped over.

Without --debug, it just hangs (due to the above still)

When I delete node_modules out of my local, this pretty much completes deployments in 1 or 2 minutes on average.

I tried looking through this code to see if i'm missing something obvious. Tried testing with .dockerignore (based on what that code may be looking for and having !.gitignore) but no luck.

Reference docs: https://learn.microsoft.com/en-us/azure/spring-apps/how-to-enterprise-deploy-static-file#sample-code

Related command

az spring app deploy --resource-group "your-rg" --service "your-asa-enterprise" --name "your-asa-e-react-1" --source-path "./" --build-env BP_WEB_SERVER=nginx BP_WEB_SERVER_ROOT=build

az spring app deploy --resource-group "your-rg" --service "ypir-asa-enterprise" --name "ansalemo-asa-e-react-1" --source-path "./" --build-env BP_WEB_SERVER=nginx BP_WEB_SERVER_ROOT="build" BP_NODE_RUN_SCRIPTS=build BP_WEB_SERVER_ENABLE_PUSH_STATE="true" --builder=webserver --verbose

This should be reproable for any application that uses node_modules.

Errors

No errors - just behavior that causes the deployment to essentially not succeed until node_modules is looped over in it's entirety.

Issue script & Debug output

Adding only what's relevant below. We hit the ignore rule with project folders, but 99% of this is to due with node_modules, I CTRL+C'd this early on since it goes on forever:

cli.azext_spring._buildservices_factory: [2/5] Uploading package to blob. cli.azext_spring._utils: Packing source code into tar to upload... cli.azext_spring._utils: .gitignore: no rule for ''. parent ignore 'False' cli.azext_spring._utils: Excluding '.git' based on default ignore rules cli.azext_spring._utils: .gitignore: no rule for '.git/COMMIT_EDITMSG'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/config'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/description'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/HEAD'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/applypatch-msg.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/commit-msg.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/fsmonitor-watchman.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/post-update.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-applypatch.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-commit.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-merge-commit.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-push.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-rebase.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-receive.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/prepare-commit-msg.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/push-to-checkout.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/update.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/index'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/info'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/info/exclude'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/HEAD'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/refs'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/refs/heads'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/refs/heads/master'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/00'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/00/ebbddef9c1478c9a907bd80f4033fdf979e954'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/08'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/08/0d6c77ac21bb2ef88a6992b2b73ad93daaca92'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/0d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/0d/72acd9ed7d8fcea87928ae8c4ba9dd8a46fe32'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/10'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/10/38300f4fa4e99a3dd463488b94eeb465edb93a'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1d/f40b104c9e3905f832cb0cbffff53a5acdcb4a'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1f/03afeece5ac28064fa3c73a29215037465f789'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/37'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/37/845757234ccb68531c10cf7a2ffc589c47e342'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/45'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/45/7ba4c9a0388cfe6d4192e82838f4b0fb13a66f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/45/7e2489a0bc59f796e2468c05b327a9088ddc89'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4d/29575de80483b005c29bfcac5061cd2f45313e'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4f/fe476ba9ae785db9151f4b3b56db2cdaa5d27b'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/52'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/52/53d3ad9e6be6690549cb255f5952337b02401d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/69'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/69/21972b409949127c10dcfe43eba2014e7cabf1'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/6f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/6f/8ebac3c238699a0b4f31e99b2acd8db454396f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/74'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/74/b5e053450a48a6bdb4d71aad648e7af821975c'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/77'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/77/dd5aeccd6e5684e747921955f62beb49e92bf2'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/7b'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/7b/1e172334cdc980bee9ad6a8a87cf21e0ed18d8'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8e'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8e/29b36dea7f04ae8729d8b33ecc05c3c9b0fe46'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8f/2609b7b3e0e3897ab3bcaad13caf6876e48699'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8f/8225c31b7bb25e6c3350c1c1288cba8ae8b000'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/98'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/98/97f4c4c576344a52120ee1fb070c52ee802ccb'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9c'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9c/6a7a92e86d00177109f02470b23cbbea07fe53'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9d/fc1c058cebbef8b891c5062be6f31033d7d186'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a1'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a1/1777cc471a4344702741ab1c8a588998b1311a'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a4'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a4/e47a6545bc15971f8f63fba70e4013df88a664'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a9'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a9/deb3602a8d6f83f0396dd94001b9bb8ff0fa66'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/aa'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/aa/069f27cbd9d53394428171c3989fd03db73c76'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ad'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ad/5566fd97b345a689b3b10745ca9cafdaaee758'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/b7'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/b7/22e9e13efe92c42cb81327fd1f1438a255e922'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c0/541f9c04d53a61a27e1ca3e471b1b1c9711498'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c2'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c2/0f316f7e5bed3db5b561434875384e59799ae7'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c2/6bcf37d45618f07d39a0ed7379aa5337be9b7b'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c7'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c7/68f85080ffb9d31235948315a3596db7a5df05'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d0/aab73ceb39ac4bd1191de8335486f5103f59dd'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d4'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d4/ddfda473bd3597bf1df4f3fd338feee322888d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d5'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d5/63c0fb10ba0e42724b21286eb546ee4e5734fc'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/e9'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/e9/e57dc4d41b9b46e05112e9f45b7ea6ac0ba15e'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ea'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ea/32acc1c9eed595cee9222787a20f03a84e6fc0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ec'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ec/2585e8c0bb8188184ed1e0703c4c8f2a8419b0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/fc'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/fc/44b0a3796c0e0a64c3d858ca038bd4570465d9'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ff'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ff/1ebeede6cccef80039e18507b282680b02b852'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/info'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/pack'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs/heads'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs/heads/master'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs/tags'. parent ignore 'True' cli.azext_spring._utils: Excluding '.gitignore' based on default ignore rules cli.azext_spring._utils: .gitignore: no rule for '.vscode'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for '.vscode/settings.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/asset-manifest.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/favicon.ico'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/index.html'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/logo192.png'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/logo512.png'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/manifest.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/robots.txt'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/css'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/css/main.073c9b0a.css'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/css/main.073c9b0a.css.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/787.cda612ba.chunk.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/787.cda612ba.chunk.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/main.dec2504d.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/main.dec2504d.js.LICENSE.txt'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/main.dec2504d.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/media'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/media/logo.6ce24c58023cc2f8fd88fe9d219db6c6.svg'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'deploy.sh'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/acorn'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/acorn.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/acorn.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ansi-html'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ansi-html.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ansi-html.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/autoprefixer'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/autoprefixer.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/autoprefixer.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/browserslist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/browserslist.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/browserslist.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-has-pseudo'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-has-pseudo.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-has-pseudo.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-prefers-color-scheme'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-prefers-color-scheme.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-prefers-color-scheme.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/cssesc'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/cssesc.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/cssesc.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect-port'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect-port.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect-port.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ejs'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ejs.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ejs.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/escodegen'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/escodegen.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/escodegen.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esgenerate'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esgenerate.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esgenerate.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/eslint'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/eslint.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/eslint.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esparse'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esparse.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esparse.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esvalidate'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esvalidate.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esvalidate.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/he'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/he.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/he.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/html-minifier-terser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/html-minifier-terser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/html-minifier-terser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/import-local-fixture'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/import-local-fixture.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/import-local-fixture.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/is-docker'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/is-docker.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/is-docker.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jake'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jake.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jake.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jest'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jest.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jest.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jiti'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jiti.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jiti.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/js-yaml'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/js-yaml.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/js-yaml.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jsesc'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jsesc.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jsesc.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/json5'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/json5.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/json5.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/loose-envify'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/loose-envify.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/loose-envify.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/lz-string'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/lz-string.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/lz-string.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mime'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mime.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mime.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mkdirp'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mkdirp.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mkdirp.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/multicast-dns'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/multicast-dns.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/multicast-dns.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/nanoid'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/nanoid.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/nanoid.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/node-which'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/node-which.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/node-which.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/parser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/parser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/parser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/react-scripts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/react-scripts.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/react-scripts.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/regjsparser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/regjsparser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/regjsparser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/resolve'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/resolve.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/resolve.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rimraf'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rimraf.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rimraf.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rollup'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rollup.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rollup.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/semver'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/semver.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/semver.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase-node'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase-node.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase-node.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/svgo'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/svgo.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/svgo.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwind'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwind.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwind.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwindcss'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwindcss.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwindcss.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/terser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/terser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/terser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/update-browserslist-db'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/update-browserslist-db.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/update-browserslist-db.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/uuid'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/uuid.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/uuid.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack-dev-server'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack-dev-server.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack-dev-server.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/CssParseError.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/CssPosition.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/cssTools.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/cssTools.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/parse'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/parse/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/stringify'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/stringify/compiler.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/stringify/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/type.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/CssParseError.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/CssPosition.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/parse'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/parse/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/stringify'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/stringify/compiler.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/stringify/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/type.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/umd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/umd/cssTools.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/umd/cssTools.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/History.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/LICENSE'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/Readme.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/license'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/readme.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.mjs'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.mjs.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.umd.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.umd.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/build-source-map-tree.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/remapping.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/source-map-tree.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/source-map.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/types.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/LICENSE'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/README.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.development.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.development.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.production.min.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.production.min.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.esm.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.esm.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/constants.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib/filter.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib/suggestions.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib/utils.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/types'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/types/ValidationError.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/LICENSE'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/README.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/src'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/src/constants.ts'. parent ignore 'False'

Expected behavior

To be successfull within a reasonable amount of time. For example, running the same exact commands above, but first with deleting the local node_modules folder, yields a normal deployment time when using one the of Tanzu Buildpacks:

Command ran in 280.260 seconds (init: 1.249, invoke: 279.011)

Environment Summary

$ az --version azure-cli 2.49.0

core 2.49.0 telemetry 1.0.8

Extensions: containerapp 0.3.32 spring 1.12.1 spring-cloud 3.1.8 webapp 0.4.0

Dependencies: msal 1.20.0 azure-mgmt-resource 22.0.0

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe' Extensions directory 'C:\Users[redacted].azure\cliextensions'

Python (Windows) 3.10.10 (tags/v3.10.10:aad5f6a, Feb 7 2023, 17:05:00) [MSC v.1929 32 bit (Intel)]

Legal docs and information: aka.ms/AzureCliLegal

Your CLI is up-to-date.

Additional context

No response

yonzhan commented 1 year ago

Thank you for opening this issue, we will look into it.

ghost commented 1 year ago

Thank you for your feedback. This has been routed to the support team for assistance.

navba-MSFT commented 1 year ago

Adding service team to look into this.

ghost commented 1 year ago

Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc @ShichaoQiu, @yuwzho, @yucwan.

Issue Details
### Describe the bug **Note**: Spoke with Yuwei Zhou on the Spring Apps product team separately about this and was advised to file a bug report about this. Preface: this is not customer reported - this is behavior I've came across while testing some things. When deploying a React application (but really, this would be for any application with node_modules) - we are looping over the entirety of the node_modules directory on this line here: https://github.com/Azure/azure-cli-extensions/blob/main/src/spring-cloud/azext_spring_cloud/_utils.py#L78 This is even with node_modules in .gitignore. I've tried multiple Glob patterns (ideally, we shouldn't have to do this), only some seem to have any difference, then it enters this line: https://github.com/Azure/azure-cli-extensions/blob/main/src/spring-cloud/azext_spring_cloud/_utils.py#L74 Output looks something like this when --debug is added to the AZ CLI: _cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo.cmd'. parent ignore 'False'_ (this repeats for every single file under node_modules - and is what is causing this behavior. Obviously, if we have thousands or more of files under node_modules, this effectively has the deployment go on indefinitely) I realize this also checks for everything in the project directory (not just node_modules). But when node_modules is present (locally), the command won't move past cli.azext_spring._buildservices_factory: [2/5] Uploading package to blob. until I'm assuming this is fully looped over. Without --debug, it just hangs (due to the above still) When I delete node_modules out of my local, this pretty much completes deployments in 1 or 2 minutes on average. I tried looking through this code to see if i'm missing something obvious. Tried testing with .dockerignore (based on what that code may be looking for and having !.gitignore) but no luck. Reference docs: https://learn.microsoft.com/en-us/azure/spring-apps/how-to-enterprise-deploy-static-file#sample-code ### Related command az spring app deploy --resource-group "your-rg" --service "your-asa-enterprise" --name "your-asa-e-react-1" --source-path "./" --build-env BP_WEB_SERVER=nginx BP_WEB_SERVER_ROOT=build az spring app deploy --resource-group "your-rg" --service "ypir-asa-enterprise" --name "ansalemo-asa-e-react-1" --source-path "./" --build-env BP_WEB_SERVER=nginx BP_WEB_SERVER_ROOT="build" BP_NODE_RUN_SCRIPTS=build BP_WEB_SERVER_ENABLE_PUSH_STATE="true" --builder=webserver --verbose This should be reproable for any application that uses node_modules. ### Errors No errors - just behavior that causes the deployment to essentially not succeed until node_modules is looped over in it's entirety. ### Issue script & Debug output Adding only what's relevant below. We hit the ignore rule with project folders, but 99% of this is to due with node_modules, I CTRL+C'd this early on since it goes on forever: cli.azext_spring._buildservices_factory: [2/5] Uploading package to blob. cli.azext_spring._utils: Packing source code into tar to upload... cli.azext_spring._utils: .gitignore: no rule for ''. parent ignore 'False' cli.azext_spring._utils: Excluding '.git' based on default ignore rules cli.azext_spring._utils: .gitignore: no rule for '.git/COMMIT_EDITMSG'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/config'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/description'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/HEAD'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/applypatch-msg.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/commit-msg.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/fsmonitor-watchman.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/post-update.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-applypatch.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-commit.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-merge-commit.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-push.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-rebase.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/pre-receive.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/prepare-commit-msg.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/push-to-checkout.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/hooks/update.sample'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/index'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/info'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/info/exclude'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/HEAD'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/refs'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/refs/heads'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/logs/refs/heads/master'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/00'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/00/ebbddef9c1478c9a907bd80f4033fdf979e954'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/08'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/08/0d6c77ac21bb2ef88a6992b2b73ad93daaca92'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/0d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/0d/72acd9ed7d8fcea87928ae8c4ba9dd8a46fe32'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/10'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/10/38300f4fa4e99a3dd463488b94eeb465edb93a'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1d/f40b104c9e3905f832cb0cbffff53a5acdcb4a'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/1f/03afeece5ac28064fa3c73a29215037465f789'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/37'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/37/845757234ccb68531c10cf7a2ffc589c47e342'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/45'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/45/7ba4c9a0388cfe6d4192e82838f4b0fb13a66f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/45/7e2489a0bc59f796e2468c05b327a9088ddc89'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4d/29575de80483b005c29bfcac5061cd2f45313e'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/4f/fe476ba9ae785db9151f4b3b56db2cdaa5d27b'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/52'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/52/53d3ad9e6be6690549cb255f5952337b02401d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/69'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/69/21972b409949127c10dcfe43eba2014e7cabf1'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/6f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/6f/8ebac3c238699a0b4f31e99b2acd8db454396f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/74'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/74/b5e053450a48a6bdb4d71aad648e7af821975c'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/77'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/77/dd5aeccd6e5684e747921955f62beb49e92bf2'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/7b'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/7b/1e172334cdc980bee9ad6a8a87cf21e0ed18d8'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8e'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8e/29b36dea7f04ae8729d8b33ecc05c3c9b0fe46'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8f'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8f/2609b7b3e0e3897ab3bcaad13caf6876e48699'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/8f/8225c31b7bb25e6c3350c1c1288cba8ae8b000'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/98'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/98/97f4c4c576344a52120ee1fb070c52ee802ccb'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9c'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9c/6a7a92e86d00177109f02470b23cbbea07fe53'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/9d/fc1c058cebbef8b891c5062be6f31033d7d186'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a1'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a1/1777cc471a4344702741ab1c8a588998b1311a'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a4'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a4/e47a6545bc15971f8f63fba70e4013df88a664'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a9'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/a9/deb3602a8d6f83f0396dd94001b9bb8ff0fa66'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/aa'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/aa/069f27cbd9d53394428171c3989fd03db73c76'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ad'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ad/5566fd97b345a689b3b10745ca9cafdaaee758'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/b7'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/b7/22e9e13efe92c42cb81327fd1f1438a255e922'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c0/541f9c04d53a61a27e1ca3e471b1b1c9711498'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c2'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c2/0f316f7e5bed3db5b561434875384e59799ae7'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c2/6bcf37d45618f07d39a0ed7379aa5337be9b7b'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c7'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/c7/68f85080ffb9d31235948315a3596db7a5df05'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d0/aab73ceb39ac4bd1191de8335486f5103f59dd'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d4'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d4/ddfda473bd3597bf1df4f3fd338feee322888d'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d5'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/d5/63c0fb10ba0e42724b21286eb546ee4e5734fc'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/e9'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/e9/e57dc4d41b9b46e05112e9f45b7ea6ac0ba15e'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ea'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ea/32acc1c9eed595cee9222787a20f03a84e6fc0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ec'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ec/2585e8c0bb8188184ed1e0703c4c8f2a8419b0'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/fc'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/fc/44b0a3796c0e0a64c3d858ca038bd4570465d9'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ff'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/ff/1ebeede6cccef80039e18507b282680b02b852'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/info'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/objects/pack'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs/heads'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs/heads/master'. parent ignore 'True' cli.azext_spring._utils: .gitignore: no rule for '.git/refs/tags'. parent ignore 'True' cli.azext_spring._utils: Excluding '.gitignore' based on default ignore rules cli.azext_spring._utils: .gitignore: no rule for '.vscode'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for '.vscode/settings.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/asset-manifest.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/favicon.ico'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/index.html'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/logo192.png'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/logo512.png'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/manifest.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/robots.txt'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/css'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/css/main.073c9b0a.css'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/css/main.073c9b0a.css.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/787.cda612ba.chunk.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/787.cda612ba.chunk.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/main.dec2504d.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/main.dec2504d.js.LICENSE.txt'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/js/main.dec2504d.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/media'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'build/static/media/logo.6ce24c58023cc2f8fd88fe9d219db6c6.svg'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'deploy.sh'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/acorn'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/acorn.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/acorn.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ansi-html'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ansi-html.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ansi-html.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/autoprefixer'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/autoprefixer.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/autoprefixer.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/browserslist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/browserslist.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/browserslist.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-blank-pseudo.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-has-pseudo'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-has-pseudo.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-has-pseudo.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-prefers-color-scheme'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-prefers-color-scheme.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/css-prefers-color-scheme.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/cssesc'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/cssesc.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/cssesc.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect-port'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect-port.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect-port.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/detect.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ejs'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ejs.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/ejs.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/escodegen'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/escodegen.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/escodegen.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esgenerate'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esgenerate.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esgenerate.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/eslint'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/eslint.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/eslint.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esparse'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esparse.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esparse.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esvalidate'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esvalidate.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/esvalidate.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/he'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/he.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/he.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/html-minifier-terser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/html-minifier-terser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/html-minifier-terser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/import-local-fixture'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/import-local-fixture.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/import-local-fixture.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/is-docker'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/is-docker.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/is-docker.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jake'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jake.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jake.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jest'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jest.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jest.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jiti'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jiti.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jiti.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/js-yaml'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/js-yaml.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/js-yaml.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jsesc'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jsesc.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/jsesc.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/json5'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/json5.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/json5.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/loose-envify'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/loose-envify.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/loose-envify.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/lz-string'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/lz-string.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/lz-string.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mime'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mime.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mime.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mkdirp'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mkdirp.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/mkdirp.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/multicast-dns'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/multicast-dns.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/multicast-dns.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/nanoid'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/nanoid.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/nanoid.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/node-which'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/node-which.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/node-which.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/parser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/parser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/parser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/react-scripts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/react-scripts.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/react-scripts.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/regjsparser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/regjsparser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/regjsparser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/resolve'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/resolve.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/resolve.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rimraf'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rimraf.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rimraf.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rollup'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rollup.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/rollup.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/semver'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/semver.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/semver.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase-node'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase-node.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase-node.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/sucrase.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/svgo'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/svgo.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/svgo.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwind'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwind.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwind.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwindcss'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwindcss.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/tailwindcss.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/terser'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/terser.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/terser.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/update-browserslist-db'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/update-browserslist-db.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/update-browserslist-db.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/uuid'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/uuid.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/uuid.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack-dev-server'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack-dev-server.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack-dev-server.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack.cmd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/.bin/webpack.ps1'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/CssParseError.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/CssPosition.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/cssTools.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/cssTools.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/parse'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/parse/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/stringify'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/stringify/compiler.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/stringify/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/cjs/type.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/CssParseError.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/CssPosition.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/parse'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/parse/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/stringify'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/stringify/compiler.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/stringify/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/esm/type.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/umd'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/umd/cssTools.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/dist/umd/cssTools.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/History.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/LICENSE'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@adobe/css-tools/Readme.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/license'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@alloc/quick-lru/readme.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.mjs'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.mjs.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.umd.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/remapping.umd.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/build-source-map-tree.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/remapping.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/source-map-tree.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/source-map.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/dist/types/types.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/LICENSE'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@ampproject/remapping/README.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.development.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.development.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.production.min.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.cjs.production.min.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.esm.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/better-ajv-errors.esm.js.map'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/constants.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/index.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/index.js'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib/filter.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib/suggestions.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/lib/utils.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/types'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/dist/types/ValidationError.d.ts'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/LICENSE'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/package.json'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/README.md'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/src'. parent ignore 'False' cli.azext_spring._utils: .gitignore: no rule for 'node_modules/@apideck/better-ajv-errors/src/constants.ts'. parent ignore 'False' ### Expected behavior To be successfull within a reasonable amount of time. For example, running the same exact commands above, but first with deleting the local node_modules folder, yields a normal deployment time when using one the of Tanzu Buildpacks: Command ran in 280.260 seconds (init: 1.249, invoke: 279.011) ### Environment Summary $ az --version azure-cli 2.49.0 core 2.49.0 telemetry 1.0.8 Extensions: containerapp 0.3.32 spring 1.12.1 spring-cloud 3.1.8 webapp 0.4.0 Dependencies: msal 1.20.0 azure-mgmt-resource 22.0.0 Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe' Extensions directory 'C:\Users\[redacted]\.azure\cliextensions' Python (Windows) 3.10.10 (tags/v3.10.10:aad5f6a, Feb 7 2023, 17:05:00) [MSC v.1929 32 bit (Intel)] Legal docs and information: aka.ms/AzureCliLegal Your CLI is up-to-date. ### Additional context _No response_
Author: Ajsalemo
Assignees: -
Labels: `bug`, `customer-reported`, `Service Attention`, `Spring Cloud`
Milestone: -
yuwzho commented 1 year ago

Ack

smile37773 commented 1 year ago

@Ajsalemo The deployment hang because there are too many files in node module. It takes too much time to loop node module and ignore these files. Please directly delete the useless files.