Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Removes duplicate property for "teams tab list" command. Closes #5900 #6151

Open
wants to merge 26 commits into
base: v10
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f51fd43
Updates version to 10.0.0
Adam-it Jul 7, 2024
8074763
Updates option names of 'app permission add' to plural. Closes #5719
nanddeepn Jul 8, 2024
d27e2ff
Removes deprecated Guest value from 'aad m365group user list' command…
nanddeepn Jul 9, 2024
cf3d43a
Adds --force option to 'spo site appcatalog remove' command. Closes #…
Saurabh7019 Jul 10, 2024
44b7822
Aligns options with naming convention. Closes #5616
nanddeepn Jul 12, 2024
d0d6d22
Removes duplicate property from 'spo list list' command. Closes #6042
SmitaNachan Jul 14, 2024
fc07529
Updates 'spo tenant recyclebinitem restore' command. Closes #6063
nanddeepn Aug 4, 2024
07d12fb
Updates upgrade guidance
Adam-it Aug 11, 2024
92bd2ef
Updates release notes
Adam-it Aug 11, 2024
58a49d9
Removes deprecated option '--wait' from 'spo site remove' command. Cl…
nanddeepn Jul 12, 2024
e5675ad
Reworks command 'spo file copy' to new API endpoint. Closes #6152
milanholemans Aug 10, 2024
50e7949
Removes deprecated CLI environment variables. Closes #5918
nanddeepn Jul 20, 2024
139474e
Updates options of 'entra enterpriseapp' commands. Closes #6155
nanddeepn Jul 25, 2024
abb82ba
Removes 'overwrite' option from 'spfx project github workflow add' co…
SmitaNachan Jul 27, 2024
8d9d733
Updates 'm365 status' command output. Closes #5849
nanddeepn Jul 20, 2024
a65aee5
Removes 'spo folder rename' alias. Closes #5911
SmitaNachan Jul 14, 2024
83394dc
Updates release notes
Adam-it Aug 13, 2024
46eac8d
Fixes Rights property from 'spo applicationcustomizer get' command. C…
SmitaNachan Jul 22, 2024
d3422cc
Removed yammer command aliases. Closes #5764
SmitaNachan Jul 27, 2024
ab4cab1
Updates release notes
milanholemans Aug 24, 2024
e9dfc38
Removes showSpinner config variable. Closes #6126
MathijsVerbeeck Sep 4, 2024
19c41a2
Aligns options for 'spo contenttype field' commands. Closes #6170
MathijsVerbeeck Sep 4, 2024
a4e89de
Updates release notes
milanholemans Sep 5, 2024
089ea76
Remove duplicate property
SmitaNachan Jul 14, 2024
fc09973
Script update and v9 guidance
SmitaNachan Aug 23, 2024
60c2c30
review comments
SmitaNachan Sep 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
201 changes: 201 additions & 0 deletions .github/workflows/release_v10.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
name: Release v10

on:
push:
branches: [v10]

jobs:
build:
if: github.repository_owner == 'pnp'
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
node: [20]

steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}
registry-url: 'https://registry.npmjs.org'
- name: Cache node modules
id: cache
uses: actions/cache@v4
with:
path: |
**/node_modules
key: node_modules-${{ matrix.os }}-${{ matrix.node }}-${{ hashFiles('**/npm-shrinkwrap.json') }}
- name: Restore dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Build
run: npm run build
- name: Compress output (non-Windows)
if: matrix.os != 'windows-latest'
run: tar -cvf build.tar --exclude node_modules ./
- name: Compress output (Windows)
if: matrix.os == 'windows-latest'
run: 7z a -ttar -xr!node_modules -r build.tar .
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: build-${{ matrix.os }}-${{ matrix.node }}
path: build.tar
test:
if: github.repository_owner == 'pnp'
needs: build
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
# node versions to run tests on
nodeRun: [20]
# node version on which code was built and should be tested
nodeBuild: [20]
include:
- os: ubuntu-latest
nodeRun: 18
nodeBuild: 20

