@pnp/cli-microsoft365 6.11.0-beta.b75e15f → 6.11.0-beta.cb74646

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/m365/planner/commands/task/task-add.js +17 -11
  2. package/dist/m365/planner/commands/task/task-get.js +35 -25
  3. package/dist/m365/planner/commands/task/task-list.js +26 -19
  4. package/dist/m365/planner/commands/task/task-remove.js +40 -35
  5. package/dist/m365/planner/commands/task/task-set.js +35 -23
  6. package/dist/m365/spfx/commands/project/DeployWorkflow.js +58 -0
  7. package/dist/m365/spfx/commands/project/project-github-workflow-add.js +171 -0
  8. package/dist/m365/spfx/commands/project/project-github-workflow-model.js +3 -0
  9. package/dist/m365/spfx/commands.js +1 -0
  10. package/dist/m365/spo/commands/serviceprincipal/serviceprincipal-set.js +32 -32
  11. package/dist/m365/spo/commands/site/site-add.js +113 -154
  12. package/dist/m365/spo/commands/site/site-apppermission-add.js +26 -27
  13. package/dist/m365/spo/commands/site/site-apppermission-remove.js +37 -37
  14. package/dist/m365/spo/commands/site/site-apppermission-set.js +15 -16
  15. package/dist/m365/spo/commands/site/site-remove.js +139 -171
  16. package/dist/m365/spo/commands/site/site-set.js +134 -146
  17. package/dist/utils/fsUtil.js +5 -0
  18. package/docs/docs/cmd/planner/task/task-add.mdx +22 -7
  19. package/docs/docs/cmd/planner/task/task-get.mdx +13 -4
  20. package/docs/docs/cmd/planner/task/task-list.mdx +22 -7
  21. package/docs/docs/cmd/planner/task/task-remove.mdx +25 -8
  22. package/docs/docs/cmd/planner/task/task-set.mdx +22 -7
  23. package/docs/docs/cmd/spfx/project/project-github-workflow-add.mdx +94 -0
  24. package/npm-shrinkwrap.json +15 -1
  25. package/package.json +3 -2
@@ -26,10 +26,13 @@ m365 planner task remove [options]
26
26
  : Name of the bucket to which the task to remove belongs. Specify either `bucketId` or `bucketName` but not both.
27
27
 
28
28
  `--planId [planId]`
29
- : ID of the plan to which the task to remove belongs. Specify either `planId` or `planTitle` when using `title`.
29
+ : ID of the plan to which the task to remove belongs. Specify either `planId`, `planTitle`, or `rosterId` when using `title`.
30
30
 
31
31
  `--planTitle [planTitle]`
32
- : Title of the plan to which the task to remove belongs. Specify either `planId` or `planTitle` when using `title`.
32
+ : Title of the plan to which the task to remove belongs. Specify either `planId`, `planTitle`, or `rosterId` when using `title`.
33
+
34
+ `--rosterId [rosterId]`
35
+ : ID of the Planner Roster. Specify either `planId`, `planTitle`, or `rosterId` when using `title`.
33
36
 
34
37
  `--ownerGroupId [ownerGroupId]`
35
38
  : ID of the group to which the plan belongs. Specify either `ownerGroupId` or `ownerGroupName` when using `planTitle`.
@@ -43,44 +46,58 @@ m365 planner task remove [options]
43
46
 
44
47
  <Global />
45
48
 
49
+ ## Remarks
50
+
51
+ :::caution
52
+
53
+ When using `rosterId`, the command is based on an API that is currently in preview and is subject to change once the API reached general availability.
54
+
55
+ :::
56
+
46
57
  ## Examples
47
58
 
48
- Removes the Microsoft Planner task by ID
59
+ Removes the Microsoft Planner task by ID.
49
60
 
50
61
  ```sh
51
62
  m365 planner task remove --id "2Vf8JHgsBUiIf-nuvBtv-ZgAAYw2"
52
63
  ```
53
64
 
54
- Removes the Microsoft Planner task by ID without confirmation
65
+ Removes the Microsoft Planner task by ID without confirmation.
55
66
 
56
67
  ```sh
57
68
  m365 planner task remove --id "2Vf8JHgsBUiIf-nuvBtv-ZgAAYw2" --confirm
58
69
  ```
59
70
 
