3

Given I have entries in angular.json that define various commands using the serverless CLI (as an example)

"serverless-deploy": {
  "builder": "@nrwl/workspace:run-commands",
  "options": {
    "command": "npx serverless deploy",
    "cwd": "apps/my-app"
  }
},
"serverless-remove": {
  "builder": "@nrwl/workspace:run-commands",
  "options": {
    "command": "npx serverless remove",
    "cwd": "apps/my-app"
  }
}

How can I improve this by reducing duplication and combining it into one entry so that I can forward the command in?

E.G something like this:

"sls": {
  "builder": "@nrwl/workspace:run-commands",
  "options": {
    "command": "npx serverless",
    "cwd": "apps/my-app"
  }
}

And then call it with nx run my-app:sls MYCOMMAND (E.G 'deploy' or 'remove')? Unfortunately the above doesn't work but would love to know if this is possible.

williamsandonz
  • 15,864
  • 23
  • 100
  • 186

1 Answers1

1
"sls": {
  "builder": "@nrwl/workspace:run-commands",
  "options": {
    "commands": [
      "npx sls {args.cmd}"
    ],
    "cwd": "apps/api",
    "parallel": false
  }
},

nx run api:sls --cmd=deploy
williamsandonz
  • 15,864
  • 23
  • 100
  • 186