steps:
- name: Configure pagefile
if: matrix.os == 'windows-latest'
uses: al-cheb/configure-pagefile-action@v1.4
with:
minimum-size: 16GB
disk-root: "C:"
- uses: actions/download-artifact@v4
with:
name: build-${{ matrix.os }}-${{ matrix.nodeBuild }}
- name: Unpack build artifact (non-Windows)
if: matrix.os != 'windows-latest'
run: tar -xvf build.tar && rm build.tar
- name: Unpack build artifact (Windows)
if: matrix.os == 'windows-latest'
run: 7z x build.tar && del build.tar
- name: Use Node.js ${{ matrix.nodeRun }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.nodeRun }}
registry-url: 'https://registry.npmjs.org'
- name: Cache node modules
id: cache
uses: actions/cache@v4
with:
path: |
**/node_modules
key: node_modules-${{ matrix.os }}-${{ matrix.nodeBuild }}-${{ hashFiles('**/npm-shrinkwrap.json') }}
- name: Restore dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Test with coverage
# we run coverage only on Node that was used to build
if: matrix.nodeRun == matrix.nodeBuild
run: npm test
- name: Test without coverage
# we want to run tests on older Node versions to ensure that code works
if: matrix.nodeRun != matrix.nodeBuild
run: npm run test:test
- name: Compress output (non-Windows)
if: matrix.nodeRun == matrix.nodeBuild && matrix.os != 'windows-latest' && always()
run: tar -cvf coverage.tar coverage
- name: Compress output (Windows)
if: matrix.nodeRun == matrix.nodeBuild && matrix.os == 'windows-latest' && always()
run: 7z a -ttar -r coverage.tar coverage
- uses: actions/upload-artifact@v4
if: matrix.nodeRun == matrix.nodeBuild && always()
with:
name: coverage-${{ matrix.os }}-${{ matrix.nodeRun }}
path: coverage.tar

publish_v10:
if: github.repository_owner == 'pnp'
needs: test
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write

steps:
- uses: actions/download-artifact@v4
with:
name: build-ubuntu-latest-20
- name: Unpack build artifact
run: tar -xvf build.tar && rm build.tar
- name: Use Node.js 20
uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
- name: Cache node modules
id: cache
uses: actions/cache@v4
with:
path: |
**/node_modules
key: node_modules-ubuntu-latest-20-${{ hashFiles('**/npm-shrinkwrap.json') }}
- name: Restore dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: npm ci
- name: Stamp beta to package version
run: node scripts/update-package-version.js $GITHUB_SHA
- name: Publish @ten
run: npm publish --tag ten --access public --provenance
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }}
- name: Compress output
run: tar -cvf build.tar --exclude node_modules ./
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: build-ubuntu-latest-20
path: build.tar
overwrite: true

deploy_docker:
if: github.repository_owner == 'pnp'
needs: publish_v10
runs-on: ubuntu-latest

steps:
- uses: actions/download-artifact@v4
with:
name: build-ubuntu-latest-20
- name: Unpack build artifact
run: tar -xvf build.tar && rm build.tar
- name: Use Node.js 20
uses: actions/setup-node@v4
with:
node-version: 20
registry-url: 'https://registry.npmjs.org'
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Extract version from package
id: package_version
run: |
echo "version=$(node -p "require('./package.json').version")" >> $GITHUB_OUTPUT
- name: Wait for npm publish
run: node scripts/wait-npm-publish.js ten ${{ steps.package_version.outputs.version }}
- name: Build and push ${{ steps.package_version.outputs.version }}
uses: docker/build-push-action@v5
with:
push: true
tags: m365pnp/cli-microsoft365:${{ steps.package_version.outputs.version }}
build-args: |
CLI_VERSION=${{ steps.package_version.outputs.version }}
- name: Build and push ten
uses: docker/build-push-action@v5
with:
push: true
tags: m365pnp/cli-microsoft365:ten
build-args: |
CLI_VERSION=${{ steps.package_version.outputs.version }}
1 change: 0 additions & 1 deletion docs/docs/_clisettings.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,4 @@ Setting name|Definition|Default value
`prompt`|Prompts for missing values in required options and enables interactive selection when multiple values are available for a command that requires a specific value to be retrieved.|`true`
`promptListPageSize`|By default, lists of choices longer than 7 will be paginated. Use this option to control how many choices will appear on the screen at once.|7
`showHelpOnFailure`|Automatically display help when executing a command failed|`true`
`showSpinner`|Display spinner when executing commands|`true`
`tenantId`|ID of the default tenant to use when authenticating with|``
22 changes: 22 additions & 0 deletions docs/docs/about/release-notes.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,28 @@ sidebar_position: 3