60
- Removes the Microsoft Planner task with title _My Task_ in the bucket with ID _vncYUXCRBke28qMLB-d4xJcACtNz_
71
+ Removes the Microsoft Planner task with the specified title in the bucket by ID.
61
72
 
62
73
  ```sh
63
74
  m365 planner task remove --title "My Task" --bucketId "vncYUXCRBke28qMLB-d4xJcACtNz"
64
75
  ```
65
76
 
66
- Removes the Microsoft Planner task with title _My Task_ in the bucket with name _My Bucket_ in the Plan with ID _oUHpnKBFekqfGE_PS6GGUZcAFY7b_
77
+ Removes the Microsoft Planner task with the specified title the bucket by name in the Plan with the specified ID.
67
78
 
68
79
  ```sh
69
80
  m365 planner task remove --title "My Task" --bucketName "My Bucket" --planId "oUHpnKBFekqfGE_PS6GGUZcAFY7b"
70
81
  ```
71
82
 
72
- Removes the Microsoft Planner task with title _My Task_ in the bucket with name _My Bucket_ in the Plan _My Plan_ owned by group _My Group_
83
+ Removes the Microsoft Planner task with the specified title in the bucket with name in the Plan owned by group with the specified name.
73
84
 
74
85
  ```sh
75
86
  m365 planner task remove --title "My Task" --bucketName "My Bucket" --planTitle "My Plan" --ownerGroupName "My Group"
76
87
  ```
77
88
 
78
- Removes the Microsoft Planner task with title _My Task_ in the bucket with name _My Bucket_ in the Plan _My Plan_ owned by group with ID _00000000-0000-0000-0000-000000000000_
89
+ Removes the Microsoft Planner task with the specified title in the bucket with name in the Plan owned by group with the specified ID.
79
90
 
80
91
  ```sh
81
92
  m365 planner task remove --title "My Task" --bucketName "My Bucket" --planTitle "My Plan" --ownerGroupId "00000000-0000-0000-0000-000000000000"
82
93
  ```
83
94
 
95
+ Removes the Microsoft Planner task by rosterId from the specified bucket.
96
+
97
+ ```sh
98
+ m365 planner task remove --title "My Task" --bucketName "My Bucket" --rosterId "DjL5xiKO10qut8LQgztpKskABWna"
99
+ ```
100
+
84
101
  ## Response
85
102
 
86
103
  The command won't return a response on success.
@@ -28,10 +28,13 @@ m365 planner task set [options]
28
28
  : Name of the bucket to move the task to. The bucket needs to exist in the selected plan. Specify either `bucketId` or `bucketName` when using `title`.
29
29
 
30
30
  `--planId [planId]`
31
- : ID of the plan to which the bucket belongs to. Specify either `planId` or `planTitle` when using `bucketName`.
31
+ : ID of the plan to which the bucket belongs to. Specify either `planId`, `planTitle`, or `rosterId` when using `bucketName`.
32
32
 
33
33
  `--planTitle [planTitle]`
34
- : Title of the plan to which the bucket belongs to. Specify either `planId` or `planTitle` when using `bucketName`.
34
+ : Title of the plan to which the bucket belongs to. Specify either `planId`, `planTitle`, or `rosterId` when using `bucketName`.
35
+
36
+ `--rosterId [rosterId]`
37
+ : ID of the Planner Roster to which the bucket belongs to. Specify either `planId`, `planTitle`, or `rosterId` when using `bucketName`.
35
38
 
36
39
  `--ownerGroupId [ownerGroupId]`
37
40
  : ID of the group to which the plan belongs. Specify `ownerGroupId` or `ownerGroupName` when using `planTitle`.
@@ -91,24 +94,36 @@ You can add up to 6 categories to the task. An example to add _category1_ and _c
91
94
 
92
95
  When using `description` with a multiple lines value, use the new line character of the shell you are using to indicate line breaks. For PowerShell this is `` `n ``. For Zsh or Bash use `\n` with a `$` in front. E.g. `$"Line 1\nLine 2"`.
93
96
 
97
+ :::caution
98
+
99
+ When using `rosterId`, the command is based on an API that is currently in preview and is subject to change once the API reached general availability.
100
+
101
+ :::
102
+
94
103
  ## Examples
95
104
 
96
- Updates a Microsoft Planner task name to _My Planner Task_ for the task with the ID _Z-RLQGfppU6H3663DBzfs5gAMD3o_
105
+ Updates a Microsoft Planner task name of the specified task by ID
97
106
 
98
107
  ```sh