# Release notes

## v10.0.0 (beta)

### ⚠️ Breaking changes

- updated option names of [app permission add](../cmd/app/permission/permission-add.mdx) to plural [#5719](https://github.com/pnp/cli-microsoft365/issues/5975)
- removed deprecated guest filtering for [entra m365group user list](../cmd/entra/m365group/m365group-user-list.mdx) command [#5558](https://github.com/pnp/cli-microsoft365/issues/5558)
- added `--force` option to [spo site appcatalog remove](../cmd/spo/site/site-appcatalog-remove.mdx) command [#6091](https://github.com/pnp/cli-microsoft365/issues/6091)
- aligned options with naming convention [#5616](https://github.com/pnp/cli-microsoft365/issues/5616)
- removed duplicate property from [spo list list](../cmd/spo/list/list-list.mdx) command [#6042](https://github.com/pnp/cli-microsoft365/issues/6042)
- updated [spo tenant recyclebinitem restore](../cmd/spo/tenant/tenant-recyclebinitem-restore.mdx) command output [#6063](https://github.com/pnp/cli-microsoft365/issues/6063)
- removed deprecated option `wait` from [spo site remove](../cmd/spo/site/site-remove.mdx) command [#5956](https://github.com/pnp/cli-microsoft365/issues/5956)
- reworked command [spo file copy](../cmd/spo/file/file-copy.mdx) to new API endpoint [#6152](https://github.com/pnp/cli-microsoft365/issues/6152)
- removed deprecated CLI environment variables [#5918](https://github.com/pnp/cli-microsoft365/issues/5918)
- updated options of `entra enterpriseapp` commands [#6155](https://github.com/pnp/cli-microsoft365/issues/6155)
- removed `overwrite` option from [spfx project github workflow add](../cmd/spfx/project/project-github-workflow-add.mdx) command [#5765](https://github.com/pnp/cli-microsoft365/issues/5765)
- updated [status](../cmd/status.mdx) command output [#5849](https://github.com/pnp/cli-microsoft365/issues/5849)
- removed [spo folder rename](../cmd/spo/folder/folder-set.mdx) alias [#5911](https://github.com/pnp/cli-microsoft365/issues/5911)
- removed stringified property from [spo applicationcustomizer get](../cmd/spo/applicationcustomizer/applicationcustomizer-get.mdx) command [#6052](https://github.com/pnp/cli-microsoft365/issues/6052)
- removed all `yammer` command aliases [#5764](https://github.com/pnp/cli-microsoft365/issues/5764)
- removed `showSpinner` config variable [#6126](https://github.com/pnp/cli-microsoft365/issues/6126)
- aligned options of `spo contenttype field` commands [#6170](https://github.com/pnp/cli-microsoft365/issues/6170)

## v9.1.0 (beta)

### New commands
Expand Down
10 changes: 5 additions & 5 deletions docs/docs/cmd/app/permission/permission-add.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ m365 app permission add [options]
`--appId [appId]`
: Client ID of the Microsoft Entra app registered in the .m365rc.json file to retrieve API permissions for.

`--applicationPermission [applicationPermission]`
`--applicationPermissions [applicationPermissions]`
: Space-separated list of application permissions to add.

`--delegatedPermission [delegatedPermission]`
`--delegatedPermissions [delegatedPermissions]`
: Space-separated list of delegated permissions to add.

`--grantAdminConsent`
Expand All @@ -37,19 +37,19 @@ If you have multiple apps registered in your .m365rc.json file, you can specify
Adds the specified application permissions to the default app registered in the _.m365rc.json_ file while granting admin consent.

```sh
m365 app permission add --applicationPermission 'https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/User.Read.All' --grantAdminConsent
m365 app permission add --applicationPermissions 'https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/User.Read.All' --grantAdminConsent
```

Adds the specified delegated permissions to the default app registered in the _.m365rc.json_ file without granting admin consent.

```sh
m365 app permission add --delegatedPermission 'https://graph.microsoft.com/offline_access'
m365 app permission add --delegatedPermissions 'https://graph.microsoft.com/offline_access'
```

Adds the specified application and delegated permissions to a specific app registered in the _.m365rc.json_ file while granting admin consent.

```sh
m365 app permission add --appId '1663767b-4172-4519-bfd1-28e6ff19055b' --applicationPermission 'https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/User.Read.All' --delegatedPermission 'https://graph.microsoft.com/offline_access' --grantAdminConsent
m365 app permission add --appId '1663767b-4172-4519-bfd1-28e6ff19055b' --applicationPermissions 'https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/User.Read.All' --delegatedPermissions 'https://graph.microsoft.com/offline_access' --grantAdminConsent
```

## Response
Expand Down
2 changes: 1 addition & 1 deletion docs/docs/cmd/cli/cli-consent.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ m365 cli consent [options]

```md definition-list
`-s, --service <service>`
: Service for which to consent permissions. Allowed values: `VivaEngage`, (deprecated)`yammer`.
: Service for which to consent permissions. Allowed values: `VivaEngage`.
```

<Global />
Expand Down
24 changes: 12 additions & 12 deletions docs/docs/cmd/entra/enterpriseapp/enterpriseapp-add.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,39 +22,39 @@ m365 entra sp add [options]
## Options

```md definition-list
`--appId [appId]`
: ID of the app for which the enterprise application should be created
`-i, --id [id]`
: ID of the app for which the enterprise application should be created.

`--appName [appName]`
: Display name of the app for which the enterprise application should be created
`-n, --displayName [displayName]`
: Display name of the app for which the enterprise application should be created.

`--objectId [objectId]`
: ObjectId of the app for which the enterprise application should be created
: ObjectId of the app for which the enterprise application should be created.
```

<Global />

## Remarks

Specify either the `appId`, `appName` or `objectId`. If you specify more than one option value, the command will fail with an error.
Specify either the `id`, `displayName` or `objectId`. If you specify more than one option value, the command will fail with an error.

If you register an application in the portal, an application object as well as an enterprise application object are automatically created in your home tenant. If you register an application using CLI for Microsoft 365 or the Microsoft Graph, you'll need to create the enterprise application separately. To register/create an application using the CLI for Microsoft 365, use the [m365 entra app add](../app/app-add.mdx) command.

## Examples

Creates an enterprise application for a registered Entra app with appId _b2307a39-e878-458b-bc90-03bc578531d6_.
Creates an enterprise application for a registered Entra app with the specified id.

```sh
m365 entra enterpriseapp add --appId b2307a39-e878-458b-bc90-03bc578531d6
m365 entra enterpriseapp add --id b2307a39-e878-458b-bc90-03bc578531d6
```

Creates an enterprise application for a registered Entra app with appName _Microsoft Graph_.
Creates an enterprise application for a registered Entra app with the specified displayName.

```sh
m365 entra enterpriseapp add --appName "Microsoft Graph"
m365 entra enterpriseapp add --displayName "Microsoft Graph"
```

Creates an enterprise application for a registered Entra app with objectId _b2307a39-e878-458b-bc90-03bc578531d6_.
Creates an enterprise application for a registered Entra app with the specified objectId.

```sh
m365 entra enterpriseapp add --objectId b2307a39-e878-458b-bc90-03bc578531d6
Expand Down Expand Up @@ -172,7 +172,7 @@ m365 entra enterpriseapp add --objectId b2307a39-e878-458b-bc90-03bc578531d6
<TabItem value="Markdown">

```md
# entra enterpriseapp add --appId "8da75b6a-4272-4b17-8ee1-20ba66e2b06f"
# entra enterpriseapp add --id "8da75b6a-4272-4b17-8ee1-20ba66e2b06f"

Date: 2023-06-02

Expand Down
Loading