99
108
  m365 planner task set --id "Z-RLQGfppU6H3663DBzfs5gAMD3o" --title "My Planner Task"
100
109
  ```
101
110
 
102
- Moves a Microsoft Planner task with the ID _Z-RLQGfppU6H3663DBzfs5gAMD3o_ to the bucket named _My Planner Bucket_. Based on the plan with the title _My Planner Plan_ owned by the group _My Planner Group_
111
+ Moves a Microsoft Planner task with the specified ID to the bucket by name. Based on the plan with the specified rosterId.
112
+
113
+ ```sh
114
+ m365 planner task set --id "Z-RLQGfppU6H3663DBzfs5gAMD3o" --bucketName "My Planner Bucket" --rosterId "DjL5xiKO10qut8LQgztpKskABWna"
115
+ ```
116
+
117
+ Moves a Microsoft Planner task with the specified ID to the bucket by name. Based on the plan with the specified title owned by the specified group by name.
103
118
 
104
119
  ```sh
105
- m365 planner task set --id "2Vf8JHgsBUiIf-nuvBtv-ZgAAYw2" --bucketName "My Planner Bucket" --planTitle "My Planner Plan" --ownerGroupName "My Planner Group"
120
+ m365 planner task set --id "2Vf8JHgsBUiIf-nuvBtv-ZgAAYw2" --bucketName "My Planner Bucket" --planTitle "My Planner Plan" --ownerGroupName "My Planner Group"
106
121
  ```
107
122
 
108
- Marks a Microsoft Planner task with the ID _Z-RLQGfppU6H3663DBzfs5gAMD3o_ as 50% complete and assigned to categories 1 and 3.
123
+ Marks a Microsoft Planner task with the specified ID as 50% complete and assigned to categories 1 and 3.
109
124
 
110
125
  ```sh
111
- m365 planner task set --id "2Vf8JHgsBUiIf-nuvBtv-ZgAAYw2" --percentComplete 50 --appliedCategories "category1,category3"
126
+ m365 planner task set --id "2Vf8JHgsBUiIf-nuvBtv-ZgAAYw2" --percentComplete 50 --appliedCategories "category1,category3"
112
127
  ```
113
128
 
114
129
  ## Response
@@ -0,0 +1,94 @@
1
+ import Global from '/docs/cmd/_global.mdx';
2
+
3
+ # spfx project github workflow add
4
+
5
+ Adds a GitHub workflow for a SharePoint Framework project
6
+
7
+ ## Usage
8
+
9
+ ```sh
10
+ m365 spfx project github workflow add [options]
11
+ ```
12
+
13
+ ## Options
14
+
15
+ ```md definition-list
16
+ `-n, --name [name]`
17
+ : Name of the workflow that will be created. If none is specified a default name will be used 'Deploy Solution ${name of sppkg file}'
18
+
19
+ `-b, --branchName [branchName]`
20
+ : Specify the branch name which should trigger the workflow on push. If none is specified a default will be used which is 'main'
21
+
22
+ `-m, --manuallyTrigger`
23
+ : When specified a manual trigger option will be added to the workflow: `workflow_dispatch`
24
+
25
+ `-l, --loginMethod [loginMethod]`
26
+ : Specify the login method used for the login action. Possible options are: `user`, `application`. Default `application`'
27
+
28
+ `-s, --scope [scope]`
29
+ : Scope of the app catalog: `tenant`, `sitecollection`. Default is `tenant`
30
+
31
+ `-u, --siteUrl [siteUrl]`
32
+ : The URL of the site collection where the solution package will be added. Required if scope is set to `sitecollection`
33
+
34
+ `--skipFeatureDeployment`
35
+ : When specified and the app supports tenant-wide deployment, deploy it to the whole tenant
36
+
37
+ `--overwrite`
38
+ : When specified the workflow will overwrite the existing .sppkg if it is already deployed in the app catalog.
39
+ ```
40
+
41
+ <Global />
42
+
43
+ ## Remarks
44
+
45
+ The `spfx project github workflow add` will create a workflow .yml file in the `.github/workflows` directory in your project. If such directory does not exist the command will automatically create it.
46
+
47
+ For the `application` login method the command does not register AAD application nor create the required certificate. In order for you to proceed you will need to first obtain (create) a self-signed certificate and register a new AAD application with certificate authentication. After that in GitHub repo settings, you will need to create the following secrets:
48
+
49
+ - `APP_ID` - client id of the registered AAD application
50
+ - `CERTIFICATE_ENCODED` - application's encoded certificate
51
+ - `CERTIFICATE_PASSWORD` - certificate password. This applies only if the certificate is encoded which is the recommended approach
52
+
53
+ This use case is perfect in a production context as it does not create any dependencies on an account
54
+
55
+ For the `user` login method you will need to create the following secrets in GitHub repo settings:
56
+
57
+ - `ADMIN_USERNAME` - username
58
+ - `ADMIN_PASSWORD` - password
59
+
60
+ This method is perfect to test your workflow, in a dev context, for personal usage. It will not work for accounts with MFA.
61
+
62
+ :::info
63
+
64
+ Run this command in the SPFx solution folder.
65
+
66
+ :::
67
+
68
+ ## Examples
69
+
70
+ Adds a GitHub workflow for a SharePoint Framework project with `application` login method triggered on push to main
71
+
72
+ ```sh
73
+ m365 spfx project github workflow add
74
+ ```
75
+
76
+ Adds a GitHub workflow for a SharePoint Framework project with `user` login method triggered on push to main and when manually triggered.
77
+
78
+ ```sh
79
+ m365 spfx project github workflow add --manuallyTrigger --loginMethod "user"
80
+ ```
81
+
82
+ Adds a GitHub workflow for a SharePoint Framework project with deployment to a site collection app catalog
83
+
84
+ ```sh
85
+ m365 spfx project github workflow add --scope "sitecollection" --siteUrl "https://some.sharepoint.com/sites/someSite"
86
+ ```
87
+
88
+ ## Response
89
+
90
+ The command won't return a response on success.
91
+
92
+ ## More information
93
+
94
+ - Automate your CI/CD workflow using CLI for Microsoft 365 GitHub Actions: [https://pnp.github.io/cli-microsoft365/user-guide/github-actions](https://pnp.github.io/cli-microsoft365/user-guide/github-actions)
@@ -33,7 +33,8 @@
33
33
  "strip-json-comments": "^3.1.1",
34
34
  "typescript": "^4.9.5",
35
35
  "update-notifier": "^5.1.0",
36
- "uuid": "^9.0.0"
36
+ "uuid": "^9.0.0",
37
+ "yaml": "^2.3.1"
37
38
  },
38
39
  "bin": {
39
40
  "m365": "dist/index.js",
@@ -6037,6 +6038,14 @@
6037
6038
  "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
6038
6039
  "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
6039
6040
  },
6041
+ "node_modules/yaml": {
6042
+ "version": "2.3.1",
6043
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz",
6044
+ "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==",
6045
+ "engines": {
6046
+ "node": ">= 14"
6047
+ }
6048
+ },
6040
6049
  "node_modules/yargs": {
6041
6050
  "version": "16.2.0",
6042
6051
  "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
@@ -10458,6 +10467,11 @@
10458
10467
  "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
10459
10468
  "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="
10460
10469
  },
10470
+ "yaml": {
10471
+ "version": "2.3.1",
10472
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz",
10473
+ "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ=="
10474
+ },
10461
10475
  "yargs": {
10462
10476
  "version": "16.2.0",
10463
10477
  "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnp/cli-microsoft365",
3
- "version": "6.11.0-beta.b75e15f",
3
+ "version": "6.11.0-beta.cb74646",
4
4
  "description": "Manage Microsoft 365 and SharePoint Framework projects on any platform",
5
5
  "license": "MIT",
6
6
  "main": "./dist/api.js",
@@ -251,7 +251,8 @@
251
251
  "strip-json-comments": "^3.1.1",
252
252
  "typescript": "^4.9.5",
253
253
  "update-notifier": "^5.1.0",
254
- "uuid": "^9.0.0"
254
+ "uuid": "^9.0.0",
255
+ "yaml": "^2.3.1"
255
256
  },
256
257
  "devDependencies": {
257
258
  "@microsoft/microsoft-graph-types": "^2.38.0",