diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0a1b7223f6d1..29b58094dffe 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -51,7 +51,7 @@ Rush provides many benefits: - When a change is made in a local dependency, Rush will detect that the dependency is dirty and will rebuild it if you attempt to build a project that consumes that dependency. - Rush runs project tasks in parallel, subject to the inter-project dependencies that it detects. It also performs incremental builds by default, not rebuilding anything unnecessary (unless you tell it to). -Not every library in the repository is managed by Rush yet, only those listed in the `projects` property in [rush.json](https://github.com/Azure/azure-sdk-for-js/blob/master/rush.json). Packages not managed by Rush can still be managed using `npm`. +Not every library in the repository is managed by Rush yet, only those listed in the `projects` property in [rush.json](https://github.com/Azure/azure-sdk-for-js/blob/main/rush.json). Packages not managed by Rush can still be managed using `npm`. ## Setting up your environment @@ -91,7 +91,7 @@ To build packages managed by Rush: To build packages not managed by Rush: -4. Navigate to the package directory as described in our [repository structure](https://github.com/Azure/azure-sdk/blob/master/docs/policies/repostructure.md) +4. Navigate to the package directory as described in our [repository structure](https://github.com/Azure/azure-sdk/blob/main/docs/policies/repostructure.md) 5. Install the package dependencies (`npm install`) 6. Build the package (`npm run build`) @@ -134,7 +134,7 @@ By default, Rush only displays things written to `STDERR`. If you want to see th If you want to run the tests of a specific project, go to that project's folder and execute `rushx test`. All of the tests will automatically run both in NodeJS and in the browser. To target these environments individually, you can run `rushx test:node` and `rushx test:browser`. -By default, these npm scripts run previously recorded tests. The recordings have been generated by using a custom recording library called [test-utils-recorder](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/recorder/README.md). We will examine how to run recorded tests and live tests in the following sections. +By default, these npm scripts run previously recorded tests. The recordings have been generated by using a custom recording library called [test-utils-recorder](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/recorder/README.md). We will examine how to run recorded tests and live tests in the following sections. #### Recorded tests @@ -152,7 +152,7 @@ The readme file in the `test` folder of each package lists the Azure resources a > Note: Our projects use dotenv to allow you to use `.env` files to set environment variables. Find the `sample.env` file nearest to the project you want to test to see a template of the expected `.env` file. -You can create the necessary Azure resources on your own, or automate this process by using the script called `New-TestResources.ps1` which uses ARM templates defined in a file named `test-resources.json` that exists in each project's folder. Follow the steps in [`Example 1 of New-TestResources.ps1`](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1.md#example-1) to set up a service principal and deploy the live test resources. +You can create the necessary Azure resources on your own, or automate this process by using the script called `New-TestResources.ps1` which uses ARM templates defined in a file named `test-resources.json` that exists in each project's folder. Follow the steps in [`Example 1 of New-TestResources.ps1`](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1.md#example-1) to set up a service principal and deploy the live test resources. #### Regenerating recordings @@ -160,7 +160,7 @@ If you modify the network calls (both the number of calls or their shape) either Regenerating the recordings has the same requirements as running the live tests. You will be using the same `test` npm script with the environment variables pointing to previously created Azure resources. The only difference is that the `TEST_MODE` environment variable needs to be set to `record`. When this process finishes without errors, the recordings will be updated. -For more information the recorder, please visit the [test-utils-recorder's readme](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/recorder/README.md). +For more information the recorder, please visit the [test-utils-recorder's readme](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/recorder/README.md). ### Other NPM scripts @@ -239,20 +239,20 @@ We used to have a git hook that formats your changed files on commit but it was ### Enforcing Azure SDK design guidelines -Our libraries follow the [TypeScript SDK design guidelines](https://azure.github.io/azure-sdk/typescript_introduction.html) to enhance the productivity of developers connecting to Azure services. These guidelines are enforced by our custom [ESLint plugin](https://github.com/Azure/azure-sdk-for-js/tree/master/common/tools/eslint-plugin-azure-sdk). Follow these instruction to use the plugin: +Our libraries follow the [TypeScript SDK design guidelines](https://azure.github.io/azure-sdk/typescript_introduction.html) to enhance the productivity of developers connecting to Azure services. These guidelines are enforced by our custom [ESLint plugin](https://github.com/Azure/azure-sdk-for-js/tree/main/common/tools/eslint-plugin-azure-sdk). Follow these instruction to use the plugin: + - [add `eslint` to your `devDependencies`](https://github.com/Azure/azure-sdk-for-js/blob/8ec9801c17b175573a115fc8b2d6cbaeb17b0b09/sdk/template/template/package.json#L106) - [add `eslint-plugin-azure-sdk` to your `devDependencies`](https://github.com/Azure/azure-sdk-for-js/blob/8ec9801c17b175573a115fc8b2d6cbaeb17b0b09/sdk/template/template/package.json#L93) - add a linting npm script as follows: - - ["lint": "eslint package.json api-extractor.json src test --ext .ts"](https://github.com/Azure/azure-sdk-for-js/blob/8ec9801c17b175573a115fc8b2d6cbaeb17b0b09/sdk/template/template/package.json#L49) + - ["lint": "eslint package.json api-extractor.json src test --ext .ts"](https://github.com/Azure/azure-sdk-for-js/blob/8ec9801c17b175573a115fc8b2d6cbaeb17b0b09/sdk/template/template/package.json#L49) You can run the plugin by excuting `rushx lint` inside your package directory. -If the package is internal, it should not follow the design guidelines and in turn should not be linted by the plugin. In this case, use the [internal configuration file](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/.eslintrc.internal.json) instead. For example: `"lint": "eslint --no-eslintrc -c ../../.eslintrc.internal.json package.json package.json src test --ext .ts"` - +If the package is internal, it should not follow the design guidelines and in turn should not be linted by the plugin. In this case, use the [internal configuration file](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/.eslintrc.internal.json) instead. For example: `"lint": "eslint --no-eslintrc -c ../../.eslintrc.internal.json package.json package.json src test --ext .ts"` ## Onboarding a new library -All libraries must follow our [repository structure](https://github.com/Azure/azure-sdk/blob/master/docs/policies/repostructure.md) (specifically, it must be located at `sdk//`) and your library's `package.json` must contain the required scripts as documented [above](#other-npm-scripts). +All libraries must follow our [repository structure](https://github.com/Azure/azure-sdk/blob/main/docs/policies/repostructure.md) (specifically, it must be located at `sdk//`) and your library's `package.json` must contain the required scripts as documented [above](#other-npm-scripts). The repository contains two different sets of libraries, each follows different rules for development and maintaining. The first type is generated automatically from the [swagger specifications](https://github.com/Azure/azure-rest-api-specs) and their code should not be edited by hand. Onboarding such library is just a matter of pushing its auto-generated directory to the right location in the repository. diff --git a/README.md b/README.md index 47e815a5bd22..85ebdaf28557 100644 --- a/README.md +++ b/README.md @@ -35,11 +35,11 @@ Libraries which enable you to provision specific resources. They are responsible - For detailed documentation visit our [Azure SDK for JavaScript documentation](https://aka.ms/js-docs) - File an issue via [GitHub Issues](https://github.com/Azure/azure-sdk-for-js/issues) - Check [previous questions](https://stackoverflow.com/questions/tagged/azure-sdk-js) or ask new ones on StackOverflow using `azure-sdk-js` tag. -- Read our [Support documentation](https://github.com/Azure/azure-sdk-for-js/blob/master/SUPPORT.md). +- Read our [Support documentation](https://github.com/Azure/azure-sdk-for-js/blob/main/SUPPORT.md). ### Community -Try our [community resources](https://github.com/Azure/azure-sdk-for-js/blob/master/SUPPORT.md#community-resources). +Try our [community resources](https://github.com/Azure/azure-sdk-for-js/blob/main/SUPPORT.md#community-resources). ### Reporting security issues and security bugs @@ -47,7 +47,7 @@ Security issues and bugs should be reported privately, via email, to the Microso ## Contributing -For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md). +For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md). This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com. diff --git a/common/config/rush/common-versions.json b/common/config/rush/common-versions.json index 6998f9ce9fde..83304b3912fd 100644 --- a/common/config/rush/common-versions.json +++ b/common/config/rush/common-versions.json @@ -56,7 +56,8 @@ // ] // Following is required to allow for backward compatibility with Event Processor Host Track 1 "@azure/event-hubs": ["^2.1.4"], - "@opentelemetry/api": ["^0.18.1"], + // Monitor-opentelemetry-exporter and monitor-query both depend on different versions of @opentelemetry and need to be updated + "@opentelemetry/api": ["^0.18.1", "0.21.0"], // Monitor: Allow node 10 types until Timeout / Timer conflict is resolved in OpenTelemetry repo // TODO: remove when released https://github.com/open-telemetry/opentelemetry-js/pull/1352 // eslint v7.15 needs node v10.12 @@ -69,9 +70,13 @@ // @azure/event-processor-host is on a much lower major version "@azure/ms-rest-nodeauth": ["^0.9.2"], // Idenity is moving from v1 to v2. Moving all packages to v2 is going to take a bit of time, in the mean time we could use v2 on the perf-identity tests. - "@azure/identity": ["2.0.0-beta.3", "^1.1.0"], + "@azure/identity": ["^2.0.0-beta.4", "2.0.0-beta.3", "^1.1.0"], + // App Config uses keyvault-secrets in a sample, switch to latest once the preview becomes GA // Issue #14771 tracks updating to these versions "@microsoft/api-extractor": ["7.13.2"], - "prettier": ["2.2.1"] + "prettier": ["2.2.1"], + // All packages should move to 1.0.0 once core-rest-pipeline 1.1.0 GAs + "@azure/core-tracing": ["1.0.0-preview.11"] + } } diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 001264213125..83efa376954e 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -39,6 +39,8 @@ dependencies: '@rush-temp/eventgrid': file:projects/eventgrid.tgz '@rush-temp/eventhubs-checkpointstore-blob': file:projects/eventhubs-checkpointstore-blob.tgz '@rush-temp/identity': file:projects/identity.tgz + '@rush-temp/identity-cache-persistence': file:projects/identity-cache-persistence.tgz + '@rush-temp/identity-vscode': file:projects/identity-vscode.tgz '@rush-temp/iot-device-update': file:projects/iot-device-update.tgz '@rush-temp/iot-modelsrepository': file:projects/iot-modelsrepository.tgz '@rush-temp/keyvault-admin': file:projects/keyvault-admin.tgz @@ -342,7 +344,7 @@ packages: integrity: sha512-CxaMaEjwtsmIhWtjHyGimKO7RmES0YxPqGQ9+jKqGygNlhG5NYHktDaiQu6w7k3g+I51VaLXtVSt+BVFd6VWfQ== /@azure/identity/1.2.5_debug@4.3.1: dependencies: - '@azure/core-http': 1.2.3 + '@azure/core-http': 1.2.6 '@azure/core-tracing': 1.0.0-preview.9 '@azure/logger': 1.0.2 '@azure/msal-node': 1.0.0-beta.6_debug@4.3.1 @@ -436,30 +438,6 @@ packages: node: '>=8.0.0' resolution: integrity: sha512-eOHstXRBRntoqBLi3bugYBEHpYkm0JiET6y5+P1fz7dqYRFN6hJW8qMJQtYIzIbpXJfRJTJdoiOS5fDQhsez0A== - /@azure/identity/2.0.0-beta.3_debug@4.3.1: - dependencies: - '@azure/abort-controller': 1.0.4 - '@azure/core-http': 1.2.6 - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/logger': 1.0.2 - '@azure/msal-browser': 2.9.0 - '@azure/msal-common': 4.0.3 - '@azure/msal-node': 1.1.0_debug@4.3.1 - '@types/stoppable': 1.1.1 - events: 3.3.0 - jws: 4.0.0 - open: 7.4.2 - qs: 6.10.1 - stoppable: 1.1.0 - tslib: 2.3.0 - uuid: 8.3.2 - dev: false - engines: - node: '>=8.0.0' - peerDependencies: - debug: '*' - resolution: - integrity: sha512-eOHstXRBRntoqBLi3bugYBEHpYkm0JiET6y5+P1fz7dqYRFN6hJW8qMJQtYIzIbpXJfRJTJdoiOS5fDQhsez0A== /@azure/keyvault-certificates/4.2.0: dependencies: '@azure/abort-controller': 1.0.4 @@ -612,6 +590,14 @@ packages: node: '>=0.8.0' resolution: integrity: sha512-Zyus+skNaVWL5fXfSjC17c94XZ95Z3a+bZc7YKkP26KT3Dj26jbfz2oT9KJxAT4XVtH/1WPY/fPFeEFTRvytJQ== + /@azure/msal-common/1.7.2: + dependencies: + debug: 4.3.1 + dev: false + engines: + node: '>=0.8.0' + resolution: + integrity: sha512-3/voCdFKONENX+5tMrNOBSrVJb6NbE7YB8vc4FZ/4ZbjpK7GVtq9Bu1MW+HZhrmsUzSF/joHx0ZIJDYIequ/jg== /@azure/msal-common/2.1.0: dependencies: debug: 4.3.1 @@ -636,6 +622,18 @@ packages: node: '>=0.8.0' resolution: integrity: sha512-jFqUWe83wVb6O8cNGGBFg2QlKvqM1ezUgJTEV7kIsAPX0RXhGFE4B1DLNt6hCnkTXDbw+KGW0zgxOEr4MJQwLw== + /@azure/msal-node-extensions/1.0.0-alpha.6: + dependencies: + '@azure/msal-common': 1.7.2 + bindings: 1.5.0 + keytar: 7.0.0 + nan: 2.14.2 + dev: false + engines: + node: '>=10' + requiresBuild: true + resolution: + integrity: sha512-fVufHc02C+daYOMAHBnE998abB4qUIeJ9gmTxmSelHhGfBGvvzMbCohCu4sTlSVDKUndF3yD/Nxvw/cEtpcZKg== /@azure/msal-node/1.0.0-beta.6: dependencies: '@azure/msal-common': 4.3.0 @@ -667,19 +665,6 @@ packages: node: 10 || 12 || 14 || 16 resolution: integrity: sha512-gMO9aZdWOzufp1PcdD5ID25DdS9eInxgeCqx4Tk8PVU6Z7RxJQhoMzS64cJhGdpYgeIQwKljtF0CLCcPFxew/w== - /@azure/msal-node/1.1.0_debug@4.3.1: - dependencies: - '@azure/msal-common': 4.3.0 - axios: 0.21.1_debug@4.3.1 - jsonwebtoken: 8.5.1 - uuid: 8.3.2 - dev: false - engines: - node: 10 || 12 || 14 || 16 - peerDependencies: - debug: '*' - resolution: - integrity: sha512-gMO9aZdWOzufp1PcdD5ID25DdS9eInxgeCqx4Tk8PVU6Z7RxJQhoMzS64cJhGdpYgeIQwKljtF0CLCcPFxew/w== /@babel/code-frame/7.12.11: dependencies: '@babel/highlight': 7.14.5 @@ -711,7 +696,7 @@ packages: '@babel/template': 7.14.5 '@babel/traverse': 7.14.5 '@babel/types': 7.14.5 - convert-source-map: 1.7.0 + convert-source-map: 1.8.0 debug: 4.3.1 gensync: 1.0.0-beta.2 json5: 2.2.0 @@ -977,7 +962,7 @@ packages: resolve: 1.17.0 semver: 7.3.5 source-map: 0.6.1 - typescript: 4.1.5 + typescript: 4.1.6 dev: false hasBin: true resolution: @@ -1062,22 +1047,34 @@ packages: node: '>=8.0.0' resolution: integrity: sha512-pKNxHe3AJ5T2N5G3AlT9gx6FyF5K2FS9ZNc+FipC+f1CpVF/EY+JHTJ749dnM2kWIgZTbDJFiGMuc0FYjNSCOg== + /@opentelemetry/api/0.21.0: + dev: false + engines: + node: '>=8.0.0' + resolution: + integrity: sha512-Q7hHb3nidPgnBS2fi+y3K64F3EV48d9v09/6EtigIgVF43NFNhw/dboDKC7gECEkbTwuvFeLCbwKs9JaC8LDEw== + /@opentelemetry/api/1.0.0: + dev: false + engines: + node: '>=8.0.0' + resolution: + integrity: sha512-TcdhrGy+ehLIFs79/TcWiHiPujishrhSgQ7wxvWvk8WY2YT8Np/pYXmRP94voG3N8GJ/5nIVyzacfViwhN50AQ== /@opentelemetry/api/1.0.0-rc.0: dev: false engines: node: '>=8.0.0' resolution: integrity: sha512-iXKByCMfrlO5S6Oh97BuM56tM2cIBB0XsL/vWF/AtJrJEKx4MC/Xdu0xDsGXMGcNWpqF7ujMsjjnp0+UHBwnDQ== - /@opentelemetry/context-async-hooks/0.19.0_@opentelemetry+api@1.0.0-rc.0: + /@opentelemetry/context-async-hooks/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 dev: false engines: node: '>=8.1.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-+lkG1nw3XJMm5dkOlwa9tZ6PQOJmH8moMEXzty10PlmvTcJgIq+gW8iHIPLocNTkuKKh+B/vNDVURJOSarAJUg== + integrity: sha512-3XxzT7jiDLbohUy66NWsYuWFtXsMI0qMhetWVlFmmBfMPLMR+U6xWA4xhfRMb6kMEjR5XJHbyDSxYwzxrd10sg== /@opentelemetry/context-base/0.10.2: dev: false engines: @@ -1093,54 +1090,56 @@ packages: node: '>=8.5.0' resolution: integrity: sha512-WG8veOEd8xZHuBaOHddzWQg5yj794lrEPAe6W1qI0YkV7pyqYXvhJdCxOU5Lyo1SWzTAjI5xrCUQ9J2WlrqzYA== - /@opentelemetry/core/0.19.0_@opentelemetry+api@1.0.0-rc.0: + /@opentelemetry/core/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/semantic-conventions': 0.21.0 semver: 7.3.5 dev: false engines: node: '>=8.5.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-t83FleVbHH6SWdUegclZbsnHn0OaHjq17Hd1zsJIRMM6WNuVzbXWA+3V6LCKXqUYyu3qwtZ/w45u/Nqfr5mEeQ== - /@opentelemetry/node/0.19.0_@opentelemetry+api@1.0.0-rc.0: + integrity: sha512-sZZQThBuqhCdBPgzPq4y9L4dhnpXXCCEqNsR6IUmMc/kQ8Bcw3lmI5fymLlliSt+lnTc26xJPVKZlwoQfwhThg== + /@opentelemetry/node/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 - '@opentelemetry/context-async-hooks': 0.19.0_@opentelemetry+api@1.0.0-rc.0 - '@opentelemetry/core': 0.19.0_@opentelemetry+api@1.0.0-rc.0 - '@opentelemetry/propagator-b3': 0.19.0_@opentelemetry+api@1.0.0-rc.0 - '@opentelemetry/propagator-jaeger': 0.19.0_@opentelemetry+api@1.0.0-rc.0 - '@opentelemetry/tracing': 0.19.0_@opentelemetry+api@1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/context-async-hooks': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/core': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/propagator-b3': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/propagator-jaeger': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/tracing': 0.21.0_@opentelemetry+api@0.21.0 semver: 7.3.5 dev: false engines: node: '>=8.0.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-mfUw4pEHoF6RLfO36yY3gv8BxNX1sItb16HwY27ipRO92BUKRZyclWI5XgpgPkBjZ07bbPwmru+mBOBVyadtOQ== - /@opentelemetry/propagator-b3/0.19.0_@opentelemetry+api@1.0.0-rc.0: + integrity: sha512-PCA3pFmzTMN3iIlZ6Bz2BgPe8jEIdKRK7WyjfT9qqrLrHZ/dXNmX4MIz2IKTyQtS6tGt2jayD0IpWsVFctPOIA== + /@opentelemetry/propagator-b3/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/core': 0.21.0_@opentelemetry+api@0.21.0 dev: false engines: node: '>=8.0.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-/4ef5RA5xtzPAdtab9ml49DUd8I9mtLtUb3k3HfNYAy5RkJfJ5j4lpnUe0ZFPCOsonGyFHjtkN4s1j9MGHT5cQ== - /@opentelemetry/propagator-jaeger/0.19.0_@opentelemetry+api@1.0.0-rc.0: + integrity: sha512-KXQKXa76ilzBNdwr7hze9251g0AqBmwhCPnt17UCgb+97DFcOyEy5Rc7nnjZNxNGYYqUbk8116MK9hMZO2icGw== + /@opentelemetry/propagator-jaeger/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 - '@opentelemetry/core': 0.19.0_@opentelemetry+api@1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/core': 0.21.0_@opentelemetry+api@0.21.0 dev: false engines: node: '>=8.5.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-y2HgU5JzBKIJvRnlhRdcnokWKe7doWlBK60bTWawMYhThproa5Pn4h7dOKSnvtcBljhugXqkfhI8nkg3Syzwyw== + integrity: sha512-H0TaYBvDi4stz19UJNPFR1IRikQYjoKYuV6tZV4V5NnPAFTjBhvj/Heb0fNDUWK5G1tVB5NPrEsNSZjjdfvjLw== /@opentelemetry/resources/0.18.2: dependencies: '@opentelemetry/api': 0.18.1 @@ -1150,29 +1149,30 @@ packages: node: '>=8.0.0' resolution: integrity: sha512-EBPqFsreXgFaqkMmWCE8vh6pFhbWExRHSO24qSeGhxFmM5SQP/D1jJqMp/jVUSmrF97fPkMS0aEH5z7NOWdxQA== - /@opentelemetry/resources/0.19.0_@opentelemetry+api@1.0.0-rc.0: + /@opentelemetry/resources/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 - '@opentelemetry/core': 0.19.0_@opentelemetry+api@1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/core': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/semantic-conventions': 0.21.0 dev: false engines: node: '>=8.0.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-wrgclhxBH4ZO86u6veSXRtH3hv9q2kaQ1/cfstWun2y6YqjajpqAdyEHrlFWYyjr3t1ze0R68GjYQxPVWYURzg== + integrity: sha512-xQUL2/2npP/isH8sbOSdynIRWmlM6p02L9Ex8x/BhUuSkGrMoxO2ezLPPYnfYam1py6ubaz8m1C54O2IRCmgQQ== /@opentelemetry/semantic-conventions/0.18.2: dev: false engines: node: '>=8.0.0' resolution: integrity: sha512-+0P+PrP9qSFVaayNdek4P1OAGE+PEl2SsufuHDRmUpOY25Wzjo7Atyar56Trjc32jkNy4lID6ZFT6BahsR9P9A== - /@opentelemetry/semantic-conventions/0.19.0: + /@opentelemetry/semantic-conventions/0.21.0: dev: false engines: node: '>=8.0.0' resolution: - integrity: sha512-MMXhYEvNakvXC+oa5muX8KS2z+rsXLXwabjuzXcbJPH+rvo5XFNQ1c7svxb0B1xPpm4KT7fnH2DVfYqQzsCteQ== + integrity: sha512-qQtZJ8Q+bO/gemBELsZbz5s//tNnyc+mQD/0RHc77XhI6ZBb+tprU6KN/7l0fl5z29smmai0hcJ9UNILC/7nIw== /@opentelemetry/tracing/0.18.2: dependencies: '@opentelemetry/api': 0.18.1 @@ -1185,20 +1185,20 @@ packages: node: '>=8.0.0' resolution: integrity: sha512-IQSu+NwMhX8O9Wkjc4HjNqs/aKfkcInCE3dQuAOBBec/saLrM6jqd+Fa5QUzg03WMOqpDuZm5KTkr5+6DUrr0g== - /@opentelemetry/tracing/0.19.0_@opentelemetry+api@1.0.0-rc.0: + /@opentelemetry/tracing/0.21.0_@opentelemetry+api@0.21.0: dependencies: - '@opentelemetry/api': 1.0.0-rc.0 - '@opentelemetry/core': 0.19.0_@opentelemetry+api@1.0.0-rc.0 - '@opentelemetry/resources': 0.19.0_@opentelemetry+api@1.0.0-rc.0 - '@opentelemetry/semantic-conventions': 0.19.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/core': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/resources': 0.21.0_@opentelemetry+api@0.21.0 + '@opentelemetry/semantic-conventions': 0.21.0 lodash.merge: 4.6.2 dev: false engines: node: '>=8.0.0' peerDependencies: - '@opentelemetry/api': ^1.0.0-rc.0 + '@opentelemetry/api': ^0.21.0 resolution: - integrity: sha512-RUmPZLQi4+nlHwTFpHqU45TMW+osIraDtf0jcFKLacKltGIft65tVxIEVn1uF9N9eG7NZzjXLo3jsvCzpavJ8Q== + integrity: sha512-6+2pfFpu7Yo2DwmBK9sHDUSIL7UshcEMwDF6+LghGK68ILRaEMqqBPgKarjhFH9ERgJB9GOkJ2snK96qIzMZNA== /@rollup/plugin-commonjs/11.0.2_rollup@1.32.1: dependencies: '@rollup/pluginutils': 3.1.0_rollup@1.32.1 @@ -1378,33 +1378,33 @@ packages: /@types/body-parser/1.19.0: dependencies: '@types/connect': 3.4.34 - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ== /@types/chai-as-promised/7.1.4: dependencies: - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 dev: false resolution: integrity: sha512-1y3L1cHePcIm5vXkh1DSGf/zQq5n5xDKG1fpCvf18+uOkpce0Z1ozNFPkyWsVswK7ntN1sZBw3oU6gmN+pDUcA== /@types/chai-string/1.4.2: dependencies: - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 dev: false resolution: integrity: sha512-ld/1hV5qcPRGuwlPdvRfvM3Ka/iofOk2pH4VkasK4b1JJP1LjNmWWn0LsISf6RRzyhVOvs93rb9tM09e+UuF8Q== - /@types/chai/4.2.18: + /@types/chai/4.2.19: dev: false resolution: - integrity: sha512-rS27+EkB/RE1Iz3u0XtVL5q36MGDWbgYe7zWiodyKNUnthxY0rukK5V36eiUCtCisB7NN8zKYH6DO2M37qxFEQ== + integrity: sha512-jRJgpRBuY+7izT7/WNXP/LsMO9YonsstuL+xuvycDyESpoDoIAsMd7suwpB4h9oEWB+ZlPTqJJ8EHomzNhwTPQ== /@types/component-emitter/1.2.10: dev: false resolution: integrity: sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg== /@types/connect/3.4.34: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ== @@ -1437,7 +1437,7 @@ packages: integrity: sha512-LfZwXoGUDo0C3me81HXgkBg5CTQYb6xzEl+fNmbO4JdRiSKQ8A0GD1OBBvKAIsbCUgoyAty7m99GqqMQe784ew== /@types/express-serve-static-core/4.17.21: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 '@types/qs': 6.9.6 '@types/range-parser': 1.2.3 dev: false @@ -1461,20 +1461,20 @@ packages: integrity: sha512-IyNhGHu71jH1jCXTHmafuoAAdsbBON3kDh7u/UUhLmjYgN5TYB54e1R8ckTCiIevl2UuZaCsi9XRxineY5yUjw== /@types/fs-extra/8.1.1: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-TcUlBem321DFQzBNuz8p0CLLKp0VvF/XH9E4KHNmgwyp4E3AfgI5cjiIVZWlbfThBop2qxFIh4+LeY6hVWWZ2w== /@types/glob/7.1.3: dependencies: '@types/minimatch': 3.0.4 - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w== /@types/is-buffer/2.0.0: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-0f7N/e3BAz32qDYvgB4d2cqv1DqUwvGxHkXsrucICn8la1Vb6Yl6Eg8mPScGwUiqHJeE7diXlzaK+QMA9m4Gxw== @@ -1486,15 +1486,15 @@ packages: dev: false resolution: integrity: sha1-7ihweulOEdK4J7y+UnC86n8+ce4= - /@types/jsonwebtoken/8.5.1: + /@types/jsonwebtoken/8.5.2: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: - integrity: sha512-rNAPdomlIUX0i0cg2+I+Q1wOUr531zHBQ+cV/28PJ39bSPKjahatZZ2LMuhiguETkCgLVzfruw/ZvNMNkKoSzw== + integrity: sha512-X8BOCkp+WJVNYCYIBugREtVZa4Y09Or9HDx6xqRZem5F8jJV8FuJgNessXyMuv9+U8pjnvdezASwU28uw+1scw== /@types/jws/3.2.3: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-g54CHxwvaHvyJyeuZqe7VQujV9SfCXwEkboJp355INPL+kjlS3Aq153EHptaeO/Cch/NPJ1i2sHz0sDDizn7LQ== @@ -1508,7 +1508,7 @@ packages: integrity: sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== /@types/md5/2.3.0: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-556YJ7ejzxIqSSxzyGGpctuZOarNZJt/zlEkhmmDc1f/slOEANHuwu2ZX7YaZ40rMiWoxt8GvAhoDpW1cmSy6A== @@ -1534,13 +1534,13 @@ packages: integrity: sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w== /@types/mock-fs/4.10.0: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-FQ5alSzmHMmliqcL36JqIA4Yyn9jyJKvRSGV3mvPh108VFatX7naJDzSG4fnFQNZFq9dIx0Dzoe6ddflMB2Xkg== /@types/mock-require/2.0.0: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-nOgjoE5bBiDeiA+z41i95makyHUSMWQMOPocP+J67Pqx/68HAXaeWN1NFtrAYYV6LrISIZZ8vKHm/a50k0f6Sg== @@ -1550,7 +1550,7 @@ packages: integrity: sha512-DPxmjiDwubsNmguG5X4fEJ+XCyzWM3GXWsqQlvUcjJKa91IOoJUy51meDr0GkzK64qqNcq85ymLlyjoct9tInw== /@types/node-fetch/2.5.10: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 form-data: 3.0.1 dev: false resolution: @@ -1563,10 +1563,10 @@ packages: dev: false resolution: integrity: sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== - /@types/node/15.12.2: + /@types/node/15.12.4: dev: false resolution: - integrity: sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww== + integrity: sha512-zrNj1+yqYF4WskCMOHwN+w9iuD12+dGm0rQ35HLl9/Ouuq52cEtd0CH9qMgrdNmi5ejC1/V7vKEXYubB+65DkA== /@types/node/8.10.66: dev: false resolution: @@ -1593,7 +1593,7 @@ packages: integrity: sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== /@types/resolve/1.17.1: dependencies: - '@types/node': 15.12.2 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw== @@ -1604,7 +1604,7 @@ packages: /@types/serve-static/1.13.9: dependencies: '@types/mime': 1.3.2 - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA== @@ -1620,7 +1620,7 @@ packages: integrity: sha512-dIPoZ3g5gcx9zZEszaxLSVTvMReD3xxyyDnQUjA6IYDG9Ba2AV0otMPs+77sG9ojB4Qr2N2Vk5RnKeuA0X/0bg== /@types/stoppable/1.1.1: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-b8N+fCADRIYYrGZOcmOR8ZNBOqhktWTB/bMUl5LvGtT201QKJZOOH5UsFyI3qtteM6ZAJbJqZoBcLqqxKIwjhw== @@ -1630,7 +1630,7 @@ packages: integrity: sha512-I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A== /@types/tunnel/0.0.1: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-AOqu6bQu5MSWwYvehMXLukFHnupHrpZ8nvgae5Ggie9UwzDR1CCwoXgSSWNZJuyOlCdfdsWMA5F2LlmvyoTv8A== @@ -1642,32 +1642,32 @@ packages: dev: false resolution: integrity: sha512-eQ9qFW/fhfGJF8WKHGEHZEyVWfZxrT+6CLIJGBcZPfxUh/+BnEj+UCGYMlr9qZuX/2AltsvwrGqp0LhEW8D0zQ== - /@types/ws/7.4.4: + /@types/ws/7.4.5: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: - integrity: sha512-d/7W23JAXPodQNbOZNXvl2K+bqAQrCMwlh/nuQsPSQk6Fq0opHoPrUw43aHsvSbIiQPr8Of2hkFbnz1XBFVyZQ== + integrity: sha512-8mbDgtc8xpxDDem5Gwj76stBDJX35KQ3YBoayxlqUQcL5BZUthiqP/VQ4PQnLHqM4PmlbyO74t98eJpURO+gPA== /@types/xml2js/0.4.8: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false resolution: integrity: sha512-EyvT83ezOdec7BhDaEcsklWy7RSIdi6CNe95tmOAK0yx/Lm30C9K75snT3fYayK59ApC2oyW+rcHErdG05FHJA== /@types/yauzl/2.9.1: dependencies: - '@types/node': 8.10.66 + '@types/node': 15.12.4 dev: false optional: true resolution: integrity: sha512-A1b8SU4D10uoPjwb0lnHmmu8wZhR9d+9o2PKBQT2jU5YPTKsxac6M2qGAdY7VcL+dHHhARVUDmeg0rOrcd9EjA== - /@typescript-eslint/eslint-plugin/4.19.0_579c993deb6b0313d5d0f5c428bab62d: + /@typescript-eslint/eslint-plugin/4.19.0_32b60b6a5d7033b9e5296983f03a72ce: dependencies: - '@typescript-eslint/experimental-utils': 4.19.0_eslint@7.28.0+typescript@4.2.4 - '@typescript-eslint/parser': 4.19.0_eslint@7.28.0+typescript@4.2.4 + '@typescript-eslint/experimental-utils': 4.19.0_eslint@7.29.0+typescript@4.2.4 + '@typescript-eslint/parser': 4.19.0_eslint@7.29.0+typescript@4.2.4 '@typescript-eslint/scope-manager': 4.19.0 debug: 4.3.1 - eslint: 7.28.0 + eslint: 7.29.0 functional-red-black-tree: 1.0.1 lodash: 4.17.21 regexpp: 3.2.0 @@ -1686,13 +1686,13 @@ packages: optional: true resolution: integrity: sha512-CRQNQ0mC2Pa7VLwKFbrGVTArfdVDdefS+gTw0oC98vSI98IX5A8EVH4BzJ2FOB0YlCmm8Im36Elad/Jgtvveaw== - /@typescript-eslint/experimental-utils/4.19.0_eslint@7.28.0+typescript@4.2.4: + /@typescript-eslint/experimental-utils/4.19.0_eslint@7.29.0+typescript@4.2.4: dependencies: '@types/json-schema': 7.0.7 '@typescript-eslint/scope-manager': 4.19.0 '@typescript-eslint/types': 4.19.0 '@typescript-eslint/typescript-estree': 4.19.0_typescript@4.2.4 - eslint: 7.28.0 + eslint: 7.29.0 eslint-scope: 5.1.1 eslint-utils: 2.1.0 dev: false @@ -1703,13 +1703,13 @@ packages: typescript: '*' resolution: integrity: sha512-9/23F1nnyzbHKuoTqFN1iXwN3bvOm/PRIXSBR3qFAYotK/0LveEOHr5JT1WZSzcD6BESl8kPOG3OoDRKO84bHA== - /@typescript-eslint/parser/4.19.0_eslint@7.28.0+typescript@4.2.4: + /@typescript-eslint/parser/4.19.0_eslint@7.29.0+typescript@4.2.4: dependencies: '@typescript-eslint/scope-manager': 4.19.0 '@typescript-eslint/types': 4.19.0 '@typescript-eslint/typescript-estree': 4.19.0_typescript@4.2.4 debug: 4.3.1 - eslint: 7.28.0 + eslint: 7.29.0 typescript: 4.2.4 dev: false engines: @@ -1742,7 +1742,7 @@ packages: '@typescript-eslint/types': 4.19.0 '@typescript-eslint/visitor-keys': 4.19.0 debug: 4.3.1 - globby: 11.0.3 + globby: 11.0.4 is-glob: 4.0.1 semver: 7.3.5 tsutils: 3.21.0_typescript@4.2.4 @@ -1939,7 +1939,6 @@ packages: integrity: sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw== /aproba/1.2.0: dev: false - optional: true resolution: integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== /archy/1.0.0: @@ -1951,7 +1950,6 @@ packages: delegates: 1.0.0 readable-stream: 2.3.7 dev: false - optional: true resolution: integrity: sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== /arg/4.1.3: @@ -2236,6 +2234,12 @@ packages: node: '>=8' resolution: integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + /bindings/1.5.0: + dependencies: + file-uri-to-path: 1.0.0 + dev: false + resolution: + integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== /bl/4.1.0: dependencies: buffer: 5.7.1 @@ -2286,7 +2290,7 @@ packages: integrity: sha1-rrGvKN5sDXpqLOQK22j/GEIq8x8= /browserslist/4.16.6: dependencies: - caniuse-lite: 1.0.30001237 + caniuse-lite: 1.0.30001239 colorette: 1.2.2 electron-to-chromium: 1.3.752 escalade: 3.1.1 @@ -2370,10 +2374,10 @@ packages: node: '>=6' resolution: integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== - /caniuse-lite/1.0.30001237: + /caniuse-lite/1.0.30001239: dev: false resolution: - integrity: sha512-pDHgRndit6p1NR2GhzMbQ6CkRrp4VKuSsqbcLeOQppYPKOYkKT/6ZvZDvKJUqcmtyWIAHuZq3SVS2vc1egCZzw== + integrity: sha512-cyBkXJDMeI4wthy8xJ2FvDU6+0dtcZSJW3voUF8+e9f1bBeuvyZfc3PNbkOETyhbR+dGCPzn9E7MA3iwzusOhQ== /caseless/0.12.0: dev: false resolution: @@ -2529,7 +2533,6 @@ packages: dev: false engines: node: '>=0.10.0' - optional: true resolution: integrity: sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= /color-convert/1.9.3: @@ -2613,7 +2616,6 @@ packages: integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== /console-control-strings/1.1.0: dev: false - optional: true resolution: integrity: sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= /content-disposition/0.5.3: @@ -2630,12 +2632,12 @@ packages: node: '>= 0.6' resolution: integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== - /convert-source-map/1.7.0: + /convert-source-map/1.8.0: dependencies: safe-buffer: 5.1.2 dev: false resolution: - integrity: sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + integrity: sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== /cookie-signature/1.0.6: dev: false resolution: @@ -2658,11 +2660,11 @@ packages: requiresBuild: true resolution: integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== - /core-js/3.14.0: + /core-js/3.15.0: dev: false requiresBuild: true resolution: - integrity: sha512-3s+ed8er9ahK+zJpp9ZtuVcDoFzHNiZsPbNAAE4KXgrRHbjSqqNN6xGSXq6bq7TZIbKj4NLrLb6bJ5i+vSVjHA== + integrity: sha512-GUbtPllXMYRzIgHNZ4dTYTcUemls2cni83Q4Q/TrFONHfhcg9oEGOtaGHfb0cpzec60P96UKPvMkjX1jET8rUw== /core-util-is/1.0.2: dev: false resolution: @@ -2788,7 +2790,7 @@ packages: integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== /debug/3.2.6: dependencies: - ms: 2.1.1 + ms: 2.1.3 deprecated: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797) dev: false resolution: @@ -2837,7 +2839,6 @@ packages: dev: false engines: node: '>=8' - optional: true resolution: integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw== /deep-eql/3.0.1: @@ -2852,7 +2853,6 @@ packages: dev: false engines: node: '>=4.0.0' - optional: true resolution: integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== /deep-freeze/0.0.1: @@ -2909,7 +2909,6 @@ packages: integrity: sha1-3zrhmayt+31ECqrgsp4icrJOxhk= /delegates/1.0.0: dev: false - optional: true resolution: integrity: sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= /depd/1.1.2: @@ -2927,7 +2926,6 @@ packages: engines: node: '>=0.10' hasBin: true - optional: true resolution: integrity: sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= /di/0.0.1: @@ -3002,7 +3000,7 @@ packages: /downlevel-dts/0.4.0: dependencies: shelljs: 0.8.4 - typescript: 3.9.9 + typescript: 3.9.10 dev: false hasBin: true resolution: @@ -3175,9 +3173,9 @@ packages: source-map: 0.6.1 resolution: integrity: sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== - /eslint-config-prettier/7.2.0_eslint@7.28.0: + /eslint-config-prettier/7.2.0_eslint@7.29.0: dependencies: - eslint: 7.28.0 + eslint: 7.29.0 dev: false hasBin: true peerDependencies: @@ -3200,9 +3198,9 @@ packages: node: '>=4' resolution: integrity: sha512-ZXI9B8cxAJIH4nfkhTwcRTEAnrVfobYqwjWy/QMCZ8rHkZHFjf9yO4BzpiF9kCSfNlMG54eKigISHpX0+AaT4A== - /eslint-plugin-es/3.0.1_eslint@7.28.0: + /eslint-plugin-es/3.0.1_eslint@7.29.0: dependencies: - eslint: 7.28.0 + eslint: 7.29.0 eslint-utils: 2.1.0 regexpp: 3.2.0 dev: false @@ -3212,13 +3210,13 @@ packages: eslint: '>=4.19.1' resolution: integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ== - /eslint-plugin-import/2.23.4_eslint@7.28.0: + /eslint-plugin-import/2.23.4_eslint@7.29.0: dependencies: array-includes: 3.1.3 array.prototype.flat: 1.2.4 debug: 2.6.9 doctrine: 2.1.0 - eslint: 7.28.0 + eslint: 7.29.0 eslint-import-resolver-node: 0.3.4 eslint-module-utils: 2.6.1 find-up: 2.1.0 @@ -3243,10 +3241,10 @@ packages: node: '>=4.0.0' resolution: integrity: sha512-T9SmE/g6UV1uZo1oHAqOvL86XWl7Pl2EpRpnLI8g/bkJu+h7XBCB+1LnubRZ2CUQXj805vh4/CYZdnqtVaEo2Q== - /eslint-plugin-node/11.1.0_eslint@7.28.0: + /eslint-plugin-node/11.1.0_eslint@7.29.0: dependencies: - eslint: 7.28.0 - eslint-plugin-es: 3.0.1_eslint@7.28.0 + eslint: 7.29.0 + eslint-plugin-es: 3.0.1_eslint@7.29.0 eslint-utils: 2.1.0 ignore: 5.1.8 minimatch: 3.0.4 @@ -3301,7 +3299,7 @@ packages: node: '>=10' resolution: integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - /eslint/7.28.0: + /eslint/7.29.0: dependencies: '@babel/code-frame': 7.12.11 '@eslint/eslintrc': 0.4.2 @@ -3347,7 +3345,7 @@ packages: node: ^10.12.0 || >=12.0.0 hasBin: true resolution: - integrity: sha512-UMfH0VSjP0G4p3EWirscJEQ/cHqnT/iuH6oNZOB94nBjWbMnhGEPxsZm1eyIW0C/9jLI0Fow4W5DXLjEI7mn1g== + integrity: sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA== /esm/3.2.25: dev: false engines: @@ -3456,7 +3454,6 @@ packages: dev: false engines: node: '>=6' - optional: true resolution: integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== /expand-tilde/2.0.2: @@ -3572,7 +3569,7 @@ packages: dependencies: '@babel/core': 7.14.6 '@babel/runtime': 7.14.6 - core-js: 3.14.0 + core-js: 3.15.0 debug: 4.3.1 glob-to-regexp: 0.4.1 is-subset: 0.1.1 @@ -3599,6 +3596,10 @@ packages: node: ^10.12.0 || >=12.0.0 resolution: integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + /file-uri-to-path/1.0.0: + dev: false + resolution: + integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== /file-uri-to-path/2.0.0: dev: false engines: @@ -3850,7 +3851,6 @@ packages: strip-ansi: 3.0.1 wide-align: 1.1.3 dev: false - optional: true resolution: integrity: sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= /gensync/1.0.0-beta.2: @@ -3916,7 +3916,6 @@ packages: integrity: sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= /github-from-package/0.0.0: dev: false - optional: true resolution: integrity: sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= /glob-parent/5.1.2: @@ -3996,7 +3995,7 @@ packages: node: '>=8' resolution: integrity: sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA== - /globby/11.0.3: + /globby/11.0.4: dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -4008,7 +4007,7 @@ packages: engines: node: '>=10' resolution: - integrity: sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== + integrity: sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== /graceful-fs/4.2.6: dev: false resolution: @@ -4099,7 +4098,6 @@ packages: integrity: sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== /has-unicode/2.0.1: dev: false - optional: true resolution: integrity: sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= /has/1.0.3: @@ -4422,7 +4420,6 @@ packages: dev: false engines: node: '>=0.10.0' - optional: true resolution: integrity: sha1-754xOG8DGn8NZDr4L95QxFfvAMs= /is-fullwidth-code-point/2.0.0: @@ -4731,10 +4728,10 @@ packages: hasBin: true resolution: integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - /jsbi/3.1.4: + /jsbi/3.1.5: dev: false resolution: - integrity: sha512-52QRRFSsi9impURE8ZUbzAMCLjPm4THO7H2fcuIvaaeFTbSysvkodbQQXIVsNgq/ypDbq6dJiuGKL0vZ/i9hUg== + integrity: sha512-w2BY0VOYC1ahe+w6Qhl4SFoPvPsZ9NPHY4bwass+LCgU7RK3PBoVQlQ3G1s7vI8W3CYyJiEXcbKF7FIM/L8q3Q== /jsbn/0.1.1: dev: false resolution: @@ -5078,12 +5075,19 @@ packages: debug: '*' resolution: integrity: sha512-hbhRogUYIulfkBTZT7xoPrCYhRBnBoqbbL4fszWD0ReFGUxU+LYBr3dwKdAluaDQ/ynT9/7C+Lf7pPNW4gSx4Q== + /keytar/7.0.0: + dependencies: + node-addon-api: 3.2.1 + prebuild-install: 5.3.5 + dev: false + requiresBuild: true + resolution: + integrity: sha512-uvmdb5ZE2NgegcUDrmhutI9BUh+bTbt8+bwPliOMiLiWmrV76Tfg6DyI7Ud903a/4xlkJpKGnR0TyRpRyFOc3A== /keytar/7.7.0: dependencies: node-addon-api: 3.2.1 prebuild-install: 6.1.3 dev: false - optional: true requiresBuild: true resolution: integrity: sha512-YEY9HWqThQc5q5xbXbRwsZTh2PJ36OSYRjSv3NN2xf5s5dpLTjEZnC2YikR29OaVybf9nQ0dJ/80i40RS97t/A== @@ -5412,7 +5416,6 @@ packages: dev: false engines: node: '>=8' - optional: true resolution: integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA== /min-document/2.19.0: @@ -5535,6 +5538,10 @@ packages: node: '>=0.8.0' resolution: integrity: sha512-8vW5/+irlcQQk87r8Qp3/kQEc552hr7FQLJ6GF5LLkqnwJDDxrswz6RYPiQhmiampymIs0PbHVZrNf8m+6DmgQ== + /nan/2.14.2: + dev: false + resolution: + integrity: sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== /nanoid/3.1.23: dev: false engines: @@ -5544,7 +5551,6 @@ packages: integrity: sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw== /napi-build-utils/1.0.2: dev: false - optional: true resolution: integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg== /natural-compare/1.4.0: @@ -5600,7 +5606,6 @@ packages: dependencies: semver: 5.7.1 dev: false - optional: true resolution: integrity: sha512-g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg== /node-abort-controller/1.2.1: @@ -5609,7 +5614,6 @@ packages: integrity: sha512-79PYeJuj6S9+yOHirR0JBLFOgjB6sQCir10uN6xRx25iD+ZD4ULqgRn3MwWBRaQGB0vEgReJzWwJo42T1R6YbQ== /node-addon-api/3.2.1: dev: false - optional: true resolution: integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== /node-environment-flags/1.0.6: @@ -5629,6 +5633,10 @@ packages: dev: false resolution: integrity: sha512-uW7fodD6pyW2FZNZnp/Z3hvWKeEW1Y8R1+1CnErE8cXFXzl5blBOoVB41CvMer6P6Q0S5FXDwcHgFd1Wj0U9zg== + /noop-logger/0.1.1: + dev: false + resolution: + integrity: sha1-lKKxYzxPExdVMAfYlm/Q6EG2pMI= /normalize-package-data/2.5.0: dependencies: hosted-git-info: 2.8.9 @@ -5684,21 +5692,19 @@ packages: gauge: 2.7.4 set-blocking: 2.0.0 dev: false - optional: true resolution: integrity: sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== /number-is-nan/1.0.1: dev: false engines: node: '>=0.10.0' - optional: true resolution: integrity: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= /nyc/14.1.1: dependencies: archy: 1.0.0 caching-transform: 3.0.2 - convert-source-map: 1.7.0 + convert-source-map: 1.8.0 cp-file: 6.2.0 find-cache-dir: 2.1.0 find-up: 3.0.0 @@ -6095,6 +6101,29 @@ packages: node: '>=4' resolution: integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== + /prebuild-install/5.3.5: + dependencies: + detect-libc: 1.0.3 + expand-template: 2.0.3 + github-from-package: 0.0.0 + minimist: 1.2.5 + mkdirp: 0.5.5 + napi-build-utils: 1.0.2 + node-abi: 2.30.0 + noop-logger: 0.1.1 + npmlog: 4.1.2 + pump: 3.0.0 + rc: 1.2.8 + simple-get: 3.1.0 + tar-fs: 2.1.1 + tunnel-agent: 0.6.0 + which-pm-runs: 1.0.0 + dev: false + engines: + node: '>=6' + hasBin: true + resolution: + integrity: sha512-YmMO7dph9CYKi5IR/BzjOJlRzpxGGVo1EsLSUZ0mt/Mq0HWZIHOKHHcHdT69yG54C9m6i45GpItwRHpk0Py7Uw== /prebuild-install/6.1.3: dependencies: detect-libc: 1.0.3 @@ -6114,7 +6143,6 @@ packages: engines: node: '>=6' hasBin: true - optional: true resolution: integrity: sha512-iqqSR84tNYQUQHRXalSKdIaM8Ov1QxOVuBNWI7+BzZWv6Ih9k75wOnH1rGQ9WWTaaLkTpxWKIciOF0KyfM74+Q== /prelude-ls/1.1.2: @@ -6243,7 +6271,7 @@ packages: rimraf: 3.0.2 tar-fs: 2.1.1 unbzip2-stream: 1.4.3 - ws: 7.4.6 + ws: 7.5.0 dev: false engines: node: '>=10.18.1' @@ -6352,7 +6380,6 @@ packages: strip-json-comments: 2.0.1 dev: false hasBin: true - optional: true resolution: integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== /read-pkg-up/3.0.0: @@ -6696,7 +6723,7 @@ packages: /rollup/1.32.1: dependencies: '@types/estree': 0.0.48 - '@types/node': 8.10.66 + '@types/node': 15.12.4 acorn: 7.4.1 dev: false hasBin: true @@ -6870,7 +6897,6 @@ packages: integrity: sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== /simple-concat/1.0.1: dev: false - optional: true resolution: integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== /simple-get/3.1.0: @@ -6879,7 +6905,6 @@ packages: once: 1.4.0 simple-concat: 1.0.1 dev: false - optional: true resolution: integrity: sha512-bCR6cP+aTdScaQCnQKbPKtJOKDp/hj9EDLJo3Nw4y1QksqaovlW/bnptB6/c1e+qmNIDHRK+oXFDdEqBT8WzUA== /sinon/9.2.4: @@ -6987,7 +7012,7 @@ packages: dependencies: '@types/cookie': 0.4.0 '@types/cors': 2.8.10 - '@types/node': 15.12.2 + '@types/node': 15.12.4 accepts: 1.3.7 base64id: 2.0.0 debug: 4.3.1 @@ -7166,7 +7191,6 @@ packages: dev: false engines: node: '>=0.10.0' - optional: true resolution: integrity: sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= /string-width/2.1.1: @@ -7598,20 +7622,20 @@ packages: hasBin: true resolution: integrity: sha512-MmQdgo/XenfZPvVLtKZOq9jQQvzaUAUpcKW8Z43x9B2fOm4S5g//tPtMweZUIP+SoBqrVPEIm+dJeQ9dfO0QdA== - /typescript/3.9.9: + /typescript/3.9.10: dev: false engines: node: '>=4.2.0' hasBin: true resolution: - integrity: sha512-kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w== - /typescript/4.1.5: + integrity: sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q== + /typescript/4.1.6: dev: false engines: node: '>=4.2.0' hasBin: true resolution: - integrity: sha512-6OSu9PTIzmn9TCDiovULTnET6BgXtDYL4Gg4szY+cGsc3JP1dQL8qvE8kShTRx1NIw4Q9IBHlwODjkjWEtMUyA== + integrity: sha512-pxnwLxeb/Z5SP80JDRzVjh58KsM6jZHRAOtTpS7sXLS4ogXNKC9ANxHHZqLLeVHZN35jCtI4JdmLLbLiC1kBow== /typescript/4.2.4: dev: false engines: @@ -7806,6 +7830,10 @@ packages: dev: false resolution: integrity: sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + /which-pm-runs/1.0.0: + dev: false + resolution: + integrity: sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= /which-typed-array/1.1.4: dependencies: available-typed-arrays: 1.0.4 @@ -7904,6 +7932,20 @@ packages: optional: true resolution: integrity: sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + /ws/7.5.0: + dev: false + engines: + node: '>=8.3.0' + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + resolution: + integrity: sha512-6ezXvzOZupqKj4jUqbQ9tXuJNo+BR2gU8fFRk3XCP3e0G6WT414u5ELe6Y0vtp7kmSJ3F7YWObSNr1ESsgi4vw== /xhr-mock/2.5.1: dependencies: global: 4.4.0 @@ -7999,12 +8041,12 @@ packages: dev: false resolution: integrity: sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== - /yargs-parser/20.2.7: + /yargs-parser/20.2.9: dev: false engines: node: '>=10' resolution: - integrity: sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== + integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== /yargs-unparser/1.6.0: dependencies: flat: 4.1.1 @@ -8038,7 +8080,7 @@ packages: require-directory: 2.1.1 string-width: 4.2.2 y18n: 5.0.8 - yargs-parser: 20.2.7 + yargs-parser: 20.2.9 dev: false engines: node: '>=10' @@ -8081,7 +8123,7 @@ packages: cross-env: 7.0.3 delay: 4.4.1 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8116,13 +8158,13 @@ packages: '@azure/core-rest-pipeline': 1.0.4 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.13.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8156,7 +8198,6 @@ packages: version: 0.0.0 file:projects/ai-anomaly-detector.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -8164,14 +8205,14 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 csv-parse: 4.16.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -8201,7 +8242,7 @@ packages: dev: false name: '@rush-temp/ai-anomaly-detector' resolution: - integrity: sha512-GOknI4gRYMnDD0S243OOfEZ+fBKRUyboXYQXYAUwIlQKl4f5klKrOBJoCfiWSMytaniZyXIvZIskYYBhgsuvog== + integrity: sha512-UAqCxcDDBSZGFVOEnudBw/8NhxgecArsuqft804NK03x42otRc88mxgBvkl+CNnhfdowlmOcZMsIOduXGOqt4w== tarball: file:projects/ai-anomaly-detector.tgz version: 0.0.0 file:projects/ai-document-translator.tgz: @@ -8209,13 +8250,13 @@ packages: '@azure/core-rest-pipeline': 1.0.4 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.13.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8248,10 +8289,8 @@ packages: version: 0.0.0 file:projects/ai-form-recognizer.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8259,7 +8298,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8287,15 +8326,14 @@ packages: dev: false name: '@rush-temp/ai-form-recognizer' resolution: - integrity: sha512-PE4K3pYykld39wlagDs2LhfGRwflCxOdxGdHWNhbPzSBpqYgmiXWyS+8r8QWxSKQVqDCsff3b7vN3x0BtuLD+g== + integrity: sha512-Srr3ktLMdIW3tZsNv7fS4ATz06mhYaWC760VUvo3d/p31RGT0DXFlKyL9TAOMEPMl8Qd4kUZB7yP0hgEHHRxXA== tarball: file:projects/ai-form-recognizer.tgz version: 0.0.0 file:projects/ai-metrics-advisor.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8303,7 +8341,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8332,7 +8370,7 @@ packages: dev: false name: '@rush-temp/ai-metrics-advisor' resolution: - integrity: sha512-9wwCObjf/0zlhyHr7g5GH8+G884F3F8noVLWBGnG9dAncuiRPSN3I7i2b/hpnAlRbGt5++o50aUJ5Zeyhw6Cgg== + integrity: sha512-l8niJqS6qP7ELTJPG2ytZ4h7o2GVgby/RxIdw7SyeEbHw46Tif/LoIzU1EVuKLD1PqEm4D2UdG946JeyvGtL0A== tarball: file:projects/ai-metrics-advisor.tgz version: 0.0.0 file:projects/ai-text-analytics.tgz: @@ -8341,7 +8379,7 @@ packages: '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -8350,7 +8388,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8385,8 +8423,6 @@ packages: version: 0.0.0 file:projects/app-configuration.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@azure/keyvault-secrets': 4.2.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -8395,7 +8431,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8403,7 +8439,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -8435,7 +8471,7 @@ packages: dev: false name: '@rush-temp/app-configuration' resolution: - integrity: sha512-4Y/gFY7cxIWiTDNFxwPHq13jW5yOrhs/kXb7hqXt47VsNN2RtbICi0g7cxVDnPlR6z2Zs7aeXSa4TW5Ylhc4Jg== + integrity: sha512-hYJ2Lj/Ytr0bj0SwC6UlHWkmFFm7c0z9H5Caic14Cd9liyHs/6ae8yP+N+Rqd9PNV/JstbjHlcbtgpyH/hvZFA== tarball: file:projects/app-configuration.tgz version: 0.0.0 file:projects/attestation.tgz: @@ -8444,7 +8480,7 @@ packages: '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -8454,7 +8490,7 @@ packages: cross-env: 7.0.3 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 inherits: 2.0.4 jsrsasign: 10.3.0 @@ -8497,14 +8533,13 @@ packages: dependencies: '@azure/communication-identity': 1.0.0 '@azure/communication-signaling': 1.0.0-beta.5 - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8512,7 +8547,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -8546,19 +8581,18 @@ packages: dev: false name: '@rush-temp/communication-chat' resolution: - integrity: sha512-ubGcvenOv8xFMNLLe3mDQVm2sU4z9939aPrZnu1ajCZL1GXBdcZoXnPIDFJ7/qEm5oRZbCZ7bhYRGMa2elil6g== + integrity: sha512-M48ACwIHKYHqfp3DLWqmPoLqgOdPLu1M5ew2gQh9riQdJuYKCkfwridZssYv1R+GrVRHIQgOGGV9LwPTXn9vRg== tarball: file:projects/communication-chat.tgz version: 0.0.0 file:projects/communication-common.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/jwt-decode': 2.2.1 '@types/mocha': 7.0.2 @@ -8568,7 +8602,7 @@ packages: chai: 4.3.4 chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 jwt-decode: 2.2.0 @@ -8600,19 +8634,18 @@ packages: dev: false name: '@rush-temp/communication-common' resolution: - integrity: sha512-m708g4feYifMJni1VLzBLbJEU1wzfw3pzB7ZvXbUAdgk4ikR+wkvD9j5TXlF37y59dF6ltRtY3fBZ4qoxXm7oA== + integrity: sha512-3r1o3XqYCECrYUxeVFLvgWACp8Hg2LBQw0eDflZDHWUsXmNyXdNJpnBHQuY8A/b5i7myuv7u0DUiBwGPg8gmTQ== tarball: file:projects/communication-common.tgz version: 0.0.0 file:projects/communication-identity.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8620,7 +8653,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -8653,20 +8686,19 @@ packages: dev: false name: '@rush-temp/communication-identity' resolution: - integrity: sha512-iRCXsinvg/D/ZeuNqYCN/8vT81D3ch5RpmIN2RdDRY6pSAADf4oM962yuRSwjHduvwD5G4SkfBNxGpKuNJyUAQ== + integrity: sha512-DU3BXq1v9EwcqeGfsIhi8ILI2Eacn/lzjpY+kT9lUeVWrWdrcKu+GqLU/Nwohx49C28DNqUAHNtwCmuW+pa3Xw== tarball: file:projects/communication-identity.tgz version: 0.0.0 file:projects/communication-network-traversal.tgz: dependencies: '@azure/communication-identity': 1.0.0 - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8674,7 +8706,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -8707,19 +8739,18 @@ packages: dev: false name: '@rush-temp/communication-network-traversal' resolution: - integrity: sha512-e4OQvoZW1wniyCZZwReejuCS5NLzQ6kqlF5jmbd68V5dAMw2p0I7T/uxx53dGVsAnql2osJLF7hFe9wQPiyN4A== + integrity: sha512-F1T6zU4yFjAaG3tkEUgBLRSMrMsmDvsuEWzSlJVYIrHfTZygDNR/eDQWAmjgF3TQwcn5btAEJFBNjripDSnkiQ== tarball: file:projects/communication-network-traversal.tgz version: 0.0.0 file:projects/communication-phone-numbers.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8727,7 +8758,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -8760,19 +8791,18 @@ packages: dev: false name: '@rush-temp/communication-phone-numbers' resolution: - integrity: sha512-rLZK5gAPEgmZNeMJ0wffFow/QRjAHn6IQSNk9zpUPKrga9lHD6CFZsvhbtkgsWTA2oS/wLbd5WdgiyILRr0b0Q== + integrity: sha512-flZAFiS2wvGEEBPwghkL7qsPkJGsNzAwFXteSh6ESKbZ+DeeRETVyCN5ItiL93I5PDZup3Iqfv8nR3tuuOWoRQ== tarball: file:projects/communication-phone-numbers.tgz version: 0.0.0 file:projects/communication-sms.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -8780,7 +8810,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -8812,7 +8842,7 @@ packages: dev: false name: '@rush-temp/communication-sms' resolution: - integrity: sha512-+Kp99e9aleFfZ9dNecXvlvw33O8MSe4MJZZzq8c/JrI0F4tbr+qt2rv6sdNKp0bi4AZpR80nPtsxecOHjRjaIw== + integrity: sha512-zUaVWSyuQ9ddNUiWJ8XLHHJfIaRPnuXMxPN67Gve0Orx95YTyectyZmJSFK8qMUKuvcNsKP7cMg4hhhkejM8IA== tarball: file:projects/communication-sms.tgz version: 0.0.0 file:projects/confidential-ledger.tgz: @@ -8820,13 +8850,13 @@ packages: '@azure/core-rest-pipeline': 1.0.4 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.13.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -8862,7 +8892,7 @@ packages: '@azure/core-tracing': 1.0.0-preview.11 '@azure/ms-rest-nodeauth': 3.0.10 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -8870,7 +8900,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -8898,7 +8928,7 @@ packages: dev: false name: '@rush-temp/container-registry' resolution: - integrity: sha512-EtCnuuPQBPDJdlInE2BVGrFIoEvplHQI0YhO5px+KPEgjLBAspIKyc5/htsLtIB6nsuXG4jjdXtUPf/qNYxdxQ== + integrity: sha512-DFt88tLfBmEUwAR8+6xpAupuO1aKe9m2Ajb5uNRjiDzQBA6GlFEG6+hV5ToyDt6pGxGOpFH+T60ij7pjEuUkqg== tarball: file:projects/container-registry.tgz version: 0.0.0 file:projects/core-amqp.tgz: @@ -8910,13 +8940,13 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/debug': 4.1.5 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 - '@types/ws': 7.4.4 + '@types/ws': 7.4.5 assert: 1.5.0 buffer: 5.7.1 chai: 4.3.4 @@ -8925,7 +8955,7 @@ packages: debug: 4.3.1 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 jssha: 3.2.0 karma: 6.3.4_debug@4.3.1 @@ -8951,7 +8981,7 @@ packages: typescript: 4.2.4 url: 0.11.0 util: 0.12.4 - ws: 7.4.6 + ws: 7.5.0 dev: false name: '@rush-temp/core-amqp' resolution: @@ -8961,7 +8991,7 @@ packages: file:projects/core-asynciterator-polyfill.tgz: dependencies: '@types/node': 8.10.66 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 typedoc: 0.15.2 typescript: 4.2.4 @@ -8984,7 +9014,7 @@ packages: assert: 1.5.0 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 mocha: 7.2.0 mocha-junit-reporter: 1.23.3_mocha@7.2.0 @@ -9015,14 +9045,14 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 chai: 4.3.4 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9058,12 +9088,12 @@ packages: dependencies: '@azure/core-rest-pipeline': 1.0.4 '@microsoft/api-extractor': 7.13.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9100,7 +9130,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -9108,7 +9138,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -9139,7 +9169,6 @@ packages: version: 0.0.0 file:projects/core-http.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/logger-js': 1.3.2 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -9147,7 +9176,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/express': 4.17.12 '@types/glob': 7.1.3 '@types/mocha': 7.0.2 @@ -9162,7 +9191,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 express: 4.17.1 fetch-mock: 9.11.0_node-fetch@2.6.1 form-data: 3.0.1 @@ -9203,24 +9232,23 @@ packages: dev: false name: '@rush-temp/core-http' resolution: - integrity: sha512-bK3vk+L+XzYgsDtIDSJaGK28O2uEWbaHqrrXnEzLc55vW8WotxDSJ4dugJAtmCOyc22BKmuYONA7YngGgT2AGA== + integrity: sha512-6X7ZmkgSI5TtG0bUativYtE4MCsHUzXSM9ZuiOaJkGAgpRctDHeS+EMzA6BgL3ASSu+jIySqhI6Eo1k4K8t81Q== tarball: file:projects/core-http.tgz version: 0.0.0 file:projects/core-lro.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 assert: 1.5.0 chai: 4.3.4 cross-env: 7.0.3 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9252,13 +9280,13 @@ packages: dev: false name: '@rush-temp/core-lro' resolution: - integrity: sha512-ixIn6iLbTI8F8ArD5n6tJ0+nLntWWZFe5nNklaf30pHmafzK1pzpVs3xaSqTPLz53ZdUA5ZI27lCSnU01m3cIQ== + integrity: sha512-qGsbhY42+yb7/ZND4jJU68QDnFa1/q2Aw++lfViXx/wohdotqvkmY08PS6+ma9e62WFwrFjItZvQU/sw4yYvFQ== tarball: file:projects/core-lro.tgz version: 0.0.0 file:projects/core-paging.tgz: dependencies: '@types/node': 8.10.66 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 typedoc: 0.15.2 @@ -9271,14 +9299,13 @@ packages: version: 0.0.0 file:projects/core-rest-pipeline.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -9286,7 +9313,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 form-data: 3.0.1 http-proxy-agent: 4.0.1 https-proxy-agent: 5.0.0 @@ -9320,14 +9347,13 @@ packages: dev: false name: '@rush-temp/core-rest-pipeline' resolution: - integrity: sha512-zojuz/HSp53v8H/nOSzpSDLTCo1p6cjkcVQ+F4bNKUJ6TPNNKlo7++PBthtyS8TT/rwXhpIAeKuke+RaifY1fA== + integrity: sha512-B30gNDjvYMKn9TTL3Li38tIe02Gn9y/2pz9MLrKoWFzITzyQwaht729dCk6oSYXfesN+LipPoM26kw5lkOQ0rg== tarball: file:projects/core-rest-pipeline.tgz version: 0.0.0 file:projects/core-tracing.tgz: dependencies: '@microsoft/api-extractor': 7.7.11 - '@opencensus/web-types': 0.0.7 - '@opentelemetry/api': 1.0.0-rc.0 + '@opentelemetry/api': 1.0.0 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 @@ -9338,8 +9364,19 @@ packages: '@types/sinon': 9.0.11 assert: 1.5.0 cross-env: 7.0.3 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 + karma: 6.3.4 + karma-chrome-launcher: 3.1.0 + karma-coverage: 2.0.3 + karma-edge-launcher: 0.4.2_karma@6.3.4 + karma-env-preprocessor: 0.1.1 + karma-firefox-launcher: 1.3.0 + karma-ie-launcher: 1.0.0_karma@6.3.4 + karma-junit-reporter: 2.0.1_karma@6.3.4 + karma-mocha: 2.0.1 + karma-mocha-reporter: 2.2.5_karma@6.3.4 + karma-sourcemap-loader: 0.3.8 mocha: 7.2.0 mocha-junit-reporter: 1.23.3_mocha@7.2.0 prettier: 1.19.1 @@ -9356,7 +9393,7 @@ packages: dev: false name: '@rush-temp/core-tracing' resolution: - integrity: sha512-8DVpttwoStfTVGZM2XsYARGD6+Gi+DruU0I7WudAoHKzkfmpCuytc597UHeLsjtDZscuTIYYdrJXT8k5bXg/eQ== + integrity: sha512-WY3dTdsoyz+AMJUBjPiPsbagWKKJhxDhk+tURH/HBp6zUzyu1AJ4/VjUVCkruYBEZfy/WBYCfcHkMjlcielb0Q== tarball: file:projects/core-tracing.tgz version: 0.0.0 file:projects/core-util.tgz: @@ -9367,14 +9404,14 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 chai: 4.3.4 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9414,7 +9451,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -9422,7 +9459,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9476,11 +9513,11 @@ packages: debug: 4.3.1 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 execa: 3.4.0 fast-json-stable-stringify: 2.1.0 - jsbi: 3.1.4 + jsbi: 3.1.5 mocha: 7.2.0 mocha-junit-reporter: 1.23.3_mocha@7.2.0 node-abort-controller: 1.2.1 @@ -9519,7 +9556,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -9528,7 +9565,7 @@ packages: cross-env: 7.0.3 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9570,7 +9607,7 @@ packages: '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/fs-extra': 8.1.1 '@types/minimist': 1.2.1 @@ -9582,7 +9619,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 chalk: 4.1.1 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 fs-extra: 8.1.0 minimist: 1.2.5 mocha: 7.2.0 @@ -9604,7 +9641,6 @@ packages: version: 0.0.0 file:projects/digital-twins-core.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -9612,7 +9648,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -9620,7 +9656,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -9654,26 +9690,26 @@ packages: dev: false name: '@rush-temp/digital-twins-core' resolution: - integrity: sha512-2bQLTapTbOHAdI5qLxuBzKVY98kKRYwhpYqLrXPosx/9cKUplfmDWgmHy+32m8lSnkTpaQgqrlIAWIx9UOJcDg== + integrity: sha512-ZDdMr3qllyTdU+WuhJSoEb3eVwuGddKn79fKcdajDoJMqde0PIFjAjMg61bR+iR4Ij2AfznBrvjl0DshNTgB9Q== tarball: file:projects/digital-twins-core.tgz version: 0.0.0 file:projects/eslint-plugin-azure-sdk.tgz: dependencies: - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/eslint': 7.2.13 '@types/estree': 0.0.48 '@types/glob': 7.1.3 '@types/json-schema': 7.0.7 '@types/mocha': 7.0.2 '@types/node': 10.17.60 - '@typescript-eslint/eslint-plugin': 4.19.0_579c993deb6b0313d5d0f5c428bab62d - '@typescript-eslint/experimental-utils': 4.19.0_eslint@7.28.0+typescript@4.2.4 - '@typescript-eslint/parser': 4.19.0_eslint@7.28.0+typescript@4.2.4 + '@typescript-eslint/eslint-plugin': 4.19.0_32b60b6a5d7033b9e5296983f03a72ce + '@typescript-eslint/experimental-utils': 4.19.0_eslint@7.29.0+typescript@4.2.4 + '@typescript-eslint/parser': 4.19.0_eslint@7.29.0+typescript@4.2.4 '@typescript-eslint/typescript-estree': 4.19.0_typescript@4.2.4 chai: 4.3.4 - eslint: 7.28.0 - eslint-config-prettier: 7.2.0_eslint@7.28.0 - eslint-plugin-import: 2.23.4_eslint@7.28.0 + eslint: 7.29.0 + eslint-config-prettier: 7.2.0_eslint@7.29.0 + eslint-plugin-import: 2.23.4_eslint@7.29.0 eslint-plugin-no-only-tests: 2.6.0 eslint-plugin-promise: 4.3.1 eslint-plugin-tsdoc: 0.2.14 @@ -9695,7 +9731,6 @@ packages: version: 0.0.0 file:projects/event-hubs.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-inject': 4.0.2_rollup@1.32.1 @@ -9704,7 +9739,7 @@ packages: '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 '@types/async-lock': 1.1.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/chai-string': 1.4.2 '@types/debug': 4.1.5 @@ -9713,7 +9748,7 @@ packages: '@types/node': 8.10.66 '@types/sinon': 9.0.11 '@types/uuid': 8.3.0 - '@types/ws': 7.4.4 + '@types/ws': 7.4.5 assert: 1.5.0 buffer: 5.7.1 chai: 4.3.4 @@ -9723,7 +9758,7 @@ packages: debug: 4.3.1 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 https-proxy-agent: 5.0.0 is-buffer: 2.0.5 @@ -9758,11 +9793,11 @@ packages: typedoc: 0.15.2 typescript: 4.2.4 uuid: 8.3.2 - ws: 7.4.6 + ws: 7.5.0 dev: false name: '@rush-temp/event-hubs' resolution: - integrity: sha512-hqSwpxNEfx0EqgIlkxvAhM9h9ocfi6rERq71QQGJZL7fOMIEVzI461Z+7pNt3+0Kk/q3j2ymAFkQk74NIc5mzA== + integrity: sha512-waVb3W/FR4mFFVJXs9lMDzAfshanVmja0vWAJggGYu+5fGnd3Cp61En1S10hP+VUHRSqFCvuSX0lJq/+BclbAw== tarball: file:projects/event-hubs.tgz version: 0.0.0 file:projects/event-processor-host.tgz: @@ -9776,14 +9811,14 @@ packages: '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 '@types/async-lock': 1.1.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/chai-string': 1.4.2 '@types/debug': 4.1.5 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/uuid': 8.3.0 - '@types/ws': 7.4.4 + '@types/ws': 7.4.5 async-lock: 1.3.0 azure-storage: 2.10.4 chai: 4.3.4 @@ -9792,7 +9827,7 @@ packages: cross-env: 7.0.3 debug: 4.3.1 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 https-proxy-agent: 5.0.0 mocha: 7.2.0 @@ -9808,7 +9843,7 @@ packages: typedoc: 0.15.2 typescript: 4.2.4 uuid: 8.3.2 - ws: 7.4.6 + ws: 7.5.0 dev: false name: '@rush-temp/event-processor-host' resolution: @@ -9825,7 +9860,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -9835,7 +9870,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -9881,7 +9916,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/chai-string': 1.4.2 '@types/debug': 4.1.5 @@ -9894,7 +9929,7 @@ packages: cross-env: 7.0.3 debug: 4.3.1 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 events: 3.3.0 guid-typescript: 1.0.9 @@ -9931,9 +9966,75 @@ packages: integrity: sha512-kPDNdx4ZkZ5doODbROhFMQDIxyBwbahRK/NtXhvFHdcVBe+LNdSX2XgXVdzY36Ouwwr9/uWbnvlzHhgsG3l9xQ== tarball: file:projects/eventhubs-checkpointstore-blob.tgz version: 0.0.0 + file:projects/identity-cache-persistence.tgz: + dependencies: + '@azure/msal-node': 1.1.0 + '@azure/msal-node-extensions': 1.0.0-alpha.6 + '@microsoft/api-extractor': 7.7.11 + '@types/jws': 3.2.3 + '@types/mocha': 7.0.2 + '@types/node': 8.10.66 + '@types/qs': 6.9.6 + '@types/sinon': 9.0.11 + assert: 1.5.0 + cross-env: 7.0.3 + dotenv: 8.6.0 + eslint: 7.29.0 + inherits: 2.0.4 + keytar: 7.7.0 + mocha: 7.2.0 + mocha-junit-reporter: 1.23.3_mocha@7.2.0 + mock-fs: 4.14.0 + prettier: 1.19.1 + puppeteer: 3.3.0 + rimraf: 3.0.2 + rollup: 1.32.1 + sinon: 9.2.4 + tslib: 2.3.0 + typedoc: 0.15.2 + typescript: 4.2.4 + util: 0.12.4 + dev: false + name: '@rush-temp/identity-cache-persistence' + resolution: + integrity: sha512-4kcOh05iPn1Q/OPFhlcPgE8+2HNI/hTed17+qMabC68jt8SzX7c1Llhiu8uJfmrvyg/ws83dgWnd38dEYDDqEA== + tarball: file:projects/identity-cache-persistence.tgz + version: 0.0.0 + file:projects/identity-vscode.tgz: + dependencies: + '@microsoft/api-extractor': 7.7.11 + '@types/jws': 3.2.3 + '@types/mocha': 7.0.2 + '@types/node': 8.10.66 + '@types/qs': 6.9.6 + '@types/sinon': 9.0.11 + '@types/uuid': 8.3.0 + assert: 1.5.0 + cross-env: 7.0.3 + dotenv: 8.6.0 + eslint: 7.29.0 + inherits: 2.0.4 + keytar: 7.7.0 + mocha: 7.2.0 + mocha-junit-reporter: 1.23.3_mocha@7.2.0 + mock-fs: 4.14.0 + prettier: 1.19.1 + puppeteer: 3.3.0 + rimraf: 3.0.2 + rollup: 1.32.1 + sinon: 9.2.4 + tslib: 2.3.0 + typedoc: 0.15.2 + typescript: 4.2.4 + util: 0.12.4 + dev: false + name: '@rush-temp/identity-vscode' + resolution: + integrity: sha512-Vz1rlmfRj9+CsPGCuj2RxyXlemnz6MrZnch7WSmsMUe/OYljjtVDCiYycAub9HwqqGSIT9xiNgXOBDt+KZIgCA== + tarball: file:projects/identity-vscode.tgz + version: 0.0.0 file:projects/identity.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/msal-browser': 2.14.2 '@azure/msal-common': 4.3.0 '@azure/msal-node': 1.1.0 @@ -9948,7 +10049,7 @@ packages: assert: 1.5.0 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 jws: 4.0.0 @@ -9978,18 +10079,17 @@ packages: dev: false name: '@rush-temp/identity' resolution: - integrity: sha512-2H4J3QdHPuGaq/U642XgXcnHAl8JKjyAGkIX7HLykIvf5/6LQk8uFb+kp3DdlQVRU8rDKAcxu25bB9JWN9s7fw== + integrity: sha512-WhzQXtuVDAdYFtQtAqj9om+FireeOVVkgmVP/bZwh4vYueDup+Nlp6slAq9lMJz/auX80Y9LXy1VzErjNxWtsA== tarball: file:projects/identity.tgz version: 0.0.0 file:projects/iot-device-update.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@types/node': 8.10.66 '@types/uuid': 8.3.0 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 mkdirp: 1.0.4 prettier: 1.19.1 rimraf: 3.0.2 @@ -10005,7 +10105,7 @@ packages: dev: false name: '@rush-temp/iot-device-update' resolution: - integrity: sha512-satKqBTPzyTeyC3KDD2fOauf6SpJzXevUwl2/qa9TRl6IBBFcgxJCAZgHv9SfvhiqgglqN6u+q3FXyU1s6cCmw== + integrity: sha512-6tJv5E6OLIpAoRhOoofXqsG5/QqEXSyXHRY0pPfegzAsUPd6Q9/nOCdnJdEcJefSzE8gtUotJVUr0wT3kFtW1w== tarball: file:projects/iot-device-update.tgz version: 0.0.0 file:projects/iot-modelsrepository.tgz: @@ -10018,13 +10118,13 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 chai: 4.3.4 cross-env: 7.0.3 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -10062,8 +10162,6 @@ packages: version: 0.0.0 file:projects/keyvault-admin.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@azure/keyvault-keys': 4.2.1 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -10071,7 +10169,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -10082,7 +10180,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 mocha: 7.2.0 mocha-junit-reporter: 1.23.3_mocha@7.2.0 @@ -10103,13 +10201,11 @@ packages: dev: false name: '@rush-temp/keyvault-admin' resolution: - integrity: sha512-gMC9p+W6CAB2lQWRyn5gMX5fPZxrqcfyeBhDpVE5EeJn4qIVqtGZbXU7ZHUGAwbXRRWSicr4HgTferuy51fXqQ== + integrity: sha512-pvrTD1Fp+QI8mhhePrtbSOrwrAtGzwdsrnWHphylLXk5ihA3CMCKTQgwiWKN5juadDQ7ikbdtgTnMDegyNq5dA== tarball: file:projects/keyvault-admin.tgz version: 0.0.0 file:projects/keyvault-certificates.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@azure/keyvault-secrets': 4.2.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -10117,7 +10213,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/query-string': 6.2.0 @@ -10126,7 +10222,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -10162,13 +10258,12 @@ packages: dev: false name: '@rush-temp/keyvault-certificates' resolution: - integrity: sha512-mOQOv05qCpNK+lLfPYUrip7aATQgbj8aAFGp1xwbpgkUAirK6WPdAoyXasmGwmN70OLX74vw5MfM0sfL77cvcQ== + integrity: sha512-DHF+8x775VowWkTR284qcDoRPR0ADBERVWkB4alQE6Qf8Xl8Wfg7QGSAZAzPjTgtw4vmZaHL9c9EzysyEQNqrA== tarball: file:projects/keyvault-certificates.tgz version: 0.0.0 file:projects/keyvault-common.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 tslib: 2.3.0 @@ -10176,20 +10271,18 @@ packages: dev: false name: '@rush-temp/keyvault-common' resolution: - integrity: sha512-s1nJxrKkSBSfYJvrOTJpGcF5HK0IKLlVW+SFhjVccKAVCDYjhvegZUhBdn97hL9D74wTybPcU3pmf0OQ5ZoDJw== + integrity: sha512-GRiP+Js7NDvQqLYkl8FpmDyaJbN+DdiHA97LxaNliDBYMb+9O9h5716lJYbtFAq0K4f5BcN1VWHlW0xIVfrYPg== tarball: file:projects/keyvault-common.tgz version: 0.0.0 file:projects/keyvault-keys.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -10200,7 +10293,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -10236,20 +10329,18 @@ packages: dev: false name: '@rush-temp/keyvault-keys' resolution: - integrity: sha512-O0gIAqRcHQfU0DyeOO4W+gykiQq48m1WlWTq0bsekJuT7GHKnyGYe0bBCvHwo6o8I4aomBY6L6zTNPOs9lN1DQ== + integrity: sha512-RgDNeqtWdvrmIBrwvvmV8S3LhGNTgxrEpNITdH3ELrzK25OQmDgbB+38oDqk9b8xCpbEAar7d1vyfsPYsubFiw== tarball: file:projects/keyvault-keys.tgz version: 0.0.0 file:projects/keyvault-secrets.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/query-string': 6.2.0 @@ -10258,7 +10349,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -10294,7 +10385,7 @@ packages: dev: false name: '@rush-temp/keyvault-secrets' resolution: - integrity: sha512-B21xycEmaazY328U1vqyFw4taoWpa1PxXPJZuwJScce/tRnTU/DAh6XWlwCApNvL2i98HwnirRIwgVpJ+vdx5g== + integrity: sha512-W6y3Hbxq5NJm4gUSeJRCPrefdvdyKdGwwnX83QpXUyv0+/e2cjUNtLSPcubfwqp08+lA4CRkFxhC5SA1rtIMPw== tarball: file:projects/keyvault-secrets.tgz version: 0.0.0 file:projects/logger.tgz: @@ -10304,7 +10395,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 @@ -10313,7 +10404,7 @@ packages: cross-env: 7.0.3 delay: 4.4.1 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -10347,9 +10438,8 @@ packages: version: 0.0.0 file:projects/mixedreality-authentication.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -10357,7 +10447,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 inherits: 2.0.4 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -10385,14 +10475,14 @@ packages: dev: false name: '@rush-temp/mixedreality-authentication' resolution: - integrity: sha512-KKDbeIwKMfnH0fHha63by8Y/365C+kIvl8RJk/HnK7mDTlfq/VfVQqXmVADW4IKDhdr/F4EKRCUqsRpViv7IaQ== + integrity: sha512-Wotv/XF90O+vucRT0Tq6IEdgaSlERZ2GU0DO6hx5h/tg6DTyjeJvZ1wCt0YdjT2lUb9IuWFOOevpO4vwQzQkUw== tarball: file:projects/mixedreality-authentication.tgz version: 0.0.0 file:projects/mock-hub.tgz: dependencies: '@types/node': 8.10.66 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rhea: 2.0.2 rimraf: 3.0.2 @@ -10414,8 +10504,8 @@ packages: '@opentelemetry/tracing': 0.18.2 '@types/mocha': 7.0.2 '@types/node': 10.17.60 - eslint: 7.28.0 - eslint-plugin-node: 11.1.0_eslint@7.28.0 + eslint: 7.29.0 + eslint-plugin-node: 11.1.0_eslint@7.29.0 execa: 3.4.0 mocha: 7.2.0 nock: 12.0.3 @@ -10436,13 +10526,12 @@ packages: version: 0.0.0 file:projects/monitor-query.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 - '@opentelemetry/api': 1.0.0-rc.0 - '@opentelemetry/node': 0.19.0_@opentelemetry+api@1.0.0-rc.0 + '@opentelemetry/api': 0.21.0 + '@opentelemetry/node': 0.21.0_@opentelemetry+api@0.21.0 '@opentelemetry/tracing': 0.18.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -10451,7 +10540,7 @@ packages: cross-env: 7.0.3 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 inherits: 2.0.4 karma: 6.3.4 @@ -10480,16 +10569,15 @@ packages: dev: false name: '@rush-temp/monitor-query' resolution: - integrity: sha512-1a+a+z8wd1qXLKUmKQ3D6piq6WY49sb0Rq/nGwS22Uiq1yJii9Gc0ENIn18/04KmJNT7Jdj/hHkgfM0/KhXKdg== + integrity: sha512-ON6PB//RHdZG1TyksRq5CyFzk1G2eC5kqn8TIYI71bTklo+xQiRQWgzvRg45CPjt+JP+BRTgXqX6TVub4cNWiQ== tarball: file:projects/monitor-query.tgz version: 0.0.0 file:projects/perf-ai-form-recognizer.tgz: dependencies: '@azure/ai-form-recognizer': 3.1.0-beta.3 - '@azure/identity': 2.0.0-beta.3 '@types/node': 8.10.66 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10498,7 +10586,7 @@ packages: dev: false name: '@rush-temp/perf-ai-form-recognizer' resolution: - integrity: sha512-2yJhMmPYvcKmfy2o1DZed05GwUoLcZc4dI1WMNc7hObuSgmLAV5V6fnJZyu7d+rRYUMUALHBmsmlCWdSuNU+5Q== + integrity: sha512-Cdcpa3QsglrMNYbuwiDH70V1n9ID+ur65l/cTKce0RjsvZVAfKfxD3spUHJkg4AOOUdr+j+srPISWvFGobhr7A== tarball: file:projects/perf-ai-form-recognizer.tgz version: 0.0.0 file:projects/perf-ai-metrics-advisor.tgz: @@ -10506,7 +10594,7 @@ packages: '@azure/ai-metrics-advisor': 1.0.0-beta.3 '@types/node': 8.10.66 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10520,10 +10608,9 @@ packages: version: 0.0.0 file:projects/perf-ai-text-analytics.tgz: dependencies: - '@azure/identity': 2.0.0-beta.3 '@types/node': 8.10.66 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10532,14 +10619,14 @@ packages: dev: false name: '@rush-temp/perf-ai-text-analytics' resolution: - integrity: sha512-OjCVRfqezh/fSdMsibaqraqnO+kwkO/an50ZKzwY17IeXmxu0joRqr6T8WuYbrANjvmzb76/amWPYl9oLAwomQ== + integrity: sha512-Kvl28eIyB/TUFjHazX20V+clKd8zLCBx+Tb7zTU3Yp1kei9JNZfqMaDmDlCyfw1bmRLDslq5/xfo/NEMWks0wQ== tarball: file:projects/perf-ai-text-analytics.tgz version: 0.0.0 file:projects/perf-core-rest-pipeline.tgz: dependencies: '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10555,7 +10642,7 @@ packages: dependencies: '@types/node': 8.10.66 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10571,7 +10658,7 @@ packages: dependencies: '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10580,16 +10667,15 @@ packages: dev: false name: '@rush-temp/perf-identity' resolution: - integrity: sha512-0AGKpgyfSwfjXGgEfT+3JFmDLtwWSuYPjMoPgo0Cr6QKwleihOaC2Gkxlb5jgXuo412syQrJyQI2TTs8xhsVGA== + integrity: sha512-Xcm3bc1sQF3yp0wCcTZ3eSDf2o3DDxQvgPzy1Byjird4i3hf4PrhG0l0Z21Oy/OeVDHm50pELO38mJIosuxR7w== tarball: file:projects/perf-identity.tgz version: 0.0.0 file:projects/perf-keyvault-certificates.tgz: dependencies: - '@azure/identity': 2.0.0-beta.3 '@azure/keyvault-certificates': 4.2.0 '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10599,16 +10685,15 @@ packages: dev: false name: '@rush-temp/perf-keyvault-certificates' resolution: - integrity: sha512-4//pIdPhCj2R5lVDRuVpKsX0B7oJlL1o+HkZNounvtZIK82XIQpFgG6YaXqxlTUsUVbDyzOyM+FWBGZ0JneKow== + integrity: sha512-XpNksm//ffFe1xUNxcecC+XrTLkeLn/z5C/aihHKQibCk6taCoraSjhKd59NeC1nqch1S/ns/qd1rIQ0H92phQ== tarball: file:projects/perf-keyvault-certificates.tgz version: 0.0.0 file:projects/perf-keyvault-keys.tgz: dependencies: - '@azure/identity': 2.0.0-beta.3 '@azure/keyvault-keys': 4.2.1 '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10618,16 +10703,15 @@ packages: dev: false name: '@rush-temp/perf-keyvault-keys' resolution: - integrity: sha512-oxilWE4b/H49CSh5D1XEBp7RtB0E4HEwF5aZGw7ZnP6/gjuG+8KDpFayZZ/Z4C3+HPT2eDn85OlP4kol4feApQ== + integrity: sha512-VFoveWAzBYJEbJmaezcvRjNYSfxnXbs5rvXnxlAyb5CxxyuWgdVzTD6p0fq5UjUfHWZ20kdUFSvOKUp9EKEKBA== tarball: file:projects/perf-keyvault-keys.tgz version: 0.0.0 file:projects/perf-keyvault-secrets.tgz: dependencies: - '@azure/identity': 2.0.0-beta.3 '@azure/keyvault-secrets': 4.2.0 '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10637,15 +10721,14 @@ packages: dev: false name: '@rush-temp/perf-keyvault-secrets' resolution: - integrity: sha512-TE/BwyyUp0hpRF5B3u2jg3Oli+Ni6CVb2usjvY2MFXb2ZSvliNGvlMtRNlMGbh8QLQObSQ2bavzBi817tYdc5g== + integrity: sha512-AQw7amiRSQwUcEgs9E288A7yVM1JfIbTBHlNEIt+EvpsZ6MytQJDpSropVmoI7aJPC6XYfz3diprco9yLJ4ffA== tarball: file:projects/perf-keyvault-secrets.tgz version: 0.0.0 file:projects/perf-search-documents.tgz: dependencies: - '@azure/identity': 2.0.0-beta.3 '@types/node': 8.10.66 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10654,7 +10737,7 @@ packages: dev: false name: '@rush-temp/perf-search-documents' resolution: - integrity: sha512-8BV9jxnlf8zHN4PCmJbF7tWIdjn9cbPh5MEFHNu78+DFMvY0ckuCfTvdNvfyHvSEbl7BgZhuFiYJVIbYT8pdXA== + integrity: sha512-vTU34zY2iUB1V//n2VLEyqcrHX+FAUZG3qZp1zKn8Kxq4uDqS/j2Zgk+JE3KkhLvYSpfjZUIBYm5pAbBF5pwKA== tarball: file:projects/perf-search-documents.tgz version: 0.0.0 file:projects/perf-storage-blob.tgz: @@ -10664,7 +10747,7 @@ packages: '@types/node-fetch': 2.5.10 '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 node-fetch: 2.6.1 prettier: 1.19.1 rimraf: 3.0.2 @@ -10683,7 +10766,7 @@ packages: '@types/node': 8.10.66 '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10701,7 +10784,7 @@ packages: '@types/node': 8.10.66 '@types/uuid': 8.3.0 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 prettier: 1.19.1 rimraf: 3.0.2 ts-node: 9.1.1_typescript@4.2.4 @@ -10719,13 +10802,13 @@ packages: '@azure/core-rest-pipeline': 1.0.4 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.13.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -10762,13 +10845,13 @@ packages: '@azure/core-rest-pipeline': 1.0.4 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.13.2 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -10802,7 +10885,6 @@ packages: version: 0.0.0 file:projects/quantum-jobs.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -10810,14 +10892,14 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -10851,13 +10933,11 @@ packages: dev: false name: '@rush-temp/quantum-jobs' resolution: - integrity: sha512-GaSMcSb2ZHuckwS3x3CRDCnmXsMe3tuU4VOu1TuG3DOo1g/G9AXe+4sTPQWSWkU/TjtROxj1qJ8E9JIMUc6D6w== + integrity: sha512-upn0yiRQfNXukzJK3UktrUiKGxVYOq83fsqT1AUnXtVKE/Skg7vF7GgPqXmZ7WZfYFfkZBTWvqTnPUD+ZXSsuQ== tarball: file:projects/quantum-jobs.tgz version: 0.0.0 file:projects/schema-registry-avro.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-inject': 4.0.2_rollup@1.32.1 @@ -10865,7 +10945,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -10875,7 +10955,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -10907,20 +10987,18 @@ packages: dev: false name: '@rush-temp/schema-registry-avro' resolution: - integrity: sha512-ymBBc1Nl3VY49X7lmauhchRURR7Ma8QeLOHS3pWBxKRNMW+xnZiUDqdsvXOm3ZEFyyplnU59vBa8reQq2bg5kw== + integrity: sha512-YThr/Ltxi5X65AtKzecvNSoDN7p+74dXCgDLZN6h6+bhUN2GIyZvyNPwCUrG0MSeRvF1DC7HYvYwo00/2hFnMw== tarball: file:projects/schema-registry-avro.tgz version: 0.0.0 file:projects/schema-registry.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -10928,7 +11006,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -10959,26 +11037,25 @@ packages: dev: false name: '@rush-temp/schema-registry' resolution: - integrity: sha512-pL9/2K0oudjaq514sWx2J/C8IKe5F7Zvf9hHHeiaxdYWOS/Cv1H+bS5U4Z4QvRBwisEvQUKeKiKVlZphFEnkZw== + integrity: sha512-YT9wQqawJcplFXXt8QMZBzCTnMrtlMAzLZGpWw73hfhr94oPAjEFol54qJd3O7HL4ZAoeIUM8Lip1gGTgcqiYw== tarball: file:projects/schema-registry.tgz version: 0.0.0 file:projects/search-documents.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -11013,13 +11090,11 @@ packages: dev: false name: '@rush-temp/search-documents' resolution: - integrity: sha512-4jXeLMPpLdf19WYQ9lr3t1WXmzSseDeFeH7vACxkihoaiEJF4Cl5frhhQeibTgMWgZl9eQs5YVaqV/EyzkX+SA== + integrity: sha512-RaYfwmjKEeuaRMKTLJvd1bhl3zRNKNXm8jMgbQCtAvbztsqMUa1nER1//BRRttdhZyocX6bTQwxoaWyurC9ySw== tarball: file:projects/search-documents.tgz version: 0.0.0 file:projects/service-bus.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3_debug@4.3.1 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-inject': 4.0.2_rollup@1.32.1 @@ -11027,7 +11102,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/debug': 4.1.5 '@types/glob': 7.1.3 @@ -11036,7 +11111,7 @@ packages: '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 - '@types/ws': 7.4.4 + '@types/ws': 7.4.5 assert: 1.5.0 buffer: 5.7.1 chai: 4.3.4 @@ -11047,7 +11122,7 @@ packages: delay: 4.4.1 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 events: 3.3.0 glob: 7.1.7 @@ -11085,16 +11160,15 @@ packages: tslib: 2.3.0 typedoc: 0.15.2 typescript: 4.2.4 - ws: 7.4.6 + ws: 7.5.0 dev: false name: '@rush-temp/service-bus' resolution: - integrity: sha512-zrlAqdm69f3tOJf9Ik7n5vzZo+CxOMXgl3ai1QEc2f/yjPfh71MoTyFBSbaShxT0qlhU1KN1+VdiZgfcirknng== + integrity: sha512-nmjsnu4i71YU0BKjM5mWBOotfzNPx9n9qhFWxeRhQ1vRepucjY1e5e2opdyRuVM3jJabE/nJL1f0SU1lOeTwwA== tarball: file:projects/service-bus.tgz version: 0.0.0 file:projects/storage-blob-changefeed.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 @@ -11108,7 +11182,7 @@ packages: dotenv: 8.6.0 downlevel-dts: 0.4.0 es6-promise: 4.2.8 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 events: 3.3.0 inherits: 2.0.4 @@ -11146,14 +11220,12 @@ packages: dev: false name: '@rush-temp/storage-blob-changefeed' resolution: - integrity: sha512-7R3Bsnzf3Uebb5AHqb5fqVMLPIoNPB4SbcrF7gKCGavGvenf/CclmbD7Bz+A3ZY8wbv8vFADEh1cq4/TKmzIPQ== + integrity: sha512-TAYIp08XH6wUYN0Q7phk+InW7NcAf3Yc5iUEooKGwygVPjwyQJ1DwX5lRdHERwU5njCtdpK4plnV1H8l5GOFmQ== tarball: file:projects/storage-blob-changefeed.tgz version: 0.0.0 file:projects/storage-blob.tgz: dependencies: '@azure/core-rest-pipeline': 1.0.4 - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 @@ -11168,7 +11240,7 @@ packages: dotenv: 8.6.0 downlevel-dts: 0.4.0 es6-promise: 4.2.8 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 events: 3.3.0 inherits: 2.0.4 @@ -11206,13 +11278,11 @@ packages: dev: false name: '@rush-temp/storage-blob' resolution: - integrity: sha512-Cfsjh8AyVanyzUOIy60gQixLKP0ufWc5aw9DrQbGPUoL5URRO1YBN2ENhSVhI3eqhp9CPoVwjFlx3ATJwGZByQ== + integrity: sha512-IoUxzovMJaRnbE5J0Cex9+20xg62IW1junKpaph1XELiwsT+RD/c6Ecim/aVDuX1lQuNykZfbMayUWw+4JQtfw== tarball: file:projects/storage-blob.tgz version: 0.0.0 file:projects/storage-file-datalake.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-json': 4.1.0_rollup@1.32.1 @@ -11227,7 +11297,7 @@ packages: dotenv: 8.6.0 downlevel-dts: 0.4.0 es6-promise: 4.2.8 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 events: 3.3.0 execa: 3.4.0 @@ -11266,12 +11336,11 @@ packages: dev: false name: '@rush-temp/storage-file-datalake' resolution: - integrity: sha512-cZ2msGKmv4SO7QRysUpX6K1QrWkWhOKEfh1gxyDSRViMQdNj3cDOuWddySfaT6yek1NNOP/rR2vX8DQeLP1pVg== + integrity: sha512-GSXIBdYBUFknYcqm0yyf0BQFERTz4Gp0wL68GrZzV+8R955SE1mrWaQHj/P0FdieF8OhtjkRpdqL7lLkV0h0wg== tarball: file:projects/storage-file-datalake.tgz version: 0.0.0 file:projects/storage-file-share.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 @@ -11284,7 +11353,7 @@ packages: dotenv: 8.6.0 downlevel-dts: 0.4.0 es6-promise: 4.2.8 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 events: 3.3.0 inherits: 2.0.4 @@ -11321,7 +11390,7 @@ packages: dev: false name: '@rush-temp/storage-file-share' resolution: - integrity: sha512-ulZXCFqZoQpyg1awS4AaoWUyWkKcV6BvbO2HJ/Uh1A6XSBb/64lOUuh3YXG1zo2Y0YhE/bRISzg8rBnWOvaiog== + integrity: sha512-j2TuqNfjmOV+hVI9t3sRto2kAX0tNEJGKRxgO3ZKWEBPKi2m9qiOqIoCw0cT4u7Hsri8WYckxBC+Fy9n0vXabg== tarball: file:projects/storage-file-share.tgz version: 0.0.0 file:projects/storage-internal-avro.tgz: @@ -11337,7 +11406,7 @@ packages: dotenv: 8.6.0 downlevel-dts: 0.4.0 es6-promise: 4.2.8 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 inherits: 2.0.4 karma: 6.3.4 @@ -11377,8 +11446,6 @@ packages: version: 0.0.0 file:projects/storage-queue.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 - '@azure/identity': 2.0.0-beta.3 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 @@ -11391,7 +11458,7 @@ packages: dotenv: 8.6.0 downlevel-dts: 0.4.0 es6-promise: 4.2.8 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 inherits: 2.0.4 karma: 6.3.4 @@ -11427,15 +11494,14 @@ packages: dev: false name: '@rush-temp/storage-queue' resolution: - integrity: sha512-+2Jxvir1OTWngF44vLgUGTKhKENyUPNue0H6nbyEdQO0HSgYgO6XXnCoDKuQFGPXfc1vIM7cq3Xk5kGmtdn65w== + integrity: sha512-GpLMmYAA4M3r4FAqNw06BFVyx8/be7iP+YuqBZF54QwowCpoUbU/NnBN4lCmTYg/QfbPxN3lfLTcw8xqUWqB2w== tarball: file:projects/storage-queue.tgz version: 0.0.0 file:projects/synapse-access-control.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 - eslint: 7.28.0 + eslint: 7.29.0 rimraf: 3.0.2 rollup: 1.32.1 rollup-plugin-node-resolve: 3.4.0 @@ -11447,15 +11513,14 @@ packages: dev: false name: '@rush-temp/synapse-access-control' resolution: - integrity: sha512-/pxVblJixB3+8YzN4T0+mlULaw26tiIg4NdYqkO6XF3xZy7U+UgYwvMGIwGu/osFtWd5sb43Rp7V0MGzxp/VtA== + integrity: sha512-cTj+TIV66H+n36HhogXdHLPHo+qBWVx6/A3/c/tAa0YdMMGUNLrS7m2f2WcANDJivLHl38gkAY9Nzm5kWIg6Vg== tarball: file:projects/synapse-access-control.tgz version: 0.0.0 file:projects/synapse-artifacts.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -11464,7 +11529,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -11497,15 +11562,14 @@ packages: dev: false name: '@rush-temp/synapse-artifacts' resolution: - integrity: sha512-SMPNAmMY1Gf40sjr/Z7TAp47CV8rL4mYAheFBNhwj2Q8ivr9WSFeskIS9AuNb+sx5H/MKxI9s/0Ui1EZWVhh/Q== + integrity: sha512-wmrO52GPGKpUtaBRypEqdktg4lIsmTVxG3QsW5TeKk2hzID2BPW/WB2Q+yyiRmVAsbeqwBv90khanONpg2fOow== tarball: file:projects/synapse-artifacts.tgz version: 0.0.0 file:projects/synapse-managed-private-endpoints.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 - eslint: 7.28.0 + eslint: 7.29.0 rimraf: 3.0.2 rollup: 1.32.1 rollup-plugin-node-resolve: 3.4.0 @@ -11517,15 +11581,14 @@ packages: dev: false name: '@rush-temp/synapse-managed-private-endpoints' resolution: - integrity: sha512-D3f9jhlAgzKk/Y/RyYB7FxIKi4IW9kJPcQ0/Yo/mF3vSbwQe1spj5D8VeTNdY/L0EeT1B847R08BOc7MadCHxw== + integrity: sha512-TxDjc/JaUiPvOTSomuZm5zbnZYGV7PHbmn6jACR/TKb174c/qA58bTOcsk5NgpJGYM5bsGICVLlc1zcme8mf6Q== tarball: file:projects/synapse-managed-private-endpoints.tgz version: 0.0.0 file:projects/synapse-monitoring.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 - eslint: 7.28.0 + eslint: 7.29.0 rimraf: 3.0.2 rollup: 1.32.1 rollup-plugin-node-resolve: 3.4.0 @@ -11537,15 +11600,14 @@ packages: dev: false name: '@rush-temp/synapse-monitoring' resolution: - integrity: sha512-eOSS/v2N9ceVol7B16SV7mB/fCH8INh3r4IIu7p41uncKoQKbDrQ+yWcAlT5dsTZ5NZ31XVftACsbzYFImPhWg== + integrity: sha512-czBS9LdKdlhgQTikMWqNQJZrvH6lLWREePSMOrc14+a3a0m8AuqukIG9oP4ChtxMU460+uiP85SUIBD3m6DynA== tarball: file:projects/synapse-monitoring.tgz version: 0.0.0 file:projects/synapse-spark.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 - eslint: 7.28.0 + eslint: 7.29.0 rimraf: 3.0.2 rollup: 1.32.1 rollup-plugin-node-resolve: 3.4.0 @@ -11557,14 +11619,13 @@ packages: dev: false name: '@rush-temp/synapse-spark' resolution: - integrity: sha512-jtEPP+8SwrlqkSVH3eX1FbywVcfw4JtkrIu18m1lE3xrBko+X8UnvhDitHCKZ/SLI4N7BgaYv9WrjZrvos9zrQ== + integrity: sha512-0EQSRYbZpxXr2lIJNnJBzLnxNtIg8vvKbZgP8m4BEY/Bh6zePj/040ofZb7oyjDTJ2GBG/6xGSXe6rWcQYbueQ== tarball: file:projects/synapse-spark.tgz version: 0.0.0 file:projects/template.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -11573,7 +11634,7 @@ packages: cross-env: 7.0.3 dotenv: 8.6.0 downlevel-dts: 0.4.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 inherits: 2.0.4 karma: 6.3.4 @@ -11602,7 +11663,7 @@ packages: dev: false name: '@rush-temp/template' resolution: - integrity: sha512-QFUihYe9zf/MLVpQVDyOPVMflgamzdQ+LTs8HNDGtnaWY4TTSJ98pY27DSsIA8YdgM38rehu8rCyNKnajf5cbg== + integrity: sha512-3fbGqkIaKqvCh8c+NNU0di1d3N/83L3/4VReIw0YOCpTSUOABqCeyJXuI4CrlcuvPjR4W8e+FS4bJU3WknmxJg== tarball: file:projects/template.tgz version: 0.0.0 file:projects/test-utils-perfstress.tgz: @@ -11610,7 +11671,7 @@ packages: '@types/minimist': 1.2.1 '@types/node': 8.10.66 '@types/node-fetch': 2.5.10 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -11629,12 +11690,11 @@ packages: version: 0.0.0 file:projects/test-utils-recorder.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/fs-extra': 8.1.1 '@types/md5': 2.3.0 '@types/mocha': 7.0.2 @@ -11644,7 +11704,7 @@ packages: '@types/node': 8.10.66 chai: 4.3.4 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 fs-extra: 8.1.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 @@ -11681,19 +11741,19 @@ packages: dev: false name: '@rush-temp/test-utils-recorder' resolution: - integrity: sha512-Ue5C7FU0GJqkmO177LzZP2VxwZIKhTb3jEn0vSIabo/beh2yUAG8aIdgFhnQwn7+G4W1aR8cJNOsXhEjoF19Jg== + integrity: sha512-fGHrJYrVCdiA8F/jXpnMAdz1b/Xz68JAMfGSHwdiEki22yPna09NHn0kSceTlHuj4OGetNAxk0+ZeY7hhICaHA== tarball: file:projects/test-utils-recorder.tgz version: 0.0.0 file:projects/test-utils.tgz: dependencies: '@microsoft/api-extractor': 7.7.11 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/sinon': 9.0.11 chai: 4.3.4 chai-as-promised: 7.1.1_chai@4.3.4 - eslint: 7.28.0 + eslint: 7.29.0 karma: 6.3.4 karma-chrome-launcher: 3.1.0 karma-coverage: 2.0.3 @@ -11713,10 +11773,8 @@ packages: version: 0.0.0 file:projects/video-analyzer-edge.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@microsoft/api-extractor': 7.7.11 - '@opentelemetry/api': 1.0.0-rc.0 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/chai-as-promised': 7.1.4 '@types/mocha': 7.0.2 '@types/node': 8.10.66 @@ -11725,7 +11783,7 @@ packages: chai-as-promised: 7.1.1_chai@4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 events: 3.3.0 inherits: 2.0.4 karma: 6.3.4 @@ -11752,12 +11810,11 @@ packages: dev: false name: '@rush-temp/video-analyzer-edge' resolution: - integrity: sha512-kl5835YkIbgMiF6nnZOcK6Q9D1MF5BosgCptZKssBzaJOVZ6S9NXdKkZ4zpK8e20qm07TKeuiupoq4VN9AQqOA== + integrity: sha512-989HvDXIApeDGqoTNg6I8JUTUtpBn6pzLuYST0JYrKE7/2sJq7x1yp8CtKi+jeqhnG7aiDa9GjacpxgdrQbXEQ== tarball: file:projects/video-analyzer-edge.tgz version: 0.0.0 file:projects/web-pubsub-express.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -11765,10 +11822,10 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/chai': 4.2.18 + '@types/chai': 4.2.19 '@types/express': 4.17.12 '@types/express-serve-static-core': 4.17.21 - '@types/jsonwebtoken': 8.5.1 + '@types/jsonwebtoken': 8.5.2 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/query-string': 6.2.0 @@ -11778,7 +11835,7 @@ packages: cloudevents: 4.0.2 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 jsonwebtoken: 8.5.1 karma: 6.3.4 @@ -11814,12 +11871,11 @@ packages: dev: false name: '@rush-temp/web-pubsub-express' resolution: - integrity: sha512-W0ULxg67MAQ8RTfSq2esPGEi6mqf92gCqdWl20upUEg0bGmDG4SNNjsx/KRJFZArvPzfrG3qmm4HGTlzgq5Cug== + integrity: sha512-Lr9G7CThq8ki5jg+j6J8n8kGVpRlCHDtlZWjahAwvL0Y+xHD0CdeHW5Ey95lTdtLQkRUm4LRXrgQezq9J81+XA== tarball: file:projects/web-pubsub-express.tgz version: 0.0.0 file:projects/web-pubsub.tgz: dependencies: - '@azure/core-tracing': 1.0.0-preview.11 '@azure/identity': 1.3.0 '@microsoft/api-extractor': 7.7.11 '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 @@ -11827,7 +11883,7 @@ packages: '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 '@rollup/plugin-replace': 2.4.2_rollup@1.32.1 - '@types/jsonwebtoken': 8.5.1 + '@types/jsonwebtoken': 8.5.2 '@types/mocha': 7.0.2 '@types/node': 8.10.66 '@types/query-string': 6.2.0 @@ -11836,7 +11892,7 @@ packages: chai: 4.3.4 cross-env: 7.0.3 dotenv: 8.6.0 - eslint: 7.28.0 + eslint: 7.29.0 esm: 3.2.25 jsonwebtoken: 8.5.1 karma: 6.3.4 @@ -11872,9 +11928,10 @@ packages: dev: false name: '@rush-temp/web-pubsub' resolution: - integrity: sha512-7AUtluOH0BIwZus4j+s3KNgdoU1B5xmPTBJbZN7zUvSlIUeHIIOwZtnp7/eb9/LNn5GYyBUD+Nf5+QGRscKm1g== + integrity: sha512-vR4Y02jE/bLss6v013XQnI7fHgUp+r4ENYXoaHKRAtNMixhfeobUozzrZuMQJjCTyh0ps8FxxEn3BB3It5SySQ== tarball: file:projects/web-pubsub.tgz version: 0.0.0 +registry: '' specifiers: '@rush-temp/abort-controller': file:./projects/abort-controller.tgz '@rush-temp/agrifood-farming': file:./projects/agrifood-farming.tgz @@ -11916,6 +11973,8 @@ specifiers: '@rush-temp/eventgrid': file:./projects/eventgrid.tgz '@rush-temp/eventhubs-checkpointstore-blob': file:./projects/eventhubs-checkpointstore-blob.tgz '@rush-temp/identity': file:./projects/identity.tgz + '@rush-temp/identity-cache-persistence': file:./projects/identity-cache-persistence.tgz + '@rush-temp/identity-vscode': file:./projects/identity-vscode.tgz '@rush-temp/iot-device-update': file:./projects/iot-device-update.tgz '@rush-temp/iot-modelsrepository': file:./projects/iot-modelsrepository.tgz '@rush-temp/keyvault-admin': file:./projects/keyvault-admin.tgz diff --git a/common/smoke-test/README.md b/common/smoke-test/README.md index 3d41d3f99b23..639357edbfb6 100644 --- a/common/smoke-test/README.md +++ b/common/smoke-test/README.md @@ -5,7 +5,7 @@ uses package dependencies, loads all packages into a single process, and executes code samples to ensure basic end to end scenarios work as expected. Smoke Tests are meant to be run periodically in an Azure DevOps pipeline. See -[`smoke-tests.yml`](https://github.com/Azure/azure-sdk-for-js/blob/master/common/smoke-test/smoke-tests.yml) to configure Smoke Tests in an Azure +[`smoke-tests.yml`](https://github.com/Azure/azure-sdk-for-js/blob/main/common/smoke-test/smoke-tests.yml) to configure Smoke Tests in an Azure DevOps pipeline. When run in an Azure DevOps pipeline specify the `-CI` flag to ensure environment variables are properly set and error/warning messages are properly surfaced during the execution. @@ -24,7 +24,7 @@ package. - PowerShell 7 - [Azure Powershell cmdlets](https://docs.microsoft.com/powershell/azure/install-az-ps?view=azps-4.7.0) - Node 12.x -- Azure SDK for JS [`dev-tool`](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/dev-tool) +- Azure SDK for JS [`dev-tool`](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/dev-tool) ## Configuring Samples diff --git a/common/tools/dev-tool/README.md b/common/tools/dev-tool/README.md index 3f9b7b783610..9722111c2d66 100644 --- a/common/tools/dev-tool/README.md +++ b/common/tools/dev-tool/README.md @@ -13,14 +13,15 @@ It provides a place to centralize scripts, resources, and processes for developm `dev-tool` uses a command hierarchy. For example, at the time of writing, the command tree looks like this: `dev-tool` - - `about` (display command help and information) - - `package` - - `resolve` (display information about the project that owns a directory) - - `samples` - - `dev` (link samples to local sources for access to IntelliSense during development) - - `prep` (prepare samples for local source-linked execution) - - `run` (execute a sample or all samples within a directory) - - `check-node-versions` (execute samples with different node versions, typically in preparation for release) + +- `about` (display command help and information) +- `package` + - `resolve` (display information about the project that owns a directory) +- `samples` + - `dev` (link samples to local sources for access to IntelliSense during development) + - `prep` (prepare samples for local source-linked execution) + - `run` (execute a sample or all samples within a directory) + - `check-node-versions` (execute samples with different node versions, typically in preparation for release) The `dev-tool about` command will print some information about how to use the command. All commands additionally accept the `--help` argument, which will print information about the usage of that specific command. For example, to show help information for the `resolve` command above, issue the command `dev-tool package resolve --help`. @@ -40,6 +41,7 @@ To create a new leaf command in one of the existing sub-command, create a new Ty As an example, we can create a new `hello-world` command under the `dev-tool package` sub-command. The command will print out a string using the many different logging functions. It will accept an argument `--echo ` that specifies the string to be printed. `src/commands/package/hello-world.ts` + ```typescript // Copyright (c) Microsoft Corporation. // Licensed under the MIT license @@ -70,16 +72,17 @@ export default leafCommand(commandInfo, async (options) => { }); ``` -(__Note__: using the `makeCommandInfo` function is required to have strong type-checking on the `options` parameter of the handler. The `options` field of `commandInfo` must have a very strong type, and `makeCommandInfo` takes care of ensuring that the type is as strongly specified as possible.) +(**Note**: using the `makeCommandInfo` function is required to have strong type-checking on the `options` parameter of the handler. The `options` field of `commandInfo` must have a very strong type, and `makeCommandInfo` takes care of ensuring that the type is as strongly specified as possible.) As a last step, add a mapping for the `"hello-world"` command to the sub-command map in `src/commands/package/index.ts`. This will allow the command to resolve: `src/commands/package/index.ts` + ```typescript // ... export default subCommand(commandInfo, { - "hello-world": () => import("./hello-world"), + "hello-world": () => import("./hello-world") // ... rest of the sub-commands still here }); ``` @@ -101,6 +104,7 @@ As an example, we can convert the `hello-world` example above into a branching c Instead of creating a single file `hello-world.ts`, we will instead create a folder `src/commands/hello` and two ts files: `src/commands/hello/index.ts` and `src/commands/hello/world.ts`. In `src/commands/hello/index.ts`, we can define our new sub-command: `src/commands/hello/index.ts` + ```typescript // Copyright (c) Microsoft Corporation. // Licensed under the MIT license @@ -114,11 +118,12 @@ export default subCommand(commandInfo, { }); ``` -(__Note__: Since we don't have any arguments or options to add to the sub-command, the `options` argument to `makeCommandInfo` is omitted (since the sub-command just delegates to its child commands, we wouldn't be able to use any options in this parent command anyway).) +(**Note**: Since we don't have any arguments or options to add to the sub-command, the `options` argument to `makeCommandInfo` is omitted (since the sub-command just delegates to its child commands, we wouldn't be able to use any options in this parent command anyway).) This simple file establishes the mapping from the command name `"world"` to our new command module `src/commands/hello/world.ts`. The contents of `world.ts` are very similar to the previous `hello-world.ts` module, but we will change the `name` field of `commandInfo` and the argument to `createPrinter`: `src/commands/hello/world.ts` + ```typescript // Copyright (c) Microsoft Corporation. // Licensed under the MIT license @@ -130,27 +135,29 @@ const log = createPrinter("world"); export const commandInfo = makeCommandInfo("world", "print a lovely message", { echo: { - kind: "string", - description: "override the message to be printed", - default: "Hello world!" - }}); + kind: "string", + description: "override the message to be printed", + default: "Hello world!" + } +}); export default leafCommand(commandInfo, async (options) => { - // Demonstrate the colorized command output. - log("Normal:", options.echo); - log.success("Success:", options.echo); - log.info("Info:", options.echo); - log.warn("Warn:", options.echo); - log.error("Error:", options.echo); - log.debug("Debug:", options.echo); - - return true; + // Demonstrate the colorized command output. + log("Normal:", options.echo); + log.success("Success:", options.echo); + log.info("Info:", options.echo); + log.warn("Warn:", options.echo); + log.error("Error:", options.echo); + log.debug("Debug:", options.echo); + + return true; }); ``` The final step is to add a mapping to our new subcommand to the`baseCommands` map root `src/commands/index.ts` file: `src/commands/index.ts` + ```typescript // ... @@ -158,14 +165,14 @@ The final step is to add a mapping to our new subcommand to the`baseCommands` ma * All of dev-tool's base commands and the modules that define them */ export const baseCommands = { - "hello": () => import("./hello") + hello: () => import("./hello") // ... all other sub-commands still here } as const; // ... ``` -(__Note__: If we were adding our `hello` command to another sub-command rather than the root, we would just add it to that sub-command's `index.ts` instead of the root `src/commands/index.ts`, similar to how we added `hello-world` to `src/commands/package/index.ts` in the previous example.) +(**Note**: If we were adding our `hello` command to another sub-command rather than the root, we would just add it to that sub-command's `index.ts` instead of the root `src/commands/index.ts`, similar to how we added `hello-world` to `src/commands/package/index.ts` in the previous example.) ### Understanding the Options Type @@ -181,7 +188,7 @@ Each variant supports an optional `shortName` field that specifies a one-letter ### Final Developer Notes -- Using the `subCommand` and `leafCommand` helpers is not required. If a command module exports any function with the signature `(...args: string[]) => Promise` as its default export, it will run when the command is invoked and will be given the arguments passed in the parameters. __However__, only `subCommand` and `leafCommand` provide automatic argument parsing and handling of `--help`. The functions used to provide this behavior are located in the `src/util/commandBuilder.ts` module. +- Using the `subCommand` and `leafCommand` helpers is not required. If a command module exports any function with the signature `(...args: string[]) => Promise` as its default export, it will run when the command is invoked and will be given the arguments passed in the parameters. **However**, only `subCommand` and `leafCommand` provide automatic argument parsing and handling of `--help`. The functions used to provide this behavior are located in the `src/util/commandBuilder.ts` module. - Some additional helper modules can be found in `src/util` such as `resolveProject.ts` which walks up the directory hierarchy and finds the absolute path of the nearest SDK package directory (useful for commands like `samples` which always operate relative to the package directory) - The tool runs using the `transpileOnly` option in the `ts-node` configuration, meaning it does not perform run-time type-checking. The build step of the package will run type-checking using `tsc`, so to check the tool's code for type errors, simply use `rushx build`. @@ -199,4 +206,4 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. diff --git a/common/tools/dev-tool/package.json b/common/tools/dev-tool/package.json index aae4a3ee90e2..681bf0af06ae 100644 --- a/common/tools/dev-tool/package.json +++ b/common/tools/dev-tool/package.json @@ -34,7 +34,7 @@ "bugs": { "url": "https://github.com/azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/common/tools/dev-tool/", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/common/tools/dev-tool/", "sideEffects": false, "private": true, "prettier": "../eslint-plugin-azure-sdk/prettier.json", diff --git a/common/tools/dev-tool/src/commands/samples/publish.ts b/common/tools/dev-tool/src/commands/samples/publish.ts index 1a0785c4b111..5811d2471e33 100644 --- a/common/tools/dev-tool/src/commands/samples/publish.ts +++ b/common/tools/dev-tool/src/commands/samples/publish.ts @@ -99,7 +99,7 @@ function createPackageJson(info: SampleGenerationInfo, outputKind: OutputKind): bugs: { url: "https://github.com/Azure/azure-sdk-for-js/issues" }, - homepage: `https://github.com/Azure/azure-sdk-for-js/tree/master/${info.projectRepoPath}`, + homepage: `https://github.com/Azure/azure-sdk-for-js/tree/main/${info.projectRepoPath}`, ...info.computeSampleDependencies(outputKind) }; } diff --git a/common/tools/eslint-plugin-azure-sdk/README.md b/common/tools/eslint-plugin-azure-sdk/README.md index f32bb85a6b1c..42b6f76e7966 100644 --- a/common/tools/eslint-plugin-azure-sdk/README.md +++ b/common/tools/eslint-plugin-azure-sdk/README.md @@ -76,48 +76,48 @@ Some rules (see table below) are fixable using the `--fix` ESLint option (added ### Rules -| Rule | Default | Fixable | Release | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | ------------------ | ------- | -| [**github-source-headers**]https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/github-source-headers.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | -| [**ts-apisurface-standardized-verbs**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-apisurface-standardized-verbs.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-apisurface-supportcancellation**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-apisurface-supportcancellation.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-config-allowsyntheticdefaultimports**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-allowsyntheticdefaultimports.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-declaration**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-declaration.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-esmoduleinterop**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-esmoduleinterop.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-exclude**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-exclude.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-forceconsistentcasinginfilenames**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-forceconsistentcasinginfilenames.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-importhelpers**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-importhelpers.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-lib**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-lib.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-module**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-module.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-moduleresolution**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-moduleresolution.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | -| [**ts-config-no-experimentaldecorators**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-no-experimentaldecorators.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-sourcemap**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-sourcemap.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-strict**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-strict.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-config-target**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-target.md) | :triangular_flag_on_post: | :x: | `1.1.0` | -| [**ts-doc-internal**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-doc-internal.md) | :triangular_flag_on_post: | :x: | `1.1.0` | -| [**ts-error-handling**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-error-handling.md) | :heavy_multiplication_x: | :x: | `1.1.0` | -| [**ts-modules-only-named**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-modules-only-named.md) | :triangular_flag_on_post: | :x: | `1.1.0` | -| [**ts-naming-drop-noun**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-naming-drop-noun.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-naming-options**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-naming-options.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-naming-subclients**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-naming-subclients.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-no-const-enums**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-no-const-enums.md) | :warning: | :heavy_check_mark: | `1.1.0` | -| [**ts-no-window**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-no-window.md) | :triangular_flag_on_post: | :heavy_check_mark: | `3.1.0` | -| [**ts-no-namespaces**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-no-namespaces.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-package-json-author**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-author.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-package-json-bugs**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-bugs.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-package-json-engine-is-present**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-engine-is-present.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | -| [**ts-package-json-files-required**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-files-required.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | -| [**ts-package-json-homepage**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-homepage.md) | :triangular_flag_on_post: | :x: | `1.0.0` | -| [**ts-package-json-keywords**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-keywords.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-package-json-license**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-license.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-package-json-main-is-cjs**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-main-is-cjs.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | -| [**ts-package-json-module**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-module.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | -| [**ts-package-json-name**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-name.md) | :triangular_flag_on_post: | :x: | `1.0.0` | -| [**ts-package-json-repo**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-repo.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-package-json-required-scripts**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-required-scripts.md) | :triangular_flag_on_post: | :x: | `1.0.0` | -| [**ts-package-json-sideeffects**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-sideeffects.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | -| [**ts-package-json-types**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-types.md) | :triangular_flag_on_post: | :x: | `1.1.0` | -| [**ts-pagination-list**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-pagination-list.md) | :triangular_flag_on_post: | :x: | `1.2.0` | -| [**ts-use-interface-parameters**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-use-interface-parameters.md) | :warning: | :x: | `1.1.0` | -| [**ts-use-promises**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-use-promises.md) | :triangular_flag_on_post: | :x: | `1.1.0` | -| [**ts-versioning-semver**](https://github.com/Azure/azure-sdk-for-js/blob/master/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-versioning-semver.md) | :triangular_flag_on_post: | :x: | `1.1.0` | +| Rule | Default | Fixable | Release | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | ------------------ | ------- | +| [**github-source-headers**]https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/github-source-headers.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | +| [**ts-apisurface-standardized-verbs**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-apisurface-standardized-verbs.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-apisurface-supportcancellation**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-apisurface-supportcancellation.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-config-allowsyntheticdefaultimports**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-allowsyntheticdefaultimports.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-declaration**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-declaration.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-esmoduleinterop**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-esmoduleinterop.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-exclude**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-exclude.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-forceconsistentcasinginfilenames**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-forceconsistentcasinginfilenames.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-importhelpers**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-importhelpers.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-lib**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-lib.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-module**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-module.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-moduleresolution**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-moduleresolution.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | +| [**ts-config-no-experimentaldecorators**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-no-experimentaldecorators.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-sourcemap**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-sourcemap.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-strict**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-strict.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-config-target**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-config-target.md) | :triangular_flag_on_post: | :x: | `1.1.0` | +| [**ts-doc-internal**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-doc-internal.md) | :triangular_flag_on_post: | :x: | `1.1.0` | +| [**ts-error-handling**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-error-handling.md) | :heavy_multiplication_x: | :x: | `1.1.0` | +| [**ts-modules-only-named**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-modules-only-named.md) | :triangular_flag_on_post: | :x: | `1.1.0` | +| [**ts-naming-drop-noun**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-naming-drop-noun.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-naming-options**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-naming-options.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-naming-subclients**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-naming-subclients.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-no-const-enums**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-no-const-enums.md) | :warning: | :heavy_check_mark: | `1.1.0` | +| [**ts-no-window**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-no-window.md) | :triangular_flag_on_post: | :heavy_check_mark: | `3.1.0` | +| [**ts-no-namespaces**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-no-namespaces.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-package-json-author**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-author.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-package-json-bugs**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-bugs.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-package-json-engine-is-present**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-engine-is-present.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | +| [**ts-package-json-files-required**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-files-required.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | +| [**ts-package-json-homepage**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-homepage.md) | :triangular_flag_on_post: | :x: | `1.0.0` | +| [**ts-package-json-keywords**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-keywords.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-package-json-license**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-license.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-package-json-main-is-cjs**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-main-is-cjs.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | +| [**ts-package-json-module**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-module.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.1.0` | +| [**ts-package-json-name**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-name.md) | :triangular_flag_on_post: | :x: | `1.0.0` | +| [**ts-package-json-repo**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-repo.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-package-json-required-scripts**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-required-scripts.md) | :triangular_flag_on_post: | :x: | `1.0.0` | +| [**ts-package-json-sideeffects**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-sideeffects.md) | :triangular_flag_on_post: | :heavy_check_mark: | `1.0.0` | +| [**ts-package-json-types**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-types.md) | :triangular_flag_on_post: | :x: | `1.1.0` | +| [**ts-pagination-list**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-pagination-list.md) | :triangular_flag_on_post: | :x: | `1.2.0` | +| [**ts-use-interface-parameters**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-use-interface-parameters.md) | :warning: | :x: | `1.1.0` | +| [**ts-use-promises**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-use-promises.md) | :triangular_flag_on_post: | :x: | `1.1.0` | +| [**ts-versioning-semver**](https://github.com/Azure/azure-sdk-for-js/blob/main/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-versioning-semver.md) | :triangular_flag_on_post: | :x: | `1.1.0` | diff --git a/common/tools/eslint-plugin-azure-sdk/ci.yml b/common/tools/eslint-plugin-azure-sdk/ci.yml index b4116e98eeda..2fd0a75e8df7 100644 --- a/common/tools/eslint-plugin-azure-sdk/ci.yml +++ b/common/tools/eslint-plugin-azure-sdk/ci.yml @@ -1,7 +1,6 @@ pr: branches: include: - - master - main paths: diff --git a/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-homepage.md b/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-homepage.md index 6618339904b4..d78b26c4e356 100644 --- a/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-homepage.md +++ b/common/tools/eslint-plugin-azure-sdk/docs/rules/ts-package-json-homepage.md @@ -8,13 +8,13 @@ Requires `homepage` in `package.json` to be set to the library's readme. ```json { - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/README.md" + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/README.md" } ``` ```json { - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/" + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/" } ``` @@ -22,7 +22,7 @@ Requires `homepage` in `package.json` to be set to the library's readme. ```json { - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/README.md" + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/README.md" } ``` @@ -34,7 +34,7 @@ Requires `homepage` in `package.json` to be set to the library's readme. ```json { - "homepage": "https://github.com/Azure/azure-sdk-for-java/blob/master/sdk/servicebus/service-bus/README.md" + "homepage": "https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/servicebus/service-bus/README.md" } ``` diff --git a/common/tools/eslint-plugin-azure-sdk/package.json b/common/tools/eslint-plugin-azure-sdk/package.json index 22b5ff17a697..149644682892 100644 --- a/common/tools/eslint-plugin-azure-sdk/package.json +++ b/common/tools/eslint-plugin-azure-sdk/package.json @@ -21,7 +21,7 @@ } ], "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/common/tools/eslint-plugin-azure-sdk/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/common/tools/eslint-plugin-azure-sdk/", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git", diff --git a/common/tools/eslint-plugin-azure-sdk/src/rules/ts-package-json-homepage.ts b/common/tools/eslint-plugin-azure-sdk/src/rules/ts-package-json-homepage.ts index 07d1ec1b3e61..ed343b7d9721 100644 --- a/common/tools/eslint-plugin-azure-sdk/src/rules/ts-package-json-homepage.ts +++ b/common/tools/eslint-plugin-azure-sdk/src/rules/ts-package-json-homepage.ts @@ -37,7 +37,7 @@ export = { const nodeValue = node.value as Literal; if ( - !/^https:\/\/github.com\/Azure\/azure-sdk-for-js\/(blob|tree)\/master\/sdk\/(([a-z]+-)*[a-z]+\/)+(README\.md)?$/.test( + !/^https:\/\/github.com\/Azure\/azure-sdk-for-js\/(blob|tree)\/main\/sdk\/(([a-z]+-)*[a-z]+\/)+(README\.md)?$/.test( nodeValue.value as string ) ) { diff --git a/documentation/Bundling.md b/documentation/Bundling.md index a521dacbb853..5497187816cb 100644 --- a/documentation/Bundling.md +++ b/documentation/Bundling.md @@ -484,4 +484,4 @@ This will emit a compiled version of `index.html`, as well as any included scrip ## Examples -For real working examples of using each bundler with both TypeScript and JavaScript, please look at the [samples/Bundling](https://github.com/Azure/azure-sdk-for-js/tree/master/samples/Bundling) folder in this repository. +For real working examples of using each bundler with both TypeScript and JavaScript, please look at the [samples/Bundling](https://github.com/Azure/azure-sdk-for-js/tree/main/samples/Bundling) folder in this repository. diff --git a/documentation/using-azure-identity.md b/documentation/using-azure-identity.md index 2a48c17804de..d3a11ca7e078 100644 --- a/documentation/using-azure-identity.md +++ b/documentation/using-azure-identity.md @@ -24,7 +24,7 @@ platform needs two things: a tenant and an app registration created for that tenant. A "tenant" is basically instance of Azure Active Directory associated with your -Azure account. You can follow the instructions on [this quick start guide for +Azure account. You can follow the instructions on [this quick start guide for setting up a tenant](https://docs.microsoft.com/azure/active-directory/develop/quickstart-create-new-tenant) to check if you have AAD tenant already or, if not, create one. @@ -34,7 +34,7 @@ quickstart guide for app registrations](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app). Your app registration holds the configuration for how your application will authenticate users and services, so it's very important to it set up correctly -before using any of the credential types below. The section on each credential +before using any of the credential types below. The section on each credential will indicate which configuration settings it needs and how to use them. ### Should my App be Single or Multi Tenant? @@ -58,18 +58,18 @@ personal Microsoft accounts after it's already created. ## Understanding the Credential Types Microsoft identity platform provides a variety of authentication flows that -serve different use cases and application types. A primary differentiator +serve different use cases and application types. A primary differentiator between these flows is whether the "client" that initiates the flow is running on a user device or on a system managed by the application developer (like a web -server). The [Microsoft Authentication +server). The [Microsoft Authentication Library](https://docs.microsoft.com/azure/active-directory/develop/msal-client-applications) documentation describes this distinction as _public_ versus _confidential_ clients. Most of the credential types are strictly public or confidential as they serve a specific purpose, like authenticating a backend service for use with storage -APIs. Some credentials may be both public or confidential depending on how you -configure them. For example, the [authorization code +APIs. Some credentials may be both public or confidential depending on how you +configure them. For example, the [authorization code flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) can be initiated from a mobile application _or_ from within a web application running in a server. @@ -88,9 +88,9 @@ credential for your application: - If not, use the `EnvironmentCredential` - **Do you want your application to pick the appropriate credential type based on the -environment?** + environment?** - - Use the `DefaultAzureCredential` + - Use the `DefaultAzureCredential` - **Is the application deployed to a user device or running in the browser?** @@ -109,16 +109,16 @@ The identity platform provides an authorization model for Azure services with permissions](https://docs.microsoft.com/azure/active-directory/develop/v2-permissions-and-consent#troubleshooting-permissions-and-consent): - **Application permissions** authorize an application to access resources - directly. Administrator consent must be granted to your application. + directly. Administrator consent must be granted to your application. - **Delegated permissions** authorize an application to access resources on - behalf of a specific user. The user may grant permission to your application + behalf of a specific user. The user may grant permission to your application unless the permission requires administrator consent. If you are only using _confidential credentials_ you should only need to be -concerned with application permissions. If you will be authenticating users +concerned with application permissions. If you will be authenticating users with a _public credential_, you must configure API permissions for the Azure service you need to access (Key Vault, Storage, etc) so that user accounts can -be authorized to use them through your application. The [quick start guide for +be authorized to use them through your application. The [quick start guide for configuring API permissions](https://docs.microsoft.com/azure/active-directory/develop/quickstart-configure-app-access-web-apis) explains how to do this in detail. @@ -128,19 +128,19 @@ explains how to do this in detail. When a user is being authenticated to access a service that is configured with delegated permissions, they may be presented with a consent screen that asks whether they want to grant your application permission to access resources on -their behalf. An example of this consent flow can be found in the [consent +their behalf. An example of this consent flow can be found in the [consent framework documentation page](https://docs.microsoft.com/azure/active-directory/develop/consent-framework). An administrator can also grant consent for your application on behalf of all -users. In this case, users may never see a consent screen. If you'd like to +users. In this case, users may never see a consent screen. If you'd like to make it easy for an administrator to grant access to all users, follow the instructions in the [admin consent endpoint request documentation](https://docs.microsoft.com/azure/active-directory/develop/v2-permissions-and-consent#request-the-permissions-from-a-directory-admin). There are some cases where a user may not be allowed to grant consent to an -application. When this occurs, the user may have to speak with an administrator -to have the permissions granted on their behalf. The [user consent +application. When this occurs, the user may have to speak with an administrator +to have the permissions granted on their behalf. The [user consent troubleshooting page](https://docs.microsoft.com/azure/active-directory/manage-apps/application-sign-in-unexpected-user-consent-error) provides more details on the consent errors a user might encounter. @@ -175,7 +175,7 @@ on which credential you are using. The `UsernamePasswordCredential` follows the [resource owner password credential flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth-ropc) -to authenticate public or confidential clients. To use this credential, you +to authenticate public or confidential clients. To use this credential, you will need the `tenantId` and `clientId` of your app and a `username` and `password` of the user you are authenticating. @@ -187,19 +187,19 @@ This credential type supports multi-tenant app registrations so you may pass `organizations` as the `tenantId` to enable users from any organizational tenant to authenticate. -Generally speaking, we *do not* recommend using this credential type when other -more secure credential types are available. Handling the user's password +Generally speaking, we _do not_ recommend using this credential type when other +more secure credential types are available. Handling the user's password directly is a major security risk. > NOTE: This credential type does not work with personal Microsoft accounts or -> multi-factor authentication at this time. See the +> multi-factor authentication at this time. See the > [documentation](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth-ropc) > for more information. ### EnvironmentCredential The `EnvironmentCredential` looks for well-known environment variable names to -determine how it should authenticate. It effectively acts as a wrapper for the +determine how it should authenticate. It effectively acts as a wrapper for the `ClientSecretCredential`, `ClientCertificateCredential` or `UsernamePasswordCredential` depending on which environment variables are present. @@ -210,7 +210,7 @@ Containers, etc. In all cases, the `AZURE_TENANT_ID` and `AZURE_CLIENT_ID` environment variables are expected to be present to use this credential as they identify your -application. The following environment variables will then be tried in order: +application. The following environment variables will then be tried in order: - `AZURE_CLIENT_SECRET` - A client secret to be used with `ClientSecretCredential` @@ -231,7 +231,7 @@ machines, App Services, Functions, Container Services, [and more](https://docs.microsoft.com/azure/active-directory/managed-identities-azure-resources/services-support-managed-identities). One important distinction of this credential compared to the others is that it -_does not require an app registration_. This authentication scheme relates to +_does not require an app registration_. This authentication scheme relates to the actual Azure resources to which your code is deployed rather than the application itself. @@ -251,13 +251,13 @@ to other Azure services through role assignments. If you have configured your resource to use a system-assigned identity, you can just create an instance of `ManagedIdentityCredential` without any -configuration. For user-assigned identities, you must provide the `clientId` of +configuration. For user-assigned identities, you must provide the `clientId` of the managed identity you wish to use for authentication. More information on configuring and using managed identities can be found in the [Managed identities for Azure resources](https://docs.microsoft.com/azure/active-directory/managed-identities-azure-resources/overview) -documentation. There is also a [list of Azure +documentation. There is also a [list of Azure services](https://docs.microsoft.com/azure/active-directory/managed-identities-azure-resources/services-support-managed-identities#azure-services-that-support-azure-ad-authentication) that have been tested to confirm support for managed identity authentication. @@ -265,7 +265,7 @@ that have been tested to confirm support for managed identity authentication. The `InteractiveBrowserCredential` follows the [implicit grant flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-implicit-grant-flow) -which enables authentication for clients that run completely in the browser. It +which enables authentication for clients that run completely in the browser. It is primarily useful for single-page web applications (SPAs) which need to authenticate to access Azure resources and APIs directly. @@ -274,8 +274,8 @@ configured with both the **Access tokens** and **ID tokens** options checked und **Implicit grant** in the **Authentication** page. You will also need to add a redirect URI in the **Redirect URIs** section of the -**Authentication** page for your app registration. The redirect URI must point -to the URI of your web application. You must also make sure to specify the same +**Authentication** page for your app registration. The redirect URI must point +to the URI of your web application. You must also make sure to specify the same URI in the `redirectUri` field of the `InteractiveBrowserCredentialOptions` when creating an `InteractiveBrowserCredential`. @@ -302,15 +302,14 @@ which enables server-hosted web applications, native desktop and mobile applications, and web APIs to access resources on the user's behalf. This credential requires that the developer have an HTTP(S) endpoint exposed -which can receive the authentication response redirect. The URI at which you +which can receive the authentication response redirect. The URI at which you host this endpoint must be added to the **Redirect URIs** list on the -**Authentication** page of your app registration. If you are developing +**Authentication** page of your app registration. If you are developing locally, you can also add a redirect URI for your development endpoint (e.g. `http://localhost:8080/authresponse`). A complete example of hosting your own authentication response endpoint can be -found in the [`authorization code -sample`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/manual/authorizationCodeSample.ts). +found in the [`authorization code sample`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/manual/authorizationCodeSample.ts). ### DefaultAzureCredential diff --git a/eng/common/README.md b/eng/common/README.md index b9867f0705e2..732688daadc0 100644 --- a/eng/common/README.md +++ b/eng/common/README.md @@ -1,3 +1,3 @@ # Common Engineering System -Updates under this directory should only be made in the `azure-sdk-tools` repo as any changes under this directory outside of that repo will end up getting overwritten with future updates. For information about making updates see [common engineering system docs](https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md) +Updates under this directory should only be made in the `azure-sdk-tools` repo as any changes under this directory outside of that repo will end up getting overwritten with future updates. For information about making updates see [common engineering system docs](https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md) diff --git a/eng/common/docgeneration/Generate-DocIndex.ps1 b/eng/common/docgeneration/Generate-DocIndex.ps1 index 82b3a75e4e53..cf9b5f06ff95 100644 --- a/eng/common/docgeneration/Generate-DocIndex.ps1 +++ b/eng/common/docgeneration/Generate-DocIndex.ps1 @@ -177,5 +177,5 @@ else { LogWarning "The function for 'GetGithubIoDocIndexFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" } diff --git a/eng/common/pipelines/templates/steps/check-spelling.yml b/eng/common/pipelines/templates/steps/check-spelling.yml index 3865a3f26ece..986d729fc30c 100644 --- a/eng/common/pipelines/templates/steps/check-spelling.yml +++ b/eng/common/pipelines/templates/steps/check-spelling.yml @@ -2,7 +2,7 @@ # and some ref (branch, tag, etc.) or commit hash. Only runs on PRs. # ContinueOnError - true: Pipeline warns on spelling error # false: Pipeline fails on spelling error -# TargetBranch - Target ref (e.g. master) to compare to create file change +# TargetBranch - Target ref (e.g. main) to compare to create file change # list. # CspellConfigPath - Path to cspell.json config location diff --git a/eng/common/pipelines/templates/steps/docs-metadata-release.yml b/eng/common/pipelines/templates/steps/docs-metadata-release.yml index b3c844422585..2f58b90d4d10 100644 --- a/eng/common/pipelines/templates/steps/docs-metadata-release.yml +++ b/eng/common/pipelines/templates/steps/docs-metadata-release.yml @@ -26,7 +26,7 @@ parameters: default: '' - name: PRBranchName type: string - default: 'master-rdme' + default: 'main-rdme' - name: PRLabels type: string default: 'auto-merge' diff --git a/eng/common/pipelines/templates/steps/eng-common-workflow-enforcer.yml b/eng/common/pipelines/templates/steps/eng-common-workflow-enforcer.yml index 0125e6cbacee..b68e1cd0c27a 100644 --- a/eng/common/pipelines/templates/steps/eng-common-workflow-enforcer.yml +++ b/eng/common/pipelines/templates/steps/eng-common-workflow-enforcer.yml @@ -16,7 +16,7 @@ steps: if (($LASTEXITCODE -eq 0) -and ($filesInCommonDir.Count -gt 0)) { Write-Host "##vso[task.LogIssue type=error;]Changes to files under 'eng/common' directory should not be made in this Repo`n${filesInCommonDir}" - Write-Host "##vso[task.LogIssue type=error;]Please follow workflow at https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md" + Write-Host "##vso[task.LogIssue type=error;]Please follow workflow at https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md" exit 1 } } diff --git a/eng/common/pipelines/templates/steps/install-pipeline-generation.yml b/eng/common/pipelines/templates/steps/install-pipeline-generation.yml index d0da703285f3..d368d52595b3 100644 --- a/eng/common/pipelines/templates/steps/install-pipeline-generation.yml +++ b/eng/common/pipelines/templates/steps/install-pipeline-generation.yml @@ -9,7 +9,7 @@ steps: - script: > dotnet tool install Azure.Sdk.Tools.PipelineGenerator - --version 1.0.2-dev.20210309.1 + --version 1.0.2-dev.20210621.4 --add-source https://pkgs.dev.azure.com/azure-sdk/public/_packaging/azure-sdk/nuget/v3/index.json --tool-path ${{parameters.ToolPath}} workingDirectory: $(Pipeline.Workspace)/pipeline-generator diff --git a/eng/common/pipelines/templates/steps/set-default-branch.yml b/eng/common/pipelines/templates/steps/set-default-branch.yml index e3eed4512d97..491edaa8b68d 100644 --- a/eng/common/pipelines/templates/steps/set-default-branch.yml +++ b/eng/common/pipelines/templates/steps/set-default-branch.yml @@ -5,8 +5,8 @@ steps: - pwsh: | $setDefaultBranch = (git remote show ${{ parameters.RemoteRepo }} | Out-String) -replace "(?ms).*HEAD branch: (\w+).*", '$1' if ($LASTEXITCODE -ne 0) { - Write-Host "Not able to fetch the default branch from git command. Set to master." - $setDefaultBranch = 'master' + Write-Host "Not able to fetch the default branch from git command. Set to main." + $setDefaultBranch = 'main' } Write-Host "Setting DefaultBranch=$setDefaultBranch" Write-Host "##vso[task.setvariable variable=DefaultBranch]$setDefaultBranch" diff --git a/eng/common/scripts/Create-APIReview.ps1 b/eng/common/scripts/Create-APIReview.ps1 index 8b9007253274..0ef5e0ba6818 100644 --- a/eng/common/scripts/Create-APIReview.ps1 +++ b/eng/common/scripts/Create-APIReview.ps1 @@ -71,7 +71,7 @@ else { Write-Host "The function for 'FindArtifactForApiReviewFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" exit(1) } @@ -104,7 +104,7 @@ if ($packages) Write-Host "Version: $($version)" Write-Host "SDK Type: $($pkgInfo.SdkType)" - # Run create review step only if build is triggered from master branch or if version is GA. + # Run create review step only if build is triggered from main branch or if version is GA. # This is to avoid invalidating review status by a build triggered from feature branch if ( ($SourceBranch -eq $DefaultBranch) -or (-not $version.IsPrerelease)) { diff --git a/eng/common/scripts/Package-Properties.ps1 b/eng/common/scripts/Package-Properties.ps1 index 3aadc8d58064..64698a181b7e 100644 --- a/eng/common/scripts/Package-Properties.ps1 +++ b/eng/common/scripts/Package-Properties.ps1 @@ -126,7 +126,7 @@ function Get-AllPkgProperties ([string]$ServiceDirectory = $null) return $pkgPropsResult } -# Given the metadata url under https://github.com/Azure/azure-sdk/tree/master/_data/releases/latest, +# Given the metadata url under https://github.com/Azure/azure-sdk/tree/main/_data/releases/latest, # the function will return the csv metadata back as part of response. function Get-CSVMetadata ([string]$MetadataUri=$MetadataUri) { @@ -143,7 +143,7 @@ function Get-PkgPropsForEntireService ($serviceDirectoryPath) { LogError "The function for '$GetPackageInfoFromRepoFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" } foreach ($directory in (Get-ChildItem $serviceDirectoryPath -Directory)) diff --git a/eng/common/scripts/Prepare-Release.ps1 b/eng/common/scripts/Prepare-Release.ps1 index eed113299a2e..95f175d3fdaf 100644 --- a/eng/common/scripts/Prepare-Release.ps1 +++ b/eng/common/scripts/Prepare-Release.ps1 @@ -180,7 +180,7 @@ else { LogError "The function 'SetPackageVersion' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" exit 1 } diff --git a/eng/common/scripts/Update-DocsMsPackages.ps1 b/eng/common/scripts/Update-DocsMsPackages.ps1 index 2d43127b2b14..4292200f3b6f 100644 --- a/eng/common/scripts/Update-DocsMsPackages.ps1 +++ b/eng/common/scripts/Update-DocsMsPackages.ps1 @@ -31,6 +31,6 @@ if ($UpdateDocsMsPackagesFn -and (Test-Path "Function:$UpdateDocsMsPackagesFn")) } else { LogError "The function for '$UpdateFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" exit 1 } diff --git a/eng/common/scripts/artifact-metadata-parsing.ps1 b/eng/common/scripts/artifact-metadata-parsing.ps1 index 2339155b359d..dc96ee917288 100644 --- a/eng/common/scripts/artifact-metadata-parsing.ps1 +++ b/eng/common/scripts/artifact-metadata-parsing.ps1 @@ -101,7 +101,7 @@ function RetrievePackages($artifactLocation) { { LogError "The function for '$GetPackageInfoFromPackageFileFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" } } diff --git a/eng/common/scripts/copy-docs-to-blobstorage.ps1 b/eng/common/scripts/copy-docs-to-blobstorage.ps1 index 7864e9680f1f..f037dcf51e4f 100644 --- a/eng/common/scripts/copy-docs-to-blobstorage.ps1 +++ b/eng/common/scripts/copy-docs-to-blobstorage.ps1 @@ -240,6 +240,6 @@ else { LogWarning "The function for '$PublishGithubIODocsFn' was not found.` Make sure it is present in eng/scripts/Language-Settings.ps1 and referenced in eng/common/scripts/common.ps1.` - See https://github.com/Azure/azure-sdk-tools/blob/master/doc/common/common_engsys.md#code-structure" + See https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/common_engsys.md#code-structure" } diff --git a/eng/common/scripts/update-docs-metadata.ps1 b/eng/common/scripts/update-docs-metadata.ps1 index fc16fea9e552..6154afd51591 100644 --- a/eng/common/scripts/update-docs-metadata.ps1 +++ b/eng/common/scripts/update-docs-metadata.ps1 @@ -24,7 +24,7 @@ param ( . (Join-Path $PSScriptRoot common.ps1) -$releaseReplaceRegex = "(https://github.com/$RepoId/(?:blob|tree)/)master" +$releaseReplaceRegex = "(https://github.com/$RepoId/(?:blob|tree)/)main" function GetMetaData { if (Test-Path Variable:MetadataUri) { diff --git a/eng/pipelines/aggregate-reports.yml b/eng/pipelines/aggregate-reports.yml index e20d314b0f8f..fd3a7fa9922d 100644 --- a/eng/pipelines/aggregate-reports.yml +++ b/eng/pipelines/aggregate-reports.yml @@ -3,7 +3,6 @@ trigger: none pr: branches: include: - - master - main paths: include: diff --git a/eng/pipelines/mgmt-ci.yml b/eng/pipelines/mgmt-ci.yml index 99f3a3ee0ec7..c2178aaa4235 100644 --- a/eng/pipelines/mgmt-ci.yml +++ b/eng/pipelines/mgmt-ci.yml @@ -1,7 +1,7 @@ trigger: branches: include: - - master + - main paths: include: - eng/pipelines/mgmt-pr.yml @@ -220,7 +220,7 @@ jobs: inputs: verbose: false - - script: 'gulp pack --base-reference=master --head-reference=master' + - script: 'gulp pack --base-reference=main --head-reference=main' displayName: 'gulp pack' - task: CopyFiles@2 diff --git a/eng/pipelines/mgmt-pr.yml b/eng/pipelines/mgmt-pr.yml index b9ae1e217831..e9f9a9db5a66 100644 --- a/eng/pipelines/mgmt-pr.yml +++ b/eng/pipelines/mgmt-pr.yml @@ -1,7 +1,6 @@ pr: branches: include: - - master - main - '*-preview' paths: diff --git a/eng/pipelines/templates/jobs/ci.yml b/eng/pipelines/templates/jobs/ci.yml index eec9b5624fc6..22ad61dda60e 100644 --- a/eng/pipelines/templates/jobs/ci.yml +++ b/eng/pipelines/templates/jobs/ci.yml @@ -33,7 +33,7 @@ jobs: - script: | echo "##vso[build.addbuildtag]Scheduled" displayName: "Tag scheduled builds" - condition: and(always(),and(eq(variables['Build.SourceBranchName'],'master'),eq(variables['Build.Reason'],'Schedule'))) + condition: and(always(),and(eq(variables['Build.SourceBranchName'],'main'),eq(variables['Build.Reason'],'Schedule'))) - template: ../steps/common.yml diff --git a/eng/pipelines/templates/stages/archetype-js-release.yml b/eng/pipelines/templates/stages/archetype-js-release.yml index 68f2a1d47c1c..dbf7947053b2 100644 --- a/eng/pipelines/templates/stages/archetype-js-release.yml +++ b/eng/pipelines/templates/stages/archetype-js-release.yml @@ -5,7 +5,6 @@ parameters: DependsOn: Build Registry: 'https://registry.npmjs.org/' PrivateRegistry: 'https://pkgs.dev.azure.com/azure-sdk/internal/_packaging/azure-sdk-for-js-pr/npm/registry/' - DocArtifact: 'documentation' TargetDocRepoOwner: '' TargetDocRepoName: '' ServiceDirectory: '' @@ -43,18 +42,13 @@ stages: PackageName: ${{artifact.name}} ServiceName: ${{parameters.ServiceDirectory}} ForRelease: true - - template: /eng/pipelines/templates/steps/stage-artifacts.yml - parameters: - SourceFolder: ${{parameters.ArtifactName}} - TargetFolder: ${{artifact.safeName}} - PackageName: ${{artifact.name}}-[0-9]*.[0-9]*.[0-9]*.tgz - pwsh: | - Get-ChildItem -Recurse $(Pipeline.Workspace)/${{artifact.safeName}} + Get-ChildItem -Recurse ${{parameters.ArtifactName}}/${{artifact.name}} workingDirectory: $(Pipeline.Workspace) displayName: Output Visible Artifacts - template: /eng/common/pipelines/templates/steps/create-tags-and-git-release.yml parameters: - ArtifactLocation: $(Pipeline.Workspace)/${{artifact.safeName}} + ArtifactLocation: $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}} PackageRepository: Npm ReleaseSha: $(Build.SourceVersion) RepoId: Azure/azure-sdk-for-js @@ -77,7 +71,7 @@ stages: steps: - checkout: self - script: | - export DETECTED_PACKAGE_NAME=`ls $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}-[0-9]*[0-9]*.[0-9]*.tgz` + export DETECTED_PACKAGE_NAME=`ls $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}/*.tgz` echo "##vso[task.setvariable variable=Package.Archive]$DETECTED_PACKAGE_NAME" displayName: Detecting package archive @@ -124,13 +118,8 @@ stages: deploy: steps: - checkout: self - - template: /eng/pipelines/templates/steps/stage-artifacts.yml - parameters: - SourceFolder: ${{parameters.ArtifactName}} - TargetFolder: ${{artifact.safeName}} - PackageName: ${{artifact.name}}-[0-9]*.[0-9]*.[0-9]*.tgz - pwsh: | - Get-ChildItem -Recurse $(Pipeline.Workspace)/${{artifact.safeName}} + Get-ChildItem -Recurse ${{parameters.ArtifactName}}/${{artifact.name}} workingDirectory: $(Pipeline.Workspace) displayName: Output Visible Artifacts - template: /eng/common/pipelines/templates/steps/get-pr-owners.yml @@ -139,7 +128,7 @@ stages: ServiceDirectory: ${{parameters.ServiceDirectory}} - template: /eng/common/pipelines/templates/steps/docs-metadata-release.yml parameters: - ArtifactLocation: $(Pipeline.Workspace)/${{artifact.safeName}} + ArtifactLocation: $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}} PackageRepository: NPM ReleaseSha: $(Build.SourceVersion) RepoId: Azure/azure-sdk-for-js @@ -171,30 +160,16 @@ stages: steps: - checkout: self - pwsh: | - $adjustedName = "${{artifact.name}}" -replace "^azure-", "" - Write-Host "##vso[task.setvariable variable=Documentation.Zip]$adjustedName" - displayName: Set Documentation File Name - - template: /eng/pipelines/templates/steps/stage-artifacts.yml - parameters: - SourceFolder: ${{parameters.ArtifactName}} - TargetFolder: ${{artifact.safeName}} - PackageName: ${{artifact.name}}-[0-9]*.[0-9]*.[0-9]*.tgz - - template: /eng/pipelines/templates/steps/stage-artifacts.yml - parameters: - SourceFolder: ${{parameters.DocArtifact}} - TargetFolder: ${{artifact.safeName}}/${{parameters.DocArtifact}} - PackageName: $(Documentation.Zip).zip - - pwsh: | - Get-ChildItem -Recurse $(Pipeline.Workspace)/${{artifact.safeName}} + Get-ChildItem -Recurse ${{parameters.ArtifactName}}/${{artifact.name}} workingDirectory: $(Pipeline.Workspace) displayName: Output Visible Artifacts - template: /eng/common/pipelines/templates/steps/publish-blobs.yml parameters: - FolderForUpload: '$(Pipeline.Workspace)/${{artifact.safeName}}' + FolderForUpload: '$(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}' BlobSASKey: '$(azure-sdk-docs-prod-sas)' BlobName: '$(azure-sdk-docs-prod-blob-name)' TargetLanguage: 'javascript' - ArtifactLocation: '$(Pipeline.Workspace)/${{artifact.safeName}}' + ArtifactLocation: '$(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}' # we override the regular script path because we have cloned the build tools repo as a separate artifact. ScriptPath: 'eng/common/scripts/copy-docs-to-blobstorage.ps1' @@ -260,7 +235,7 @@ stages: - ${{ each artifact in parameters.Artifacts }}: - ${{if ne(artifact.skipPublishDevFeed, 'true')}}: - pwsh: | - $detectedPackageName=Get-ChildItem $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}-[0-9]*.[0-9]*.[0-9]*-alpha*.tgz + $detectedPackageName=Get-ChildItem $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}/*.tgz echo "##vso[task.setvariable variable=Package.Archive]$detectedPackageName" if ('$(Build.Repository.Name)' -eq 'Azure/azure-sdk-for-js') { $npmToken="$(azure-sdk-npm-token)" diff --git a/eng/pipelines/templates/steps/build.yml b/eng/pipelines/templates/steps/build.yml index bf93bb86a022..2ff746ebc439 100644 --- a/eng/pipelines/templates/steps/build.yml +++ b/eng/pipelines/templates/steps/build.yml @@ -60,28 +60,25 @@ steps: Artifacts: ${{ parameters.Artifacts }} ArtifactPath: $(Build.SourcesDirectory)/sdk/${{ parameters.ServiceDirectory }} - # It's important for performance to pass "sdk" as "sourceFolder" rather than as a prefix in "contents". - # The task first enumerates all files under "sourceFolder", then matches them against the "contents" pattern. - - task: CopyFiles@2 - inputs: - sourceFolder: sdk - contents: | - **/$(coalesceResultFilter)/*.tgz - **/$(coalesceResultFilter)/browser/*.zip - targetFolder: $(Build.ArtifactStagingDirectory) - flattenFolders: true - displayName: "Copy packages" - - - template: /eng/common/pipelines/templates/steps/publish-artifact.yml - parameters: - ArtifactPath: '$(Build.ArtifactStagingDirectory)' - ArtifactName: 'packages' - - template: ../steps/generate-doc.yml parameters: ServiceDirectory: ${{parameters.ServiceDirectory}} + - pwsh: | + $artifacts = '${{ convertToJson(parameters.Artifacts) }}' | ConvertFrom-Json + foreach ($artifact in $artifacts) + { + $artifactName = $artifact.name + Write-Host "Copying $artifactName artifacts to $(Build.ArtifactStagingDirectory)/$artifactName" + New-Item -Type Directory -Name $artifactName -Path $(Build.ArtifactStagingDirectory) > $null + Copy-Item sdk/${{parameters.ServiceDirectory}}/**/$artifactName-*.tgz $(Build.ArtifactStagingDirectory)/$artifactName + Copy-Item sdk/${{parameters.ServiceDirectory}}/**/browser/$artifactName-*.zip $(Build.ArtifactStagingDirectory)/$artifactName + New-Item -Type Directory -Name documentation -Path $(Build.ArtifactStagingDirectory)/$artifactName > $null + Copy-Item $(Build.SourcesDirectory)/docGen/$artifactName.zip $(Build.ArtifactStagingDirectory)/$artifactName/documentation + } + displayName: 'Copy Packages' + - template: /eng/common/pipelines/templates/steps/publish-artifact.yml parameters: - ArtifactPath: '$(Build.ArtifactStagingDirectory)/Documentation' - ArtifactName: 'documentation' + ArtifactPath: '$(Build.ArtifactStagingDirectory)' + ArtifactName: 'packages' diff --git a/eng/pipelines/templates/steps/generate-doc.yml b/eng/pipelines/templates/steps/generate-doc.yml index ce402446d67e..01a5d3351311 100644 --- a/eng/pipelines/templates/steps/generate-doc.yml +++ b/eng/pipelines/templates/steps/generate-doc.yml @@ -16,5 +16,5 @@ steps: displayName: "Run Typedoc Docs" - pwsh: | - $(Build.SourcesDirectory)/eng/tools/compress-subfolders.ps1 "$(Build.SourcesDirectory)/docGen" "$(Build.ArtifactStagingDirectory)/Documentation" + $(Build.SourcesDirectory)/eng/tools/compress-subfolders.ps1 "$(Build.SourcesDirectory)/docGen" "$(Build.SourcesDirectory)/docGen" displayName: "Generate Typedoc Docs" diff --git a/eng/pipelines/templates/steps/stage-artifacts.yml b/eng/pipelines/templates/steps/stage-artifacts.yml deleted file mode 100644 index 16202994b855..000000000000 --- a/eng/pipelines/templates/steps/stage-artifacts.yml +++ /dev/null @@ -1,10 +0,0 @@ -parameters: - SourceFolder: '' # normally ${{parameters.ArtifactName}} - TargetFolder: '' # normally ${{artifact.safeName}} - PackageName: '' # normally ${{artifact.name}} - -steps: - - pwsh: | - New-Item -Type Directory -Name ${{parameters.TargetFolder}} -Path $(Pipeline.Workspace) - Copy-Item $(Pipeline.Workspace)/${{parameters.SourceFolder}}/${{parameters.PackageName}} $(Pipeline.Workspace)/${{parameters.TargetFolder}} - displayName: Stage artifacts diff --git a/eng/tools/generate-doc/index.js b/eng/tools/generate-doc/index.js index d8c93c3c7dc8..82a55b32f41c 100644 --- a/eng/tools/generate-doc/index.js +++ b/eng/tools/generate-doc/index.js @@ -31,6 +31,7 @@ const getChecks = async (dir, checks) => { checks.isClient = true; } checks.version = settings["version"]; + checks.packageName = settings["name"]; } if (fileName == "typedoc.json") { checks.typedocPresent = true; @@ -99,6 +100,7 @@ const executeTypedoc = async (exclusionList, inclusionList, generateIndexWithTem typedocPresent: false, isClient: false, version: "0", + packageName: "" }; eachPackagePath = path.join(eachServicePath, eachPackage); pathToAssets = eachPackagePath + "/assets"; @@ -108,23 +110,26 @@ const executeTypedoc = async (exclusionList, inclusionList, generateIndexWithTem console.log( "checks after walk: checks.isPrivate = " + - checks.isPrivate + - ", checks.srcPresent = " + - checks.srcPresent + - ", typedocPresent = " + - checks.typedocPresent + - ", isClient = " + - checks.isClient + - ", version = " + - checks.version + checks.isPrivate + + ", checks.srcPresent = " + + checks.srcPresent + + ", typedocPresent = " + + checks.typedocPresent + + ", isClient = " + + checks.isClient + + ", version = " + + checks.version + + ", packageName = " + + checks.packageName ); console.log("Path: " + eachPackagePath); if (!checks.isPrivate) { if ((argv.clientOnly && checks.isClient) || !argv.clientOnly) { if (checks.srcPresent) { + var artifactName = checks.packageName.replace("@", "").replace("/", "-"); if (argv.docGenOutput === "dg") { docOutputFolder = - "--out ../../../docGen/" + eachPackage + "/" + checks.version + " ./src"; + "--out ../../../docGen/" + artifactName + "/" + checks.version + " ./src"; } let typedocProcess; diff --git a/eng/tools/versioning/README.md b/eng/tools/versioning/README.md index fed41ed107b8..2632da5930bd 100644 --- a/eng/tools/versioning/README.md +++ b/eng/tools/versioning/README.md @@ -6,7 +6,7 @@ Versioning tools make updating package versions easier. These tools target packa ### increment.js -Increment the version number after a release according to [version policies](https://github.com/Azure/azure-sdk/blob/master/docs/policies/releases.md#incrementing-after-release). Uses the current version in package.json to determine the next version. +Increment the version number after a release according to [version policies](https://github.com/Azure/azure-sdk/blob/main/docs/policies/releases.md#incrementing-after-release). Uses the current version in package.json to determine the next version. ```bash node increment.js --artifact-name azure-tempate @@ -94,5 +94,4 @@ const irrelevantVersion = "1.0.0" In the above example we see a `packageVersion` that we want to replace and an `irrelevantVersion` that, if replaced, would cause problems with how the code operates. In this case, one would set the prefix to `packageVersion`. The tool matches the prefix on the line and handles any characters between the prefix and a version string (i.e. assignment operators like `=` or `:` in the case of a mapping). - ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Feng%2Ftools%2Fversioning%2FREADME.png) diff --git a/rush.json b/rush.json index 61ea3b71b0ce..eb5e506f2aeb 100644 --- a/rush.json +++ b/rush.json @@ -541,6 +541,16 @@ "projectFolder": "sdk/identity/identity", "versionPolicyName": "client" }, + { + "packageName": "@azure/identity-vscode", + "projectFolder": "sdk/identity/identity-vscode", + "versionPolicyName": "client" + }, + { + "packageName": "@azure/identity-cache-persistence", + "projectFolder": "sdk/identity/identity-cache-persistence", + "versionPolicyName": "client" + }, { "packageName": "@azure/keyvault-common", "projectFolder": "sdk/keyvault/keyvault-common", diff --git a/samples/README.md b/samples/README.md index ebea32c86f88..d341f325fffc 100644 --- a/samples/README.md +++ b/samples/README.md @@ -21,7 +21,7 @@ The Azure SDK repository is organized in the following folder structure, with th ## Getting Started Samples -Each package folder contains a package-specific `README.md` file. Most of these `README` files contain samples illustrating basic usage of the the APIs contained in the package. For example, you can find the Getting Started samples for the `@azure/storage-blob` package [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob#examples). +Each package folder contains a package-specific `README.md` file. Most of these `README` files contain samples illustrating basic usage of the the APIs contained in the package. For example, you can find the Getting Started samples for the `@azure/storage-blob` package [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob#examples). ## Package Samples and How-To Guides @@ -29,7 +29,7 @@ Each package folder contains a subfolder called `samples` with additional code s ## Global Samples -Samples that apply to every package or to no package in particular are located in subdirectories within the root `/samples` directory. For example, the [`/samples/Bundling`](https://github.com/Azure/azure-sdk-for-js/tree/master/samples/Bundling) directory contains sample code illustrating how to configure package bundling tools to work with the Azure SDK for JS packages: +Samples that apply to every package or to no package in particular are located in subdirectories within the root `/samples` directory. For example, the [`/samples/Bundling`](https://github.com/Azure/azure-sdk-for-js/tree/main/samples/Bundling) directory contains sample code illustrating how to configure package bundling tools to work with the Azure SDK for JS packages: - `/samples/Bundling` - `/parcel` (samples for using the SDK packages with parcel) @@ -40,7 +40,7 @@ Samples that apply to every package or to no package in particular are located i (The `rollup` and `webpack` directories also have `js` and `ts` subdirectories for JavaScript and TypeScript respectively.) -For more information on package bundling, see [`/documentation/Bundling.md`](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md). +For more information on package bundling, see [`/documentation/Bundling.md`](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md). ## Sample Applications diff --git a/sdk/advisor/arm-advisor/README.md b/sdk/advisor/arm-advisor/README.md index 6e851c5fd17e..c78a674a386d 100644 --- a/sdk/advisor/arm-advisor/README.md +++ b/sdk/advisor/arm-advisor/README.md @@ -1,92 +1,101 @@ ## Azure AdvisorManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AdvisorManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AdvisorManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-advisor` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-advisor +npm install --save @azure/arm-advisor @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get recommendationMetadata as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get recommendationMetadata as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AdvisorManagementClient, AdvisorManagementModels, AdvisorManagementMappers } from "@azure/arm-advisor"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AdvisorManagementClient } = require("@azure/arm-advisor"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AdvisorManagementClient(creds, subscriptionId); - const name = "testname"; - client.recommendationMetadata.get(name).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AdvisorManagementClient(creds, subscriptionId); +const name = "testname"; +client.recommendationMetadata.get(name).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get recommendationMetadata as an example written in JavaScript. +#### browser - Authentication, client creation, and get recommendationMetadata as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-advisor sample - - + diff --git a/sdk/advisor/arm-advisor/package.json b/sdk/advisor/arm-advisor/package.json index a8157d573cae..a877ba90191e 100644 --- a/sdk/advisor/arm-advisor/package.json +++ b/sdk/advisor/arm-advisor/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-advisor", "author": "Microsoft Corporation", "description": "AdvisorManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/advisorManagementClient.js", "types": "./esm/advisorManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/advisor/arm-advisor", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/advisor/arm-advisor", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/advisor/arm-advisor/src/advisorManagementClient.ts b/sdk/advisor/arm-advisor/src/advisorManagementClient.ts index a1de4884947a..4b888955a6a0 100644 --- a/sdk/advisor/arm-advisor/src/advisorManagementClient.ts +++ b/sdk/advisor/arm-advisor/src/advisorManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -25,11 +26,16 @@ class AdvisorManagementClient extends AdvisorManagementClientContext { /** * Initializes a new instance of the AdvisorManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AdvisorManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AdvisorManagementClientOptions) { super(credentials, subscriptionId, options); this.recommendationMetadata = new operations.RecommendationMetadata(this); this.configurations = new operations.Configurations(this); diff --git a/sdk/advisor/arm-advisor/src/advisorManagementClientContext.ts b/sdk/advisor/arm-advisor/src/advisorManagementClientContext.ts index e75f0e19b91c..7c8e091f169e 100644 --- a/sdk/advisor/arm-advisor/src/advisorManagementClientContext.ts +++ b/sdk/advisor/arm-advisor/src/advisorManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-advisor"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class AdvisorManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AdvisorManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AdvisorManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AdvisorManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/agrifood/agrifood-farming-rest/README.md b/sdk/agrifood/agrifood-farming-rest/README.md index 6078dc623d10..f22b933c58a8 100644 --- a/sdk/agrifood/agrifood-farming-rest/README.md +++ b/sdk/agrifood/agrifood-farming-rest/README.md @@ -105,10 +105,10 @@ const result = await client.path("/farmers/{farmerId}", farmerId).patch({ name: "Contoso Farmer", description: "Your custom farmer description here", status: "Active", - properties: { foo: "bar", "numeric one": 1, "1": "numeric key" }, + properties: { foo: "bar", "numeric one": 1, "1": "numeric key" } }, // Set the content-type of the request - contentType: "application/merge-patch+json", + contentType: "application/merge-patch+json" }); if (result.status !== "200" && result.status !== "201") { @@ -174,7 +174,7 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps @@ -184,7 +184,7 @@ For more extensive documentation on the FarmBeats, see the [FarmBeats documentat ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -193,16 +193,16 @@ If you'd like to contribute to this library, please read the [contributing guide ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fagrifood%2Fagrifood-farming-rest%2FREADME.png) [product_documentation]: https://docs.microsoft.com/azure/industry/agriculture/overview-azure-farmbeats -[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/rest-clients.md -[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/agrifood/agrifood-farming-rest +[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md +[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/agrifood/agrifood-farming-rest [npm]: https://www.npmjs.com/org/azure-rest [ref_docs]: https://azure.github.io/azure-sdk-for-js [azure_subscription]: https://azure.microsoft.com/free/ [farmbeats_resource]: https://docs.microsoft.com/azure/industry/agriculture/install-azure-farmbeats [authenticate_with_token]: https://docs.microsoft.com/azure/cognitive-services/authentication?tabs=powershell#authenticate-with-an-authentication-token -[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#credentials +[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#credentials [azure_identity_npm]: https://www.npmjs.com/package/@azure/identity -[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [install_farmbeats]: https://aka.ms/FarmBeatsInstallDocumentationPaaS [farm_hierarchy]: https://aka.ms/FarmBeatsFarmHierarchyDocs [scenes]: https://aka.ms/FarmBeatsSatellitePaaSDocumentation diff --git a/sdk/agrifood/agrifood-farming-rest/package.json b/sdk/agrifood/agrifood-farming-rest/package.json index f8479dba5232..ff5fd1e68354 100644 --- a/sdk/agrifood/agrifood-farming-rest/package.json +++ b/sdk/agrifood/agrifood-farming-rest/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/agrifood-farming-rest.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/agrifood/agrifood-farming/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/agrifood/agrifood-farming/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/README.md b/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/README.md index bfa71e5593d5..1cf6b9e8c04b 100644 --- a/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/README.md +++ b/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/README.md @@ -58,10 +58,10 @@ npx cross-env FARMBEATS_ENDPOINT="" node deleteFarmer.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[deletefarmer]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/deleteFarmer.js -[listfarmers]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/listFarmers.js -[createfarmer]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/createFarmer.js +[deletefarmer]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/deleteFarmer.js +[listfarmers]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/listFarmers.js +[createfarmer]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/createFarmer.js [apiref]: https://docs.microsoft.com/javascript [freesub]: https://azure.microsoft.com/free/ [createinstance_azurefarmbeatsserviceinstance]: https://docs.microsoft.com/azure/industry/agriculture/install-azure-farmbeats -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/agrifood/agrifood-farming-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/agrifood/agrifood-farming-rest/README.md diff --git a/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/package.json b/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/package.json index 492e758f1eee..3c1f96807857 100644 --- a/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/package.json +++ b/sdk/agrifood/agrifood-farming-rest/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/agrifood/agrifood-farming-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/agrifood/agrifood-farming-rest", "dependencies": { "@azure-rest/agrifood-farming": "next", "dotenv": "latest", diff --git a/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/README.md b/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/README.md index f4ce1f12e1d0..74b6192e8f4e 100644 --- a/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/README.md +++ b/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/README.md @@ -70,11 +70,11 @@ npx cross-env FARMBEATS_ENDPOINT="" node dist/deleteFarmer.j Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[deletefarmer]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/src/deleteFarmer.ts -[listfarmers]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/src/listFarmers.ts -[createfarmer]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/src/createFarmer.ts +[deletefarmer]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/src/deleteFarmer.ts +[listfarmers]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/src/listFarmers.ts +[createfarmer]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/src/createFarmer.ts [apiref]: https://docs.microsoft.com/javascript [freesub]: https://azure.microsoft.com/free/ [createinstance_azurefarmbeatsserviceinstance]: https://docs.microsoft.com/azure/industry/agriculture/install-azure-farmbeats -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/agrifood/agrifood-farming-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/agrifood/agrifood-farming-rest/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/package.json b/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/package.json index f226144ec0c4..7c8bbc00bbc9 100644 --- a/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/package.json +++ b/sdk/agrifood/agrifood-farming-rest/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/agrifood/agrifood-farming-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/agrifood/agrifood-farming-rest", "dependencies": { "@azure-rest/agrifood-farming": "next", "dotenv": "latest", diff --git a/sdk/agrifood/ci.yml b/sdk/agrifood/ci.yml index fba4be93c0ee..8122f4a22a2a 100644 --- a/sdk/agrifood/ci.yml +++ b/sdk/agrifood/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/analysisservices/arm-analysisservices/README.md b/sdk/analysisservices/arm-analysisservices/README.md index 516548f59279..ea44175bbb2e 100644 --- a/sdk/analysisservices/arm-analysisservices/README.md +++ b/sdk/analysisservices/arm-analysisservices/README.md @@ -1,93 +1,103 @@ ## Azure AnalysisServicesManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AnalysisServicesManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AnalysisServicesManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites -``` -npm install @azure/arm-analysisservices +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-analysisservices` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: +```bash +npm install --save @azure/arm-analysisservices @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and getDetails servers as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and getDetails servers as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AnalysisServicesManagementClient, AnalysisServicesManagementModels, AnalysisServicesManagementMappers } from "@azure/arm-analysisservices"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AnalysisServicesManagementClient } = require("@azure/arm-analysisservices"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AnalysisServicesManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const serverName = "testserverName"; - client.servers.getDetails(resourceGroupName, serverName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AnalysisServicesManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const serverName = "testserverName"; +client.servers.getDetails(resourceGroupName, serverName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and getDetails servers as an example written in JavaScript. +#### browser - Authentication, client creation, and getDetails servers as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-analysisservices sample - - + @@ -99,5 +109,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fanalysisservices%2Farm-analysisservices%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/analysisservices/arm-analysisservices/README.png) diff --git a/sdk/analysisservices/arm-analysisservices/package.json b/sdk/analysisservices/arm-analysisservices/package.json index e5fe81a5b910..f52e91cbf7df 100644 --- a/sdk/analysisservices/arm-analysisservices/package.json +++ b/sdk/analysisservices/arm-analysisservices/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-analysisservices", "author": "Microsoft Corporation", "description": "AnalysisServicesManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.3.2", + "version": "2.4.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/analysisServicesManagementClient.js", "types": "./esm/analysisServicesManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/analysisservices/arm-analysisservices", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/analysisservices/arm-analysisservices", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClient.ts b/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClient.ts index 2d67bb6378b1..5d6c4d23ace8 100644 --- a/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClient.ts +++ b/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,12 +23,17 @@ class AnalysisServicesManagementClient extends AnalysisServicesManagementClientC /** * Initializes a new instance of the AnalysisServicesManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId A unique identifier for a Microsoft Azure subscription. The subscription * ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AnalysisServicesManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AnalysisServicesManagementClientOptions) { super(credentials, subscriptionId, options); this.servers = new operations.Servers(this); this.operations = new operations.Operations(this); diff --git a/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClientContext.ts b/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClientContext.ts index e0ff9b6866ee..bc8d1b746e62 100644 --- a/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClientContext.ts +++ b/sdk/analysisservices/arm-analysisservices/src/analysisServicesManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-analysisservices"; -const packageVersion = "2.3.2"; +const packageVersion = "2.4.0"; export class AnalysisServicesManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AnalysisServicesManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId A unique identifier for a Microsoft Azure subscription. The subscription * ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AnalysisServicesManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AnalysisServicesManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/anomalydetector/ai-anomaly-detector/README.md b/sdk/anomalydetector/ai-anomaly-detector/README.md index ebd27be42df7..18c2c028d19a 100644 --- a/sdk/anomalydetector/ai-anomaly-detector/README.md +++ b/sdk/anomalydetector/ai-anomaly-detector/README.md @@ -2,11 +2,11 @@ [Azure AnomalyDetector](https://azure.microsoft.com/services/cognitive-services/anomaly-detector/) API enables you to monitor and detect abnormalities in your time series data with machine learning. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/) | [Package (NPM)](https://www.npmjs.com/package/@azure/ai-anomaly-detector) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/ai-anomaly-detector) | [Product documentation](https://docs.microsoft.com/azure/cognitive-services/anomaly-detector/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector/samples) ## Key concepts @@ -153,7 +153,7 @@ main().catch((err) => { }); ``` -More Samples can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector/samples) +More Samples can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector/samples) ## Troubleshooting @@ -167,12 +167,12 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector/samples) directory for detailed examples on how to use this library. ## Contributing @@ -189,4 +189,4 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. diff --git a/sdk/anomalydetector/ai-anomaly-detector/package.json b/sdk/anomalydetector/ai-anomaly-detector/package.json index b9d22d3755aa..b7a81982e01a 100644 --- a/sdk/anomalydetector/ai-anomaly-detector/package.json +++ b/sdk/anomalydetector/ai-anomaly-detector/package.json @@ -58,7 +58,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { @@ -67,7 +67,7 @@ "@azure/core-paging": "^1.1.1", "@azure/logger": "^1.0.0", "tslib": "^2.2.0", - "@azure/core-tracing": "1.0.0-preview.11" + "@azure/core-tracing": "1.0.0-preview.12" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", diff --git a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/README.md b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/README.md index ac722fe7e214..0ff409e74ec0 100644 --- a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/README.md +++ b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/README.md @@ -59,10 +59,10 @@ npx cross-env API_KEY="" ENDPOINT="" node sample_detect_chang Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[sample_detect_change_point]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/sample_detect_change_point.js -[sample_detect_entire_series_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/sample_detect_entire_series_anomaly.js -[sample_detect_last_point_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/sample_detect_last_point_anomaly.js +[sample_detect_change_point]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/sample_detect_change_point.js +[sample_detect_entire_series_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/sample_detect_entire_series_anomaly.js +[sample_detect_last_point_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/sample_detect_last_point_anomaly.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/ai-anomaly-detector [freesub]: https://azure.microsoft.com/free/ [createinstance_azureanomalydetectorinstance]: https://docs.microsoft.com/azure/cognitive-services/anomaly-detector/quickstarts/client-libraries?tabs=windows&pivots=programming-language-javascript -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector/README.md diff --git a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/package.json b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/package.json index 38e404046214..1c2e2dd9adc0 100644 --- a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/package.json +++ b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector", "dependencies": { "@azure/ai-anomaly-detector": "next", "dotenv": "latest", diff --git a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/README.md b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/README.md index 3dfec82e4b13..5a3e716f4cd1 100644 --- a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/README.md +++ b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/README.md @@ -71,11 +71,11 @@ npx cross-env API_KEY="" ENDPOINT="" node dist/sample_detect_ Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[sample_detect_change_point]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/src/sample_detect_change_point.ts -[sample_detect_entire_series_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/src/sample_detect_entire_series_anomaly.ts -[sample_detect_last_point_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/src/sample_detect_last_point_anomaly.ts +[sample_detect_change_point]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/src/sample_detect_change_point.ts +[sample_detect_entire_series_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/src/sample_detect_entire_series_anomaly.ts +[sample_detect_last_point_anomaly]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/src/sample_detect_last_point_anomaly.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/ai-anomaly-detector [freesub]: https://azure.microsoft.com/free/ [createinstance_azureanomalydetectorinstance]: https://docs.microsoft.com/azure/cognitive-services/anomaly-detector/quickstarts/client-libraries?tabs=windows&pivots=programming-language-javascript -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/package.json b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/package.json index fc7e1dfeabb8..71b97da5ff4b 100644 --- a/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/package.json +++ b/sdk/anomalydetector/ai-anomaly-detector/samples/v3/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/anomalydetector/ai-anomaly-detector", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/anomalydetector/ai-anomaly-detector", "dependencies": { "@azure/ai-anomaly-detector": "next", "dotenv": "latest", diff --git a/sdk/anomalydetector/ci.yml b/sdk/anomalydetector/ci.yml index a05a1bab46a4..94b4944ea6be 100644 --- a/sdk/anomalydetector/ci.yml +++ b/sdk/anomalydetector/ci.yml @@ -4,7 +4,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -16,7 +15,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/apimanagement/arm-apimanagement/README.md b/sdk/apimanagement/arm-apimanagement/README.md index c72b1eb0a91b..8b269ab80915 100644 --- a/sdk/apimanagement/arm-apimanagement/README.md +++ b/sdk/apimanagement/arm-apimanagement/README.md @@ -1,103 +1,113 @@ ## Azure ApiManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ApiManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ApiManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-apimanagement` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-apimanagement +npm install --save @azure/arm-apimanagement @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and listByService api as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and listByService api as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { ApiManagementClient } = require("@azure/arm-apimanagement"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ApiManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const serviceName = "testserviceName"; - const filter = "testfilter"; - const top = 1; - const skip = 1; - const tags = "testtags"; - const expandApiVersionSet = true; - client.api.listByService(resourceGroupName, serviceName, filter, top, skip, tags, expandApiVersionSet).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ApiManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const serviceName = "testserviceName"; +const filter = "testfilter"; +const top = 1; +const skip = 1; +const tags = "testtags"; +const expandApiVersionSet = true; +client.api.listByService(resourceGroupName, serviceName, filter, top, skip, tags, expandApiVersionSet).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and listByService api as an example written in JavaScript. +#### browser - Authentication, client creation, and listByService api as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-apimanagement sample - - + diff --git a/sdk/apimanagement/arm-apimanagement/package.json b/sdk/apimanagement/arm-apimanagement/package.json index a998acb083b6..18bb9cfd81c3 100644 --- a/sdk/apimanagement/arm-apimanagement/package.json +++ b/sdk/apimanagement/arm-apimanagement/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-apimanagement", "author": "Microsoft Corporation", "description": "ApiManagementClient Library with typescript type definitions for node.js and browser.", - "version": "7.0.0", + "version": "7.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/apiManagementClient.js", "types": "./esm/apiManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/apimanagement/arm-apimanagement", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/apimanagement/arm-apimanagement", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/apimanagement/arm-apimanagement/src/apiManagementClient.ts b/sdk/apimanagement/arm-apimanagement/src/apiManagementClient.ts index a94b91e45a04..43154573785a 100644 --- a/sdk/apimanagement/arm-apimanagement/src/apiManagementClient.ts +++ b/sdk/apimanagement/arm-apimanagement/src/apiManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -91,12 +92,17 @@ class ApiManagementClient extends ApiManagementClientContext { /** * Initializes a new instance of the ApiManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ApiManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ApiManagementClientOptions) { super(credentials, subscriptionId, options); this.api = new operations.Api(this); this.apiRevision = new operations.ApiRevision(this); diff --git a/sdk/apimanagement/arm-apimanagement/src/apiManagementClientContext.ts b/sdk/apimanagement/arm-apimanagement/src/apiManagementClientContext.ts index ae754b309f13..1da942a85c47 100644 --- a/sdk/apimanagement/arm-apimanagement/src/apiManagementClientContext.ts +++ b/sdk/apimanagement/arm-apimanagement/src/apiManagementClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-apimanagement"; -const packageVersion = "7.0.0"; +const packageVersion = "7.1.0"; export class ApiManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the ApiManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ApiManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ApiManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/appconfiguration/app-configuration/README.md b/sdk/appconfiguration/app-configuration/README.md index abad9d0d5be8..fd135434c83c 100644 --- a/sdk/appconfiguration/app-configuration/README.md +++ b/sdk/appconfiguration/app-configuration/README.md @@ -8,11 +8,11 @@ Use the client library for App Configuration to: - Tag keys with labels - Replay settings from any point in time -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/) | [Package (NPM)](https://www.npmjs.com/package/@azure/app-configuration) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/app-configuration) | [Product documentation](https://docs.microsoft.com/azure/azure-app-configuration/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples) ## Getting started @@ -49,7 +49,7 @@ Authentication via service principal is done by: - Setting appropriate RBAC rules on your AppConfiguration resource. More information on App Configuration roles can be found [here](https://docs.microsoft.com/azure/azure-app-configuration/concept-enable-rbac#azure-built-in-roles-for-azure-app-configuration). -Using [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md#defaultazurecredential) +Using [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md#defaultazurecredential) ```javascript const azureIdentity = require("@azure/identity"); @@ -62,7 +62,7 @@ const client = new appConfig.AppConfigurationClient( ); ``` -More information about `@azure/identity` can be found [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) +More information about `@azure/identity` can be found [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) #### Authenticating with a connection string @@ -153,20 +153,20 @@ run().catch((err) => console.log("ERROR:", err)); The following samples show you the various ways you can interact with App Configuration: -- [`helloworld.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworld.ts) - Get, set, and delete configuration values. -- [`helloworldWithLabels.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworldWithLabels.ts) - Use labels to add additional dimensions to your settings for scenarios like beta vs production. -- [`optimisticConcurrencyViaEtag.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/optimisticConcurrencyViaEtag.ts) - Set values using etags to prevent accidental overwrites. -- [`setReadOnlySample.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/setReadOnlySample.ts) - Marking settings as read-only to prevent modification. -- [`getSettingOnlyIfChanged.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/getSettingOnlyIfChanged.ts) - Get a setting only if it changed from the last time you got it. -- [`listRevisions.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listRevisions.ts) - List the revisions of a key, allowing you to see previous values and when they were set. -- [`secretReference.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/secretReference.ts) - SecretReference represents a configuration setting that references as KeyVault secret. -- [`featureFlag.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/featureFlag.ts) - Feature flags are settings that follow specific JSON schema for the value. +- [`helloworld.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworld.ts) - Get, set, and delete configuration values. +- [`helloworldWithLabels.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworldWithLabels.ts) - Use labels to add additional dimensions to your settings for scenarios like beta vs production. +- [`optimisticConcurrencyViaEtag.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/optimisticConcurrencyViaEtag.ts) - Set values using etags to prevent accidental overwrites. +- [`setReadOnlySample.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/setReadOnlySample.ts) - Marking settings as read-only to prevent modification. +- [`getSettingOnlyIfChanged.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/getSettingOnlyIfChanged.ts) - Get a setting only if it changed from the last time you got it. +- [`listRevisions.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listRevisions.ts) - List the revisions of a key, allowing you to see previous values and when they were set. +- [`secretReference.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/secretReference.ts) - SecretReference represents a configuration setting that references as KeyVault secret. +- [`featureFlag.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/featureFlag.ts) - Feature flags are settings that follow specific JSON schema for the value. -More in-depth examples can be found in the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/) folder on GitHub. +More in-depth examples can be found in the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/) folder on GitHub. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. This module's tests are a mixture of live and unit tests, which require you to have an Azure App Configuration instance. To execute the tests you'll need to run: @@ -177,7 +177,7 @@ This module's tests are a mixture of live and unit tests, which require you to h 4. `cd sdk\appconfiguration\app-configuration` 5. `npm run test`. -View our [tests](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/test) +View our [tests](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/test) folder for more details. ## Related projects diff --git a/sdk/appconfiguration/app-configuration/package.json b/sdk/appconfiguration/app-configuration/package.json index a8896b927af1..4fac8deb4680 100644 --- a/sdk/appconfiguration/app-configuration/package.json +++ b/sdk/appconfiguration/app-configuration/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/app-configuration.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -90,13 +90,13 @@ "@azure/core-asynciterator-polyfill": "^1.0.0", "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/keyvault-secrets": "^4.2.0", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_get_featureflag.js b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_get_featureflag.js index c14c71cd5613..d78a39fc5a45 100644 --- a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_get_featureflag.js +++ b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_get_featureflag.js @@ -1,17 +1,17 @@ let nock = require('nock'); -module.exports.hash = "0f3d1c1e4498c8bfdfe2a40257d26862"; +module.exports.hash = "6c38ae75a4edff790bfbb19ef7ba2a54"; -module.exports.testInfo = {"uniqueName":{"name-1":"name-1162095387390108897"},"newDate":{}} +module.exports.testInfo = {"uniqueName":{"name-1":"name-1162439656800608347"},"newDate":{}} nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387390108897', {"key":".appconfig.featureflag/name-1162095387390108897","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387390108897\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439656800608347', {"key":".appconfig.featureflag/name-1162439656800608347","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656800608347\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}"}) .query(true) - .reply(200, {"etag":"LkgZS0ER6zqlUjvc95OE8CrVlKP","key":".appconfig.featureflag/name-1162095387390108897","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387390108897\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:54+00:00"}, [ + .reply(200, {"etag":"oRPly66ZLIYi5tEIq1CVgWDCQdj","key":".appconfig.featureflag/name-1162439656800608347","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656800608347\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:07+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:52 GMT', + 'Tue, 22 Jun 2021 21:16:02 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -19,15 +19,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:54 GMT', + 'Tue, 22 Jun 2021 21:16:07 GMT', 'ETag', - '"LkgZS0ER6zqlUjvc95OE8CrVlKP"', + '"oRPly66ZLIYi5tEIq1CVgWDCQdj"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzkx;sn=3269791', + 'zAJw6V16=NToxOSMzNTkyMzY1;sn=3592365', 'x-ms-request-id', - '9e1c5772-5c83-4c87-b8dc-5591e3445047', + '846cb29a-90f7-40ac-9fe8-ebd117e10537', 'x-ms-correlation-request-id', - '9e1c5772-5c83-4c87-b8dc-5591e3445047', + '846cb29a-90f7-40ac-9fe8-ebd117e10537', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -39,13 +39,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .get('/kv/.appconfig.featureflag%2Fname-1162095387390108897') + .get('/kv/.appconfig.featureflag%2Fname-1162439656800608347') .query(true) - .reply(200, {"etag":"LkgZS0ER6zqlUjvc95OE8CrVlKP","key":".appconfig.featureflag/name-1162095387390108897","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387390108897\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:54+00:00"}, [ + .reply(200, {"etag":"oRPly66ZLIYi5tEIq1CVgWDCQdj","key":".appconfig.featureflag/name-1162439656800608347","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656800608347\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:07+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:52 GMT', + 'Tue, 22 Jun 2021 21:16:08 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -53,15 +53,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:54 GMT', + 'Tue, 22 Jun 2021 21:16:07 GMT', 'ETag', - '"LkgZS0ER6zqlUjvc95OE8CrVlKP"', + '"oRPly66ZLIYi5tEIq1CVgWDCQdj"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzkx;sn=3269791', + 'zAJw6V16=NToxOSMzNTkyMzY1;sn=3592365', 'x-ms-request-id', - 'b1908eaa-b516-45b9-b25b-06bf28f84fd7', + '928981b6-7027-4cbd-b01c-019333bcf6f8', 'x-ms-correlation-request-id', - 'b1908eaa-b516-45b9-b25b-06bf28f84fd7', + '928981b6-7027-4cbd-b01c-019333bcf6f8', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -73,13 +73,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .delete('/kv/.appconfig.featureflag%2Fname-1162095387390108897') + .delete('/kv/.appconfig.featureflag%2Fname-1162439656800608347') .query(true) - .reply(200, {"etag":"LkgZS0ER6zqlUjvc95OE8CrVlKP","key":".appconfig.featureflag/name-1162095387390108897","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387390108897\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:54+00:00"}, [ + .reply(200, {"etag":"oRPly66ZLIYi5tEIq1CVgWDCQdj","key":".appconfig.featureflag/name-1162439656800608347","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656800608347\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:07+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:53 GMT', + 'Tue, 22 Jun 2021 21:16:03 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -87,15 +87,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:54 GMT', + 'Tue, 22 Jun 2021 21:16:07 GMT', 'ETag', - '"LkgZS0ER6zqlUjvc95OE8CrVlKP"', + '"oRPly66ZLIYi5tEIq1CVgWDCQdj"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzkz;sn=3269793', + 'zAJw6V16=NToxOSMzNTkyMzY2;sn=3592366', 'x-ms-request-id', - 'e5891f67-aede-4e48-b7d0-5a835ef3c5c7', + 'd9085d47-0266-427e-bd1d-3ec8e9126882', 'x-ms-correlation-request-id', - 'e5891f67-aede-4e48-b7d0-5a835ef3c5c7', + 'd9085d47-0266-427e-bd1d-3ec8e9126882', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', diff --git a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_update_featureflag.js b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_update_featureflag.js index 64ac073bb5b0..1c15db6622f2 100644 --- a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_update_featureflag.js +++ b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_and_update_featureflag.js @@ -1,17 +1,17 @@ let nock = require('nock'); -module.exports.hash = "7a13a128a290c5e391e72b4bdb9f113d"; +module.exports.hash = "13ad4b67ef115e4c7dc2376c7b861525"; -module.exports.testInfo = {"uniqueName":{"name-1":"name-1162095387519409135"},"newDate":{}} +module.exports.testInfo = {"uniqueName":{"name-1":"name-1162439656917004795"},"newDate":{}} nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387519409135', {"key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439656917004795', {"key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}"}) .query(true) - .reply(200, {"etag":"7xf0x83wqhvINQvzFm9eDZSRha3","key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:55+00:00"}, [ + .reply(200, {"etag":"tb0PGX9cqktFAvENcBfNYXqN4Qs","key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:08+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:52 GMT', + 'Tue, 22 Jun 2021 21:16:09 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -19,15 +19,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:08 GMT', 'ETag', - '"7xf0x83wqhvINQvzFm9eDZSRha3"', + '"tb0PGX9cqktFAvENcBfNYXqN4Qs"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk0;sn=3269794', + 'zAJw6V16=NToxOSMzNTkyMzY3;sn=3592367', 'x-ms-request-id', - '6af288a7-20ce-4d03-beeb-388bd1a3164d', + '94198b67-8596-488c-838f-cccf2a7cc979', 'x-ms-correlation-request-id', - '6af288a7-20ce-4d03-beeb-388bd1a3164d', + '94198b67-8596-488c-838f-cccf2a7cc979', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -39,13 +39,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .get('/kv/.appconfig.featureflag%2Fname-1162095387519409135') + .get('/kv/.appconfig.featureflag%2Fname-1162439656917004795') .query(true) - .reply(200, {"etag":"7xf0x83wqhvINQvzFm9eDZSRha3","key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:55+00:00"}, [ + .reply(200, {"etag":"tb0PGX9cqktFAvENcBfNYXqN4Qs","key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:08+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:54 GMT', + 'Tue, 22 Jun 2021 21:16:03 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -53,15 +53,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:08 GMT', 'ETag', - '"7xf0x83wqhvINQvzFm9eDZSRha3"', + '"tb0PGX9cqktFAvENcBfNYXqN4Qs"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk0;sn=3269794', + 'zAJw6V16=NToxOSMzNTkyMzY3;sn=3592367', 'x-ms-request-id', - 'c63dea91-3fc7-4282-a303-8971db9f2f79', + '681bd4de-a950-435a-b50a-11453970a8cb', 'x-ms-correlation-request-id', - 'c63dea91-3fc7-4282-a303-8971db9f2f79', + '681bd4de-a950-435a-b50a-11453970a8cb', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -73,13 +73,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387519409135', {"key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","last_modified":"2021-05-14T00:57:55.000Z","tags":{},"etag":"7xf0x83wqhvINQvzFm9eDZSRha3"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439656917004795', {"key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","last_modified":"2021-06-22T21:16:08.000Z","tags":{},"etag":"tb0PGX9cqktFAvENcBfNYXqN4Qs"}) .query(true) - .reply(200, {"etag":"yiKlYOQLIzpGawI9jJqu7D0c7wJ","key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:55+00:00"}, [ + .reply(200, {"etag":"S0zm5XXS5iyEN5FFVFpsPM58bKA","key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:09+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:53 GMT', + 'Tue, 22 Jun 2021 21:16:09 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -87,15 +87,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:09 GMT', 'ETag', - '"yiKlYOQLIzpGawI9jJqu7D0c7wJ"', + '"S0zm5XXS5iyEN5FFVFpsPM58bKA"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk1;sn=3269795', + 'zAJw6V16=NToxOSMzNTkyMzY4;sn=3592368', 'x-ms-request-id', - '403eb3de-9740-4c48-95f2-d6607873c437', + 'c305062d-3b77-4144-a1ef-9abfe1c7eb6e', 'x-ms-correlation-request-id', - '403eb3de-9740-4c48-95f2-d6607873c437', + 'c305062d-3b77-4144-a1ef-9abfe1c7eb6e', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -107,13 +107,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .get('/kv/.appconfig.featureflag%2Fname-1162095387519409135') + .get('/kv/.appconfig.featureflag%2Fname-1162439656917004795') .query(true) - .reply(200, {"etag":"yiKlYOQLIzpGawI9jJqu7D0c7wJ","key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:55+00:00"}, [ + .reply(200, {"etag":"S0zm5XXS5iyEN5FFVFpsPM58bKA","key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:09+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:54 GMT', + 'Tue, 22 Jun 2021 21:16:04 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -121,15 +121,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:09 GMT', 'ETag', - '"yiKlYOQLIzpGawI9jJqu7D0c7wJ"', + '"S0zm5XXS5iyEN5FFVFpsPM58bKA"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk1;sn=3269795', + 'zAJw6V16=NToxOSMzNTkyMzY4;sn=3592368', 'x-ms-request-id', - '37e3265a-18ab-41d1-a32c-9459b0a27ff0', + 'ecef2ff7-c0fa-4689-a022-89e74829d4a7', 'x-ms-correlation-request-id', - '37e3265a-18ab-41d1-a32c-9459b0a27ff0', + 'ecef2ff7-c0fa-4689-a022-89e74829d4a7', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -141,13 +141,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .delete('/kv/.appconfig.featureflag%2Fname-1162095387519409135') + .delete('/kv/.appconfig.featureflag%2Fname-1162439656917004795') .query(true) - .reply(200, {"etag":"yiKlYOQLIzpGawI9jJqu7D0c7wJ","key":".appconfig.featureflag/name-1162095387519409135","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387519409135\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:55+00:00"}, [ + .reply(200, {"etag":"S0zm5XXS5iyEN5FFVFpsPM58bKA","key":".appconfig.featureflag/name-1162439656917004795","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439656917004795\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:09+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:53 GMT', + 'Tue, 22 Jun 2021 21:16:10 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -155,15 +155,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:09 GMT', 'ETag', - '"yiKlYOQLIzpGawI9jJqu7D0c7wJ"', + '"S0zm5XXS5iyEN5FFVFpsPM58bKA"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk2;sn=3269796', + 'zAJw6V16=NToxOSMzNTkyMzY5;sn=3592369', 'x-ms-request-id', - '9e9df427-13dd-4414-85f4-893a8a0546ec', + '8c217a3e-5574-455d-a17f-198cac230693', 'x-ms-correlation-request-id', - '9e9df427-13dd-4414-85f4-893a8a0546ec', + '8c217a3e-5574-455d-a17f-198cac230693', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', diff --git a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_list_and_update_multiple_featureflags.js b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_list_and_update_multiple_featureflags.js index d376c7ee42ad..f0332195dd52 100644 --- a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_list_and_update_multiple_featureflags.js +++ b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_featureflag_configuration_setting/recording_can_add_list_and_update_multiple_featureflags.js @@ -1,17 +1,17 @@ let nock = require('nock'); -module.exports.hash = "45aafb0f8e61428424793462e80c7b16"; +module.exports.hash = "8a7ebb1c70ead2328af210caaa10a4f3"; -module.exports.testInfo = {"uniqueName":{"name-1":"name-1162095387661802616"},"newDate":{}} +module.exports.testInfo = {"uniqueName":{"name-1":"name-1162439657053408694"},"newDate":{}} nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387661802616', {"key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439657053408694', {"key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}"}) .query(true) - .reply(200, {"etag":"Y7DSSKEWZaHk6sWPMaQy0YxMKtR","key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:56+00:00"}, [ + .reply(200, {"etag":"0Rq9X7UiykkkiGEBZ6MnQsC4uqy","key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:05 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -19,15 +19,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:56 GMT', + 'Tue, 22 Jun 2021 21:16:10 GMT', 'ETag', - '"Y7DSSKEWZaHk6sWPMaQy0YxMKtR"', + '"0Rq9X7UiykkkiGEBZ6MnQsC4uqy"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk3;sn=3269797', + 'zAJw6V16=NToxOSMzNTkyMzcw;sn=3592370', 'x-ms-request-id', - '392e2fcd-f6b1-4461-ae48-f89bf61608b3', + 'cee508d1-5179-4b52-a0c5-b7b6b448683a', 'x-ms-correlation-request-id', - '392e2fcd-f6b1-4461-ae48-f89bf61608b3', + 'cee508d1-5179-4b52-a0c5-b7b6b448683a', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -39,13 +39,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387661802616-2', {"key":".appconfig.featureflag/name-1162095387661802616-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616-2\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439657053408694-2', {"key":".appconfig.featureflag/name-1162439657053408694-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694-2\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}"}) .query(true) - .reply(200, {"etag":"yvaZqkZa8B2XR1OyDF8KgIHM1jI","key":".appconfig.featureflag/name-1162095387661802616-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616-2\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:57+00:00"}, [ + .reply(200, {"etag":"e95RJbg1kGLdRFK9WnqlmR3pWvO","key":".appconfig.featureflag/name-1162439657053408694-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694-2\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:54 GMT', + 'Tue, 22 Jun 2021 21:16:10 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -53,15 +53,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:57 GMT', + 'Tue, 22 Jun 2021 21:16:10 GMT', 'ETag', - '"yvaZqkZa8B2XR1OyDF8KgIHM1jI"', + '"e95RJbg1kGLdRFK9WnqlmR3pWvO"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk4;sn=3269798', + 'zAJw6V16=NToxOSMzNTkyMzcx;sn=3592371', 'x-ms-request-id', - 'cda5ad42-9d4d-4e85-bd45-cfb4cf8c14a4', + '832396a3-caf2-4ddb-a2c5-9853ee7cf055', 'x-ms-correlation-request-id', - 'cda5ad42-9d4d-4e85-bd45-cfb4cf8c14a4', + '832396a3-caf2-4ddb-a2c5-9853ee7cf055', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -75,11 +75,11 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) .get('/kv') .query(true) - .reply(200, {"items":[{"etag":"Y7DSSKEWZaHk6sWPMaQy0YxMKtR","key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:56+00:00"},{"etag":"yvaZqkZa8B2XR1OyDF8KgIHM1jI","key":".appconfig.featureflag/name-1162095387661802616-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616-2\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:57+00:00"}]}, [ + .reply(200, {"items":[{"etag":"0Rq9X7UiykkkiGEBZ6MnQsC4uqy","key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"},{"etag":"e95RJbg1kGLdRFK9WnqlmR3pWvO","key":".appconfig.featureflag/name-1162439657053408694-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694-2\",\"enabled\":false,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"}]}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:05 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kvset+json; charset=utf-8', 'Transfer-Encoding', @@ -87,11 +87,11 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk4;sn=3269798', + 'zAJw6V16=NToxOSMzNTkyMzcx;sn=3592371', 'x-ms-request-id', - '140fc8a5-9bd9-4839-84e8-0054711e66d6', + '29c7d55a-f19c-4d5e-b7cb-7a8ccde4ea05', 'x-ms-correlation-request-id', - '140fc8a5-9bd9-4839-84e8-0054711e66d6', + '29c7d55a-f19c-4d5e-b7cb-7a8ccde4ea05', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -103,13 +103,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387661802616', {"key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439657053408694', {"key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}"}) .query(true) - .reply(200, {"etag":"1lZDBJQ7LkOkYN0J5EZRfr3KG7k","key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:57+00:00"}, [ + .reply(200, {"etag":"urU9HOvqs8b9iuW3HSywWe8fRw0","key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:11 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -117,15 +117,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:57 GMT', + 'Tue, 22 Jun 2021 21:16:10 GMT', 'ETag', - '"1lZDBJQ7LkOkYN0J5EZRfr3KG7k"', + '"urU9HOvqs8b9iuW3HSywWe8fRw0"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5Nzk5;sn=3269799', + 'zAJw6V16=NToxOSMzNTkyMzcy;sn=3592372', 'x-ms-request-id', - 'dc3f727a-fdff-4335-8c13-9d6984e3ce24', + '19384e76-c7c6-40ed-8647-095fe6778e69', 'x-ms-correlation-request-id', - 'dc3f727a-fdff-4335-8c13-9d6984e3ce24', + '19384e76-c7c6-40ed-8647-095fe6778e69', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -137,13 +137,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162095387661802616-2', {"key":".appconfig.featureflag/name-1162095387661802616-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616-2\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm new description\"}","last_modified":"2021-05-14T00:57:57.000Z","tags":{},"etag":"yvaZqkZa8B2XR1OyDF8KgIHM1jI"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439657053408694-2', {"key":".appconfig.featureflag/name-1162439657053408694-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694-2\",\"enabled\":false,\"description\":\"I'm new description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","last_modified":"2021-06-22T21:16:10.000Z","tags":{},"etag":"e95RJbg1kGLdRFK9WnqlmR3pWvO"}) .query(true) - .reply(200, {"etag":"PwmV5WJUiUclvTNaVynhKqd8oSS","key":".appconfig.featureflag/name-1162095387661802616-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616-2\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm new description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:58+00:00"}, [ + .reply(200, {"etag":"jjyq0kuwFADqozpVbbtVzD6F72f","key":".appconfig.featureflag/name-1162439657053408694-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694-2\",\"enabled\":false,\"description\":\"I'm new description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:11+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:56 GMT', + 'Tue, 22 Jun 2021 21:16:06 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -151,15 +151,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:58 GMT', + 'Tue, 22 Jun 2021 21:16:11 GMT', 'ETag', - '"PwmV5WJUiUclvTNaVynhKqd8oSS"', + '"jjyq0kuwFADqozpVbbtVzD6F72f"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5ODAw;sn=3269800', + 'zAJw6V16=NToxOSMzNTkyMzcz;sn=3592373', 'x-ms-request-id', - '2efb7bef-f039-40cf-b265-369fcc50d010', + '66bbaf91-3f0b-4945-b46b-9df8292a764b', 'x-ms-correlation-request-id', - '2efb7bef-f039-40cf-b265-369fcc50d010', + '66bbaf91-3f0b-4945-b46b-9df8292a764b', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -173,11 +173,11 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) .get('/kv') .query(true) - .reply(200, {"items":[{"etag":"1lZDBJQ7LkOkYN0J5EZRfr3KG7k","key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:57+00:00"},{"etag":"PwmV5WJUiUclvTNaVynhKqd8oSS","key":".appconfig.featureflag/name-1162095387661802616-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616-2\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":false,\"description\":\"I'm new description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:58+00:00"}]}, [ + .reply(200, {"items":[{"etag":"urU9HOvqs8b9iuW3HSywWe8fRw0","key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"},{"etag":"jjyq0kuwFADqozpVbbtVzD6F72f","key":".appconfig.featureflag/name-1162439657053408694-2","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694-2\",\"enabled\":false,\"description\":\"I'm new description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:11+00:00"}]}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:55 GMT', + 'Tue, 22 Jun 2021 21:16:11 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kvset+json; charset=utf-8', 'Transfer-Encoding', @@ -185,11 +185,11 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5ODAw;sn=3269800', + 'zAJw6V16=NToxOSMzNTkyMzcz;sn=3592373', 'x-ms-request-id', - '4532c4ac-7fe3-494f-bfb1-d23e32b2f2ca', + '932f6efa-0948-4513-9acd-b9bfe565dd02', 'x-ms-correlation-request-id', - '4532c4ac-7fe3-494f-bfb1-d23e32b2f2ca', + '932f6efa-0948-4513-9acd-b9bfe565dd02', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -201,21 +201,21 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .delete('/kv/.appconfig.featureflag%2Fname-1162095387661802616-2') + .delete('/kv/.appconfig.featureflag%2Fname-1162439657053408694-2') .query(true) .reply(204, "", [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:57 GMT', + 'Tue, 22 Jun 2021 21:16:06 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Connection', 'close', 'x-ms-request-id', - '9da73351-8649-44c0-aac7-84e78a2929b7', + 'd53a8e77-8887-4a40-87c9-2b5f889f4dca', 'x-ms-correlation-request-id', - '9da73351-8649-44c0-aac7-84e78a2929b7', + 'd53a8e77-8887-4a40-87c9-2b5f889f4dca', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -227,13 +227,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .delete('/kv/.appconfig.featureflag%2Fname-1162095387661802616') + .delete('/kv/.appconfig.featureflag%2Fname-1162439657053408694') .query(true) - .reply(200, {"etag":"1lZDBJQ7LkOkYN0J5EZRfr3KG7k","key":".appconfig.featureflag/name-1162095387661802616","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162095387661802616\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"enabled\":true,\"description\":\"I'm a description\"}","tags":{},"locked":false,"last_modified":"2021-05-14T00:57:57+00:00"}, [ + .reply(200, {"etag":"urU9HOvqs8b9iuW3HSywWe8fRw0","key":".appconfig.featureflag/name-1162439657053408694","label":"label-1","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"{\"id\":\"name-1162439657053408694\",\"enabled\":true,\"description\":\"I'm a description\",\"conditions\":{\"client_filters\":[{\"name\":\"Microsoft.TimeWindow\",\"parameters\":{\"Start\":\"Wed, 01 May 2019 13:59:59 GMT\",\"End\":\"Mon, 01 July 2019 00:00:00 GMT\"}},{\"name\":\"FilterX\"},{\"name\":\"Microsoft.Targeting\",\"parameters\":{\"Audience\":{\"Groups\":[{\"Name\":\"group-1\",\"RolloutPercentage\":25},{\"Name\":\"group-2\",\"RolloutPercentage\":45}],\"Users\":[\"userA\",\"userB\"],\"DefaultRolloutPercentage\":40}}},{\"name\":\"Microsoft.Percentage\",\"parameters\":{\"Value\":25}}]},\"display_name\":\"for display\"}","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:10+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 14 May 2021 00:57:56 GMT', + 'Tue, 22 Jun 2021 21:16:12 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -241,15 +241,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 14 May 2021 00:57:57 GMT', + 'Tue, 22 Jun 2021 21:16:10 GMT', 'ETag', - '"1lZDBJQ7LkOkYN0J5EZRfr3KG7k"', + '"urU9HOvqs8b9iuW3HSywWe8fRw0"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMjY5ODAx;sn=3269801', + 'zAJw6V16=NToxOSMzNTkyMzc0;sn=3592374', 'x-ms-request-id', - '196a489a-ec10-483e-9d4d-a0493f4907e6', + 'e47b8e8c-5863-4fee-b923-57da6eb7246e', 'x-ms-correlation-request-id', - '196a489a-ec10-483e-9d4d-a0493f4907e6', + 'e47b8e8c-5863-4fee-b923-57da6eb7246e', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', diff --git a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value__as_feature_flag_value.js b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value__as_feature_flag_value.js index 7bed84790165..2db2dba74d6b 100644 --- a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value__as_feature_flag_value.js +++ b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value__as_feature_flag_value.js @@ -1,17 +1,17 @@ let nock = require('nock'); -module.exports.hash = "5488b0a78bc36e79038fb3ef4081a15d"; +module.exports.hash = "a4ca9b251b8b0633e16f9e0e17360a93"; -module.exports.testInfo = {"uniqueName":{"name-1":"name-1162163960595608239"},"newDate":{}} +module.exports.testInfo = {"uniqueName":{"name-1":"name-1162439657273608939"},"newDate":{}} nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162163960595608239', {"key":".appconfig.featureflag/name-1162163960595608239","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439657273608939', {"key":".appconfig.featureflag/name-1162439657273608939","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]"}) .query(true) - .reply(200, {"etag":"NqiUYlqAKxSal24DPF7foIYCWEJ","key":".appconfig.featureflag/name-1162163960595608239","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]","tags":{},"locked":false,"last_modified":"2021-05-21T23:26:45+00:00"}, [ + .reply(200, {"etag":"RF2UjbC36kg0nK1OJjRgF4RgTiA","key":".appconfig.featureflag/name-1162439657273608939","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:12+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 21 May 2021 23:26:41 GMT', + 'Tue, 22 Jun 2021 21:16:07 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -19,15 +19,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 21 May 2021 23:26:45 GMT', + 'Tue, 22 Jun 2021 21:16:12 GMT', 'ETag', - '"NqiUYlqAKxSal24DPF7foIYCWEJ"', + '"RF2UjbC36kg0nK1OJjRgF4RgTiA"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMzM2OTUz;sn=3336953', + 'zAJw6V16=NToxOSMzNTkyMzc1;sn=3592375', 'x-ms-request-id', - '21e4fac6-6fd0-4733-9797-eb171d0e5af1', + '5c1765b0-353c-463f-b64d-a8718ab61f49', 'x-ms-correlation-request-id', - '21e4fac6-6fd0-4733-9797-eb171d0e5af1', + '5c1765b0-353c-463f-b64d-a8718ab61f49', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -39,13 +39,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .get('/kv/.appconfig.featureflag%2Fname-1162163960595608239') + .get('/kv/.appconfig.featureflag%2Fname-1162439657273608939') .query(true) - .reply(200, {"etag":"NqiUYlqAKxSal24DPF7foIYCWEJ","key":".appconfig.featureflag/name-1162163960595608239","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]","tags":{},"locked":false,"last_modified":"2021-05-21T23:26:45+00:00"}, [ + .reply(200, {"etag":"RF2UjbC36kg0nK1OJjRgF4RgTiA","key":".appconfig.featureflag/name-1162439657273608939","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:12+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 21 May 2021 23:26:43 GMT', + 'Tue, 22 Jun 2021 21:16:12 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -53,15 +53,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 21 May 2021 23:26:45 GMT', + 'Tue, 22 Jun 2021 21:16:12 GMT', 'ETag', - '"NqiUYlqAKxSal24DPF7foIYCWEJ"', + '"RF2UjbC36kg0nK1OJjRgF4RgTiA"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMzM2OTUz;sn=3336953', + 'zAJw6V16=NToxOSMzNTkyMzc1;sn=3592375', 'x-ms-request-id', - '0ea753e1-3bef-4ada-8bff-9addbae6733d', + '7ef6e3fc-b1b0-4933-a357-6ea0c7f63c84', 'x-ms-correlation-request-id', - '0ea753e1-3bef-4ada-8bff-9addbae6733d', + '7ef6e3fc-b1b0-4933-a357-6ea0c7f63c84', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -73,13 +73,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .delete('/kv/.appconfig.featureflag%2Fname-1162163960595608239') + .delete('/kv/.appconfig.featureflag%2Fname-1162439657273608939') .query(true) - .reply(200, {"etag":"NqiUYlqAKxSal24DPF7foIYCWEJ","key":".appconfig.featureflag/name-1162163960595608239","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]","tags":{},"locked":false,"last_modified":"2021-05-21T23:26:45+00:00"}, [ + .reply(200, {"etag":"RF2UjbC36kg0nK1OJjRgF4RgTiA","key":".appconfig.featureflag/name-1162439657273608939","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"[]","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:12+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 21 May 2021 23:26:42 GMT', + 'Tue, 22 Jun 2021 21:16:07 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -87,15 +87,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 21 May 2021 23:26:45 GMT', + 'Tue, 22 Jun 2021 21:16:12 GMT', 'ETag', - '"NqiUYlqAKxSal24DPF7foIYCWEJ"', + '"RF2UjbC36kg0nK1OJjRgF4RgTiA"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMzM2OTU0;sn=3336954', + 'zAJw6V16=NToxOSMzNTkyMzc2;sn=3592376', 'x-ms-request-id', - '3fc20067-cb5f-43f3-aee3-fe048a3af438', + 'f316036a-02aa-4bec-9959-e38e39838e6b', 'x-ms-correlation-request-id', - '3fc20067-cb5f-43f3-aee3-fe048a3af438', + 'f316036a-02aa-4bec-9959-e38e39838e6b', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', diff --git a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value_hello_world_as_feature_flag_value.js b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value_hello_world_as_feature_flag_value.js index 25d4e69eb5a9..8dfb2dc8f1ff 100644 --- a/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value_hello_world_as_feature_flag_value.js +++ b/sdk/appconfiguration/app-configuration/recordings/node/appconfigurationclient__featureflag_serializeasconfigurationsettingparam/recording_unexpected_value_hello_world_as_feature_flag_value.js @@ -1,17 +1,17 @@ let nock = require('nock'); -module.exports.hash = "5488b0a78bc36e79038fb3ef4081a15d"; +module.exports.hash = "a4ca9b251b8b0633e16f9e0e17360a93"; -module.exports.testInfo = {"uniqueName":{"name-1":"name-1162163960704305092"},"newDate":{}} +module.exports.testInfo = {"uniqueName":{"name-1":"name-1162439657358703686"},"newDate":{}} nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .put('/kv/.appconfig.featureflag%2Fname-1162163960704305092', {"key":".appconfig.featureflag/name-1162163960704305092","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World"}) + .put('/kv/.appconfig.featureflag%2Fname-1162439657358703686', {"key":".appconfig.featureflag/name-1162439657358703686","content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World"}) .query(true) - .reply(200, {"etag":"TUCsSpczvtslRMRZaZWzyKNRxXD","key":".appconfig.featureflag/name-1162163960704305092","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World","tags":{},"locked":false,"last_modified":"2021-05-21T23:26:46+00:00"}, [ + .reply(200, {"etag":"xlVgpC7kEWSh6qtFl3qqBKmwG09","key":".appconfig.featureflag/name-1162439657358703686","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:13+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 21 May 2021 23:26:44 GMT', + 'Tue, 22 Jun 2021 21:16:13 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -19,15 +19,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 21 May 2021 23:26:46 GMT', + 'Tue, 22 Jun 2021 21:16:13 GMT', 'ETag', - '"TUCsSpczvtslRMRZaZWzyKNRxXD"', + '"xlVgpC7kEWSh6qtFl3qqBKmwG09"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMzM2OTU1;sn=3336955', + 'zAJw6V16=NToxOSMzNTkyMzc3;sn=3592377', 'x-ms-request-id', - 'd2dfac97-c176-4c65-a368-0f8db4d07ae4', + 'cdf3317e-1160-4dac-ad1a-5c169796f5f6', 'x-ms-correlation-request-id', - 'd2dfac97-c176-4c65-a368-0f8db4d07ae4', + 'cdf3317e-1160-4dac-ad1a-5c169796f5f6', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -39,13 +39,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .get('/kv/.appconfig.featureflag%2Fname-1162163960704305092') + .get('/kv/.appconfig.featureflag%2Fname-1162439657358703686') .query(true) - .reply(200, {"etag":"TUCsSpczvtslRMRZaZWzyKNRxXD","key":".appconfig.featureflag/name-1162163960704305092","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World","tags":{},"locked":false,"last_modified":"2021-05-21T23:26:46+00:00"}, [ + .reply(200, {"etag":"xlVgpC7kEWSh6qtFl3qqBKmwG09","key":".appconfig.featureflag/name-1162439657358703686","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:13+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 21 May 2021 23:26:42 GMT', + 'Tue, 22 Jun 2021 21:16:08 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -53,15 +53,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 21 May 2021 23:26:46 GMT', + 'Tue, 22 Jun 2021 21:16:13 GMT', 'ETag', - '"TUCsSpczvtslRMRZaZWzyKNRxXD"', + '"xlVgpC7kEWSh6qtFl3qqBKmwG09"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMzM2OTU1;sn=3336955', + 'zAJw6V16=NToxOSMzNTkyMzc3;sn=3592377', 'x-ms-request-id', - 'f356bd8d-0e7f-4fd3-9f75-f71b08295337', + '4b607f7a-ec53-4da0-a945-763d6f58d269', 'x-ms-correlation-request-id', - 'f356bd8d-0e7f-4fd3-9f75-f71b08295337', + '4b607f7a-ec53-4da0-a945-763d6f58d269', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', @@ -73,13 +73,13 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) ]); nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) - .delete('/kv/.appconfig.featureflag%2Fname-1162163960704305092') + .delete('/kv/.appconfig.featureflag%2Fname-1162439657358703686') .query(true) - .reply(200, {"etag":"TUCsSpczvtslRMRZaZWzyKNRxXD","key":".appconfig.featureflag/name-1162163960704305092","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World","tags":{},"locked":false,"last_modified":"2021-05-21T23:26:46+00:00"}, [ + .reply(200, {"etag":"xlVgpC7kEWSh6qtFl3qqBKmwG09","key":".appconfig.featureflag/name-1162439657358703686","label":null,"content_type":"application/vnd.microsoft.appconfig.ff+json;charset=utf-8","value":"Hello World","tags":{},"locked":false,"last_modified":"2021-06-22T21:16:13+00:00"}, [ 'Server', 'openresty/1.17.8.2', 'Date', - 'Fri, 21 May 2021 23:26:45 GMT', + 'Tue, 22 Jun 2021 21:16:14 GMT', 'Content-Type', 'application/vnd.microsoft.appconfig.kv+json; charset=utf-8', 'Transfer-Encoding', @@ -87,15 +87,15 @@ nock('https://myappconfig.azconfig.io:443', {"encodedQueryParams":true}) 'Connection', 'close', 'Last-Modified', - 'Fri, 21 May 2021 23:26:46 GMT', + 'Tue, 22 Jun 2021 21:16:13 GMT', 'ETag', - '"TUCsSpczvtslRMRZaZWzyKNRxXD"', + '"xlVgpC7kEWSh6qtFl3qqBKmwG09"', 'Sync-Token', - 'zAJw6V16=NToxOSMzMzM2OTU2;sn=3336956', + 'zAJw6V16=NToxOSMzNTkyMzc4;sn=3592378', 'x-ms-request-id', - '10ebc611-c1f1-4458-b594-a319fbbaa45b', + '4d6dc3d8-50fe-4f0e-a591-54d7782cfd81', 'x-ms-correlation-request-id', - '10ebc611-c1f1-4458-b594-a319fbbaa45b', + '4d6dc3d8-50fe-4f0e-a591-54d7782cfd81', 'Access-Control-Allow-Origin', '*', 'Access-Control-Allow-Credentials', diff --git a/sdk/appconfiguration/app-configuration/review/app-configuration.api.md b/sdk/appconfiguration/app-configuration/review/app-configuration.api.md index c2faa2a5da8f..93a9b10be30a 100644 --- a/sdk/appconfiguration/app-configuration/review/app-configuration.api.md +++ b/sdk/appconfiguration/app-configuration/review/app-configuration.api.md @@ -91,6 +91,7 @@ export interface FeatureFlagValue { }[]; }; description?: string; + displayName?: string; enabled: boolean; id?: string; } diff --git a/sdk/appconfiguration/app-configuration/sample-react/README.md b/sdk/appconfiguration/app-configuration/sample-react/README.md index 698a03782454..b74c4757d55c 100644 --- a/sdk/appconfiguration/app-configuration/sample-react/README.md +++ b/sdk/appconfiguration/app-configuration/sample-react/README.md @@ -95,5 +95,5 @@ Take a look at our [Samples][samples] for more information about the APIs that a [react]: https://create-react-app.dev/ [typescript]: https://www.typescriptlang.org/docs/home.html [freesub]: https://azure.microsoft.com/free -[samples]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript -[identity]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md +[samples]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript +[identity]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md diff --git a/sdk/appconfiguration/app-configuration/samples/v1/javascript/README.md b/sdk/appconfiguration/app-configuration/samples/v1/javascript/README.md index 634431a5ef08..28e1b261b0e8 100644 --- a/sdk/appconfiguration/app-configuration/samples/v1/javascript/README.md +++ b/sdk/appconfiguration/app-configuration/samples/v1/javascript/README.md @@ -64,16 +64,16 @@ npx cross-env APPCONFIG_CONNECTION_STRING="" node h Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/helloworld.js -[helloworldwithlabels]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/helloworldWithLabels.js -[optimisticconcurrencyviaetag]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/optimisticConcurrencyViaEtag.js -[setreadonlysample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/setReadOnlySample.js -[getsettingonlyifchanged]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/getSettingOnlyIfChanged.js -[listconfigurationsettings]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/listConfigurationSettings.js -[listrevisions]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/listRevisions.js -[secretreference]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/secretReference.js -[featureflag]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/javascript/featureFlag.js +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/helloworld.js +[helloworldwithlabels]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/helloworldWithLabels.js +[optimisticconcurrencyviaetag]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/optimisticConcurrencyViaEtag.js +[setreadonlysample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/setReadOnlySample.js +[getsettingonlyifchanged]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/getSettingOnlyIfChanged.js +[listconfigurationsettings]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/listConfigurationSettings.js +[listrevisions]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/listRevisions.js +[secretreference]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/secretReference.js +[featureflag]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/javascript/featureFlag.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/app-configuration [freesub]: https://azure.microsoft.com/free/ [createinstance_azureappconfigurationaccount]: https://docs.microsoft.com/azure/azure-app-configuration/quickstart-aspnet-core-app?tabs=core5x#create-an-app-configuration-store -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/README.md diff --git a/sdk/appconfiguration/app-configuration/samples/v1/javascript/package.json b/sdk/appconfiguration/app-configuration/samples/v1/javascript/package.json index 70400b50dfec..dddad45e9a84 100644 --- a/sdk/appconfiguration/app-configuration/samples/v1/javascript/package.json +++ b/sdk/appconfiguration/app-configuration/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration", "dependencies": { "@azure/app-configuration": "next", "dotenv": "latest", diff --git a/sdk/appconfiguration/app-configuration/samples/v1/typescript/README.md b/sdk/appconfiguration/app-configuration/samples/v1/typescript/README.md index 7ea0f354b376..3afcf320573d 100644 --- a/sdk/appconfiguration/app-configuration/samples/v1/typescript/README.md +++ b/sdk/appconfiguration/app-configuration/samples/v1/typescript/README.md @@ -76,17 +76,17 @@ npx cross-env APPCONFIG_CONNECTION_STRING="" node d Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworld.ts -[helloworldwithlabels]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworldWithLabels.ts -[optimisticconcurrencyviaetag]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/optimisticConcurrencyViaEtag.ts -[setreadonlysample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/setReadOnlySample.ts -[getsettingonlyifchanged]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/getSettingOnlyIfChanged.ts -[listconfigurationsettings]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listConfigurationSettings.ts -[listrevisions]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listRevisions.ts -[secretreference]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/secretReference.ts -[featureflag]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/featureFlag.ts +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworld.ts +[helloworldwithlabels]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworldWithLabels.ts +[optimisticconcurrencyviaetag]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/optimisticConcurrencyViaEtag.ts +[setreadonlysample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/setReadOnlySample.ts +[getsettingonlyifchanged]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/getSettingOnlyIfChanged.ts +[listconfigurationsettings]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listConfigurationSettings.ts +[listrevisions]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listRevisions.ts +[secretreference]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/secretReference.ts +[featureflag]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/featureFlag.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/app-configuration [freesub]: https://azure.microsoft.com/free/ [createinstance_azureappconfigurationaccount]: https://docs.microsoft.com/azure/azure-app-configuration/quickstart-aspnet-core-app?tabs=core5x#create-an-app-configuration-store -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/appconfiguration/app-configuration/samples/v1/typescript/package.json b/sdk/appconfiguration/app-configuration/samples/v1/typescript/package.json index ad1f27e9ec43..06d577d777f0 100644 --- a/sdk/appconfiguration/app-configuration/samples/v1/typescript/package.json +++ b/sdk/appconfiguration/app-configuration/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration", "dependencies": { "@azure/app-configuration": "next", "dotenv": "latest", diff --git a/sdk/appconfiguration/app-configuration/src/featureFlag.ts b/sdk/appconfiguration/app-configuration/src/featureFlag.ts index f9225f780b44..8538356fbb91 100644 --- a/sdk/appconfiguration/app-configuration/src/featureFlag.ts +++ b/sdk/appconfiguration/app-configuration/src/featureFlag.ts @@ -41,6 +41,10 @@ export interface FeatureFlagValue { * Boolean flag to say if the feature flag is enabled. */ enabled: boolean; + /** + * Display name for the feature to use for display rather than the ID. + */ + displayName?: string; } /** @@ -62,10 +66,12 @@ export const FeatureFlagHelper = { } const jsonFeatureFlagValue: JsonFeatureFlagValue = { id: featureFlag.value.id ?? key.replace(featureFlagPrefix, ""), - ...featureFlag.value, + enabled: featureFlag.value.enabled, + description: featureFlag.value.description, conditions: { client_filters: featureFlag.value.conditions.clientFilters - } + }, + display_name: featureFlag.value.displayName }; const configSetting = { @@ -96,7 +102,10 @@ export function parseFeatureFlag( const featureflag: ConfigurationSetting = { ...setting, value: { - ...jsonFeatureFlagValue, + id: jsonFeatureFlagValue.id, + enabled: jsonFeatureFlagValue.enabled, + description: jsonFeatureFlagValue.description, + displayName: jsonFeatureFlagValue.display_name, conditions: { clientFilters: jsonFeatureFlagValue.conditions.client_filters } }, key, diff --git a/sdk/appconfiguration/app-configuration/src/internal/jsonModels.ts b/sdk/appconfiguration/app-configuration/src/internal/jsonModels.ts index 19c7378eab26..91f1f5b34f20 100644 --- a/sdk/appconfiguration/app-configuration/src/internal/jsonModels.ts +++ b/sdk/appconfiguration/app-configuration/src/internal/jsonModels.ts @@ -11,6 +11,7 @@ export type JsonFeatureFlagValue = { description?: string; enabled: boolean; id?: string; + display_name?: string; }; // keyvault secret reference diff --git a/sdk/appconfiguration/app-configuration/test/README.md b/sdk/appconfiguration/app-configuration/test/README.md index baeb1da9a780..bd64d503a02d 100644 --- a/sdk/appconfiguration/app-configuration/test/README.md +++ b/sdk/appconfiguration/app-configuration/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts b/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts index fd74292cd30a..a6f9aa118dc2 100644 --- a/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts +++ b/sdk/appconfiguration/app-configuration/test/public/featureFlag.spec.ts @@ -51,7 +51,8 @@ describe("AppConfigurationClient - FeatureFlag", () => { ] }, enabled: false, - description: "I'm a description" + description: "I'm a description", + displayName: "for display" }, isReadOnly: false, key: `${featureFlagPrefix + recorder.getUniqueName("name-1")}`, diff --git a/sdk/appconfiguration/arm-appconfiguration/README.md b/sdk/appconfiguration/arm-appconfiguration/README.md index 7b59569e1ed6..69b807098b23 100644 --- a/sdk/appconfiguration/arm-appconfiguration/README.md +++ b/sdk/appconfiguration/arm-appconfiguration/README.md @@ -1,92 +1,101 @@ ## Azure AppConfigurationManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AppConfigurationManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AppConfigurationManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-appconfiguration` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-appconfiguration +npm install --save @azure/arm-appconfiguration @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list configurationStores as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list configurationStores as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AppConfigurationManagementClient, AppConfigurationManagementModels, AppConfigurationManagementMappers } from "@azure/arm-appconfiguration"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AppConfigurationManagementClient } = require("@azure/arm-appconfiguration"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AppConfigurationManagementClient(creds, subscriptionId); - const skipToken = "testskipToken"; - client.configurationStores.list(skipToken).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AppConfigurationManagementClient(creds, subscriptionId); +const skipToken = "testskipToken"; +client.configurationStores.list(skipToken).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list configurationStores as an example written in JavaScript. +#### browser - Authentication, client creation, and list configurationStores as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-appconfiguration sample - - + diff --git a/sdk/appconfiguration/arm-appconfiguration/package.json b/sdk/appconfiguration/arm-appconfiguration/package.json index 26b7c0ec5092..b7c97791c578 100644 --- a/sdk/appconfiguration/arm-appconfiguration/package.json +++ b/sdk/appconfiguration/arm-appconfiguration/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-appconfiguration", "author": "Microsoft Corporation", "description": "AppConfigurationManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.3.0", + "version": "1.4.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/appConfigurationManagementClient.js", "types": "./esm/appConfigurationManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/arm-appconfiguration", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/arm-appconfiguration", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClient.ts b/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClient.ts index bc7c2ccf0f9c..b58eabc6d21f 100644 --- a/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClient.ts +++ b/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -24,11 +25,16 @@ class AppConfigurationManagementClient extends AppConfigurationManagementClientC /** * Initializes a new instance of the AppConfigurationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Microsoft Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AppConfigurationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AppConfigurationManagementClientOptions) { super(credentials, subscriptionId, options); this.configurationStores = new operations.ConfigurationStores(this); this.operations = new operations.Operations(this); diff --git a/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClientContext.ts b/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClientContext.ts index bacdf7ad3cfa..72641b89d50e 100644 --- a/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClientContext.ts +++ b/sdk/appconfiguration/arm-appconfiguration/src/appConfigurationManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-appconfiguration"; -const packageVersion = "1.3.0"; +const packageVersion = "1.4.0"; export class AppConfigurationManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AppConfigurationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Microsoft Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AppConfigurationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AppConfigurationManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/appconfiguration/ci.yml b/sdk/appconfiguration/ci.yml index 85dd6e9b9c30..78672bcbe0a1 100644 --- a/sdk/appconfiguration/ci.yml +++ b/sdk/appconfiguration/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/applicationinsights/applicationinsights-query/package.json b/sdk/applicationinsights/applicationinsights-query/package.json index abea06a59016..4856d2a660ac 100644 --- a/sdk/applicationinsights/applicationinsights-query/package.json +++ b/sdk/applicationinsights/applicationinsights-query/package.json @@ -24,7 +24,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/applicationinsights/applicationinsights-query", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/applicationinsights/applicationinsights-query", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/applicationinsights/arm-appinsights/README.md b/sdk/applicationinsights/arm-appinsights/README.md index a81a6333908d..4b865a5e2981 100644 --- a/sdk/applicationinsights/arm-appinsights/README.md +++ b/sdk/applicationinsights/arm-appinsights/README.md @@ -1,90 +1,100 @@ ## Azure ApplicationInsightsManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ApplicationInsightsManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ApplicationInsightsManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-appinsights` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-appinsights +npm install --save @azure/arm-appinsights @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { ApplicationInsightsManagementClient, ApplicationInsightsManagementModels, ApplicationInsightsManagementMappers } from "@azure/arm-appinsights"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { ApplicationInsightsManagementClient } = require("@azure/arm-appinsights"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ApplicationInsightsManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ApplicationInsightsManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-appinsights sample - - + diff --git a/sdk/applicationinsights/arm-appinsights/package.json b/sdk/applicationinsights/arm-appinsights/package.json index 7c57385ff716..86aa24dbac0b 100644 --- a/sdk/applicationinsights/arm-appinsights/package.json +++ b/sdk/applicationinsights/arm-appinsights/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-appinsights", "author": "Microsoft Corporation", "description": "ApplicationInsightsManagementClient Library with typescript type definitions for node.js and browser.", - "version": "3.0.0", + "version": "3.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/applicationInsightsManagementClient.js", "types": "./esm/applicationInsightsManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/applicationinsights/arm-appinsights", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/applicationinsights/arm-appinsights", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClient.ts b/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClient.ts index 129814529633..e001f89b1329 100644 --- a/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClient.ts +++ b/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -39,11 +40,16 @@ class ApplicationInsightsManagementClient extends ApplicationInsightsManagementC /** * Initializes a new instance of the ApplicationInsightsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ApplicationInsightsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ApplicationInsightsManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.annotations = new operations.Annotations(this); diff --git a/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClientContext.ts b/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClientContext.ts index 14021c83aee1..b3cc5d676aba 100644 --- a/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClientContext.ts +++ b/sdk/applicationinsights/arm-appinsights/src/applicationInsightsManagementClientContext.ts @@ -10,22 +10,28 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-appinsights"; -const packageVersion = "3.0.0"; +const packageVersion = "3.1.0"; export class ApplicationInsightsManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; /** * Initializes a new instance of the ApplicationInsightsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ApplicationInsightsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ApplicationInsightsManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/appplatform/arm-appplatform/README.md b/sdk/appplatform/arm-appplatform/README.md index f05562f618da..c06e938283f7 100644 --- a/sdk/appplatform/arm-appplatform/README.md +++ b/sdk/appplatform/arm-appplatform/README.md @@ -1,93 +1,103 @@ ## Azure AppPlatformManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AppPlatformManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AppPlatformManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-appplatform` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-appplatform +npm install --save @azure/arm-appplatform @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and get services as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get services as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { AppPlatformManagementClient } = require("@azure/arm-appplatform"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AppPlatformManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const serviceName = "testserviceName"; - client.services.get(resourceGroupName, serviceName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AppPlatformManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const serviceName = "testserviceName"; +client.services.get(resourceGroupName, serviceName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get services as an example written in JavaScript. +#### browser - Authentication, client creation, and get services as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-appplatform sample - - + diff --git a/sdk/appplatform/arm-appplatform/package.json b/sdk/appplatform/arm-appplatform/package.json index ebab866401ae..048062d2f2ef 100644 --- a/sdk/appplatform/arm-appplatform/package.json +++ b/sdk/appplatform/arm-appplatform/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-appplatform", "author": "Microsoft Corporation", "description": "AppPlatformManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.2.0", + "version": "1.3.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/appPlatformManagementClient.js", "types": "./esm/appPlatformManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appplatform/arm-appplatform", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appplatform/arm-appplatform", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/appplatform/arm-appplatform/src/appPlatformManagementClient.ts b/sdk/appplatform/arm-appplatform/src/appPlatformManagementClient.ts index e9bef8750f6f..a942c7ed14c8 100644 --- a/sdk/appplatform/arm-appplatform/src/appPlatformManagementClient.ts +++ b/sdk/appplatform/arm-appplatform/src/appPlatformManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -30,12 +31,17 @@ class AppPlatformManagementClient extends AppPlatformManagementClientContext { /** * Initializes a new instance of the AppPlatformManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription ID which uniquely identify the Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AppPlatformManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AppPlatformManagementClientOptions) { super(credentials, subscriptionId, options); this.services = new operations.Services(this); this.configServers = new operations.ConfigServers(this); diff --git a/sdk/appplatform/arm-appplatform/src/appPlatformManagementClientContext.ts b/sdk/appplatform/arm-appplatform/src/appPlatformManagementClientContext.ts index 6e107e7e50bf..1c6af685d8ac 100644 --- a/sdk/appplatform/arm-appplatform/src/appPlatformManagementClientContext.ts +++ b/sdk/appplatform/arm-appplatform/src/appPlatformManagementClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-appplatform"; -const packageVersion = "1.2.0"; +const packageVersion = "1.3.0"; export class AppPlatformManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the AppPlatformManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription ID which uniquely identify the Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AppPlatformManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AppPlatformManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/README.md b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/README.md index 3ffb61bd731e..26137bf2bd28 100644 --- a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/README.md +++ b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/README.md @@ -1,89 +1,100 @@ ## Azure WebSiteManagementClient SDK for JavaScript -This package contains an isomorphic SDK for WebSiteManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for WebSiteManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-appservice-profile-2019-03-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-appservice-profile-2019-03-01-hybrid +npm install --save @azure/arm-appservice-profile-2019-03-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list certificates as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list certificates as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { WebSiteManagementClient, WebSiteManagementModels, WebSiteManagementMappers } from "@azure/arm-appservice-profile-2019-03-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { WebSiteManagementClient } = require("@azure/arm-appservice-profile-2019-03-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new WebSiteManagementClient(creds, subscriptionId); - client.certificates.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new WebSiteManagementClient(creds, subscriptionId); + +client.certificates.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list certificates as an example written in JavaScript. +#### browser - Authentication, client creation, and list certificates as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-appservice-profile-2019-03-01-hybrid sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fappservice%2Farm-appservice-profile-2019-03-01-hybrid%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/README.png) diff --git a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/package.json b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/package.json index 703c41e0442c..952a9bb98d08 100644 --- a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/package.json +++ b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-appservice-profile-2019-03-01-hybrid", "author": "Microsoft Corporation", "description": "WebSiteManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.2", - "@azure/ms-rest-js": "^1.8.1", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,7 +21,7 @@ "module": "./esm/webSiteManagementClient.js", "types": "./esm/webSiteManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", diff --git a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClient.ts b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClient.ts index 0d35a9177b82..0d640ce71d6e 100644 --- a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClient.ts +++ b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as Parameters from "./models/parameters"; @@ -26,12 +27,17 @@ class WebSiteManagementClient extends WebSiteManagementClientContext { /** * Initializes a new instance of the WebSiteManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Your Azure subscription ID. This is a GUID-formatted string (e.g. * 00000000-0000-0000-0000-000000000000). * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { super(credentials, subscriptionId, options); this.certificates = new operations.Certificates(this); this.webApps = new operations.WebApps(this); diff --git a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClientContext.ts b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClientContext.ts index 009c37bd2c6b..b8db44f5ff74 100644 --- a/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClientContext.ts +++ b/sdk/appservice/arm-appservice-profile-2019-03-01-hybrid/src/webSiteManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-appservice-profile-2019-03-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class WebSiteManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the WebSiteManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Your Azure subscription ID. This is a GUID-formatted string (e.g. * 00000000-0000-0000-0000-000000000000). * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/README.md b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/README.md index c423f466f6e1..aa27aa0db8b6 100644 --- a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/README.md +++ b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/README.md @@ -1,90 +1,100 @@ ## Azure WebSiteManagementClient SDK for JavaScript -This package contains an isomorphic SDK for WebSiteManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for WebSiteManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-appservice-profile-2020-09-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-appservice-profile-2020-09-01-hybrid +npm install --save @azure/arm-appservice-profile-2020-09-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list certificates as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list certificates as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { WebSiteManagementClient, WebSiteManagementModels, WebSiteManagementMappers } from "@azure/arm-appservice-profile-2020-09-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { WebSiteManagementClient } = require("@azure/arm-appservice-profile-2020-09-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new WebSiteManagementClient(creds, subscriptionId); - client.certificates.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new WebSiteManagementClient(creds, subscriptionId); + +client.certificates.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list certificates as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list certificates as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-appservice-profile-2020-09-01-hybrid sample - - + diff --git a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/package.json b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/package.json index c9d9463cfb6f..a481eea50d04 100644 --- a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/package.json +++ b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-appservice-profile-2020-09-01-hybrid", "author": "Microsoft Corporation", "description": "WebSiteManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/webSiteManagementClient.js", "types": "./esm/webSiteManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClient.ts b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClient.ts index 0d35a9177b82..0d640ce71d6e 100644 --- a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClient.ts +++ b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as Parameters from "./models/parameters"; @@ -26,12 +27,17 @@ class WebSiteManagementClient extends WebSiteManagementClientContext { /** * Initializes a new instance of the WebSiteManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Your Azure subscription ID. This is a GUID-formatted string (e.g. * 00000000-0000-0000-0000-000000000000). * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { super(credentials, subscriptionId, options); this.certificates = new operations.Certificates(this); this.webApps = new operations.WebApps(this); diff --git a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClientContext.ts b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClientContext.ts index ffc50ad7fc59..76232c9ebc0b 100644 --- a/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClientContext.ts +++ b/sdk/appservice/arm-appservice-profile-2020-09-01-hybrid/src/webSiteManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-appservice-profile-2020-09-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class WebSiteManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the WebSiteManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Your Azure subscription ID. This is a GUID-formatted string (e.g. * 00000000-0000-0000-0000-000000000000). * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.WebSiteManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/appservice/arm-appservice/package.json b/sdk/appservice/arm-appservice/package.json index f9e4bb711cc9..5ffcf4b60522 100644 --- a/sdk/appservice/arm-appservice/package.json +++ b/sdk/appservice/arm-appservice/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appservice/arm-appservice", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appservice/arm-appservice", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/attestation/arm-attestation/README.md b/sdk/attestation/arm-attestation/README.md index 08a634ff796d..e26c14c75674 100644 --- a/sdk/attestation/arm-attestation/README.md +++ b/sdk/attestation/arm-attestation/README.md @@ -1,90 +1,100 @@ ## Azure AttestationManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AttestationManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AttestationManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-attestation` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-attestation +npm install --save @azure/arm-attestation @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AttestationManagementClient, AttestationManagementModels, AttestationManagementMappers } from "@azure/arm-attestation"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AttestationManagementClient } = require("@azure/arm-attestation"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AttestationManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AttestationManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-attestation sample - - + diff --git a/sdk/attestation/arm-attestation/package.json b/sdk/attestation/arm-attestation/package.json index 109eab318b34..07337a0d6638 100644 --- a/sdk/attestation/arm-attestation/package.json +++ b/sdk/attestation/arm-attestation/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-attestation", "author": "Microsoft Corporation", "description": "AttestationManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/attestationManagementClient.js", "types": "./esm/attestationManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/attestation/arm-attestation", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/attestation/arm-attestation", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/attestation/arm-attestation/src/attestationManagementClient.ts b/sdk/attestation/arm-attestation/src/attestationManagementClient.ts index 1657aee1b92f..ab2f54efb640 100644 --- a/sdk/attestation/arm-attestation/src/attestationManagementClient.ts +++ b/sdk/attestation/arm-attestation/src/attestationManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +23,16 @@ class AttestationManagementClient extends AttestationManagementClientContext { /** * Initializes a new instance of the AttestationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AttestationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AttestationManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.attestationProviders = new operations.AttestationProviders(this); diff --git a/sdk/attestation/arm-attestation/src/attestationManagementClientContext.ts b/sdk/attestation/arm-attestation/src/attestationManagementClientContext.ts index c07885699d86..c094c4cfbaa1 100644 --- a/sdk/attestation/arm-attestation/src/attestationManagementClientContext.ts +++ b/sdk/attestation/arm-attestation/src/attestationManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-attestation"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class AttestationManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the AttestationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AttestationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AttestationManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/attestation/attestation/README.md b/sdk/attestation/attestation/README.md index 3e3bba601594..50db5844228f 100644 --- a/sdk/attestation/attestation/README.md +++ b/sdk/attestation/attestation/README.md @@ -87,7 +87,7 @@ Use the [Azure CLI][azure_cli] snippet below to create/get client secret credent $Env:AZURE_TENANT_ID="tenant-ID" ``` -For more information about the Azure Identity APIs and how to use them, see [Azure Identity client library](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity) +For more information about the Azure Identity APIs and how to use them, see [Azure Identity client library](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity) ## Key concepts @@ -277,7 +277,7 @@ Use `get_signing_certificates` to retrieve the certificates which can be used to ## Troubleshooting -Most Attestation service operations will raise exceptions defined in [Azure Core](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/README.md). The attestation service APIs will throw a `HttpResponseError` on failure with helpful error codes. Many of these errors are recoverable. +Most Attestation service operations will raise exceptions defined in [Azure Core](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/README.md). The attestation service APIs will throw a `HttpResponseError` on failure with helpful error codes. Many of these errors are recoverable. ```ts @@ -293,7 +293,7 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). Additional troubleshooting information for the MAA service can be found [here](https://docs.microsoft.com/azure/attestation/troubleshoot-guide) @@ -318,7 +318,7 @@ If you encounter any bugs or have suggestions, please file an issue in the section of the project. -[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/attestation/attestation +[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/attestation/attestation [azure_identity]: https://azuresdkdocs.blob.core.windows.net/$web/javascript/azure-identity/2.0.0-beta.3/index.html [DefaultAzureCredential]: https://azuresdkdocs.blob.core.windows.net/$web/javascript/azure-identity/2.0.0-beta.3/classes/defaultazurecredential.html [attestation_policy_result]:https://azuresdkdocs.blob.core.windows.net/$web/javascript/azure-attestation/1.0.0-beta.2/interfaces/policyresult.html @@ -338,7 +338,7 @@ section of the project. [json_web_token]: https://tools.ietf.org/html/rfc7519 [JWK]: https://tools.ietf.org/html/rfc7517 [base64url_encoding]: https://tools.ietf.org/html/rfc4648#section-5 -[contributing]: https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md +[contributing]: https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md [coc_faq]: https://opensource.microsoft.com/codeofconduct/faq/ ## Related projects diff --git a/sdk/attestation/attestation/package.json b/sdk/attestation/attestation/package.json index db295444f051..2647445d2884 100644 --- a/sdk/attestation/attestation/package.json +++ b/sdk/attestation/attestation/package.json @@ -83,7 +83,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/attestation/attestation/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/attestation/attestation/README.md", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/attestation/ci.yml b/sdk/attestation/ci.yml index 163f4260404d..842bde13471c 100644 --- a/sdk/attestation/ci.yml +++ b/sdk/attestation/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/README.md b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/README.md index 1c27e64535b1..09b24f40d9bc 100644 --- a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/README.md +++ b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/README.md @@ -1,91 +1,101 @@ ## Azure AuthorizationManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AuthorizationManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AuthorizationManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-authorization-profile-2019-03-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-authorization-profile-2019-03-01-hybrid +npm install --save @azure/arm-authorization-profile-2019-03-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and listForResourceGroup permissions as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and listForResourceGroup permissions as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AuthorizationManagementClient, AuthorizationManagementModels, AuthorizationManagementMappers } from "@azure/arm-authorization-profile-2019-03-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AuthorizationManagementClient } = require("@azure/arm-authorization-profile-2019-03-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AuthorizationManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - client.permissions.listForResourceGroup(resourceGroupName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AuthorizationManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +client.permissions.listForResourceGroup(resourceGroupName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and listForResourceGroup permissions as an example written in JavaScript. +#### browser - Authentication, client creation, and listForResourceGroup permissions as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-authorization-profile-2019-03-01-hybrid sample - - + @@ -97,5 +107,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fauthorization%2Farm-authorization-profile-2019-03-01-hybrid%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/README.png) diff --git a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/package.json b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/package.json index 91c633edea0b..446f75987da0 100644 --- a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/package.json +++ b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-authorization-profile-2019-03-01-hybrid", "author": "Microsoft Corporation", "description": "AuthorizationManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.2", - "@azure/ms-rest-js": "^1.8.1", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -21,13 +22,13 @@ "module": "./esm/authorizationManagementClient.js", "types": "./esm/authorizationManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClient.ts b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClient.ts index 2c27b1a41c0c..3f9befd01c0e 100644 --- a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClient.ts +++ b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -25,11 +26,16 @@ class AuthorizationManagementClient extends AuthorizationManagementClientContext /** * Initializes a new instance of the AuthorizationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { super(credentials, subscriptionId, options); this.permissions = new operations.Permissions(this); this.providerOperationsMetadata = new operations.ProviderOperationsMetadataOperations(this); diff --git a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClientContext.ts b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClientContext.ts index 06325eb70e3c..1e7113ab7019 100644 --- a/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClientContext.ts +++ b/sdk/authorization/arm-authorization-profile-2019-03-01-hybrid/src/authorizationManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-authorization-profile-2019-03-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class AuthorizationManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AuthorizationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/README.md b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/README.md index f4515cf204e2..de209d61a2e6 100644 --- a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/README.md +++ b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/README.md @@ -1,92 +1,101 @@ ## Azure AuthorizationManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AuthorizationManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AuthorizationManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-authorization-profile-2020-09-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-authorization-profile-2020-09-01-hybrid +npm install --save @azure/arm-authorization-profile-2020-09-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and listForResourceGroup permissions as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and listForResourceGroup permissions as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AuthorizationManagementClient, AuthorizationManagementModels, AuthorizationManagementMappers } from "@azure/arm-authorization-profile-2020-09-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AuthorizationManagementClient } = require("@azure/arm-authorization-profile-2020-09-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AuthorizationManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - client.permissions.listForResourceGroup(resourceGroupName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AuthorizationManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +client.permissions.listForResourceGroup(resourceGroupName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and listForResourceGroup permissions as an example written in JavaScript. +#### browser - Authentication, client creation, and listForResourceGroup permissions as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-authorization-profile-2020-09-01-hybrid sample - - + diff --git a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/package.json b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/package.json index 7e57bafabb39..116c9e399a91 100644 --- a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/package.json +++ b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-authorization-profile-2020-09-01-hybrid", "author": "Microsoft Corporation", "description": "AuthorizationManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/authorizationManagementClient.js", "types": "./esm/authorizationManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClient.ts b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClient.ts index a1aded5211b9..2164fe797036 100644 --- a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClient.ts +++ b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -25,11 +26,16 @@ class AuthorizationManagementClient extends AuthorizationManagementClientContext /** * Initializes a new instance of the AuthorizationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { super(credentials, subscriptionId, options); this.permissions = new operations.Permissions(this); this.roleDefinitions = new operations.RoleDefinitions(this); diff --git a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClientContext.ts b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClientContext.ts index a3a07b227f8b..624b843cabad 100644 --- a/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClientContext.ts +++ b/sdk/authorization/arm-authorization-profile-2020-09-01-hybrid/src/authorizationManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-authorization-profile-2020-09-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class AuthorizationManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AuthorizationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/authorization/arm-authorization/README.md b/sdk/authorization/arm-authorization/README.md index 00b867f0df83..97a2b1e7248b 100644 --- a/sdk/authorization/arm-authorization/README.md +++ b/sdk/authorization/arm-authorization/README.md @@ -1,61 +1,74 @@ ## Azure AuthorizationManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AuthorizationManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AuthorizationManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-authorization` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-authorization +npm install --save @azure/arm-authorization @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list classicAdministrators as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list classicAdministrators as an example written in JavaScript. ##### Sample code ```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { AuthorizationManagementClient } = require("@azure/arm-authorization"); -const { interactiveLogin } = require("@azure/ms-rest-nodeauth"); - const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -interactiveLogin() - .then((creds) => { - const client = new AuthorizationManagementClient(creds, subscriptionId); - client.classicAdministrators.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); - }) - .catch((err) => { - console.error(err); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AuthorizationManagementClient(creds, subscriptionId); + +client.classicAdministrators.list().then((result) => { + console.log("The result is:"); + console.log(result); +}).catch((err) => { + console.log("An error occurred:"); + console.error(err); +}); ``` -#### browser - Authentication, client creation and list classicAdministrators as an example written in JavaScript. +#### browser - Authentication, client creation, and list classicAdministrators as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html ```html @@ -63,35 +76,25 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to @azure/arm-authorization sample - - + @@ -103,4 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fauthorization%2Farm-authorization%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/authorization/arm-authorization/README.png) diff --git a/sdk/authorization/arm-authorization/package.json b/sdk/authorization/arm-authorization/package.json index e8c1c708f434..13554cbdc890 100644 --- a/sdk/authorization/arm-authorization/package.json +++ b/sdk/authorization/arm-authorization/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-authorization", "author": "Microsoft Corporation", "description": "AuthorizationManagementClient Library with typescript type definitions for node.js and browser.", - "version": "8.3.3", + "version": "8.4.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.0", - "@azure/ms-rest-js": "^2.0.3", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/authorizationManagementClient.js", "types": "./esm/authorizationManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/authorization/arm-authorization", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/authorization/arm-authorization", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/authorization/arm-authorization/src/authorizationManagementClient.ts b/sdk/authorization/arm-authorization/src/authorizationManagementClient.ts index 38d6e007d768..b970948c40cb 100644 --- a/sdk/authorization/arm-authorization/src/authorizationManagementClient.ts +++ b/sdk/authorization/arm-authorization/src/authorizationManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -27,11 +28,16 @@ class AuthorizationManagementClient extends AuthorizationManagementClientContext /** * Initializes a new instance of the AuthorizationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { super(credentials, subscriptionId, options); this.classicAdministrators = new operations.ClassicAdministrators(this); this.globalAdministrator = new operations.GlobalAdministrator(this); diff --git a/sdk/authorization/arm-authorization/src/authorizationManagementClientContext.ts b/sdk/authorization/arm-authorization/src/authorizationManagementClientContext.ts index 2b1aabd7fe6c..d81273824f92 100644 --- a/sdk/authorization/arm-authorization/src/authorizationManagementClientContext.ts +++ b/sdk/authorization/arm-authorization/src/authorizationManagementClientContext.ts @@ -10,22 +10,28 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-authorization"; -const packageVersion = "8.3.3"; +const packageVersion = "8.4.0"; export class AuthorizationManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; /** * Initializes a new instance of the AuthorizationManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AuthorizationManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/automation/arm-automation/README.md b/sdk/automation/arm-automation/README.md index 50b1d40caaa1..d7548d60e4c8 100644 --- a/sdk/automation/arm-automation/README.md +++ b/sdk/automation/arm-automation/README.md @@ -1,94 +1,103 @@ ## Azure AutomationClient SDK for JavaScript -This package contains an isomorphic SDK for AutomationClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AutomationClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-automation` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-automation +npm install --save @azure/arm-automation @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get automationAccount as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get automationAccount as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AutomationClient, AutomationModels, AutomationMappers } from "@azure/arm-automation"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AutomationClient } = require("@azure/arm-automation"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AutomationClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const automationAccountName = "testautomationAccountName"; - client.automationAccount.get(resourceGroupName, automationAccountName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AutomationClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const automationAccountName = "testautomationAccountName"; +client.automationAccount.get(resourceGroupName, automationAccountName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get automationAccount as an example written in JavaScript. +#### browser - Authentication, client creation, and get automationAccount as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-automation sample - - + diff --git a/sdk/automation/arm-automation/package.json b/sdk/automation/arm-automation/package.json index 3c834e3fe06c..3b093314045a 100644 --- a/sdk/automation/arm-automation/package.json +++ b/sdk/automation/arm-automation/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-automation", "author": "Microsoft Corporation", "description": "AutomationClient Library with typescript type definitions for node.js and browser.", - "version": "10.0.0", + "version": "10.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/automationClient.js", "types": "./esm/automationClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/automation/arm-automation", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/automation/arm-automation", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/automation/arm-automation/src/automationClient.ts b/sdk/automation/arm-automation/src/automationClient.ts index 4290b4b4a1c7..20f3495cf384 100644 --- a/sdk/automation/arm-automation/src/automationClient.ts +++ b/sdk/automation/arm-automation/src/automationClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -61,14 +62,19 @@ class AutomationClient extends AutomationClientContext { /** * Initializes a new instance of the AutomationClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param countType1 The type of counts to retrieve. Possible values include: 'status', * 'nodeconfiguration' * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, countType1: Models.CountType, options?: Models.AutomationClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, countType1: Models.CountType, options?: Models.AutomationClientOptions) { super(credentials, subscriptionId, countType1, options); this.automationAccount = new operations.AutomationAccountOperations(this); this.operations = new operations.Operations(this); diff --git a/sdk/automation/arm-automation/src/automationClientContext.ts b/sdk/automation/arm-automation/src/automationClientContext.ts index 52193c535a17..b686a363373a 100644 --- a/sdk/automation/arm-automation/src/automationClientContext.ts +++ b/sdk/automation/arm-automation/src/automationClientContext.ts @@ -10,26 +10,32 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-automation"; -const packageVersion = "10.0.0"; +const packageVersion = "10.1.0"; export class AutomationClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; countType1: Models.CountType; /** * Initializes a new instance of the AutomationClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param countType1 The type of counts to retrieve. Possible values include: 'status', * 'nodeconfiguration' * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, countType1: Models.CountType, options?: Models.AutomationClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, countType1: Models.CountType, options?: Models.AutomationClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/avs/arm-avs/README.md b/sdk/avs/arm-avs/README.md index 73c2aae29485..63a73a5aafa8 100644 --- a/sdk/avs/arm-avs/README.md +++ b/sdk/avs/arm-avs/README.md @@ -1,90 +1,100 @@ ## Azure AvsClient SDK for JavaScript -This package contains an isomorphic SDK for AvsClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AvsClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-avs` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-avs +npm install --save @azure/arm-avs @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AvsClient, AvsModels, AvsMappers } from "@azure/arm-avs"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AvsClient } = require("@azure/arm-avs"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AvsClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AvsClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-avs sample - - + diff --git a/sdk/avs/arm-avs/package.json b/sdk/avs/arm-avs/package.json index 521973d8e7d5..6cac221a8bca 100644 --- a/sdk/avs/arm-avs/package.json +++ b/sdk/avs/arm-avs/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-avs", "author": "Microsoft Corporation", "description": "AvsClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/avsClient.js", "types": "./esm/avsClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/avs/arm-avs", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/avs/arm-avs", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/avs/arm-avs/src/avsClient.ts b/sdk/avs/arm-avs/src/avsClient.ts index ddc844d84920..3b2edc265a44 100644 --- a/sdk/avs/arm-avs/src/avsClient.ts +++ b/sdk/avs/arm-avs/src/avsClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -26,11 +27,16 @@ class AvsClient extends AvsClientContext { /** * Initializes a new instance of the AvsClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AvsClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AvsClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.locations = new operations.Locations(this); diff --git a/sdk/avs/arm-avs/src/avsClientContext.ts b/sdk/avs/arm-avs/src/avsClientContext.ts index 3acb23a12a89..03dceb2252d3 100644 --- a/sdk/avs/arm-avs/src/avsClientContext.ts +++ b/sdk/avs/arm-avs/src/avsClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-avs"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class AvsClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the AvsClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AvsClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AvsClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/azurestack/arm-azurestack/README.md b/sdk/azurestack/arm-azurestack/README.md index 65e5624b65d3..2ccdfc94ebd0 100644 --- a/sdk/azurestack/arm-azurestack/README.md +++ b/sdk/azurestack/arm-azurestack/README.md @@ -1,90 +1,100 @@ ## Azure AzureStackManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AzureStackManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureStackManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-azurestack` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-azurestack +npm install --save @azure/arm-azurestack @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AzureStackManagementClient, AzureStackManagementModels, AzureStackManagementMappers } from "@azure/arm-azurestack"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AzureStackManagementClient } = require("@azure/arm-azurestack"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AzureStackManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AzureStackManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-azurestack sample - - + diff --git a/sdk/azurestack/arm-azurestack/package.json b/sdk/azurestack/arm-azurestack/package.json index 10036d2a7aec..b56b53a85d67 100644 --- a/sdk/azurestack/arm-azurestack/package.json +++ b/sdk/azurestack/arm-azurestack/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-azurestack", "author": "Microsoft Corporation", "description": "AzureStackManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/azureStackManagementClient.js", "types": "./esm/azureStackManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/azurestack/arm-azurestack", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/azurestack/arm-azurestack", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/azurestack/arm-azurestack/src/azureStackManagementClient.ts b/sdk/azurestack/arm-azurestack/src/azureStackManagementClient.ts index 04f21ebf7bfd..1e8337f77e14 100644 --- a/sdk/azurestack/arm-azurestack/src/azureStackManagementClient.ts +++ b/sdk/azurestack/arm-azurestack/src/azureStackManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -24,12 +25,17 @@ class AzureStackManagementClient extends AzureStackManagementClientContext { /** * Initializes a new instance of the AzureStackManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials that uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureStackManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureStackManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.products = new operations.Products(this); diff --git a/sdk/azurestack/arm-azurestack/src/azureStackManagementClientContext.ts b/sdk/azurestack/arm-azurestack/src/azureStackManagementClientContext.ts index 1af43d53f712..156bc37d3bc5 100644 --- a/sdk/azurestack/arm-azurestack/src/azureStackManagementClientContext.ts +++ b/sdk/azurestack/arm-azurestack/src/azureStackManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-azurestack"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class AzureStackManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AzureStackManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials that uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureStackManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureStackManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/azurestackhci/arm-azurestackhci/README.md b/sdk/azurestackhci/arm-azurestackhci/README.md index 54ed8d33c65a..13116bde073e 100644 --- a/sdk/azurestackhci/arm-azurestackhci/README.md +++ b/sdk/azurestackhci/arm-azurestackhci/README.md @@ -1,90 +1,100 @@ ## Azure AzureStackHCIClient SDK for JavaScript -This package contains an isomorphic SDK for AzureStackHCIClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureStackHCIClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-azurestackhci` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-azurestackhci +npm install --save @azure/arm-azurestackhci @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AzureStackHCIClient, AzureStackHCIModels, AzureStackHCIMappers } from "@azure/arm-azurestackhci"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AzureStackHCIClient } = require("@azure/arm-azurestackhci"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AzureStackHCIClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AzureStackHCIClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-azurestackhci sample - - + diff --git a/sdk/azurestackhci/arm-azurestackhci/package.json b/sdk/azurestackhci/arm-azurestackhci/package.json index 95df5ac728c2..2ac277230b0d 100644 --- a/sdk/azurestackhci/arm-azurestackhci/package.json +++ b/sdk/azurestackhci/arm-azurestackhci/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-azurestackhci", "author": "Microsoft Corporation", "description": "AzureStackHCIClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/azureStackHCIClient.js", "types": "./esm/azureStackHCIClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/azurestackhci/arm-azurestackhci", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/azurestackhci/arm-azurestackhci", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts index 1d411dcbd664..d4f586397e73 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +23,16 @@ class AzureStackHCIClient extends AzureStackHCIClientContext { /** * Initializes a new instance of the AzureStackHCIClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureStackHCIClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureStackHCIClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.clusters = new operations.Clusters(this); diff --git a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts index b820335844ca..6a541775ad3f 100644 --- a/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts +++ b/sdk/azurestackhci/arm-azurestackhci/src/azureStackHCIClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-azurestackhci"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class AzureStackHCIClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the AzureStackHCIClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureStackHCIClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureStackHCIClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/batch/arm-batch/README.md b/sdk/batch/arm-batch/README.md index 9347522bf353..7b0d748b036c 100644 --- a/sdk/batch/arm-batch/README.md +++ b/sdk/batch/arm-batch/README.md @@ -1,94 +1,103 @@ ## Azure BatchManagementClient SDK for JavaScript -This package contains an isomorphic SDK for BatchManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for BatchManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-batch` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-batch +npm install --save @azure/arm-batch @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get batchAccount as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get batchAccount as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { BatchManagementClient, BatchManagementModels, BatchManagementMappers } from "@azure/arm-batch"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { BatchManagementClient } = require("@azure/arm-batch"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new BatchManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const accountName = "testaccountName"; - client.batchAccount.get(resourceGroupName, accountName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new BatchManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const accountName = "testaccountName"; +client.batchAccount.get(resourceGroupName, accountName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get batchAccount as an example written in JavaScript. +#### browser - Authentication, client creation, and get batchAccount as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-batch sample - - + @@ -100,4 +109,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/README.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/batch/arm-batch/README.png) diff --git a/sdk/batch/arm-batch/package.json b/sdk/batch/arm-batch/package.json index de26495de767..25147b040606 100644 --- a/sdk/batch/arm-batch/package.json +++ b/sdk/batch/arm-batch/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-batch", "author": "Microsoft Corporation", "description": "BatchManagementClient Library with typescript type definitions for node.js and browser.", - "version": "5.0.0", + "version": "5.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^2.0.0" }, "keywords": [ @@ -31,7 +32,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "esm": "^3.2.25", "ts-node": "^8.3.0", - "typescript": "~3.9.3", + "typescript": "^3.6.0", "uglify-js": "^3.4.9" }, "homepage": "https://github.com/Azure/azure-sdk-for-js", diff --git a/sdk/batch/arm-batch/src/batchManagementClient.ts b/sdk/batch/arm-batch/src/batchManagementClient.ts index e5c88e5186c8..f59a410fc6ff 100644 --- a/sdk/batch/arm-batch/src/batchManagementClient.ts +++ b/sdk/batch/arm-batch/src/batchManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -29,12 +30,17 @@ class BatchManagementClient extends BatchManagementClientContext { /** * Initializes a new instance of the BatchManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Azure subscription ID. This is a GUID-formatted string (e.g. * 00000000-0000-0000-0000-000000000000) * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.BatchManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.BatchManagementClientOptions) { super(credentials, subscriptionId, options); this.batchAccount = new operations.BatchAccountOperations(this); this.applicationPackage = new operations.ApplicationPackageOperations(this); diff --git a/sdk/batch/arm-batch/src/batchManagementClientContext.ts b/sdk/batch/arm-batch/src/batchManagementClientContext.ts index 239857a63782..c24d567fca56 100644 --- a/sdk/batch/arm-batch/src/batchManagementClientContext.ts +++ b/sdk/batch/arm-batch/src/batchManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-batch"; -const packageVersion = "5.0.0"; +const packageVersion = "5.1.0"; export class BatchManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the BatchManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Azure subscription ID. This is a GUID-formatted string (e.g. * 00000000-0000-0000-0000-000000000000) * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.BatchManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.BatchManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/batch/batch/package.json b/sdk/batch/batch/package.json index 3f310a104523..450cfce5e38d 100644 --- a/sdk/batch/batch/package.json +++ b/sdk/batch/batch/package.json @@ -47,7 +47,7 @@ "esm": "^3.2.25", "ts-node": "^8.3.0" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/batch/batch", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/batch/batch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/batchai/arm-batchai/README.md b/sdk/batchai/arm-batchai/README.md index ce22680e07c2..8347ce03ac77 100644 --- a/sdk/batchai/arm-batchai/README.md +++ b/sdk/batchai/arm-batchai/README.md @@ -1,89 +1,100 @@ ## Azure BatchAIManagementClient SDK for JavaScript -This package contains an isomorphic SDK for BatchAIManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for BatchAIManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites -``` -npm install @azure/arm-batchai +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-batchai` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: +```bash +npm install --save @azure/arm-batchai @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { BatchAIManagementClient, BatchAIManagementModels, BatchAIManagementMappers } from "@azure/arm-batchai"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { BatchAIManagementClient } = require("@azure/arm-batchai"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new BatchAIManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new BatchAIManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-batchai sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fbatchai%2Farm-batchai%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/batchai/arm-batchai/README.png) diff --git a/sdk/batchai/arm-batchai/package.json b/sdk/batchai/arm-batchai/package.json index 89788a2a1fff..4e76a07f6ec8 100644 --- a/sdk/batchai/arm-batchai/package.json +++ b/sdk/batchai/arm-batchai/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-batchai", "author": "Microsoft Corporation", "description": "BatchAIManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.1.0", + "version": "2.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/batchAIManagementClient.js", "types": "./esm/batchAIManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/batchai/arm-batchai", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/batchai/arm-batchai", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/batchai/arm-batchai/src/batchAIManagementClient.ts b/sdk/batchai/arm-batchai/src/batchAIManagementClient.ts index c9af5d391f4d..aa440f6ece90 100644 --- a/sdk/batchai/arm-batchai/src/batchAIManagementClient.ts +++ b/sdk/batchai/arm-batchai/src/batchAIManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -27,11 +28,16 @@ class BatchAIManagementClient extends BatchAIManagementClientContext { /** * Initializes a new instance of the BatchAIManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscriptionID for the Azure user. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.BatchAIManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.BatchAIManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.usages = new operations.Usages(this); diff --git a/sdk/batchai/arm-batchai/src/batchAIManagementClientContext.ts b/sdk/batchai/arm-batchai/src/batchAIManagementClientContext.ts index ceeed0225f70..4631f2020a19 100644 --- a/sdk/batchai/arm-batchai/src/batchAIManagementClientContext.ts +++ b/sdk/batchai/arm-batchai/src/batchAIManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-batchai"; -const packageVersion = "0.1.0"; +const packageVersion = "2.2.0"; export class BatchAIManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the BatchAIManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscriptionID for the Azure user. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.BatchAIManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.BatchAIManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/billing/arm-billing/README.md b/sdk/billing/arm-billing/README.md index cd8267dc6804..1dcfe1a033a9 100644 --- a/sdk/billing/arm-billing/README.md +++ b/sdk/billing/arm-billing/README.md @@ -1,96 +1,101 @@ ## Azure BillingManagementClient SDK for JavaScript -This package contains an isomorphic SDK for BillingManagementClient. - -For more information about Billing: -* [Azure documentation](https://docs.microsoft.com/azure/cost-management-billing/) -* [SDK reference documentation](https://docs.microsoft.com/javascript/api/overview/azure/billing?view=azure-node-latest) +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for BillingManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. + +### Prerequisites + +You must have an [Azure subscription](https://azure.microsoft.com/free/). -### How to Install +### How to install +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-billing` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-billing +npm install --save @azure/arm-billing @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list billingAccounts as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list billingAccounts as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { BillingManagementClient, BillingManagementModels, BillingManagementMappers } from "@azure/arm-billing"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { BillingManagementClient } = require("@azure/arm-billing"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new BillingManagementClient(creds, subscriptionId); - const expand = "testexpand"; - client.billingAccounts.list(expand).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new BillingManagementClient(creds, subscriptionId); +const expand = "testexpand"; +client.billingAccounts.list(expand).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list billingAccounts as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list billingAccounts as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-billing sample - - + diff --git a/sdk/billing/arm-billing/package.json b/sdk/billing/arm-billing/package.json index 2c12635400d2..dfa45326cba5 100644 --- a/sdk/billing/arm-billing/package.json +++ b/sdk/billing/arm-billing/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-billing", "author": "Microsoft Corporation", "description": "BillingManagementClient Library with typescript type definitions for node.js and browser.", - "version": "3.0.0", + "version": "3.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/billingManagementClient.js", "types": "./esm/billingManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/billing/arm-billing", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/billing/arm-billing", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/billing/arm-billing/src/billingManagementClient.ts b/sdk/billing/arm-billing/src/billingManagementClient.ts index 2ff7dd105b67..a0d1edb23aad 100644 --- a/sdk/billing/arm-billing/src/billingManagementClient.ts +++ b/sdk/billing/arm-billing/src/billingManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -40,11 +41,16 @@ class BillingManagementClient extends BillingManagementClientContext { /** * Initializes a new instance of the BillingManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID that uniquely identifies an Azure subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.BillingManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.BillingManagementClientOptions) { super(credentials, subscriptionId, options); this.billingAccounts = new operations.BillingAccounts(this); this.address = new operations.Address(this); diff --git a/sdk/billing/arm-billing/src/billingManagementClientContext.ts b/sdk/billing/arm-billing/src/billingManagementClientContext.ts index 66679df82359..224c429cd9b4 100644 --- a/sdk/billing/arm-billing/src/billingManagementClientContext.ts +++ b/sdk/billing/arm-billing/src/billingManagementClientContext.ts @@ -10,22 +10,28 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-billing"; -const packageVersion = "3.0.0"; +const packageVersion = "3.1.0"; export class BillingManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; /** * Initializes a new instance of the BillingManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID that uniquely identifies an Azure subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.BillingManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.BillingManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/botservice/arm-botservice/README.md b/sdk/botservice/arm-botservice/README.md index 100ad8188bdd..0ee386505106 100644 --- a/sdk/botservice/arm-botservice/README.md +++ b/sdk/botservice/arm-botservice/README.md @@ -1,94 +1,103 @@ ## Azure AzureBotService SDK for JavaScript -This package contains an isomorphic SDK for AzureBotService. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureBotService. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-botservice` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-botservice +npm install --save @azure/arm-botservice @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get bots as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get bots as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AzureBotService, AzureBotServiceModels, AzureBotServiceMappers } from "@azure/arm-botservice"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AzureBotService } = require("@azure/arm-botservice"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AzureBotService(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const resourceName = "testresourceName"; - client.bots.get(resourceGroupName, resourceName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AzureBotService(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const resourceName = "testresourceName"; +client.bots.get(resourceGroupName, resourceName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get bots as an example written in JavaScript. +#### browser - Authentication, client creation, and get bots as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-botservice sample - - + diff --git a/sdk/botservice/arm-botservice/package.json b/sdk/botservice/arm-botservice/package.json index eb0922905502..b7a3d0fead4f 100644 --- a/sdk/botservice/arm-botservice/package.json +++ b/sdk/botservice/arm-botservice/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-botservice", "author": "Microsoft Corporation", "description": "AzureBotService Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/azureBotService.js", "types": "./esm/azureBotService.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/botservice/arm-botservice", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/botservice/arm-botservice", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/botservice/arm-botservice/src/azureBotService.ts b/sdk/botservice/arm-botservice/src/azureBotService.ts index f2e3696d217a..771e3e36fec4 100644 --- a/sdk/botservice/arm-botservice/src/azureBotService.ts +++ b/sdk/botservice/arm-botservice/src/azureBotService.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -25,11 +26,16 @@ class AzureBotService extends AzureBotServiceContext { /** * Initializes a new instance of the AzureBotService class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureBotServiceOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureBotServiceOptions) { super(credentials, subscriptionId, options); this.bots = new operations.Bots(this); this.channels = new operations.Channels(this); diff --git a/sdk/botservice/arm-botservice/src/azureBotServiceContext.ts b/sdk/botservice/arm-botservice/src/azureBotServiceContext.ts index ffc9d3c8d4f9..3261b8039599 100644 --- a/sdk/botservice/arm-botservice/src/azureBotServiceContext.ts +++ b/sdk/botservice/arm-botservice/src/azureBotServiceContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-botservice"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class AzureBotServiceContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AzureBotService class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureBotServiceOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureBotServiceOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/cdn/arm-cdn/README.md b/sdk/cdn/arm-cdn/README.md index 403572708c34..52e45367f756 100644 --- a/sdk/cdn/arm-cdn/README.md +++ b/sdk/cdn/arm-cdn/README.md @@ -1,90 +1,100 @@ ## Azure CdnManagementClient SDK for JavaScript -This package contains an isomorphic SDK for CdnManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for CdnManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-cdn` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-cdn +npm install --save @azure/arm-cdn @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list profiles as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list profiles as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { CdnManagementClient, CdnManagementModels, CdnManagementMappers } from "@azure/arm-cdn"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { CdnManagementClient } = require("@azure/arm-cdn"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new CdnManagementClient(creds, subscriptionId); - client.profiles.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new CdnManagementClient(creds, subscriptionId); + +client.profiles.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list profiles as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list profiles as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-cdn sample - - + diff --git a/sdk/cdn/arm-cdn/package.json b/sdk/cdn/arm-cdn/package.json index cb200703ce7e..974d18cf4424 100644 --- a/sdk/cdn/arm-cdn/package.json +++ b/sdk/cdn/arm-cdn/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-cdn", "author": "Microsoft Corporation", "description": "CdnManagementClient Library with typescript type definitions for node.js and browser.", - "version": "5.2.0", + "version": "5.3.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/cdnManagementClient.js", "types": "./esm/cdnManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cdn/arm-cdn", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cdn/arm-cdn", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cdn/arm-cdn/src/cdnManagementClient.ts b/sdk/cdn/arm-cdn/src/cdnManagementClient.ts index d2eb2d60b2d4..bb34c2fcd2af 100644 --- a/sdk/cdn/arm-cdn/src/cdnManagementClient.ts +++ b/sdk/cdn/arm-cdn/src/cdnManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as Parameters from "./models/parameters"; @@ -31,11 +32,16 @@ class CdnManagementClient extends CdnManagementClientContext { /** * Initializes a new instance of the CdnManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.CdnManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.CdnManagementClientOptions) { super(credentials, subscriptionId, options); this.profiles = new operations.Profiles(this); this.endpoints = new operations.Endpoints(this); diff --git a/sdk/cdn/arm-cdn/src/cdnManagementClientContext.ts b/sdk/cdn/arm-cdn/src/cdnManagementClientContext.ts index 9caddabff417..bca3d4ca420a 100644 --- a/sdk/cdn/arm-cdn/src/cdnManagementClientContext.ts +++ b/sdk/cdn/arm-cdn/src/cdnManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-cdn"; -const packageVersion = "5.2.0"; +const packageVersion = "5.3.0"; export class CdnManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the CdnManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.CdnManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.CdnManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/changeanalysis/arm-changeanalysis/README.md b/sdk/changeanalysis/arm-changeanalysis/README.md index 166d262ef482..ee3668c3ea89 100644 --- a/sdk/changeanalysis/arm-changeanalysis/README.md +++ b/sdk/changeanalysis/arm-changeanalysis/README.md @@ -1,91 +1,101 @@ ## Azure AzureChangeAnalysisManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AzureChangeAnalysisManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureChangeAnalysisManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-changeanalysis` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-changeanalysis +npm install --save @azure/arm-changeanalysis @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { AzureChangeAnalysisManagementClient } = require("@azure/arm-changeanalysis"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AzureChangeAnalysisManagementClient(creds, subscriptionId); - const skipToken = "testskipToken"; - client.operations.list(skipToken).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AzureChangeAnalysisManagementClient(creds, subscriptionId); +const skipToken = "testskipToken"; +client.operations.list(skipToken).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-changeanalysis sample - - + diff --git a/sdk/changeanalysis/arm-changeanalysis/package.json b/sdk/changeanalysis/arm-changeanalysis/package.json index 69961f1bdfaf..03152f03fa84 100644 --- a/sdk/changeanalysis/arm-changeanalysis/package.json +++ b/sdk/changeanalysis/arm-changeanalysis/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-changeanalysis", "author": "Microsoft Corporation", "description": "AzureChangeAnalysisManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/azureChangeAnalysisManagementClient.js", "types": "./esm/azureChangeAnalysisManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/changeanalysis/arm-changeanalysis", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/changeanalysis/arm-changeanalysis", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClient.ts b/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClient.ts index 342ec995b7e8..e3b4a848a93c 100644 --- a/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClient.ts +++ b/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +23,16 @@ class AzureChangeAnalysisManagementClient extends AzureChangeAnalysisManagementC /** * Initializes a new instance of the AzureChangeAnalysisManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureChangeAnalysisManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureChangeAnalysisManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.resourceChanges = new operations.ResourceChanges(this); diff --git a/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClientContext.ts b/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClientContext.ts index 2b91db73d014..ad921482493d 100644 --- a/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClientContext.ts +++ b/sdk/changeanalysis/arm-changeanalysis/src/azureChangeAnalysisManagementClientContext.ts @@ -9,23 +9,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-changeanalysis"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class AzureChangeAnalysisManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AzureChangeAnalysisManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureChangeAnalysisManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureChangeAnalysisManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/cognitiveservices/arm-cognitiveservices/package.json b/sdk/cognitiveservices/arm-cognitiveservices/package.json index ffc156908ced..c101efdc1aed 100644 --- a/sdk/cognitiveservices/arm-cognitiveservices/package.json +++ b/sdk/cognitiveservices/arm-cognitiveservices/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/arm-cognitiveservices", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/arm-cognitiveservices", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-anomalydetector/package.json b/sdk/cognitiveservices/cognitiveservices-anomalydetector/package.json index c0891ef951d2..efb6a15b120d 100644 --- a/sdk/cognitiveservices/cognitiveservices-anomalydetector/package.json +++ b/sdk/cognitiveservices/cognitiveservices-anomalydetector/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-anomalydetector", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-anomalydetector", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-autosuggest/package.json b/sdk/cognitiveservices/cognitiveservices-autosuggest/package.json index 0d58fffd666c..976acebcc73c 100644 --- a/sdk/cognitiveservices/cognitiveservices-autosuggest/package.json +++ b/sdk/cognitiveservices/cognitiveservices-autosuggest/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-autosuggest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-autosuggest", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-computervision/package.json b/sdk/cognitiveservices/cognitiveservices-computervision/package.json index 10d8b4b31bed..3a48403c35e7 100644 --- a/sdk/cognitiveservices/cognitiveservices-computervision/package.json +++ b/sdk/cognitiveservices/cognitiveservices-computervision/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-computervision", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-computervision", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-contentmoderator/package.json b/sdk/cognitiveservices/cognitiveservices-contentmoderator/package.json index 0aef77f8f540..cf4fa646f381 100644 --- a/sdk/cognitiveservices/cognitiveservices-contentmoderator/package.json +++ b/sdk/cognitiveservices/cognitiveservices-contentmoderator/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-contentmoderator", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-contentmoderator", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-customimagesearch/package.json b/sdk/cognitiveservices/cognitiveservices-customimagesearch/package.json index 8bc2ab8dea64..066d554a00f7 100644 --- a/sdk/cognitiveservices/cognitiveservices-customimagesearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-customimagesearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-customimagesearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-customimagesearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-customsearch/package.json b/sdk/cognitiveservices/cognitiveservices-customsearch/package.json index e191ce67d925..218286caf701 100644 --- a/sdk/cognitiveservices/cognitiveservices-customsearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-customsearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-customsearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-customsearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-customvision-prediction/package.json b/sdk/cognitiveservices/cognitiveservices-customvision-prediction/package.json index dcd65543f6c2..cbba1d4dfe78 100644 --- a/sdk/cognitiveservices/cognitiveservices-customvision-prediction/package.json +++ b/sdk/cognitiveservices/cognitiveservices-customvision-prediction/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-customvision-prediction", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-customvision-prediction", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-customvision-training/package.json b/sdk/cognitiveservices/cognitiveservices-customvision-training/package.json index 66c6ad641c5c..58cf76f30ecd 100644 --- a/sdk/cognitiveservices/cognitiveservices-customvision-training/package.json +++ b/sdk/cognitiveservices/cognitiveservices-customvision-training/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-customvision-training", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-customvision-training", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-entitysearch/package.json b/sdk/cognitiveservices/cognitiveservices-entitysearch/package.json index e324260e2973..2d9d1764f19f 100644 --- a/sdk/cognitiveservices/cognitiveservices-entitysearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-entitysearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-entitysearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-entitysearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-face/package.json b/sdk/cognitiveservices/cognitiveservices-face/package.json index 6631272aa7a0..4b07761a3a37 100644 --- a/sdk/cognitiveservices/cognitiveservices-face/package.json +++ b/sdk/cognitiveservices/cognitiveservices-face/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-face", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-face", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-formrecognizer/package.json b/sdk/cognitiveservices/cognitiveservices-formrecognizer/package.json index 25dfecfceaeb..df3be6d87f2b 100644 --- a/sdk/cognitiveservices/cognitiveservices-formrecognizer/package.json +++ b/sdk/cognitiveservices/cognitiveservices-formrecognizer/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-formrecognizer", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-formrecognizer", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-imagesearch/package.json b/sdk/cognitiveservices/cognitiveservices-imagesearch/package.json index fc7427781dae..256c62b713c9 100644 --- a/sdk/cognitiveservices/cognitiveservices-imagesearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-imagesearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-imagesearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-imagesearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-localsearch/package.json b/sdk/cognitiveservices/cognitiveservices-localsearch/package.json index be454f87f6ca..db6d5485912b 100644 --- a/sdk/cognitiveservices/cognitiveservices-localsearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-localsearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-localsearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-localsearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-luis-authoring/package.json b/sdk/cognitiveservices/cognitiveservices-luis-authoring/package.json index 2b60b1d3f516..90a8146c7d0c 100644 --- a/sdk/cognitiveservices/cognitiveservices-luis-authoring/package.json +++ b/sdk/cognitiveservices/cognitiveservices-luis-authoring/package.json @@ -32,7 +32,7 @@ "uglify-js": "^3.4.9", "ts-mocha": "^6.0.0" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-luis-authoring", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-luis-authoring", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-luis-runtime/package.json b/sdk/cognitiveservices/cognitiveservices-luis-runtime/package.json index d394f542e15c..e4eb77017855 100644 --- a/sdk/cognitiveservices/cognitiveservices-luis-runtime/package.json +++ b/sdk/cognitiveservices/cognitiveservices-luis-runtime/package.json @@ -32,7 +32,7 @@ "uglify-js": "^3.4.9", "ts-mocha": "^6.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-luis-runtime", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-luis-runtime", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-newssearch/package.json b/sdk/cognitiveservices/cognitiveservices-newssearch/package.json index 380757cf1508..f20ee4a82f65 100644 --- a/sdk/cognitiveservices/cognitiveservices-newssearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-newssearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-newssearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-newssearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-personalizer/package.json b/sdk/cognitiveservices/cognitiveservices-personalizer/package.json index 68f5f2f45ddc..c739e09a553e 100644 --- a/sdk/cognitiveservices/cognitiveservices-personalizer/package.json +++ b/sdk/cognitiveservices/cognitiveservices-personalizer/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-personalizer", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-personalizer", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-qnamaker-runtime/package.json b/sdk/cognitiveservices/cognitiveservices-qnamaker-runtime/package.json index d553650cfa52..927bf66fb616 100644 --- a/sdk/cognitiveservices/cognitiveservices-qnamaker-runtime/package.json +++ b/sdk/cognitiveservices/cognitiveservices-qnamaker-runtime/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-qnamaker-runtime", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-qnamaker-runtime", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-qnamaker/package.json b/sdk/cognitiveservices/cognitiveservices-qnamaker/package.json index 488f10f02e93..ed8b2d9aef5b 100644 --- a/sdk/cognitiveservices/cognitiveservices-qnamaker/package.json +++ b/sdk/cognitiveservices/cognitiveservices-qnamaker/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-qnamaker", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-qnamaker", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-spellcheck/package.json b/sdk/cognitiveservices/cognitiveservices-spellcheck/package.json index 3279e0074adf..4a9d85c55419 100644 --- a/sdk/cognitiveservices/cognitiveservices-spellcheck/package.json +++ b/sdk/cognitiveservices/cognitiveservices-spellcheck/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-spellcheck", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-spellcheck", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-textanalytics/package.json b/sdk/cognitiveservices/cognitiveservices-textanalytics/package.json index 1347d017cff5..60835635f5e0 100644 --- a/sdk/cognitiveservices/cognitiveservices-textanalytics/package.json +++ b/sdk/cognitiveservices/cognitiveservices-textanalytics/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-textanalytics", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-textanalytics", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-translatortext/package.json b/sdk/cognitiveservices/cognitiveservices-translatortext/package.json index ede6d790ac72..6dc20f94e3c7 100644 --- a/sdk/cognitiveservices/cognitiveservices-translatortext/package.json +++ b/sdk/cognitiveservices/cognitiveservices-translatortext/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-translatortext", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-translatortext", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-videosearch/package.json b/sdk/cognitiveservices/cognitiveservices-videosearch/package.json index d9516a583a78..8efb1548ff05 100644 --- a/sdk/cognitiveservices/cognitiveservices-videosearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-videosearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-videosearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-videosearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-visualsearch/package.json b/sdk/cognitiveservices/cognitiveservices-visualsearch/package.json index 052c5972ddaf..42f4d9171b53 100644 --- a/sdk/cognitiveservices/cognitiveservices-visualsearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-visualsearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-visualsearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-visualsearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cognitiveservices/cognitiveservices-websearch/package.json b/sdk/cognitiveservices/cognitiveservices-websearch/package.json index 8294d316b8a6..92cb4dd1d866 100644 --- a/sdk/cognitiveservices/cognitiveservices-websearch/package.json +++ b/sdk/cognitiveservices/cognitiveservices-websearch/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-websearch", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cognitiveservices/cognitiveservices-websearch", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/README.md b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/README.md index e719b827a97c..52b700638226 100644 --- a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/README.md +++ b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/README.md @@ -1,100 +1,109 @@ ## Azure UsageManagementClient SDK for JavaScript -This package contains an isomorphic SDK for UsageManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for UsageManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-commerce-profile-2020-09-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-commerce-profile-2020-09-01-hybrid +npm install --save @azure/arm-commerce-profile-2020-09-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list usageAggregates as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list usageAggregates as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { UsageManagementClient, UsageManagementModels, UsageManagementMappers } from "@azure/arm-commerce-profile-2020-09-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { UsageManagementClient } = require("@azure/arm-commerce-profile-2020-09-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new UsageManagementClient(creds, subscriptionId); - const reportedStartTime = new Date().toISOString(); - const reportedEndTime = new Date().toISOString(); - const showDetails = true; - const aggregationGranularity = "Daily"; - const continuationToken = "testcontinuationToken"; - client.usageAggregates.list(reportedStartTime, reportedEndTime, showDetails, aggregationGranularity, continuationToken).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new UsageManagementClient(creds, subscriptionId); +const reportedStartTime = new Date().toISOString(); +const reportedEndTime = new Date().toISOString(); +const showDetails = true; +const aggregationGranularity = "Daily"; +const continuationToken = "testcontinuationToken"; +client.usageAggregates.list(reportedStartTime, reportedEndTime, showDetails, aggregationGranularity, continuationToken).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list usageAggregates as an example written in JavaScript. +#### browser - Authentication, client creation, and list usageAggregates as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-commerce-profile-2020-09-01-hybrid sample - - + diff --git a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/package.json b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/package.json index 10e0e9e4a945..ef7d4986acd6 100644 --- a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/package.json +++ b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-commerce-profile-2020-09-01-hybrid", "author": "Microsoft Corporation", "description": "UsageManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/usageManagementClient.js", "types": "./esm/usageManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClient.ts b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClient.ts index 14140e6bff74..dcd1922bb0cd 100644 --- a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClient.ts +++ b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,12 +23,17 @@ class UsageManagementClient extends UsageManagementClientContext { /** * Initializes a new instance of the UsageManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId It uniquely identifies Microsoft Azure subscription. The subscription ID * forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.UsageManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.UsageManagementClientOptions) { super(credentials, subscriptionId, options); this.usageAggregates = new operations.UsageAggregates(this); this.rateCard = new operations.RateCard(this); diff --git a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClientContext.ts b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClientContext.ts index f1b3432104d8..3ce8b7086378 100644 --- a/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClientContext.ts +++ b/sdk/commerce/arm-commerce-profile-2020-09-01-hybrid/src/usageManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-commerce-profile-2020-09-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class UsageManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the UsageManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId It uniquely identifies Microsoft Azure subscription. The subscription ID * forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.UsageManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.UsageManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/commerce/arm-commerce/README.md b/sdk/commerce/arm-commerce/README.md index 328e15132f6a..1179d4d83ce4 100644 --- a/sdk/commerce/arm-commerce/README.md +++ b/sdk/commerce/arm-commerce/README.md @@ -1,99 +1,109 @@ ## Azure UsageManagementClient SDK for JavaScript -This package contains an isomorphic SDK for UsageManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for UsageManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-commerce` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-commerce +npm install --save @azure/arm-commerce @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list usageAggregates as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list usageAggregates as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { UsageManagementClient, UsageManagementModels, UsageManagementMappers } from "@azure/arm-commerce"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { UsageManagementClient } = require("@azure/arm-commerce"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new UsageManagementClient(creds, subscriptionId); - const reportedStartTime = new Date().toISOString(); - const reportedEndTime = new Date().toISOString(); - const showDetails = true; - const aggregationGranularity = "Daily"; - const continuationToken = "testcontinuationToken"; - client.usageAggregates.list(reportedStartTime, reportedEndTime, showDetails, aggregationGranularity, continuationToken).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new UsageManagementClient(creds, subscriptionId); +const reportedStartTime = new Date().toISOString(); +const reportedEndTime = new Date().toISOString(); +const showDetails = true; +const aggregationGranularity = "Daily"; +const continuationToken = "testcontinuationToken"; +client.usageAggregates.list(reportedStartTime, reportedEndTime, showDetails, aggregationGranularity, continuationToken).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list usageAggregates as an example written in JavaScript. +#### browser - Authentication, client creation, and list usageAggregates as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-commerce sample - - + @@ -105,5 +115,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcommerce%2Farm-commerce%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/commerce/arm-commerce/README.png) diff --git a/sdk/commerce/arm-commerce/package.json b/sdk/commerce/arm-commerce/package.json index d626b9efb1f8..35bab095144f 100644 --- a/sdk/commerce/arm-commerce/package.json +++ b/sdk/commerce/arm-commerce/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-commerce", "author": "Microsoft Corporation", "description": "UsageManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.1.1", + "version": "2.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.2.0", - "@azure/ms-rest-js": "^1.2.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/usageManagementClient.js", "types": "./esm/usageManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/commerce/arm-commerce", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/commerce/arm-commerce", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/commerce/arm-commerce/src/usageManagementClient.ts b/sdk/commerce/arm-commerce/src/usageManagementClient.ts index 14140e6bff74..dcd1922bb0cd 100644 --- a/sdk/commerce/arm-commerce/src/usageManagementClient.ts +++ b/sdk/commerce/arm-commerce/src/usageManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,12 +23,17 @@ class UsageManagementClient extends UsageManagementClientContext { /** * Initializes a new instance of the UsageManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId It uniquely identifies Microsoft Azure subscription. The subscription ID * forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.UsageManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.UsageManagementClientOptions) { super(credentials, subscriptionId, options); this.usageAggregates = new operations.UsageAggregates(this); this.rateCard = new operations.RateCard(this); diff --git a/sdk/commerce/arm-commerce/src/usageManagementClientContext.ts b/sdk/commerce/arm-commerce/src/usageManagementClientContext.ts index f2995a21ee7e..5e9e2eca1fbc 100644 --- a/sdk/commerce/arm-commerce/src/usageManagementClientContext.ts +++ b/sdk/commerce/arm-commerce/src/usageManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-commerce"; -const packageVersion = "2.1.1"; +const packageVersion = "2.2.0"; export class UsageManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the UsageManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId It uniquely identifies Microsoft Azure subscription. The subscription ID * forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.UsageManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.UsageManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/communication/CONTRIBUTING.md b/sdk/communication/CONTRIBUTING.md index bfd1065f8ef2..214c20118d1f 100644 --- a/sdk/communication/CONTRIBUTING.md +++ b/sdk/communication/CONTRIBUTING.md @@ -1,6 +1,6 @@ # Contributing Guide -This a contributing guide made specifically for the Azure Communication Services SDK. The Azure SDK repo also has a contributing guide that might help you in some other general processes this guide assumes you have done. If you haven't checked that one out yet, you can find it [here](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) +This a contributing guide made specifically for the Azure Communication Services SDK. The Azure SDK repo also has a contributing guide that might help you in some other general processes this guide assumes you have done. If you haven't checked that one out yet, you can find it [here](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) The Azure Communication Services SDK for JS currently consists of six different packages. While each package has its own set of environment variables to make their tests run successfully, all of them follow a similar structure that allows a smooth onboarding process. @@ -14,7 +14,7 @@ Once the package has been built, let's jump on how to run the tests to see that ## Testing -Make sure to check out the general contributing guide the Azure SDK repo has for a more in-depth look at testing and setting up your dev environment. You can check out the contributing file [here](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) +Make sure to check out the general contributing guide the Azure SDK repo has for a more in-depth look at testing and setting up your dev environment. You can check out the contributing file [here](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) When you go inside the package you are working with, you will see folders called `recordings\browsers` and `recordings\node`. In JS we performs tests in the node and browser environments. Each folder contains, as its name suggests, recordings of successful calls to the API that allow us to run the tests in PLAYBACK mode and remove the necessity of hitting the actual resources every time we may want to test. diff --git a/sdk/communication/arm-communication/README.md b/sdk/communication/arm-communication/README.md index 6de5fb8a12ba..15ddebb729bf 100644 --- a/sdk/communication/arm-communication/README.md +++ b/sdk/communication/arm-communication/README.md @@ -1,89 +1,100 @@ ## Azure CommunicationServiceManagementClient SDK for JavaScript -This package contains an isomorphic SDK for CommunicationServiceManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for CommunicationServiceManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-communication` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-communication +npm install --save @azure/arm-communication @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { CommunicationServiceManagementClient } = require("@azure/arm-communication"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new CommunicationServiceManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new CommunicationServiceManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-communication sample - - + diff --git a/sdk/communication/arm-communication/package.json b/sdk/communication/arm-communication/package.json index e2098d0bff19..fa5034a17b65 100644 --- a/sdk/communication/arm-communication/package.json +++ b/sdk/communication/arm-communication/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-communication", "author": "Microsoft Corporation", "description": "CommunicationServiceManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/communicationServiceManagementClient.js", "types": "./esm/communicationServiceManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/arm-communication", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/arm-communication", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/communication/arm-communication/src/communicationServiceManagementClient.ts b/sdk/communication/arm-communication/src/communicationServiceManagementClient.ts index 4e5cad89ba86..fc437ea41185 100644 --- a/sdk/communication/arm-communication/src/communicationServiceManagementClient.ts +++ b/sdk/communication/arm-communication/src/communicationServiceManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +23,16 @@ class CommunicationServiceManagementClient extends CommunicationServiceManagemen /** * Initializes a new instance of the CommunicationServiceManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.CommunicationServiceManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.CommunicationServiceManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.communicationService = new operations.CommunicationService(this); diff --git a/sdk/communication/arm-communication/src/communicationServiceManagementClientContext.ts b/sdk/communication/arm-communication/src/communicationServiceManagementClientContext.ts index ffb1a34ea68c..ff2a71850cb3 100644 --- a/sdk/communication/arm-communication/src/communicationServiceManagementClientContext.ts +++ b/sdk/communication/arm-communication/src/communicationServiceManagementClientContext.ts @@ -9,23 +9,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-communication"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class CommunicationServiceManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the CommunicationServiceManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.CommunicationServiceManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.CommunicationServiceManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/communication/ci.yml b/sdk/communication/ci.yml index f62e3e673b13..0a47278faf45 100644 --- a/sdk/communication/ci.yml +++ b/sdk/communication/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/communication/communication-chat/README.md b/sdk/communication/communication-chat/README.md index 1dc60cfc2a49..ff9d9abfd39d 100644 --- a/sdk/communication/communication-chat/README.md +++ b/sdk/communication/communication-chat/README.md @@ -210,7 +210,7 @@ In this quickstart you learned how to: ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. [azure_cli]: https://docs.microsoft.com/cli/azure [azure_sub]: https://azure.microsoft.com/free/ diff --git a/sdk/communication/communication-chat/package.json b/sdk/communication/communication-chat/package.json index 2c68cb6223fa..cf43a25914f2 100644 --- a/sdk/communication/communication-chat/package.json +++ b/sdk/communication/communication-chat/package.json @@ -60,7 +60,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-chat/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-chat/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { @@ -69,7 +69,7 @@ "@azure/communication-signaling": "1.0.0-beta.5", "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0", diff --git a/sdk/communication/communication-chat/samples/v1/javascript/README.md b/sdk/communication/communication-chat/samples/v1/javascript/README.md index 172861330365..08c3f33c8780 100644 --- a/sdk/communication/communication-chat/samples/v1/javascript/README.md +++ b/sdk/communication/communication-chat/samples/v1/javascript/README.md @@ -58,10 +58,10 @@ npx cross-env COMMUNICATION_CONNECTION_STRING=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[messageoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-chat/samples/v1/javascript/messageOperations.js -[participantsoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-chat/samples/v1/javascript/participantsOperations.js -[threadoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-chat/samples/v1/javascript/threadOperations.js +[messageoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-chat/samples/v1/javascript/messageOperations.js +[participantsoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-chat/samples/v1/javascript/participantsOperations.js +[threadoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-chat/samples/v1/javascript/threadOperations.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/communication-chat [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecommunicationservicesaccount]: https://docs.microsoft.com/azure/communication-services/quickstarts/create-communication-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-chat/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-chat/README.md diff --git a/sdk/communication/communication-chat/samples/v1/javascript/package.json b/sdk/communication/communication-chat/samples/v1/javascript/package.json index 71582936a58a..29ab8188f8d7 100644 --- a/sdk/communication/communication-chat/samples/v1/javascript/package.json +++ b/sdk/communication/communication-chat/samples/v1/javascript/package.json @@ -23,7 +23,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-chat", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-chat", "dependencies": { "@azure/communication-chat": "next", "dotenv": "latest", diff --git a/sdk/communication/communication-chat/samples/v1/typescript/README.md b/sdk/communication/communication-chat/samples/v1/typescript/README.md index 9494d2d90ff6..7c572fa10950 100644 --- a/sdk/communication/communication-chat/samples/v1/typescript/README.md +++ b/sdk/communication/communication-chat/samples/v1/typescript/README.md @@ -70,11 +70,11 @@ npx cross-env COMMUNICATION_CONNECTION_STRING=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[messageoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-chat/samples/v1/typescript/src/messageOperations.ts -[participantsoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-chat/samples/v1/typescript/src/participantsOperations.ts -[threadoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-chat/samples/v1/typescript/src/threadOperations.ts +[messageoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-chat/samples/v1/typescript/src/messageOperations.ts +[participantsoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-chat/samples/v1/typescript/src/participantsOperations.ts +[threadoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-chat/samples/v1/typescript/src/threadOperations.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/communication-chat [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecommunicationservicesaccount]: https://docs.microsoft.com/azure/communication-services/quickstarts/create-communication-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-chat/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-chat/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/communication/communication-chat/samples/v1/typescript/package.json b/sdk/communication/communication-chat/samples/v1/typescript/package.json index 2aa74539c518..6abd1dca2e44 100644 --- a/sdk/communication/communication-chat/samples/v1/typescript/package.json +++ b/sdk/communication/communication-chat/samples/v1/typescript/package.json @@ -27,7 +27,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-chat", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-chat", "dependencies": { "@azure/communication-chat": "next", "dotenv": "latest", diff --git a/sdk/communication/communication-chat/test/README.md b/sdk/communication/communication-chat/test/README.md index 35b1db21c2bc..7cd2975b0a46 100644 --- a/sdk/communication/communication-chat/test/README.md +++ b/sdk/communication/communication-chat/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/textanalytics/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/textanalytics/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/communication/communication-common/README.md b/sdk/communication/communication-common/README.md index 64b4c30776e5..f70f5aa82360 100644 --- a/sdk/communication/communication-common/README.md +++ b/sdk/communication/communication-common/README.md @@ -83,7 +83,7 @@ const tokenCredential = new AzureCommunicationTokenCredential({ ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects diff --git a/sdk/communication/communication-common/package.json b/sdk/communication/communication-common/package.json index 63a61506ce99..954c77594af7 100644 --- a/sdk/communication/communication-common/package.json +++ b/sdk/communication/communication-common/package.json @@ -59,14 +59,14 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-common/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-common/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { "@azure/abort-controller": "^1.0.0", "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "events": "^3.0.0", "jwt-decode": "~2.2.0", "tslib": "^2.2.0" diff --git a/sdk/communication/communication-common/src/credential/communicationAccessKeyCredentialPolicy.ts b/sdk/communication/communication-common/src/credential/communicationAccessKeyCredentialPolicy.ts index 502017abec82..1e28dae030b0 100644 --- a/sdk/communication/communication-common/src/credential/communicationAccessKeyCredentialPolicy.ts +++ b/sdk/communication/communication-common/src/credential/communicationAccessKeyCredentialPolicy.ts @@ -58,7 +58,7 @@ class CommunicationAccessKeyCredentialPolicy extends BaseRequestPolicy { const verb = webResource.method.toUpperCase(); const utcNow = new Date().toUTCString(); const contentHash = await shaHash(webResource.body || ""); - const dateHeader = isNode ? "date" : "x-ms-date"; + const dateHeader = "x-ms-date"; const signedHeaders = `${dateHeader};host;x-ms-content-sha256`; const url = URLBuilder.parse(webResource.url); diff --git a/sdk/communication/communication-identity/CHANGELOG.md b/sdk/communication/communication-identity/CHANGELOG.md index 9316871c978c..75d0d63ce86e 100644 --- a/sdk/communication/communication-identity/CHANGELOG.md +++ b/sdk/communication/communication-identity/CHANGELOG.md @@ -16,7 +16,7 @@ - `CommunicationIdentityClient` method `createUserWithToken` renamed to `createUserAndToken`. - Renamed `CommunicationIdentityOptions` to `CommunicationIdentityClientOptions`. - Removed `_response` from returned models. -- Removed `dist-browser` from the output folders. To bundle the Azure SDK libraries, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md). +- Removed `dist-browser` from the output folders. To bundle the Azure SDK libraries, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md). ## 1.0.0-beta.4 (2021-02-09) diff --git a/sdk/communication/communication-identity/README.md b/sdk/communication/communication-identity/README.md index a6f0303c15a7..813cb434ace4 100644 --- a/sdk/communication/communication-identity/README.md +++ b/sdk/communication/communication-identity/README.md @@ -128,12 +128,12 @@ await client.deleteUser(user); ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-identity/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-identity/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects diff --git a/sdk/communication/communication-identity/package.json b/sdk/communication/communication-identity/package.json index 8cbfa80e95de..f8dd78cee1ff 100644 --- a/sdk/communication/communication-identity/package.json +++ b/sdk/communication/communication-identity/package.json @@ -65,7 +65,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-identity/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-identity/", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -79,7 +79,7 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" diff --git a/sdk/communication/communication-identity/samples/v1/javascript/README.md b/sdk/communication/communication-identity/samples/v1/javascript/README.md index 16141c78bcda..8f5c4b9bc73a 100644 --- a/sdk/communication/communication-identity/samples/v1/javascript/README.md +++ b/sdk/communication/communication-identity/samples/v1/javascript/README.md @@ -57,9 +57,9 @@ npx cross-env COMMUNICATION_CONNECTION_STRING=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[issuetoken]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-identity/samples/v1/javascript/issueToken.js -[revoketokens]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-identity/samples/v1/javascript/revokeTokens.js +[issuetoken]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-identity/samples/v1/javascript/issueToken.js +[revoketokens]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-identity/samples/v1/javascript/revokeTokens.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/communication-identity [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecommunicationservicesaccount]: https://docs.microsoft.com/azure/communication-services/quickstarts/create-communication-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-identity/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-identity/README.md diff --git a/sdk/communication/communication-identity/samples/v1/javascript/package.json b/sdk/communication/communication-identity/samples/v1/javascript/package.json index 9ed618e10cae..aa83fa0959d6 100644 --- a/sdk/communication/communication-identity/samples/v1/javascript/package.json +++ b/sdk/communication/communication-identity/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-identity", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-identity", "dependencies": { "@azure/communication-identity": "latest", "dotenv": "latest" diff --git a/sdk/communication/communication-identity/samples/v1/typescript/README.md b/sdk/communication/communication-identity/samples/v1/typescript/README.md index 72b0d5110f2b..0907873cfe06 100644 --- a/sdk/communication/communication-identity/samples/v1/typescript/README.md +++ b/sdk/communication/communication-identity/samples/v1/typescript/README.md @@ -69,10 +69,10 @@ npx cross-env COMMUNICATION_CONNECTION_STRING=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[issuetoken]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-identity/samples/v1/typescript/src/issueToken.ts -[revoketokens]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-identity/samples/v1/typescript/src/revokeTokens.ts +[issuetoken]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-identity/samples/v1/typescript/src/issueToken.ts +[revoketokens]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-identity/samples/v1/typescript/src/revokeTokens.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/communication-identity [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecommunicationservicesaccount]: https://docs.microsoft.com/azure/communication-services/quickstarts/create-communication-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-identity/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-identity/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/communication/communication-identity/samples/v1/typescript/package.json b/sdk/communication/communication-identity/samples/v1/typescript/package.json index 568bf0d5b2ee..4a3936d52c92 100644 --- a/sdk/communication/communication-identity/samples/v1/typescript/package.json +++ b/sdk/communication/communication-identity/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-identity", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-identity", "dependencies": { "@azure/communication-identity": "latest", "dotenv": "latest" diff --git a/sdk/communication/communication-identity/test/README.md b/sdk/communication/communication-identity/test/README.md index 3ca452868bf3..f3a54253ada2 100644 --- a/sdk/communication/communication-identity/test/README.md +++ b/sdk/communication/communication-identity/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts b/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts index a83e1412484d..4817709b686d 100644 --- a/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts +++ b/sdk/communication/communication-identity/test/public/communicationIdentityClient.mocked.spec.ts @@ -13,7 +13,7 @@ import { TestCommunicationIdentityClient } from "./utils/testCommunicationIdenti import { exchangeTeamsTokenHttpClient, getTokenHttpClient } from "./utils/mockHttpClients"; describe("CommunicationIdentityClient [Mocked]", () => { - const dateHeader = isNode ? "date" : "x-ms-date"; + const dateHeader = "x-ms-date"; const user: CommunicationUserIdentifier = { communicationUserId: "ACS_ID" }; afterEach(() => { diff --git a/sdk/communication/communication-network-traversal/README.md b/sdk/communication/communication-network-traversal/README.md index 0d65736ee0fd..1aa5c5fc7e3d 100644 --- a/sdk/communication/communication-network-traversal/README.md +++ b/sdk/communication/communication-network-traversal/README.md @@ -100,7 +100,7 @@ const config = relayClient.getRelayConfiguration(user); ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects diff --git a/sdk/communication/communication-network-traversal/package.json b/sdk/communication/communication-network-traversal/package.json index c6ebebe4e203..6b46cbb27c3a 100644 --- a/sdk/communication/communication-network-traversal/package.json +++ b/sdk/communication/communication-network-traversal/package.json @@ -65,7 +65,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -77,7 +77,7 @@ "@azure/communication-common": "^1.0.0", "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" diff --git a/sdk/communication/communication-network-traversal/samples/v1/javascript/README.md b/sdk/communication/communication-network-traversal/samples/v1/javascript/README.md index acf32639d94b..63ce16a26644 100644 --- a/sdk/communication/communication-network-traversal/samples/v1/javascript/README.md +++ b/sdk/communication/communication-network-traversal/samples/v1/javascript/README.md @@ -56,7 +56,7 @@ npx cross-env COMMUNICATION_CONNECTION_STRING=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[getrelayconfiguration]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-network-traversal/samples/v1/javascript/getRelayConfiguration.js +[getrelayconfiguration]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-network-traversal/samples/v1/javascript/getRelayConfiguration.js [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecommunicationservicesaccount]: https://docs.microsoft.com/azure/communication-services/quickstarts/create-communication-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-network-traversal/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-network-traversal/README.md diff --git a/sdk/communication/communication-network-traversal/samples/v1/javascript/package.json b/sdk/communication/communication-network-traversal/samples/v1/javascript/package.json index 109c87e86a32..489c56749ce9 100644 --- a/sdk/communication/communication-network-traversal/samples/v1/javascript/package.json +++ b/sdk/communication/communication-network-traversal/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-network-traversal", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-network-traversal", "dependencies": { "@azure/communication-network-traversal": "next", "dotenv": "latest", diff --git a/sdk/communication/communication-network-traversal/samples/v1/typescript/README.md b/sdk/communication/communication-network-traversal/samples/v1/typescript/README.md index 9b12efeda733..90dc52e10b4d 100644 --- a/sdk/communication/communication-network-traversal/samples/v1/typescript/README.md +++ b/sdk/communication/communication-network-traversal/samples/v1/typescript/README.md @@ -68,8 +68,8 @@ npx cross-env COMMUNICATION_CONNECTION_STRING=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[getrelayconfiguration]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-network-traversal/samples/v1/typescript/src/getRelayConfiguration.ts +[getrelayconfiguration]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-network-traversal/samples/v1/typescript/src/getRelayConfiguration.ts [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecommunicationservicesaccount]: https://docs.microsoft.com/azure/communication-services/quickstarts/create-communication-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-network-traversal/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-network-traversal/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/communication/communication-network-traversal/samples/v1/typescript/package.json b/sdk/communication/communication-network-traversal/samples/v1/typescript/package.json index 3e3384849db7..b7c6d4d5db8e 100644 --- a/sdk/communication/communication-network-traversal/samples/v1/typescript/package.json +++ b/sdk/communication/communication-network-traversal/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-network-traversal", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-network-traversal", "dependencies": { "@azure/communication-network-traversal": "next", "dotenv": "latest", diff --git a/sdk/communication/communication-network-traversal/test/README.md b/sdk/communication/communication-network-traversal/test/README.md index 3ca452868bf3..f3a54253ada2 100644 --- a/sdk/communication/communication-network-traversal/test/README.md +++ b/sdk/communication/communication-network-traversal/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/communication/communication-phone-numbers/CHANGELOG.md b/sdk/communication/communication-phone-numbers/CHANGELOG.md index fa064c2c5808..5eeb301330ed 100644 --- a/sdk/communication/communication-phone-numbers/CHANGELOG.md +++ b/sdk/communication/communication-phone-numbers/CHANGELOG.md @@ -21,4 +21,4 @@ The Azure Communication Phone Numbers Client library contains code which facilit ### Breaking Changes -- Removed `dist-browser` from the output folders. To bundle the Azure SDK libraries, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md) +- Removed `dist-browser` from the output folders. To bundle the Azure SDK libraries, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md) diff --git a/sdk/communication/communication-phone-numbers/README.md b/sdk/communication/communication-phone-numbers/README.md index dd15d727723e..dc4db5adcc43 100644 --- a/sdk/communication/communication-phone-numbers/README.md +++ b/sdk/communication/communication-phone-numbers/README.md @@ -291,12 +291,12 @@ main(); ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/communication/communication-phone-numbers/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/communication/communication-phone-numbers/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -306,8 +306,8 @@ If you'd like to contribute to this library, please read the [contributing guide [azure_sub]: https://azure.microsoft.com/free/ [azure_portal]: https://portal.azure.com [azure_powershell]: https://docs.microsoft.com/powershell/module/az.communication/new-azcommunicationservice -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity -[azure_identity_readme]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity +[azure_identity_readme]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcommunication%2Fcommunication-phone-numbers%2FREADME.png) diff --git a/sdk/communication/communication-phone-numbers/package.json b/sdk/communication/communication-phone-numbers/package.json index 4c4d7611e0ed..dd384db1e6d2 100644 --- a/sdk/communication/communication-phone-numbers/package.json +++ b/sdk/communication/communication-phone-numbers/package.json @@ -53,7 +53,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-phone-numbers/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-phone-numbers/", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -67,7 +67,7 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.json index 46ae9f72f3a4..eed58ef6f638 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.json @@ -8,17 +8,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", + "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:17 GMT", - "ms-cv": "6ChZTTXvHEeRtFNpl7OP3w.0", + "date": "Fri, 18 Jun 2021 16:38:55 GMT", + "ms-cv": "R4GWZrAg1UCUw0Vf0xqNBw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0nFy2YAAAAAAGsRbCOzR3R5TAhHzDcrp5WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0H8zMYAAAAADvV2KoWrgAR5NAw11afSD9WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1074ms" + "x-processing-time": "1105ms" } } ], @@ -26,5 +26,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "9b48c99747b8d694d1693146c9f46244" + "hash": "6ae4c43f2e4aa30856ac043ba5656ee5" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.json index 292b25d5e716..7095aa78f56a 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.json @@ -8,17 +8,17 @@ }, "requestBody": null, "status": 404, - "response": "{\"error\":{\"code\":\"PhoneNumberNotFound\",\"message\":\"The specified phone number +14155550100 cannot be found.\",\"target\":\"phonenumber\"}}", + "response": "{\"error\":{\"code\":\"NotFound\",\"message\":\"Input phoneNumber +14155550100 cannot be found.\",\"target\":\"phonenumber\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json", - "date": "Tue, 01 Jun 2021 16:13:18 GMT", - "ms-cv": "2r+SvqDDbEi2+zhSjnrAWw.0", + "date": "Fri, 18 Jun 2021 16:38:56 GMT", + "ms-cv": "9bMvqBAnQkejBpqaGzO5Sw.0", "request-context": "appId=", "status": "404", - "x-azure-ref": "0nVy2YAAAAAB1mBqGyi+VT6YBwebKoRwJWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0IMzMYAAAAAAysZHi4x8YR63Eg1oivYSlWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "952ms" + "x-processing-time": "375ms" } } ], @@ -26,5 +26,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "90e064cb005516c2fa1918bdcded2120" + "hash": "6f59980391ba29cbfe24ed7a38b9500d" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.json index c0f4b523411d..25096db9b3df 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.json @@ -4,23 +4,23 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:10 GMT", + "date": "Fri, 18 Jun 2021 16:38:52 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+est\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - NCUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - WUS2 ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -32,17 +32,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", + "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:15 GMT", - "ms-cv": "UoiZEntyqU+5422iYmwaJw.0", + "date": "Fri, 18 Jun 2021 16:38:53 GMT", + "ms-cv": "X7KoivmRI0ORvOvQiRe5Yw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0lly2YAAAAACjlj+c38MrR56259OJBCz9WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0HczMYAAAAADurcVbQQZMT6IQ1w5A9EM3WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "4870ms" + "x-processing-time": "1050ms" } } ], @@ -50,5 +50,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "9b48c99747b8d694d1693146c9f46244" + "hash": "6ae4c43f2e4aa30856ac043ba5656ee5" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.json index 10b783aa51e1..1bf17e39b33d 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.json @@ -4,23 +4,23 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:15 GMT", + "date": "Fri, 18 Jun 2021 16:38:54 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+est\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - SCUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - WUS2 ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -32,17 +32,17 @@ }, "requestBody": null, "status": 404, - "response": "{\"error\":{\"code\":\"PhoneNumberNotFound\",\"message\":\"The specified phone number +14155550100 cannot be found.\",\"target\":\"phonenumber\"}}", + "response": "{\"error\":{\"code\":\"NotFound\",\"message\":\"Input phoneNumber +14155550100 cannot be found.\",\"target\":\"phonenumber\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json", - "date": "Tue, 01 Jun 2021 16:13:16 GMT", - "ms-cv": "dry4h3yhHkSyYFJ+91SzcQ.0", + "date": "Fri, 18 Jun 2021 16:38:54 GMT", + "ms-cv": "RJENxzbm60KRcH6zKkveOQ.0", "request-context": "appId=", "status": "404", - "x-azure-ref": "0nFy2YAAAAACWQNDhSRKpSrTiqZ4jEkq5WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0HszMYAAAAABTQe7SBlVDQrRXkRelezQPWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "452ms" + "x-processing-time": "343ms" } } ], @@ -50,5 +50,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "90e064cb005516c2fa1918bdcded2120" + "hash": "6f59980391ba29cbfe24ed7a38b9500d" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.json index 9c80c0277f1a..f42666e8f8c0 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.json @@ -9,17 +9,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"phoneNumbers\":[{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"inbound+outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-14T00:23:52.1861991+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-06T23:27:52.858607+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-25T00:03:06.2985305+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-24T23:39:11.2079613+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-26T23:18:22.4715623+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-27T03:05:50.816041+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T17:52:41.818335+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T18:01:46.4199999+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2000-01-01T00:00:00+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}]}", + "response": "{\"phoneNumbers\":[{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"inbound+outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-14T00:23:52.1861991+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-06T23:27:52.858607+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-25T00:03:06.2985305+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-24T23:39:11.2079613+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-26T23:18:22.4715623+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-27T03:05:50.816041+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T17:52:41.818335+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T18:01:46.4199999+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2000-01-01T00:00:00+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}]}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:22 GMT", - "ms-cv": "UTybx4M+kU60+C+v6I4S8A.0", + "date": "Fri, 18 Jun 2021 16:38:59 GMT", + "ms-cv": "ev0eI8vIb02Mw9Bk1YS5Wg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0oFy2YAAAAADZn/nxyhIKRKhGg11jftIDWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0IszMYAAAAABZJmgvc8ANT4lgye/4RsscWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1394ms" + "x-processing-time": "1582ms" } } ], @@ -27,5 +27,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "b5b5bc3aa53df9cf7b960ec1c7c85595" + "hash": "eca17e433a83b791fc096978816d8e48" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.json index c603d598e8bd..a3c0e27c1d7f 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.json @@ -4,23 +4,23 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:18 GMT", + "date": "Fri, 18 Jun 2021 16:38:56 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+est\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - NCUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - WUS2 ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -33,17 +33,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"phoneNumbers\":[{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"inbound+outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-14T00:23:52.1861991+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-06T23:27:52.858607+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-25T00:03:06.2985305+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-24T23:39:11.2079613+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-26T23:18:22.4715623+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-27T03:05:50.816041+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T17:52:41.818335+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T18:01:46.4199999+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2000-01-01T00:00:00+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}]}", + "response": "{\"phoneNumbers\":[{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"inbound+outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-14T00:23:52.1861991+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"geographic\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-04-06T23:27:52.858607+00:00\",\"cost\":{\"amount\":1.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-25T00:03:06.2985305+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-24T23:39:11.2079613+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-26T23:18:22.4715623+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"inbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-05-27T03:05:50.816041+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T17:52:41.818335+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-02-10T18:01:46.4199999+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}},{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2000-01-01T00:00:00+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}]}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:20 GMT", - "ms-cv": "/9cT9XOY6k6orVd9bq4o4A.0", + "date": "Fri, 18 Jun 2021 16:38:57 GMT", + "ms-cv": "gro5f7D8/kKMSt1bnqv7Kw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0nly2YAAAAADt4S/YqLxXQJLFzTP4wym1WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0IczMYAAAAAC5ABiSWvh6RqeE1fy7j4F8WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1837ms" + "x-processing-time": "1427ms" } } ], @@ -51,5 +51,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "b5b5bc3aa53df9cf7b960ec1c7c85595" + "hash": "eca17e433a83b791fc096978816d8e48" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.json index 4aecd1f27551..f7a084fb8859 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.json @@ -13,17 +13,17 @@ "access-control-expose-headers": "Location,Operation-Location,operation-id,search-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:14:17 GMT", + "date": "Fri, 18 Jun 2021 16:39:53 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "x4AjC3qOhEWieMXVN5h0Ww.0", + "ms-cv": "57s/f5hy40anKMY/Gvb1Qw.0", "operation-id": "search_sanitized", "operation-location": "/phoneNumbers/operations/search_sanitized?api-version=2021-03-07", "request-context": "appId=", "search-id": "sanitized", "status": "202", - "x-azure-ref": "02Fy2YAAAAACA3heNf19pQaODAAg681IRWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0V8zMYAAAAABseXURYwRfS5FRoa1Bhg5jWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "2018ms" + "x-processing-time": "1740ms" } }, { @@ -34,19 +34,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:18 GMT", + "date": "Fri, 18 Jun 2021 16:39:54 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "WTYd7qwOL0y84VxxPv4GEw.0", + "ms-cv": "gErObopvEUWXV59PpEoaNg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "02ly2YAAAAABHufyAKCdJS7S/+O0AaFacWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0WczMYAAAAAA0u6Og8d2LRphi7e0bdmrEWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "356ms" + "x-processing-time": "628ms" } }, { @@ -57,19 +57,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:20 GMT", + "date": "Fri, 18 Jun 2021 16:39:56 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "wrcTacu1gkSUyJqQZ70agQ.0", + "ms-cv": "56hyq7kfTEq3db0TaI8nxw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "03Fy2YAAAAAB2X5ELZPfDQIwIRTL9nSQ4WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0XMzMYAAAAABAqO0qMtdTRJCcuMrhZJVSWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "331ms" + "x-processing-time": "367ms" } }, { @@ -80,17 +80,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-01T16:30:20.5719924+00:00\"}", + "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-18T16:55:55.1811708+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:23 GMT", - "ms-cv": "xrys6b8RcEOgkkTHJrd6bg.0", + "date": "Fri, 18 Jun 2021 16:39:59 GMT", + "ms-cv": "r8OA3p+8zEOjP4bSG8EHtA.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "031y2YAAAAABC9o/zvAvuQodaE9njVYnpWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0XszMYAAAAABqD1AX/+JzQpZG/q3yIZWwWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "756ms" + "x-processing-time": "885ms" } }, { @@ -106,16 +106,16 @@ "access-control-expose-headers": "Operation-Location,operation-id,purchase-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:14:26 GMT", - "ms-cv": "UpdtTM5eNkKqjbHhI0YIfQ.0", + "date": "Fri, 18 Jun 2021 16:40:03 GMT", + "ms-cv": "1CDST4G+T0GSJj0apgWmHg.0", "operation-id": "purchase_sanitized", "operation-location": "/phoneNumbers/operations/purchase_sanitized?api-version=2021-03-07", "purchase-id": "sanitized", "request-context": "appId=", "status": "202", - "x-azure-ref": "04ly2YAAAAACgoloGOD6fTLCUxevsMGD+WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0YczMYAAAAADtUqa7DCvJRq+d+tHcTDTFWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1671ms" + "x-processing-time": "2178ms" } }, { @@ -126,17 +126,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:27 GMT", - "ms-cv": "N4/RXFwg7EK9/O2JUVJC+Q.0", + "date": "Fri, 18 Jun 2021 16:40:04 GMT", + "ms-cv": "H5s/w7ueyEqZ+cZT8LMMLQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "041y2YAAAAABxoOPdl8swRrOLP5AfhYflWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0Y8zMYAAAAABm+PIqHj77QpTr4fqXyycDWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "335ms" + "x-processing-time": "364ms" } }, { @@ -147,17 +147,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:29 GMT", - "ms-cv": "hTYqXfkDA06xv1GB7OSalw.0", + "date": "Fri, 18 Jun 2021 16:40:06 GMT", + "ms-cv": "MJ1LCbWxBU6Kw+9z4qXKsg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "05ly2YAAAAADoU5BMbhgKTaZe+785ko3BWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0ZszMYAAAAACpmThvAKq9RYgNK48ohX7gWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "337ms" + "x-processing-time": "416ms" } }, { @@ -168,17 +168,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:32 GMT", - "ms-cv": "K4TT7n5rlEyf5Gzy4ynxEA.0", + "date": "Fri, 18 Jun 2021 16:40:09 GMT", + "ms-cv": "jU0AE7k1OUO4jmtTc3hGlQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "06Fy2YAAAAACZNLYun50aSL3ctCZWzf2cWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0aMzMYAAAAAAuYBF5YTKARLX+0SzKKkk9WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "336ms" + "x-processing-time": "615ms" } }, { @@ -189,17 +189,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:34 GMT", - "ms-cv": "eecySp2cZEu/zlH3/EFjKw.0", + "date": "Fri, 18 Jun 2021 16:40:11 GMT", + "ms-cv": "iKzxKh7ywE6rlYMC/LuvAQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "061y2YAAAAADXJcnCxqmjQrPKUde9f1b2WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0a8zMYAAAAACGT1mOMP5GSIFT6C0g3L+nWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "351ms" + "x-processing-time": "384ms" } }, { @@ -210,17 +210,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:37 GMT", - "ms-cv": "4nbPV4KJgEqnyqxPw+bgKQ.0", + "date": "Fri, 18 Jun 2021 16:40:14 GMT", + "ms-cv": "mKQuQSF6KEeiZTiCM/2hJw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "07Vy2YAAAAAD6r3sZmi2pR7lja9mjrD5qWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0bczMYAAAAAAIZw5rlCDeQIKcvjMLSr7WWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "335ms" + "x-processing-time": "388ms" } }, { @@ -231,17 +231,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:40 GMT", - "ms-cv": "aS94SZh1P0SmIRpxpVy65Q.0", + "date": "Fri, 18 Jun 2021 16:40:16 GMT", + "ms-cv": "h4Y6zQQAyEGGPAyu6dAJgQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "071y2YAAAAADJbgSAxCu2R7z7+Lus0qUFWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0cMzMYAAAAAAfrusJvEzfQYKLqJedlS3QWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "611ms" + "x-processing-time": "680ms" } }, { @@ -252,17 +252,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:42 GMT", - "ms-cv": "c8DfVMH7B0a8rdaCAxdbRA.0", + "date": "Fri, 18 Jun 2021 16:40:19 GMT", + "ms-cv": "oSqwLQQZt0WKjsXkSjyAgg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "08ly2YAAAAAChdSECKB5dQLw+j8G5GZYZWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0c8zMYAAAAAC0Im3BYXAxQrFIjItzP6pnWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "383ms" + "x-processing-time": "543ms" } }, { @@ -273,38 +273,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:53.1151841+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:45 GMT", - "ms-cv": "WwI+TTXJaka5kT4KJPKOWA.0", + "date": "Fri, 18 Jun 2021 16:40:22 GMT", + "ms-cv": "twqfxXio60yo/ZkN5gkjPA.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "09Fy2YAAAAAC2J4m4ApT5QYK6xuqqsJECWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0dczMYAAAAAC7CMIxXGpCTY0m33BnvvCrWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "346ms" - } - }, - { - "method": "GET", - "url": "https://endpoint/phoneNumbers/operations/purchase_sanitized", - "query": { - "api-version": "2021-03-07" - }, - "requestBody": null, - "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:18.1389714+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", - "responseHeaders": { - "api-supported-versions": "2021-03-07", - "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:48 GMT", - "ms-cv": "Mw7veKvC1UGhawQf9GlBTg.0", - "request-context": "appId=", - "status": "200", - "x-azure-ref": "091y2YAAAAABd5a7Am3CITo8/+g2Ex+xeWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", - "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1367ms" + "x-processing-time": "634ms" } }, { @@ -315,17 +294,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-06-01T16:14:44.4901882+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", + "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-06-18T16:40:19.3249552+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:53 GMT", - "ms-cv": "0CrfcOCua0uPO1qZz6ZovA.0", + "date": "Fri, 18 Jun 2021 16:40:28 GMT", + "ms-cv": "FTiIZg9yREObXl9yQsf/Rg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0/Fy2YAAAAAAyhVx02lbQS4cjmCe1YqRlWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0eszMYAAAAABRXW9KfNf4RYJ48hh3sX/6WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1093ms" + "x-processing-time": "2385ms" } }, { @@ -341,37 +320,16 @@ "access-control-expose-headers": "Operation-Location,operation-id,release-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:14:54 GMT", - "ms-cv": "1eL3kmnVeUqDWwcGUQAJlQ.0", + "date": "Fri, 18 Jun 2021 16:40:29 GMT", + "ms-cv": "68LsZHlN2ki23H22wLDXtw.0", "operation-id": "release_sanitized", "operation-location": "/phoneNumbers/operations/release_sanitized?api-version=2021-03-07", "release-id": "sanitized", "request-context": "appId=", "status": "202", - "x-azure-ref": "0/Vy2YAAAAACWEYkqvHDcQ4rXKmuj574+WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", - "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1065ms" - } - }, - { - "method": "GET", - "url": "https://endpoint/phoneNumbers/operations/release_sanitized", - "query": { - "api-version": "2021-03-07" - }, - "requestBody": null, - "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:54.1894372+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", - "responseHeaders": { - "api-supported-versions": "2021-03-07", - "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:55 GMT", - "ms-cv": "kb0a/FAJeUWSylnqHelb7Q.0", - "request-context": "appId=", - "status": "200", - "x-azure-ref": "0/ly2YAAAAAC0kNrAMIxhS7ghe4Z8O8yEWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0fMzMYAAAAAAxQ4bzDZipTYKAyvQxiXr4WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "397ms" + "x-processing-time": "1329ms" } }, { @@ -382,17 +340,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:54.1894372+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:40:29.5428606+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:57 GMT", - "ms-cv": "Vi6L/YHmzU2UGl9mVInfsg.0", + "date": "Fri, 18 Jun 2021 16:40:30 GMT", + "ms-cv": "w8/68MBd2EiZyWWw5Azc3A.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0AV22YAAAAADPEjlU9H//SKIxzdyhGO8QWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0fszMYAAAAAD92dxiY2KmS4uNPY39WI82WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "283ms" + "x-processing-time": "421ms" } }, { @@ -403,17 +361,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:54.1894372+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:40:29.5428606+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:59 GMT", - "ms-cv": "+pjTHMyKr0KejJ1UtROxdw.0", + "date": "Fri, 18 Jun 2021 16:40:32 GMT", + "ms-cv": "rEaGIDZ0qE6E1+je7QPJAA.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0A122YAAAAABPh+Ce1ZV/SpsDfq3eBnDFWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0gMzMYAAAAAAa1yS2I1w7QJwx5LEXf5ifWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "286ms" + "x-processing-time": "316ms" } }, { @@ -424,17 +382,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:54.1894372+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:40:29.5428606+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:02 GMT", - "ms-cv": "NcyNORO5gU6c60LFhrWmGQ.0", + "date": "Fri, 18 Jun 2021 16:40:35 GMT", + "ms-cv": "D6Sbrpgr7EC5Lpq+s6MMlg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Bl22YAAAAABzNK8Gty4zSLHYFpeT0zKtWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0g8zMYAAAAAD38WRkFGyNS6rfOWLZAfhXWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "288ms" + "x-processing-time": "348ms" } }, { @@ -445,17 +403,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:54.1894372+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:40:29.5428606+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:04 GMT", - "ms-cv": "IMWiMgFOkE+7c9MKZYnxUA.0", + "date": "Fri, 18 Jun 2021 16:40:37 GMT", + "ms-cv": "aVA3m72hO0+Mwb+jXv+D9Q.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0CF22YAAAAAClCoAO6e0OT7my2xESnXxJWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0hczMYAAAAADIO5qsadWaSIWQ4T4KkjCgWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "342ms" + "x-processing-time": "307ms" } } ], @@ -463,5 +421,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "fa44f3995964677cea8445a9b6dfd114" + "hash": "416927590c0eb89a1bcfcaeaaa937d51" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.json index dd14b8e04e8f..6d0db3b9d5bf 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.json @@ -4,23 +4,23 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:21 GMT", + "date": "Fri, 18 Jun 2021 16:39:00 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+est\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - SCUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - EUS ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -37,17 +37,17 @@ "access-control-expose-headers": "Location,Operation-Location,operation-id,search-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:13:24 GMT", + "date": "Fri, 18 Jun 2021 16:39:01 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "qNhaJikjN0iFJq9cbeA5Tg.0", + "ms-cv": "JsYlaRO4SEmfcsfq2ca3tw.0", "operation-id": "search_sanitized", "operation-location": "/phoneNumbers/operations/search_sanitized?api-version=2021-03-07", "request-context": "appId=", "search-id": "sanitized", "status": "202", - "x-azure-ref": "0oly2YAAAAACGNOIpKcvHSIZPAmgMfSKeWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0JMzMYAAAAADl4CINcT8MQoe8fgMIE4SlWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "2473ms" + "x-processing-time": "1633ms" } }, { @@ -58,19 +58,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:25 GMT", + "date": "Fri, 18 Jun 2021 16:39:02 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "rhNnxJvxsUCnfvG0uprrKQ.0", + "ms-cv": "3/gFcGL3VE+T3vC3eQmuAg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0pFy2YAAAAAB72OTtMyCmQr8dJVV8zY0qWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0JszMYAAAAACH0zIs6VnlR4KKuMnpHy2ZWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "355ms" + "x-processing-time": "349ms" } }, { @@ -81,19 +81,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:27 GMT", + "date": "Fri, 18 Jun 2021 16:39:04 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "MiDnggRx2U6WbmXE6Nl/Gg.0", + "ms-cv": "HLFjkcE5CEexGXGU6bgi+g.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0p1y2YAAAAABpnr/sgZo7Tp01GNyFWAcuWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0KMzMYAAAAAD6NQpBPZ8yTq1GgoKFDgWbWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "332ms" + "x-processing-time": "358ms" } }, { @@ -104,17 +104,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-01T16:29:26.6554035+00:00\"}", + "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-18T16:55:03.3952323+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:30 GMT", - "ms-cv": "EJmp74VyV0WHh9SGGuru9w.0", + "date": "Fri, 18 Jun 2021 16:39:07 GMT", + "ms-cv": "PJG/XK29UEOCwLImjhKkMQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0qVy2YAAAAABphl/yodM1RqBYoRHSAMT1WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0K8zMYAAAAADa5lZoB+TsSaan+Hu12hZ+WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "662ms" + "x-processing-time": "782ms" } }, { @@ -130,16 +130,16 @@ "access-control-expose-headers": "Operation-Location,operation-id,purchase-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:13:34 GMT", - "ms-cv": "mfeGtczkTEisDpTrJLq2kA.0", + "date": "Fri, 18 Jun 2021 16:39:10 GMT", + "ms-cv": "+ymU6BbRdUmCBEVvSMBuzQ.0", "operation-id": "purchase_sanitized", "operation-location": "/phoneNumbers/operations/purchase_sanitized?api-version=2021-03-07", "purchase-id": "sanitized", "request-context": "appId=", "status": "202", - "x-azure-ref": "0rFy2YAAAAADYCpihEAOjQK8DDWsrwv90WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0LczMYAAAAAAmug57kVcnSaRjQZkWyc/jWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "2654ms" + "x-processing-time": "1594ms" } }, { @@ -150,17 +150,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:35 GMT", - "ms-cv": "SRB33ZT88EybuUSxrN0paA.0", + "date": "Fri, 18 Jun 2021 16:39:11 GMT", + "ms-cv": "dWgwVu5qW0CGpl7BWk+tYg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0r1y2YAAAAACqYJ1VlFMZRoeOUZJDB4bAWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0L8zMYAAAAADl4Lh1gXMiTZhzo4RkE3Q3WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "339ms" + "x-processing-time": "452ms" } }, { @@ -171,17 +171,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:37 GMT", - "ms-cv": "gsmckL4+FEaTNS/jQXbVtw.0", + "date": "Fri, 18 Jun 2021 16:39:13 GMT", + "ms-cv": "FuzKJulbsEmumXvcHokbYQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0sVy2YAAAAAA9YrSL2ymvTK4LYdDFWbfyWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0MszMYAAAAABAnRCK5sfcSbH/SPW1GXKiWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "349ms" + "x-processing-time": "434ms" } }, { @@ -192,17 +192,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:40 GMT", - "ms-cv": "vkZF/2v2jkSWLKJgvV+XSg.0", + "date": "Fri, 18 Jun 2021 16:39:16 GMT", + "ms-cv": "sy0V7yHT902T4DgEv7Pdow.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0s1y2YAAAAAAnv8VW2b3URYNWoJKJ+9WBWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0NMzMYAAAAABmNURB2qdoRKuiM0Wuubr6WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "345ms" + "x-processing-time": "663ms" } }, { @@ -213,17 +213,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:42 GMT", - "ms-cv": "nQ5dYEoJfE6/Y55jY2llXg.0", + "date": "Fri, 18 Jun 2021 16:39:19 GMT", + "ms-cv": "5qU2JujD4kOIYkW1iWY/FA.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0tly2YAAAAAC6bYzhrloZRqQHVGYjqALKWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0N8zMYAAAAABVAkr8nTo7RpaIkYZwYVRcWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "328ms" + "x-processing-time": "417ms" } }, { @@ -234,17 +234,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:44 GMT", - "ms-cv": "tuM7P/EQ30Wr3eoCoU1IEg.0", + "date": "Fri, 18 Jun 2021 16:39:21 GMT", + "ms-cv": "klYBj98SvUKPTyNxB7BDkg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0uFy2YAAAAABnmt2Sf+laRJBrRfGdhPCXWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0OczMYAAAAADrHAVeS7+hQLIOrMCXmkKdWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "337ms" + "x-processing-time": "804ms" } }, { @@ -255,17 +255,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:47 GMT", - "ms-cv": "CYmQc/b+ik2o57Ag/LbwMg.0", + "date": "Fri, 18 Jun 2021 16:39:24 GMT", + "ms-cv": "HENZcQRpDEaRHT2g+GdqRQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0u1y2YAAAAAD7pHRVK1ZDRJusGE56XqR9WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0PMzMYAAAAABEXsmpXughQr9qqIETq/C0WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "740ms" + "x-processing-time": "394ms" } }, { @@ -276,17 +276,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:50 GMT", - "ms-cv": "15dekCbT20W4EEgv8t/X5g.0", + "date": "Fri, 18 Jun 2021 16:39:26 GMT", + "ms-cv": "M4Qv46JQaEKPEup5RsyoCQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0vVy2YAAAAADPSPG74mb0SplJQTzP6XfkWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0P8zMYAAAAABC4hfrfOy0R43BU0ii5UoeWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "459ms" + "x-processing-time": "412ms" } }, { @@ -297,105 +297,84 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:01.7862614+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:52 GMT", - "ms-cv": "62DDEO0rBU2xgTyFR9sYAA.0", + "date": "Fri, 18 Jun 2021 16:39:29 GMT", + "ms-cv": "L6Ns+ZzZ20S3cc/J9jT9Vw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0wFy2YAAAAABDhqKXVAFbTIWycSSYPqP6WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0QczMYAAAAABlut55ZA1jRZfQP/ojMlLvWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "428ms" + "x-processing-time": "693ms" } }, { "method": "GET", - "url": "https://endpoint/phoneNumbers/operations/purchase_sanitized", + "url": "https://endpoint/phoneNumbers/%2B14155550100", "query": { "api-version": "2021-03-07" }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-06-18T16:39:25.8583623+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:54 GMT", - "ms-cv": "DQR2zNw2RUehwyG5EII3EQ.0", + "date": "Fri, 18 Jun 2021 16:39:34 GMT", + "ms-cv": "6UVBO64m906Dr+AsvBHh0g.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0wly2YAAAAADaUUN6nsClS4Lo1btlPailWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0RszMYAAAAADVjKrAbW9wQpA/z/b/jwHaWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "343ms" + "x-processing-time": "1250ms" } }, { - "method": "GET", - "url": "https://endpoint/phoneNumbers/operations/purchase_sanitized", + "method": "DELETE", + "url": "https://endpoint/phoneNumbers/%2B14155550100", "query": { "api-version": "2021-03-07" }, "requestBody": null, - "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:13:24.2919684+00:00\",\"id\":\"purchase_sanitized\",\"operationType\":\"purchase\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "status": 202, + "response": "", "responseHeaders": { + "access-control-expose-headers": "Operation-Location,operation-id,release-id", "api-supported-versions": "2021-03-07", - "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:13:57 GMT", - "ms-cv": "2TUsfo29UE2VyaOuI+7EHA.0", + "content-length": "0", + "date": "Fri, 18 Jun 2021 16:39:36 GMT", + "ms-cv": "rKfdKRXDHEy/Ye1/iNq2ZA.0", + "operation-id": "release_sanitized", + "operation-location": "/phoneNumbers/operations/release_sanitized?api-version=2021-03-07", + "release-id": "sanitized", "request-context": "appId=", - "status": "200", - "x-azure-ref": "0xVy2YAAAAAAsESdKjLaORrxkZ7+ld2lfWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "status": "202", + "x-azure-ref": "0R8zMYAAAAACm7AskygTVQ6IHXYGCLx4eWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "343ms" + "x-processing-time": "1437ms" } }, { "method": "GET", - "url": "https://endpoint/phoneNumbers/%2B14155550100", + "url": "https://endpoint/phoneNumbers/operations/release_sanitized", "query": { "api-version": "2021-03-07" }, "requestBody": null, "status": 200, - "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"inbound+outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-06-01T16:13:54.2335149+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:36.7719624+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:02 GMT", - "ms-cv": "Q9RqhRf2rEmU+dp/QMRqkg.0", + "date": "Fri, 18 Jun 2021 16:39:36 GMT", + "ms-cv": "/RFouUS2+kOYiZhO2k+CKw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0yVy2YAAAAAD6JDmd3dE3RZJnwogpX3RyWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", - "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1296ms" - } - }, - { - "method": "DELETE", - "url": "https://endpoint/phoneNumbers/%2B14155550100", - "query": { - "api-version": "2021-03-07" - }, - "requestBody": null, - "status": 202, - "response": "", - "responseHeaders": { - "access-control-expose-headers": "Operation-Location,operation-id,release-id", - "api-supported-versions": "2021-03-07", - "content-length": "0", - "date": "Tue, 01 Jun 2021 16:14:03 GMT", - "ms-cv": "1rK16Wn8xUiAgj2TWrqg8Q.0", - "operation-id": "release_sanitized", - "operation-location": "/phoneNumbers/operations/release_sanitized?api-version=2021-03-07", - "release-id": "sanitized", - "request-context": "appId=", - "status": "202", - "x-azure-ref": "0yly2YAAAAABJ1joOrrrDQYtQ6Ykq+eiSWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0SczMYAAAAADF58LrzSzASK7OMGDY2OsEWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1510ms" + "x-processing-time": "378ms" } }, { @@ -406,17 +385,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:03.9464053+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:36.7719624+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:04 GMT", - "ms-cv": "lKCfYAkP9EmdMNAZWLHmAA.0", + "date": "Fri, 18 Jun 2021 16:39:40 GMT", + "ms-cv": "6VaISi5veke/E6jpd3YyMg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0zFy2YAAAAADGWtQN0eMMTLQdJmqMC04/WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0S8zMYAAAAAARcbw4zLIkRKuAeAxizAkyWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "622ms" + "x-processing-time": "319ms" } }, { @@ -427,17 +406,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:03.9464053+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:36.7719624+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:06 GMT", - "ms-cv": "8rXSKPktu0WO7UNsoBd94A.0", + "date": "Fri, 18 Jun 2021 16:39:42 GMT", + "ms-cv": "Etw/nePLx0eVKisAwn6WHQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0z1y2YAAAAACtivPCBpiiQqqdCx8EbHXiWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0TszMYAAAAACMbP9Kq2SYTr2eP3pBZAgnWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "282ms" + "x-processing-time": "334ms" } }, { @@ -448,17 +427,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:03.9464053+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:36.7719624+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:09 GMT", - "ms-cv": "CwQY1En1gkqRQvnUAVs9pw.0", + "date": "Fri, 18 Jun 2021 16:39:44 GMT", + "ms-cv": "ILxK20odD0WMSbEhor7Buw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "00Vy2YAAAAAAZQFr2p96NSLE21P63hI8iWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0UMzMYAAAAACJ2YnuleR4R5V7kcIeAgbnWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "512ms" + "x-processing-time": "333ms" } }, { @@ -469,17 +448,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-01T16:14:03.9464053+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":null,\"createdDateTime\":\"2021-06-18T16:39:36.7719624+00:00\",\"id\":\"release_sanitized\",\"operationType\":\"releasePhoneNumber\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:14:11 GMT", - "ms-cv": "giBW71y60UW6Sx28C+jPFQ.0", + "date": "Fri, 18 Jun 2021 16:39:47 GMT", + "ms-cv": "zHHzh1CO+EK65oEpXsLaAg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "01Fy2YAAAAACpspsKYLvjSaJZXS3rTspQWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0U8zMYAAAAAAur+f/DbyuRKcEggsmRPSYWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "332ms" + "x-processing-time": "308ms" } } ], @@ -487,5 +466,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "fa44f3995964677cea8445a9b6dfd114" + "hash": "416927590c0eb89a1bcfcaeaaa937d51" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.json index cba49d729caf..6bd912c335b1 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.json @@ -13,17 +13,17 @@ "access-control-expose-headers": "Location,Operation-Location,operation-id,search-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:15:22 GMT", + "date": "Fri, 18 Jun 2021 16:40:55 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "lWRWCoActkCLH3si46Pp4g.0", + "ms-cv": "/rVl2dQlYEWN6rWbpD4dZg.0", "operation-id": "search_sanitized", "operation-location": "/phoneNumbers/operations/search_sanitized?api-version=2021-03-07", "request-context": "appId=", "search-id": "sanitized", "status": "202", - "x-azure-ref": "0GF22YAAAAABp7tjCyodzTZ/DU2GAAm5sWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0lszMYAAAAAD6DZk5C8dxSY9p8/lzH/lCWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "2061ms" + "x-processing-time": "2114ms" } }, { @@ -34,19 +34,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:22.3286246+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:40:56.0363557+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:22 GMT", + "date": "Fri, 18 Jun 2021 16:40:56 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "Yi3DLbjozE+8BvNx59qQJQ.0", + "ms-cv": "H1VFmar+vkS8wvw2SNQC+Q.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Gl22YAAAAADYpnA1caGpSppF5PHe2+fAWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0mMzMYAAAAAD3PhFgvWDUS4dabm2PZvB0WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "347ms" + "x-processing-time": "381ms" } }, { @@ -57,19 +57,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:22.3286246+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:40:56.0363557+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:25 GMT", + "date": "Fri, 18 Jun 2021 16:40:58 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "usyn7yJfYESuB+J9T50+Bw.0", + "ms-cv": "25alJz+EBEWiNh/vQeb96g.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0HV22YAAAAAA7ohcRXRaBSL+KhUN1WSouWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0mszMYAAAAAAYDOsp+QyhT7CHSp8nim/6WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "338ms" + "x-processing-time": "418ms" } }, { @@ -80,17 +80,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-01T16:31:24.3085493+00:00\"}", + "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-18T16:56:57.5740076+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:27 GMT", - "ms-cv": "xaFHL0q0NE6/DnbED2+7pQ.0", + "date": "Fri, 18 Jun 2021 16:41:01 GMT", + "ms-cv": "bSmbaaFlW0S6eTgonFUysg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0H122YAAAAAC8ml30p6vlRqx785JYD4AmWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0nczMYAAAAADLECAt5/yXSLyp9tRT8VEKWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "884ms" + "x-processing-time": "1039ms" } } ], @@ -98,5 +98,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "6fc2d9523d9988e48e74d4517b232cb1" + "hash": "9442c43ae11a0869c2b1a10b96165777" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.json index c962153f1b91..890264ff45ee 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.json @@ -12,13 +12,13 @@ "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json", - "date": "Tue, 01 Jun 2021 16:15:31 GMT", - "ms-cv": "D8mBUIfXZ0OHrP4SXSq/OQ.0", + "date": "Fri, 18 Jun 2021 16:41:05 GMT", + "ms-cv": "6UNU0hmm5EWgilZGg36oEg.0", "request-context": "appId=", "status": "400", - "x-azure-ref": "0Il22YAAAAABTZ31Vei09TqNojP38iXqbWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0oMzMYAAAAAAT+jpuH2jeT7dub0MLmKf8WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1707ms" + "x-processing-time": "1332ms" } } ], @@ -26,5 +26,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "0a8d65017395f38f7d477e7592233ac0" + "hash": "182bac91e121262aabae40506fbaf691" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.json index 384c99b73501..dc8322d8571d 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.json @@ -4,23 +4,23 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:08 GMT", + "date": "Fri, 18 Jun 2021 16:40:41 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+est\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - EUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - EUS ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -37,17 +37,17 @@ "access-control-expose-headers": "Location,Operation-Location,operation-id,search-id", "api-supported-versions": "2021-03-07", "content-length": "0", - "date": "Tue, 01 Jun 2021 16:15:10 GMT", + "date": "Fri, 18 Jun 2021 16:40:44 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "Wivt8LoldEaKWkj493TqVA.0", + "ms-cv": "s1OE1j8mokiHpItyl6zlWA.0", "operation-id": "search_sanitized", "operation-location": "/phoneNumbers/operations/search_sanitized?api-version=2021-03-07", "request-context": "appId=", "search-id": "sanitized", "status": "202", - "x-azure-ref": "0DF22YAAAAAB07+ikZYWmTYgTwQLRU4pqWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0iszMYAAAAAAzzfgmwWw1QpULSO9yxg6zWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1742ms" + "x-processing-time": "2162ms" } }, { @@ -58,19 +58,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:10.3041624+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:40:44.1498283+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:10 GMT", + "date": "Fri, 18 Jun 2021 16:40:44 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "n7rQjRwJF0KMho+k+xya2w.0", + "ms-cv": "abTNcM4oGE6aQwl3aHra+Q.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Dl22YAAAAADmJV/WN+riQolnxZsLxecTWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0jMzMYAAAAABFblSs8MXPSYjmURtVlIxvWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "360ms" + "x-processing-time": "364ms" } }, { @@ -81,19 +81,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:10.3041624+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:40:44.1498283+00:00\",\"id\":\"search_sanitized\",\"operationType\":\"search\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:13 GMT", + "date": "Fri, 18 Jun 2021 16:40:46 GMT", "location": "/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07", - "ms-cv": "yHiMzbmK20a2dW6FI1EX8g.0", + "ms-cv": "0GWTDBa8nU+qTdfHUajV/w.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0EV22YAAAAAD1u7fvdu04TJQM6hrHqH1VWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0j8zMYAAAAADxJeUF4o4lS6iZpaUCxTzIWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "335ms" + "x-processing-time": "421ms" } }, { @@ -104,17 +104,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-01T16:31:12.3600957+00:00\"}", + "response": "{\"searchId\":\"sanitized\",\"phoneNumbers\":[\"+14155550100\"],\"phoneNumberType\":\"tollFree\",\"assignmentType\":\"application\",\"capabilities\":{\"calling\":\"outbound\",\"sms\":\"none\"},\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"},\"searchExpiresBy\":\"2021-06-18T16:56:46.1994694+00:00\"}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:16 GMT", - "ms-cv": "Al+eGVH+5EyEP4BhoM2tFQ.0", + "date": "Fri, 18 Jun 2021 16:40:49 GMT", + "ms-cv": "W9Ld6j3tNEmp6sPul6+17Q.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0E122YAAAAAD1liehfHOnRqbXfApMshLSWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0kczMYAAAAADtiuA9adtnSL+tx0saTZm7WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1762ms" + "x-processing-time": "865ms" } } ], @@ -122,5 +122,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "6fc2d9523d9988e48e74d4517b232cb1" + "hash": "9442c43ae11a0869c2b1a10b96165777" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.json index 6f91c3fd64bb..ebdcc0489874 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.json @@ -4,23 +4,23 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:19 GMT", + "date": "Fri, 18 Jun 2021 16:40:52 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+est\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - EUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - WUS2 ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -36,13 +36,13 @@ "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json", - "date": "Tue, 01 Jun 2021 16:15:20 GMT", - "ms-cv": "oHIWgAVztUC7M+1WhM2+1A.0", + "date": "Fri, 18 Jun 2021 16:40:53 GMT", + "ms-cv": "gMwSo0Qh5kCpm5hZPN83hw.0", "request-context": "appId=", "status": "400", - "x-azure-ref": "0F122YAAAAACW4XtHMykAS40QMghTHN3VWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0lMzMYAAAAAAO+8UKIBgVT4yt5q+Wl95IWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1120ms" + "x-processing-time": "1507ms" } } ], @@ -50,5 +50,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "0a8d65017395f38f7d477e7592233ac0" + "hash": "182bac91e121262aabae40506fbaf691" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.json index 126053c7fb12..494c174340e4 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.json @@ -14,16 +14,16 @@ "api-supported-versions": "2021-03-07", "capabilities-id": "sanitized", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:55 GMT", + "date": "Fri, 18 Jun 2021 16:41:26 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "0jXv0yuGtEmT1eH1/AZ+NQ.0", + "ms-cv": "g7QIT4MTvEaCTIwqy/9kGw.0", "operation-id": "capabilities_sanitized", "operation-location": "/phoneNumbers/operations/capabilities_sanitized?api-version=2021-03-07", "request-context": "appId=", "status": "202", - "x-azure-ref": "0Ol22YAAAAAByS8J5XnGWTLHbkF2I8olZWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0tMzMYAAAAADUA6rQgNKmSKflNjvHwTLfWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1584ms" + "x-processing-time": "1690ms" } }, { @@ -34,19 +34,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:55.4470086+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:26.098649+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:55 GMT", + "date": "Fri, 18 Jun 2021 16:41:26 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "Y1oFbYvXKk6nJdexNK2FwQ.0", + "ms-cv": "rK6mePe6BkWZ25ODJWWaCg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0O122YAAAAAApG+8LoAsaRYeu7dWZpVAHWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0tszMYAAAAAAeZ33w8MDfT46VSHQ0dDBQWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "690ms" + "x-processing-time": "304ms" } }, { @@ -57,19 +57,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:55.4470086+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:26.098649+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:58 GMT", + "date": "Fri, 18 Jun 2021 16:41:29 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "HBojhsVrnkOca0wc0blbew.0", + "ms-cv": "KrmyNeWG/0aFeUSkJSZHxQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Pl22YAAAAAAJ+zc5JDdOQJmetqRODVpuWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0uMzMYAAAAAB7wP0xWw82TIc7VO69C0NGWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "481ms" + "x-processing-time": "337ms" } }, { @@ -80,19 +80,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:55.4470086+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:26.098649+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:16:00 GMT", + "date": "Fri, 18 Jun 2021 16:41:31 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "0NUF4/igkkuUxZyDV/Amsw.0", + "ms-cv": "M93aXOZk70m978IoP/ZnHQ.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0QV22YAAAAABGElHhvyuyQKSnDvfMhRhFWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0u8zMYAAAAACIq4fMXFeiTpfVgZSk7P+bWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "309ms" + "x-processing-time": "307ms" } }, { @@ -103,19 +103,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:55.4470086+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:26.098649+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:16:02 GMT", + "date": "Fri, 18 Jun 2021 16:41:33 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "aKHJaesJmEe0fdv2VWjrNQ.0", + "ms-cv": "B/sVkdJsUEW2W2cnLyYXDA.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Q122YAAAAADOSj7JEbaUS4rPpv9ME7PtWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0vczMYAAAAAAu3z+5dNlsT4zPb3kwYPkoWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "295ms" + "x-processing-time": "330ms" } }, { @@ -126,42 +126,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:55.4470086+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:26.098649+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:16:05 GMT", + "date": "Fri, 18 Jun 2021 16:41:36 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "MIxwxCa9CEOwo4zASJ959g.0", + "ms-cv": "V2tmOWicUUec8GWXCc0xUw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0RV22YAAAAABbU8wTKCVIQoFOUjU3/oOMWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0wMzMYAAAAACcJ8pWoFdUTrNUHjq3NcKCWVZSMzBFREdFMDMxOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "334ms" - } - }, - { - "method": "GET", - "url": "https://endpoint/phoneNumbers/operations/capabilities_sanitized", - "query": { - "api-version": "2021-03-07" - }, - "requestBody": null, - "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:55.4470086+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", - "responseHeaders": { - "access-control-expose-headers": "Location", - "api-supported-versions": "2021-03-07", - "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:16:07 GMT", - "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "/3eK9QRNuEW6c8MJSHnytg.0", - "request-context": "appId=", - "status": "200", - "x-azure-ref": "0SF22YAAAAACxfCv2IA6qRLx8M4UcVMiWWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", - "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "285ms" + "x-processing-time": "678ms" } }, { @@ -172,17 +149,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", + "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:16:11 GMT", - "ms-cv": "LPgeQK18c0ayVIkCek63iA.0", + "date": "Fri, 18 Jun 2021 16:41:40 GMT", + "ms-cv": "qoqNs+bDA02+4hi5lLniKg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Sl22YAAAAAAHs2DK/8pVRI9uIN1cVreEWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0w8zMYAAAAABgXo1pkAM6TrPHA4fkSJhFWVZSMzBFREdFMDMxOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1191ms" + "x-processing-time": "2200ms" } } ], @@ -190,5 +167,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "bc0d3c040f4257989e64826eb468a2d3" + "hash": "b1d336b2900ec126a1a01a0cde95ad4d" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.json index 24924585d231..0a86c03f8a62 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.json @@ -8,17 +8,17 @@ }, "requestBody": "{\"calling\":\"none\",\"sms\":\"outbound\"}", "status": 404, - "response": "", + "response": "{\"error\":{\"code\":\"InternalError\",\"message\":\"The server encountered an internal error.\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", - "content-length": "0", - "date": "Tue, 01 Jun 2021 16:16:14 GMT", - "ms-cv": "CLxQWORZA0S02B6whk9RLA.0", + "content-type": "application/json", + "date": "Fri, 18 Jun 2021 16:41:43 GMT", + "ms-cv": "8+4Hy1+iXkC4kB6Qe2VKtg.0", "request-context": "appId=", "status": "404", - "x-azure-ref": "0TV22YAAAAACjKkP8z6SxRLkrVvhRqZnOWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0x8zMYAAAAADfEfTkkMGsSbyOgxzuT2oZWVZSMzBFREdFMDMxOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "284ms" + "x-processing-time": "461ms" } } ], @@ -26,5 +26,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "1b01834067bf928c6bbe8df5701149c4" + "hash": "94c6d18150d845a6914ed056b481f079" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.json index f50e26dcd5f0..a4b240259cc3 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.json @@ -4,14 +4,14 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:31 GMT", + "date": "Fri, 18 Jun 2021 16:41:06 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", @@ -20,7 +20,7 @@ "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - WUS2 ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - SCUS ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -38,16 +38,16 @@ "api-supported-versions": "2021-03-07", "capabilities-id": "sanitized", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:33 GMT", + "date": "Fri, 18 Jun 2021 16:41:07 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "hlvtxDls9UCIES6eZIa+AQ.0", + "ms-cv": "B/FwPMZLq0mk9U9FuoSFGA.0", "operation-id": "capabilities_sanitized", "operation-location": "/phoneNumbers/operations/capabilities_sanitized?api-version=2021-03-07", "request-context": "appId=", "status": "202", - "x-azure-ref": "0JF22YAAAAADU7eshr5RMQLO6NjCIG6yHWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0oszMYAAAAAApOCOXxug5SqxBgwCh2VR0WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "2062ms" + "x-processing-time": "1763ms" } }, { @@ -58,42 +58,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"notStarted\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:34.1612403+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:07.8993673+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:34 GMT", + "date": "Fri, 18 Jun 2021 16:41:07 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "A/4fTVc2Q0Gj0g8NNnP0Ug.0", + "ms-cv": "R0A/iCTJ90qFSR0eaiXTvA.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Jl22YAAAAAAVNnFQ1uuWTr1g3JZm8Ou0WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0pMzMYAAAAACTiBonKwPhRIeZ3Wk2vGrvWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "323ms" - } - }, - { - "method": "GET", - "url": "https://endpoint/phoneNumbers/operations/capabilities_sanitized", - "query": { - "api-version": "2021-03-07" - }, - "requestBody": null, - "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:34.1612403+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", - "responseHeaders": { - "access-control-expose-headers": "Location", - "api-supported-versions": "2021-03-07", - "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:36 GMT", - "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "r2PWSZacUESU40CN1q//Uw.0", - "request-context": "appId=", - "status": "200", - "x-azure-ref": "0KF22YAAAAAAuQXhL5P8lT70UqVH2YQ5DWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", - "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "325ms" + "x-processing-time": "306ms" } }, { @@ -104,19 +81,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:34.1612403+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:07.8993673+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:38 GMT", + "date": "Fri, 18 Jun 2021 16:41:10 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "yZY+I0kEKUWDQjO7Nyr0FQ.0", + "ms-cv": "adxl2J4nREOzAwC78DZcpg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0K122YAAAAAD5z9wuqaVfRaJC7k4OA3WQWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0pszMYAAAAADxpvqKPpm5Q6G2Ctk4BligWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "374ms" + "x-processing-time": "426ms" } }, { @@ -127,19 +104,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:34.1612403+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:07.8993673+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:41 GMT", + "date": "Fri, 18 Jun 2021 16:41:12 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "FFLNcENNMker8F4eZvhK+g.0", + "ms-cv": "ASqKWl2us0COydY85Hy72w.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0LV22YAAAAAB0DYIWWMn4SbAV1LOpbqXyWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0qczMYAAAAADbQc0bjkGEToRogPx8W2IuWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "450ms" + "x-processing-time": "300ms" } }, { @@ -150,19 +127,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:34.1612403+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"running\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:07.8993673+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:44 GMT", + "date": "Fri, 18 Jun 2021 16:41:15 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "mUn2H6g2tkSgoDJo8Aa7zw.0", + "ms-cv": "LYb6x8VpDUueaZ80DI7PQw.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0MF22YAAAAAC+cqm4dfs3TJ1xOCG2LHBFWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0q8zMYAAAAAAno3sNc1+nTbLMHkOUXz/7WVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1457ms" + "x-processing-time": "323ms" } }, { @@ -173,19 +150,19 @@ }, "requestBody": null, "status": 200, - "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-01T16:15:34.1612403+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", + "response": "{\"status\":\"succeeded\",\"resourceLocation\":\"/phoneNumbers/+14155550100?api-version=2021-03-07\",\"createdDateTime\":\"2021-06-18T16:41:07.8993673+00:00\",\"id\":\"capabilities_sanitized\",\"operationType\":\"updatePhoneNumberCapabilities\",\"lastActionDateTime\":\"0001-01-01T00:00:00+00:00\"}", "responseHeaders": { "access-control-expose-headers": "Location", "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:47 GMT", + "date": "Fri, 18 Jun 2021 16:41:17 GMT", "location": "/phoneNumbers/+14155550100?api-version=2021-03-07", - "ms-cv": "58R3VH1sb0q3QLsOwbi5SA.0", + "ms-cv": "qmbQMyUsq0eTqXRHcjUVgg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0M122YAAAAABGnaoMInRFSZXQVWge5H/nWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0rszMYAAAAADUm9CQ6ZaoSrBX1GLM3+GkWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "442ms" + "x-processing-time": "410ms" } }, { @@ -196,17 +173,17 @@ }, "requestBody": null, "status": 200, - "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:01:55.0949003+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", + "response": "{\"id\":\"14155550100\",\"phoneNumber\":\"+14155550100\",\"countryCode\":\"US\",\"phoneNumberType\":\"tollFree\",\"capabilities\":{\"calling\":\"none\",\"sms\":\"outbound\"},\"assignmentType\":\"application\",\"purchaseDate\":\"2021-03-09T15:03:04.7513808+00:00\",\"cost\":{\"amount\":2.0,\"currencyCode\":\"USD\",\"billingFrequency\":\"monthly\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:50 GMT", - "ms-cv": "svnTsGxlyEOVTQ9lz+B8Fw.0", + "date": "Fri, 18 Jun 2021 16:41:21 GMT", + "ms-cv": "7v1ieyrUq0q8CJGIjC53Hg.0", "request-context": "appId=", "status": "200", - "x-azure-ref": "0Nl22YAAAAAD0cwUYC+GdSoGhyjkK64ZqWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0sMzMYAAAAACnmJ9NLyfEQ5aIH7sOaDeYWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "1333ms" + "x-processing-time": "1256ms" } } ], @@ -214,5 +191,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "bc0d3c040f4257989e64826eb468a2d3" + "hash": "b1d336b2900ec126a1a01a0cde95ad4d" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.json b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.json index 4c99e380cf6f..5681787874ac 100644 --- a/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.json +++ b/sdk/communication/communication-phone-numbers/recordings/browsers/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.json @@ -4,14 +4,14 @@ "method": "POST", "url": "https://endpoint/SomeTenantId/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=SomeClientId&client_secret=SomeClientSecret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1327", "content-type": "application/json; charset=utf-8", - "date": "Tue, 01 Jun 2021 16:15:53 GMT", + "date": "Fri, 18 Jun 2021 16:41:23 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", @@ -20,7 +20,7 @@ "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://endpoint/api/report?catId=GW+estsfd+chi\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11722.26 - EUS ProdSlices", + "x-ms-ests-server": "2.1.11829.4 - EUS ProdSlices", "x-ms-request-id": "sanitized" } }, @@ -32,17 +32,17 @@ }, "requestBody": "{\"calling\":\"none\",\"sms\":\"outbound\"}", "status": 404, - "response": "", + "response": "{\"error\":{\"code\":\"InternalError\",\"message\":\"The server encountered an internal error.\"}}", "responseHeaders": { "api-supported-versions": "2021-03-07", - "content-length": "0", - "date": "Tue, 01 Jun 2021 16:15:53 GMT", - "ms-cv": "T0NOysEXYUes/clnSchzuw.0", + "content-type": "application/json", + "date": "Fri, 18 Jun 2021 16:41:24 GMT", + "ms-cv": "BPux1vYFaEyEyvflEmvGdQ.0", "request-context": "appId=", "status": "404", - "x-azure-ref": "0OV22YAAAAACn1GqJ/fUFQIjoihsSslFAWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", + "x-azure-ref": "0tMzMYAAAAABb6TsNmY77SKjStG8wAKUZWVZSMzBFREdFMDMxMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=", "x-cache": "CONFIG_NOCACHE", - "x-processing-time": "446ms" + "x-processing-time": "481ms" } } ], @@ -50,5 +50,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "1b01834067bf928c6bbe8df5701149c4" + "hash": "94c6d18150d845a6914ed056b481f079" } \ No newline at end of file diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.js index 6a78804982e2..197ecbc74d8b 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_can_get_a_purchased_phone_number.js @@ -1,13 +1,13 @@ let nock = require('nock'); -module.exports.hash = "8c038731046781a9e29a78b4d4a229af"; +module.exports.hash = "c277fc9e40dbe9b6a340b0fd4b58a391"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/%2B14155550100') .query(true) - .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ + .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -15,15 +15,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'olq7Da4IwEuplq58lOuV1A.0', + 'avMtrDgfgUexccUBmHHr/A.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1236ms', + '1984ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0w1i2YAAAAACwDvYWNgBhR71O/bYG13H6WVZSMzBFREdFMDMxOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0asvMYAAAAACoUwqyuTBjTrkMNZtKF6tZWVZSMzBFREdFMDQxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:56:52 GMT' + 'Fri, 18 Jun 2021 16:35:56 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.js index a61e9c534da9..442d3eba0820 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number/recording_errors_if_phone_number_not_found.js @@ -1,13 +1,13 @@ let nock = require('nock'); -module.exports.hash = "9db468d876f027cff1a56c0b2ccac1a5"; +module.exports.hash = "72d3da66787ce7ec1b5bd2e51979dcaa"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/%2B14155550100') .query(true) - .reply(404, {"error":{"code":"PhoneNumberNotFound","message":"The specified phone number +14155550100 cannot be found.","target":"phonenumber"}}, [ + .reply(404, {"error":{"code":"NotFound","message":"Input phoneNumber +14155550100 cannot be found.","target":"phonenumber"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -15,15 +15,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'iHCcarEEpkiclAyzF4xJhg.0', + 'AZ8qSl3bbUOTHzj9Jcll4Q.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '345ms', + '539ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0xVi2YAAAAAC4ob71ReBlQYzjbDLSxmjbWVZSMzBFREdFMDMxOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0bcvMYAAAAAB+AlTO8wGzRbUJewscu6gCWVZSMzBFREdFMDQwNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:56:52 GMT' + 'Fri, 18 Jun 2021 16:35:57 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.js index d7b1a250c522..222d668d89b1 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_can_get_a_purchased_phone_number.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "8c038731046781a9e29a78b4d4a229af"; +module.exports.hash = "c277fc9e40dbe9b6a340b0fd4b58a391"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -25,24 +25,24 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVw; expires=Thu, 01-Jul-2021 15:56:42 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmg; expires=Sun, 18-Jul-2021 16:35:50 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr8PQYpFdsowHS04Y6tyD9N5KHDqIFRzHIA_S3ie5MlZJAUExByi7iPai-P4L6muavxtTwfdifo_nJOLEumFQk_sC-wGRQshOunMsHSORt7PZMPysF0Kbnd4gXMUEPMpPEXf5VGFoU6hMUMvG0S49bfAeHIZz4BGEOxrs-jdxpWiMgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrUP5rFdyppgto6T8-nEb-weSXa06T3sZE0rV4WBtoC_dTrep1oqXIpsRCNXtWIukOmPj92Gt26VyOLN6XE-XKvJ7XcQE59_vz-dNlkBc_J8VZ7GjgG7S6CjdxulZVzMzMlDdkM2yRKeusNVCWgiDqTSO48fqvon-NDB76qnBZdyogAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:42 GMT', + 'Fri, 18 Jun 2021 16:35:50 GMT', 'Content-Length', '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,23 +60,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVw; expires=Thu, 01-Jul-2021 15:56:42 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmg; expires=Sun, 18-Jul-2021 16:35:50 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrQ_AIHhJRmi45G1N0mOSc91sNhh01hILUsXIBdK3Tj_CQnardwqBuFCki9NGYp_IZWHiAqYhLbNClAniRygOSLTF-pE8YgCcrk6M0gG6nExH1L0oqA6jpowXt30C4YA7baFnqwgKA-hbQO9fvqfm9xr-EN0KwIMqKrMjyJxyJaD0gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr-b_WLBcSGjYlr0c9ILgUCAhxmoTuW9ANnvF1jvK4yIU6kvPeEZFJEwqFquJGp1ev-2w7nImXRUY5U6GdZumMW_KTH7UkZ2Z7jEfg1wvr6ckWSTsfXUaxiIuFT_DHYmkmbqt740_YXWVtpF5Sixv0NI4uFhfxCVw1-fcltiwag1EgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:42 GMT', + 'Fri, 18 Jun 2021 16:35:50 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', @@ -95,17 +95,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - EUS ProdSlices', + '2.1.11829.4 - SCUS ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAQAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:42 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAQAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:51 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:42 GMT', + 'Fri, 18 Jun 2021 16:35:51 GMT', 'Content-Length', '1327' ]); @@ -113,7 +113,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/%2B14155550100') .query(true) - .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ + .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -121,15 +121,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'iFDJ7sWMOE61WCbwMH2sOQ.0', + '0/oqhO7TbE6ufoLEkR1wNg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '7302ms', + '2125ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0uli2YAAAAAA8JGja/66xT7IHX8Lm8WMrWVZSMzBFREdFMDQyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0Z8vMYAAAAAAfP6LIwgfUQI0EYqw1q7UYWVZSMzBFREdFMDQwNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:56:49 GMT' + 'Fri, 18 Jun 2021 16:35:53 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.js index dcc80b115816..5148bcd26851 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__get_phone_number_aad/recording_errors_if_phone_number_not_found.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "9db468d876f027cff1a56c0b2ccac1a5"; +module.exports.hash = "72d3da66787ce7ec1b5bd2e51979dcaa"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -25,24 +25,24 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - EUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAQAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:50 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAQAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:53 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevrwyherwr3PetcWM38RupvIQ3jt-26FVx_ZdGWwqu4C3XS9yRmf1F27LFwfMFytlmQAjhXi799PpkZ0N_UFjBLcdjJeBaEv9IdxefkD-ksZf0tk8wivE-su4xvVAmTlh2EATlnHvMCD3MUaKQCaa3OhoD80KzreyVXIJVTW4pmh2MgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevrnfjf2K7DTXof3wGZvv9ZDysn28V48vQHNugP3J7CwDDWrA9aVOdUKTmA1GIfqxaJDk8Ic3F0gFEoH6J5gEP_heNhVzVe7UcV_DIQWsozfpwznmPRER9se7CpOMt-nz5O2vw3LiDuo7X1w3AhtIxg2nfOIg52UwoRcfJKqAj-T_ogAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:50 GMT', + 'Fri, 18 Jun 2021 16:35:53 GMT', 'Content-Length', '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,23 +60,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - NCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAQAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:50 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAQAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:54 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrTKRNrPew_Z0UX6g6rt73MV7hV-8WuWYWBrqQ3n94TjLrZi25r0OoQE0CuFeDI0tePqCDRyaR0tuoFAZ5-iDo0cyBInUc2xk8_dEHxGQL0rrt-Spw0iPoakhZ7--XI8GmOMIDfk-Uoj1qbEtwod5EsJVAXqsWcHNzz11vARJmTk0gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrU3HrRnd8zj66-dWn9DMNrlFDX_fB141Hp8zV3JEKxpOPpfZjzeRLGKwAejBu7fhvyXr1Y-86P5tHdMjHh_ruBln6Dj9av0kHW79L-qIF71xgXVXJpb5UwKkQQdhMd85_Oq3n-NZvK6tFI6VlC3_jjniY3TkKqQNwFz22cGwUXkIgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:50 GMT', + 'Fri, 18 Jun 2021 16:35:53 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', @@ -95,17 +95,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - EUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:50 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:54 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:50 GMT', + 'Fri, 18 Jun 2021 16:35:54 GMT', 'Content-Length', '1327' ]); @@ -113,7 +113,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/%2B14155550100') .query(true) - .reply(404, {"error":{"code":"PhoneNumberNotFound","message":"The specified phone number +14155550100 cannot be found.","target":"phonenumber"}}, [ + .reply(404, {"error":{"code":"NotFound","message":"Input phoneNumber +14155550100 cannot be found.","target":"phonenumber"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -121,15 +121,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '5yk9p4TWLUqOwzMX5IuPiA.0', + 'QzR59mUqFkSbodgsmrnmxQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '950ms', + '351ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0wli2YAAAAADOTk79dFXdQoLL7hJPmgr3WVZSMzBFREdFMDQxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0asvMYAAAAADnaDVouiPgR7+UuwybRNbjWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:56:51 GMT' + 'Fri, 18 Jun 2021 16:35:54 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.js index ab14d1294c7c..dbd063adf362 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists/recording_can_list_all_purchased_phone_numbers.js @@ -1,13 +1,13 @@ let nock = require('nock'); -module.exports.hash = "abe2e819f7fadb19bc1a53535c53a6a0"; +module.exports.hash = "43b58e99c6ce1c8d4df4f3bcbd767346"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers') .query(true) - .reply(200, {"phoneNumbers":[{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"inbound+outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-14T00:23:52.1861991+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-06T23:27:52.858607+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-25T00:03:06.2985305+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-24T23:39:11.2079613+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-26T23:18:22.4715623+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-27T03:05:50.816041+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T17:52:41.818335+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T18:01:46.4199999+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2000-01-01T00:00:00+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}]}, [ + .reply(200, {"phoneNumbers":[{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"inbound+outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-14T00:23:52.1861991+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-06T23:27:52.858607+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-25T00:03:06.2985305+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-24T23:39:11.2079613+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-26T23:18:22.4715623+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-27T03:05:50.816041+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T17:52:41.818335+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T18:01:46.4199999+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2000-01-01T00:00:00+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}]}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -15,15 +15,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'cjAYMqMxbUKz6ep3e3bnbQ.0', + 'kM9OuVzFn0KXEbCP8o/0Rw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1589ms', + '2142ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0yFi2YAAAAADzJmFN0024S5PTfeT4cVtrWVZSMzBFREdFMDMxNgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0csvMYAAAAACjDu27xlBWSo+EhXJjLdP3WVZSMzBFREdFMDMwNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:56:57 GMT' + 'Fri, 18 Jun 2021 16:36:04 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.js index 92e49459a898..f00f4a355543 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lists_aad/recording_can_list_all_purchased_phone_numbers.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "abe2e819f7fadb19bc1a53535c53a6a0"; +module.exports.hash = "43b58e99c6ce1c8d4df4f3bcbd767346"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -25,26 +25,28 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - WUS2 ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:53 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:58 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevrmb6byl4EvAHuSIWwOrJU-06UDUeR8IYOiPKHTeH7l_Ps8mkrHv6csI0sg4h2xuMkHfFsCNflpn-ModolO2SMtt6jtdt8C9ZX051M0PNBQ27xTPOT3AKq3HSeMStgDCMEqiQnED8UrYiwOPBdRy_CVq2UI0OUeYHNQOeWKbdT3h0gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrVJFqZCjOekoTs62J6jyvtagwjZGc9kiRS5ML98fmH3DaqGk8SAuApx2yuycv_g9i4wruWn-ZtCXPlUVHIJ1eLtGrZwtsBYfBneqtLOJjgxAu7ybvQ3uF6VTChCDAg2HUQmvFa_HXsg2obM3-5IxrCSkHbRZj9mROuYRB_rNY1i0gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:53 GMT', + 'Fri, 18 Jun 2021 16:35:58 GMT', 'Content-Length', '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', + 'Content-Length', + '1753', 'Content-Type', 'application/json; charset=utf-8', 'Strict-Transport-Security', @@ -60,28 +62,28 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - SCUS ProdSlices', + '2.1.11829.4 - EUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:53 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:58 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrXjmLnAR6El3MybADvo96oyQhgMp0RveMEgLTpjc9JLa6yKw_7DtIvdpUTwhnxsw9cuE_eGvv57bK4s2nx9wKx4tz7-uic-pYokK5u6CzorNW47wS90qfnNuGZAM-vRpk4QLJcTgdKtrSsQPYPYV20QCHR60y6yv33sSMyC5GgRwgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrtwhQ4NKfzT2yS98l0eCa_oJeQ2fQc-vbWwFsFasT32GBrzUX7189gsbyg6bm89aJpKXXO5WjLeGSy14xemL81Bt8FlAjQeDA3tOGqe-f6L-8XsEU9rUuWKyOXXnPQi3nzjxkJawJE8v4b2VC2jybqJ659US6pyUSYHDq0I7e1nAgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:53 GMT', - 'Content-Length', - '1651' + 'Fri, 18 Jun 2021 16:35:58 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', 'Pragma', 'no-cache', + 'Content-Length', + '1327', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -95,25 +97,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - EUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:54 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:35:58 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:54 GMT', - 'Content-Length', - '1327' + 'Fri, 18 Jun 2021 16:35:58 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers') .query(true) - .reply(200, {"phoneNumbers":[{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"inbound+outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-14T00:23:52.1861991+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-06T23:27:52.858607+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-25T00:03:06.2985305+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-24T23:39:11.2079613+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-26T23:18:22.4715623+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-27T03:05:50.816041+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T17:52:41.818335+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T18:01:46.4199999+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2000-01-01T00:00:00+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}]}, [ + .reply(200, {"phoneNumbers":[{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"inbound+outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-14T00:23:52.1861991+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"geographic","capabilities":{"calling":"outbound","sms":"none"},"assignmentType":"application","purchaseDate":"2021-04-06T23:27:52.858607+00:00","cost":{"amount":1,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-25T00:03:06.2985305+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-05-24T23:39:11.2079613+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-26T23:18:22.4715623+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"inbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-05-27T03:05:50.816041+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T17:52:41.818335+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-02-10T18:01:46.4199999+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}},{"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"outbound","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2000-01-01T00:00:00+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}]}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -121,15 +121,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '/quyVzeSOESA+FBltAje4w.0', + 'NBvvSQa3A0CvjJlgAjMgdA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1819ms', + '2628ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0xli2YAAAAAAT6IjKzaFaSbVoOJo3K5aZWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0b8vMYAAAAABxlFqyNE3CT4vwaNDMrViqWVZSMzBFREdFMDQxOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:56:55 GMT' + 'Fri, 18 Jun 2021 16:36:02 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.js index 61aa9c7c4493..4a84c81c558d 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release/recording_can_purchase_and_release_a_phone_number.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "5b6afe760ef7a0d2145b0dd4fd19d7ff"; +module.exports.hash = "24cf17e5a184ecc379d3cf483e2ba7f3"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -15,7 +15,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'FLvEw029BU2btreSnceLwQ.0', + 'DieGANRAa0WmwFcbtKuzEg.0', 'Operation-Location', '/phoneNumbers/operations/search_sanitized?api-version=2021-03-07', 'operation-id', @@ -25,13 +25,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1919ms', + '2161ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0/1i2YAAAAACyywQxltI8RJKl8hb9Tt4QWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0psvMYAAAAAAtYidbFB2uSafOHC7ZZ8tjWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:52 GMT', + 'Fri, 18 Jun 2021 16:36:56 GMT', 'Content-Length', '0' ]); @@ -39,7 +39,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -51,23 +51,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '88BoN1DDa0yYVwkcxFPWpA.0', + '1T/zZ5bS50CtzJ9fRSh69A.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '402ms', + '344ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0AVm2YAAAAAA0hDroit6nRIcHELD5rf40WVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0qcvMYAAAAABzz0FuCvqdRa6b42prNckkWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:52 GMT' + 'Fri, 18 Jun 2021 16:36:56 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -79,23 +79,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'wdEMMPNMYkG1v/6xek6KjQ.0', + 'wQtY6/dRSUGJ9hR2n+E+Sw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '381ms', + '352ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0A1m2YAAAAACmdVKAbl+NSYxnzAqNsIYnWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0q8vMYAAAAAC6iI69oqKuQ65TsFjEsRC7WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:53 GMT' + 'Fri, 18 Jun 2021 16:36:59 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/availablePhoneNumbers/searchResults/sanitized') .query(true) - .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"none","sms":"inbound+outbound"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-01T16:13:54.5394538+00:00"}, [ + .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"none","sms":"inbound+outbound"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-18T16:52:58.2705202+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -103,17 +103,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '2NL42cg4Wku+EMTPWuQwqA.0', + 'VCqmhgsvCk+aRkMdXwkX7w.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '819ms', + '811ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Blm2YAAAAACpbPDIDenwQ5rZqnrH5//LWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0rsvMYAAAAADzUisO3hqzRJdIiy3VTuMCWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:54 GMT' + 'Fri, 18 Jun 2021 16:37:02 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) @@ -125,7 +125,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'iXNzZyUtEUm/KN847boecg.0', + 'gwNsT0DPMki6FAs+Qv/8WQ.0', 'Operation-Location', '/phoneNumbers/operations/purchase_sanitized?api-version=2021-03-07', 'operation-id', @@ -135,13 +135,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1881ms', + '1693ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0CFm2YAAAAAA2acgAGSulSoJtzDCgsVnUWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0scvMYAAAAADRjDFPBEUmRooJwSnVQ0WAWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:55 GMT', + 'Fri, 18 Jun 2021 16:37:06 GMT', 'Content-Length', '0' ]); @@ -149,7 +149,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -157,23 +157,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'gyPmVQFGfkmhXXyEgv9bkg.0', + 'eOcBORrJVk6iXVtDgQ8UWQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '361ms', + '370ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Clm2YAAAAAD1X1RMo/WhTpZIJhqu6KwgWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0s8vMYAAAAAAuVx6vEF44RqQcws6Rg4PfWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:56 GMT' + 'Fri, 18 Jun 2021 16:37:06 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -181,23 +181,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'VI3JbCOGvkyw3MuusQ+FdA.0', + 'WgbUm76zZEGJSf3/C31j0w.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '368ms', + '350ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0DVm2YAAAAAB9vt/b65n9T4+qtTCJzi4oWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0tcvMYAAAAABjbyg+HIN/Q6EMFRvbgtAhWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:57 GMT' + 'Fri, 18 Jun 2021 16:37:09 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -205,23 +205,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'KEC9IEx1PkC96uMBzJnr+A.0', + 'lWHEF2MUCk6MeQHuewgCtg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '355ms', + '365ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0D1m2YAAAAACb7L/5fWUBTJFmesZbgireWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0uMvMYAAAAABiJEbbi0wfQbcQO4pOfx0JWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:58 GMT' + 'Fri, 18 Jun 2021 16:37:11 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -229,23 +229,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'DBIyKSL1sU2/yKWCy8mcHw.0', + 'EKsQNa4vsUqaRR2IbgRXBQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '378ms', + '354ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Elm2YAAAAACjgrSXajmzQoPGlbcvAb/kWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0usvMYAAAAADHKdY6tdPpSrATSu3njonxWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:59 GMT' + 'Fri, 18 Jun 2021 16:37:14 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -253,23 +253,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'dlb2FUnzW0yOUbD1Ah/ctQ.0', + 'n81KbP5enkOgkSoWcSYK0g.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '381ms', + '347ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0FFm2YAAAAADd77ZrL3RtSI07U6bsZP7fWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0vMvMYAAAAAD0y9QuyONwQZy4IyfEMzfJWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:00 GMT' + 'Fri, 18 Jun 2021 16:37:16 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -277,23 +277,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'iuxorzOhO0mrKndGJU4Svg.0', + 'W/aNNWNGuUa9qLnnFqiQSg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '345ms', + '399ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Flm2YAAAAAB8FWbDWOxNSroh+6oPUeOPWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0v8vMYAAAAADtXdXdnoT2QbbxRB5wUQLVWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:01 GMT' + 'Fri, 18 Jun 2021 16:37:19 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:56.7155171+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -301,71 +301,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'E/XuZHjVg0W5pEZBmXTsAQ.0', + 'd1sltkFiNkSn/EFbRAVnvw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '398ms', + '366ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0GVm2YAAAAAC+NFti/1mkRpM6bhUpeC3VWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0wcvMYAAAAADUM9XeWSfHQKKJ74M20jcoWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:02 GMT' -]); - -nock('https://endpoint', {"encodedQueryParams":false}) - .get('/phoneNumbers/operations/purchase_sanitized') - .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ - 'Transfer-Encoding', - 'chunked', - 'Content-Type', - 'application/json; charset=utf-8', - 'Request-Context', - 'appId=', - 'MS-CV', - 'PnzKsb2xwEyPjThV8LdZCA.0', - 'api-supported-versions', - '2021-03-07', - 'X-Processing-Time', - '449ms', - 'X-Cache', - 'CONFIG_NOCACHE', - 'X-Azure-Ref', - '0G1m2YAAAAAATOtp8iCIKR4wxZH46ZiWGWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', - 'Date', - 'Tue, 01 Jun 2021 15:58:03 GMT' -]); - -nock('https://endpoint', {"encodedQueryParams":false}) - .get('/phoneNumbers/operations/purchase_sanitized') - .query(true) - .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:52.7430147+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ - 'Transfer-Encoding', - 'chunked', - 'Content-Type', - 'application/json; charset=utf-8', - 'Request-Context', - 'appId=', - 'MS-CV', - 'my4pCCqy6kmRWFuimc8pZg.0', - 'api-supported-versions', - '2021-03-07', - 'X-Processing-Time', - '339ms', - 'X-Cache', - 'CONFIG_NOCACHE', - 'X-Azure-Ref', - '0Hlm2YAAAAADI94AZ15dyTpIVQHKmzBNMWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', - 'Date', - 'Tue, 01 Jun 2021 15:58:04 GMT' + 'Fri, 18 Jun 2021 16:37:21 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/%2B14155550100') .query(true) - .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-06-01T15:58:19.4862785+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ + .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-06-18T16:37:20.3026265+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -373,17 +325,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '8PlkZTw44k6h5kwGe89CjA.0', + 'atpOGnc/u0apvAmrMCAh4w.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '969ms', + '1645ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Ilm2YAAAAABPQ/rqgDQ0TaX9It8iO0cIWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0xsvMYAAAAABRhOWGBIkwSLkkzxhGiSPtWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:05 GMT' + 'Fri, 18 Jun 2021 16:37:27 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) @@ -395,7 +347,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'jMTssUPyf0qiNTw7Q6PcAQ.0', + 'WTZqSK4nREOgYUY8mteyOg.0', 'Operation-Location', '/phoneNumbers/operations/release_sanitized?api-version=2021-03-07', 'operation-id', @@ -405,13 +357,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1115ms', + '898ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0I1m2YAAAAABNP40PPFHOQ7qWLU8Y6tP/WVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0x8vMYAAAAACipTCHnOdhRb2+E9uYdl7DWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:06 GMT', + 'Fri, 18 Jun 2021 16:37:28 GMT', 'Content-Length', '0' ]); @@ -419,31 +371,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:58:28.1397279+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ - 'Transfer-Encoding', - 'chunked', - 'Content-Type', - 'application/json; charset=utf-8', - 'Request-Context', - 'appId=', - 'MS-CV', - 'M76a9ifx4UqOjueerFG/uA.0', - 'api-supported-versions', - '2021-03-07', - 'X-Processing-Time', - '289ms', - 'X-Cache', - 'CONFIG_NOCACHE', - 'X-Azure-Ref', - '0JFm2YAAAAACQ4W1nwiP/RpxzZXtxnhsYWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', - 'Date', - 'Tue, 01 Jun 2021 15:58:07 GMT' -]); - -nock('https://endpoint', {"encodedQueryParams":false}) - .get('/phoneNumbers/operations/release_sanitized') - .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:58:28.1397279+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:37:28.2952621+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -451,23 +379,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'ES0IiedtvEmSBRe01VLEBw.0', + 'BdyZE9us80aVO9qDcDR35w.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '305ms', + '366ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0J1m2YAAAAAArqyd8BbNtT43F0j3/sBrrWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0yMvMYAAAAAClDzOmiOgQTJMw3HOmgVf6WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:08 GMT' + 'Fri, 18 Jun 2021 16:37:28 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:58:28.1397279+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:37:28.2952621+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -475,23 +403,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'GQspO9IHcUKWzJtf93uLew.0', + '4j8IUPXIJ0KdlC1TJf2q7w.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '292ms', + '344ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0KVm2YAAAAAAmVaqYO0WiRJCGhHUO3l3vWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0y8vMYAAAAACRqh6EWKYcQ4nTtapCKTiaWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:09 GMT' + 'Fri, 18 Jun 2021 16:37:30 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:58:28.1397279+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:37:28.2952621+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -499,23 +427,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'dcnP9ahoX0KVIMjFI9wojQ.0', + '05zAtU0w7ESebe/UGsONng.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '286ms', + '300ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0K1m2YAAAAAAeNbES2xajRIglazztyrWOWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0zcvMYAAAAACN65igcqQ5R7kLLUePmo0AWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:10 GMT' + 'Fri, 18 Jun 2021 16:37:33 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-01T15:58:28.1397279+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-18T16:37:28.2952621+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -523,15 +451,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'm7X5MakuYkmPOw4cO3mPTw.0', + 'aXMIop8aOEubCbValAmYSg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '296ms', + '457ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Llm2YAAAAACTJFJumsMvRYlmUp2eX+vNWVZSMzBFREdFMDQwOAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '00MvMYAAAAADyOD26hk30Rp3tgszNU4EPWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:11 GMT' + 'Fri, 18 Jun 2021 16:37:35 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.js index 0d2657644643..ae0679bc6d36 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__purchase_and_release_aad/recording_can_purchase_and_release_a_phone_number.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "5b6afe760ef7a0d2145b0dd4fd19d7ff"; +module.exports.hash = "24cf17e5a184ecc379d3cf483e2ba7f3"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -10,8 +10,6 @@ nock('https://endpoint', {"encodedQueryParams":false}) .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/SomeTenantId/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ 'Cache-Control', 'max-age=86400, private', - 'Content-Length', - '980', 'Content-Type', 'application/json; charset=utf-8', 'Strict-Transport-Security', @@ -27,22 +25,24 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - SCUS ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:58 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:36:04 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr1VBlTEYVdYsFvnGijYbG8p-tJbfAe1Ibfuk0T4Bzdr4UfyyD1-O3MVq2_gBU6lVBH0AD5TPNGWRSjhEZ-PtowI2u9BR8ZHL6eZ-v6H6ik593RumP1vKo6nwUoQ9YM5BSXRoNStXXcPMduBM0sO7AQK2giCwhNXHgt2qm26VPh8YgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrWA4TVTVJ--yV-tAaRKSw82dQmlRZrksVnk1wIMoEy4eFe6yyeOum9TXxGrscjBsZRVVQ4JhONBgQ-RGH_8p-epdAGxxjwaiT36ngO5jm9CdDDMM22ThkyoB54Kxs7ETEdqDUFX5VrF1mFJbj8r0AznXWIyNQwDE_xsob-j7n2OggAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:58 GMT' + 'Fri, 18 Jun 2021 16:36:04 GMT', + 'Content-Length', + '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,23 +60,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - WUS2 ProdSlices', + '2.1.11829.4 - SCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:58 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:36:05 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrNlyd1bz9nvJhSlmuPq-dJ7oTHXfYqmO-HwT--eL3j4kIqejYvse5AtBuiy0Z46TBCmBObxzho_tJgP_NnyWImLME1b0QJoLKpUXQRR6pI4u_bi37LcaRYzXQDg7ZBkiXjLsfwUwLZwjpB2b3TDlMby_XWtX5Mh8LjeRgCNWsDFsgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrWUfqJo6CJ7-tp8l1uQZdnbH5Hg3QtJJ3YV6l5FSvSrts7dc0Mtw98QKHGHX-hHDUihskQhI24tjh274XbYTBtohP00omgTX1ZCid6oA_zJjD0B8nq-HcHlOiO6tKY4uRG25JG0O9S7-TxPEjctoxvthAaT2RJXZhVFrPxlzo2z4gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:58 GMT', + 'Fri, 18 Jun 2021 16:36:04 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', @@ -95,17 +95,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAwAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:56:58 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAwAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:36:05 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:56:58 GMT', + 'Fri, 18 Jun 2021 16:36:05 GMT', 'Content-Length', '1327' ]); @@ -121,7 +121,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'TJzSmfJoskiLffWsT42DYA.0', + 'MCw5jaxsc0OKKIdsD/rFKA.0', 'Operation-Location', '/phoneNumbers/operations/search_sanitized?api-version=2021-03-07', 'operation-id', @@ -131,13 +131,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '2668ms', + '2804ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0yli2YAAAAACMvo7fBkEkQrzPoJwr36dhWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0dcvMYAAAAAAf9JYYxgNPRKbq+nb9n31RWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:01 GMT', + 'Fri, 18 Jun 2021 16:36:08 GMT', 'Content-Length', '0' ]); @@ -145,7 +145,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -157,23 +157,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'Ap1V/tUgm0WHmZU0Ln54Zg.0', + 'CigSHtcSJ06zyHQ11V6dbQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '397ms', + '569ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0zVi2YAAAAAC17jxolXNFTZRNH/2pBI6hWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0eMvMYAAAAABIMnGIbChPTYPe2kzfIyR9WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:01 GMT' + 'Fri, 18 Jun 2021 16:36:08 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -185,23 +185,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'm6qcQ+jP3UaJHH73jR1swA.0', + '2iKmajM+XUaK0rHac9hVyg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '451ms', + '357ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0z1i2YAAAAADX8Vo73J4/RqfyOlsSaJTNWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0esvMYAAAAAA86FWamU90QqkDHK5oQzyGWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:02 GMT' + 'Fri, 18 Jun 2021 16:36:11 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/availablePhoneNumbers/searchResults/sanitized') .query(true) - .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"none","sms":"inbound+outbound"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-01T16:13:02.5226656+00:00"}, [ + .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"none","sms":"inbound+outbound"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-18T16:52:09.6164096+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -209,17 +209,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'LpLZN9h4mkitnAtt+SOv5w.0', + 'ApF14udBC0yfrcC1FqW77Q.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '684ms', + '924ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '00li2YAAAAADOQlvM9hJfR7FiuFyjvPZ+WVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0fcvMYAAAAACP0u5xWy5GT46rTuMAMSikWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:03 GMT' + 'Fri, 18 Jun 2021 16:36:14 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) @@ -231,7 +231,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'rbI7uWm8AUOb9fQuW7dERQ.0', + 'Ijj8faEWRUWp3xbyTZ+mhQ.0', 'Operation-Location', '/phoneNumbers/operations/purchase_sanitized?api-version=2021-03-07', 'operation-id', @@ -241,13 +241,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1880ms', + '1862ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '01Vi2YAAAAAD6cllVxVeNQZLojX6beXDcWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0gMvMYAAAAAB24pCALPnWTJxkK7MTldEZWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:04 GMT', + 'Fri, 18 Jun 2021 16:36:18 GMT', 'Content-Length', '0' ]); @@ -255,7 +255,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -263,23 +263,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'rzuqG/7s8k2TYWky2nd0Tw.0', + '5OuM8uL8Xk64AQMf33n5pQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '386ms', + '379ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '01li2YAAAAACvQBD/qnwJR6AIF6thrPSlWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0gsvMYAAAAAB3vCaS82geSI0b3IFTK411WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:05 GMT' + 'Fri, 18 Jun 2021 16:36:18 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -287,23 +287,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'x/anJLWK0ki6l0rsM9ytBg.0', + '0qJeHyB9CU2OsQbAhf9FKg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '448ms', + '590ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '02Vi2YAAAAADZ9yLpCHcETrS8eNagxB4uWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0hMvMYAAAAACJbAgwjlDXR59x/3KHHbGTWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:06 GMT' + 'Fri, 18 Jun 2021 16:36:21 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -311,23 +311,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'JoVIil8EKUud4lUgJCcZxg.0', + 'xX1s5HSj8kixxn15HyHtTw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '373ms', + '432ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '021i2YAAAAADA+fwEC2SEQ5PhyGymivLrWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0h8vMYAAAAAD8AUDDixgdQLaGr2hrH+PpWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:07 GMT' + 'Fri, 18 Jun 2021 16:36:23 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -335,23 +335,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'gj78CoR4OU6h6I8ZgI1ZmA.0', + 'eY9D/SqXJUm4JWXTVepS8Q.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '603ms', + '379ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '03li2YAAAAABTcvdrjFCzTaAi3LSuLOMdWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0icvMYAAAAABxjdOXjcJZQYQKS4Shn+8JWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:08 GMT' + 'Fri, 18 Jun 2021 16:36:26 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -359,23 +359,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'uW7f1tXH1U+dOzsTPUpIhg.0', + '+HLcTPqDY06YvTkZfL+uQg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '387ms', + '388ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '04Fi2YAAAAACp1khBTDucTYBa9ZM5KkrIWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0jMvMYAAAAAAQV17OMRsgR6xULrUZhpO5WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:09 GMT' + 'Fri, 18 Jun 2021 16:36:28 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -383,23 +383,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'Ek1TA1dTW0m1lVGKQWTLRg.0', + 'asqsJTp/Ck66+WDunA9Wlw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '672ms', + '359ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '041i2YAAAAAADmUXeU5JrQbtv+ofTyujQWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0jsvMYAAAAADjiRBQweHjTb9hGK5JynmwWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:10 GMT' + 'Fri, 18 Jun 2021 16:36:30 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -407,23 +407,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '33L4rG8Jd0SzYMMkR/juMQ.0', + 'iqSaEKWk/0aTV1f+80JQ5g.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '729ms', + '577ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '05li2YAAAAAAEhsH50DQIQLRdZLiZaeigWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0kcvMYAAAAADWIoF679ZKTK9BiKrK5mumWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:11 GMT' + 'Fri, 18 Jun 2021 16:36:33 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/purchase_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:00.9955753+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:07.8086229+00:00","id":"purchase_sanitized","operationType":"purchase","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -431,23 +431,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '0ihd+d1SRUyZkgDeYXcssQ.0', + '8V/chfNreUCOKu5ASrFGdw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '692ms', + '373ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '06Fi2YAAAAABJme+tg2heRrPFJ/svPTxSWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0k8vMYAAAAAADVch+A5aOSrao/RG66cK2WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:12 GMT' + 'Fri, 18 Jun 2021 16:36:35 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/%2B14155550100') .query(true) - .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-06-01T15:57:27.6669826+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ + .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"inbound+outbound"},"assignmentType":"application","purchaseDate":"2021-06-18T16:36:33.156404+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -455,17 +455,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'PmXjXtFZCEusd71L2afsZA.0', + 'JZ4SOp+HVE6fmkxRQ+FdWw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1105ms', + '1384ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '07Vi2YAAAAAAPcZHK/POaR6dyKg5eMKLtWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0mMvMYAAAAAAGkDyRTGvaRLdWYYDdRkKBWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:13 GMT' + 'Fri, 18 Jun 2021 16:36:41 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) @@ -477,7 +477,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'Nsgyp/U1F0id/x0STSwsGA.0', + 'xOeRAOQsL0KQKUSRWqRzKA.0', 'Operation-Location', '/phoneNumbers/operations/release_sanitized?api-version=2021-03-07', 'operation-id', @@ -487,13 +487,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1507ms', + '1052ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '07li2YAAAAACHvS8YEezYQoz5lydnwvmEWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0mcvMYAAAAAC1AH9pxpUJQ45YpADcvLLuWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:14 GMT', + 'Fri, 18 Jun 2021 16:36:42 GMT', 'Content-Length', '0' ]); @@ -501,7 +501,31 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:35.7085025+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:42.286569+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + 'Transfer-Encoding', + 'chunked', + 'Content-Type', + 'application/json; charset=utf-8', + 'Request-Context', + 'appId=', + 'MS-CV', + 'V+bSK7fs9UKnasknwxKm/w.0', + 'api-supported-versions', + '2021-03-07', + 'X-Processing-Time', + '294ms', + 'X-Cache', + 'CONFIG_NOCACHE', + 'X-Azure-Ref', + '0msvMYAAAAAAWZl8/zoSoRobIkdZ5DNbVWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + 'Date', + 'Fri, 18 Jun 2021 16:36:42 GMT' +]); + +nock('https://endpoint', {"encodedQueryParams":false}) + .get('/phoneNumbers/operations/release_sanitized') + .query(true) + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:42.286569+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -509,23 +533,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'GM4vHzUqtkSExZif9ZQpKg.0', + 'OFXGT/BLFESM9xOZweSqug.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '370ms', + '310ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '08Fi2YAAAAADUZNsYXiO/Rbvm3elvPs3iWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0ncvMYAAAAAD4ClT0E8MaQosaL4JpA738WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:15 GMT' + 'Fri, 18 Jun 2021 16:36:45 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:35.7085025+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:42.286569+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -533,23 +557,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'kQL1fHVVLkG9Zog/i4y99w.0', + 'n/OyEPhqWkSJSv9+9jSMpQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '3865ms', + '491ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '08li2YAAAAAAvIDRX/nqNTrmiJd9JgoP3WVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0n8vMYAAAAAAy88rNBfegSpb+NyFYKkg6WVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:16 GMT' + 'Fri, 18 Jun 2021 16:36:47 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/release_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-01T15:57:35.7085025+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":null,"createdDateTime":"2021-06-18T16:36:42.286569+00:00","id":"release_sanitized","operationType":"releasePhoneNumber","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -557,15 +581,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'lkWcKyZykU+VEIN8GsBauQ.0', + '4K25XunquEaJ9P6alt4kqg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '2260ms', + '296ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0+Fi2YAAAAAD4z1WA+05dSba3hrwduFjgWVZSMzBFREdFMDMxMgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0osvMYAAAAABnZayl7tXrT7iETkScwtYRWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:57:17 GMT' + 'Fri, 18 Jun 2021 16:36:50 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.js index bd5609b31861..099e1d01364b 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_can_search_for_1_available_phone_number_by_default.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "f76a45252c41cb8825081d8f3c86bb35"; +module.exports.hash = "54fc9ee98e5f24aed78d2ab61a21b45d"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -15,7 +15,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'l78/KijTj0CkZbD6DuLGYA.0', + 'WXU0FowMukeSmU0otcpQpA.0', 'Operation-Location', '/phoneNumbers/operations/search_sanitized?api-version=2021-03-07', 'operation-id', @@ -25,13 +25,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '2332ms', + '2387ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0QVm2YAAAAADmp+5cdpBiTIzXEtlL1VYNWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '04svMYAAAAAA5FFbmfg9KTb5JC40Efg1iWVZSMzBFREdFMDMyMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:00 GMT', + 'Fri, 18 Jun 2021 16:37:56 GMT', 'Content-Length', '0' ]); @@ -39,7 +39,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:58:59.6143975+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:37:56.5914269+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -51,23 +51,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'CbnAj5r0+kezHxfOjoblAw.0', + 'RAbU/uvvv0OpAOf6kA922w.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '377ms', + '615ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0RFm2YAAAAAAOlby80ufYTpzIWKnVv6xFWVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '05cvMYAAAAACr56b98+JERopbN28ZjuVlWVZSMzBFREdFMDMyMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:00 GMT' + 'Fri, 18 Jun 2021 16:37:57 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:58:59.6143975+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:37:56.5914269+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -79,23 +79,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'Iyd4lTRBbU+vfnoEVDy/xA.0', + 'hMOpri8/y02V1tUBaGflvg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '390ms', + '363ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Rlm2YAAAAACLI0G8AWOwRasVEVTfrW43WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '058vMYAAAAAAII6T1XHFNQry51VLFnrftWVZSMzBFREdFMDMyMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:02 GMT' + 'Fri, 18 Jun 2021 16:37:59 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/availablePhoneNumbers/searchResults/sanitized') .query(true) - .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"outbound","sms":"none"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-01T16:15:01.7257558+00:00"}, [ + .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"outbound","sms":"none"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-18T16:53:58.7981179+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -103,15 +103,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '8ofmiOuEEk+vNIVqtfmMiw.0', + 'kHkM6d/VTEefTQAIEzY5yw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '837ms', + '802ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0SFm2YAAAAADmiyy9U6OeT6qEAz4oMaU+WVZSMzBFREdFMDMyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '06svMYAAAAAA62ZdvDyhITKTYBWXedyjeWVZSMzBFREdFMDMyMAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:05 GMT' + 'Fri, 18 Jun 2021 16:38:02 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.js index 0ce55b53c590..736a15e1a076 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search/recording_throws_on_invalid_search_request.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "762f6deafb4b1dcf3df7b9c9b10d521b"; +module.exports.hash = "c2062ea5f2048a6c30795f545cbe7db3"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -15,15 +15,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'Lxe8VXgtdECePdz4k2+OsQ.0', + '6h62eGZKf0y3cvasS5Kvag.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1033ms', + '1940ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0S1m2YAAAAABQDwGYqogrSo+iSEKdCtx1WVZSMzBFREdFMDQyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '07cvMYAAAAACRMlGwBt7bTLnOHBy0AY/LWVZSMzBFREdFMDQyMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:08 GMT' + 'Fri, 18 Jun 2021 16:38:07 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.js index c1fa41efacc4..915c9042170b 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_can_search_for_1_available_phone_number_by_default.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "f76a45252c41cb8825081d8f3c86bb35"; +module.exports.hash = "54fc9ee98e5f24aed78d2ab61a21b45d"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -25,24 +25,24 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - WUS2 ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAwAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:58:42 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAwAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:37:40 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevraGbc4njBZuToWvIbAoRUYKFnPaSvOJSgFwtQJTsqWCa3GSuHDgmzlKe42ndiijgGrXhy1H_DB9UawCIdrb8ZGdR6JBbO0uF637_4RataXiLVQW6qAJEiAvqAHXcTv0qb9O61cNgcU30aT_IO9XPdJInjvxXqN8PyjTYfNk3eFlwgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrgdMc9h8KJ75v5G-v0HfiAzyi9ITWARQgp4lxHUQkfumoATegsBqc-K4292CZAKSivejnGE7g3nl6416xV1tXqPsY_A0-jvw80cscWA4HNMI73QJNnFtXtfjz9jBuma8n4r6wAYZXDpXluY4TBm8VnALNoJlrU3LGv7yCUEpV0-kgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:58:42 GMT', + 'Fri, 18 Jun 2021 16:37:40 GMT', 'Content-Length', '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,28 +60,30 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - EUS ProdSlices', + '2.1.11829.4 - SCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SAwAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:58:42 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SAwAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:37:40 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrFf34oSaittwxALtxlBB0Kg1uS81_g-xnrXWMl6if7ekeryVnOSkcOZyRXtxcmmqMRwSEPfeaPQyjLeqM2DqMF-XKTNoV4320rIiQKNK-pMBuRiTY7eT8b_4TAbtxtsJiNesQtENStrywlH3pO2C_avlcgwDWduLjfI0v9a0XixogAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrW22qCpT7bKjAbHGZJFmKj9DnCWNKxHdeUYm_3KsgbvfYAsil4TNZiydAav9xli9RtLswD_5Cdxy8PBuYe8U7A7p42jrFeI7tqkD7i8Z9F0GWLD7Hvsm4AIC7b-U0Wzb8sr6Pf2oEF8w9cr3bGavWNN5dZN5W1AX39qk-aJqU3eMgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:58:42 GMT', + 'Fri, 18 Jun 2021 16:37:40 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', 'Pragma', 'no-cache', + 'Content-Length', + '1327', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -95,19 +97,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - SCUS ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBAAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:58:42 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBAAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:37:41 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:58:42 GMT', - 'Content-Length', - '1327' + 'Fri, 18 Jun 2021 16:37:41 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) @@ -121,7 +121,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'ZcSC+9iKykCWPf+xE59pRA.0', + 'I/lcNC72+0WVuF3L0JY0KA.0', 'Operation-Location', '/phoneNumbers/operations/search_sanitized?api-version=2021-03-07', 'operation-id', @@ -131,13 +131,13 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '2267ms', + '1669ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0M1m2YAAAAABNO7P4GXZPQLmjSuDz9AutWVZSMzBFREdFMDMxNgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '01cvMYAAAAADpWh/Xzy5XRpGEG7edZf+LWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:44 GMT', + 'Fri, 18 Jun 2021 16:37:43 GMT', 'Content-Length', '0' ]); @@ -145,7 +145,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:58:45.1779544+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"notStarted","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:37:42.865191+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -157,23 +157,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'oW9HISo5MUy628W+WlMdgw.0', + 'y/qGANY9oUSFi+fB/Gy6Eg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '509ms', + '350ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0NVm2YAAAAAA7vFCTwrczTJ715o9f5HOdWVZSMzBFREdFMDMxNgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '018vMYAAAAAAOpbIZaMegSJF4vNZCWs55WVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:45 GMT' + 'Fri, 18 Jun 2021 16:37:43 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/search_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-01T15:58:45.1779544+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":"/availablePhoneNumbers/searchResults/sanitized?api-version=2021-03-07","createdDateTime":"2021-06-18T16:37:42.865191+00:00","id":"search_sanitized","operationType":"search","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -185,23 +185,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'nfK8OJfRP0GmBUryuZfNHw.0', + '8Q8/LwRwXkC1CN+EG45FJA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '385ms', + '377ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0OFm2YAAAAABRw2fvHLVDQZ7bIFoprpglWVZSMzBFREdFMDMxNgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '02cvMYAAAAAAceSSo4hfGSbkqg3TS5kSyWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:47 GMT' + 'Fri, 18 Jun 2021 16:37:46 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/availablePhoneNumbers/searchResults/sanitized') .query(true) - .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"outbound","sms":"none"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-01T16:14:48.1312872+00:00"}, [ + .reply(200, {"searchId":"sanitized","phoneNumbers":["+14155550100"],"phoneNumberType":"tollFree","assignmentType":"application","capabilities":{"calling":"outbound","sms":"none"},"cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"},"searchExpiresBy":"2021-06-18T16:53:44.3704025+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -209,15 +209,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'VfbbdjPAnU+Gw0tSanUk1g.0', + 'Krt+hD2Sz069yZ5HDUQujg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '739ms', + '744ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Olm2YAAAAABhmeTsSwkvTYiaJ9j/dqCvWVZSMzBFREdFMDMxNgA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '03MvMYAAAAABFqfoSHW+WTpKiwB5vRTiOWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:50 GMT' + 'Fri, 18 Jun 2021 16:37:48 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.js index 6e99c63416dd..3c1b0f147f5a 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__search_aad/recording_throws_on_invalid_search_request.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "762f6deafb4b1dcf3df7b9c9b10d521b"; +module.exports.hash = "c2062ea5f2048a6c30795f545cbe7db3"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -25,24 +25,24 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - WUS2 ProdSlices', + '2.1.11829.4 - SCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBAAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:58:53 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBAAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:37:51 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrJs4k13CFamT3NSGl_mC8dv0ZpbmUZ21WPabwEMt3N5nfiumJAieFKB6LXo-dRuxpGLR5iUldzSzJST24ymwsnZm4PNsWQPq-pW2LF-_q5HLJqisZZfCJjKezTvkzcAkFMbOCBAsKOvWfYkhYTSzed4PRvhgKAR2yJwlzvwnl4lwgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrxNJRycxIR1EL2MFv93WAsUIdcWznq33KPLLkZEpk6meUe_8mtj4OGh1u2njff47_PKVFdiJlswUAPoZNUk-lhxOZ4SVRIzm4IInaoUr11XFYKFtmG2Gia1HugFPcfVGu3N201BpSPH5UAYCY8BbLGPvK-XxnGZ6qqAUcjCZ6sSQgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:58:53 GMT', + 'Fri, 18 Jun 2021 16:37:50 GMT', 'Content-Length', '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,23 +60,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - EUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBAAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:58:53 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBAAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:37:51 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrELDBizGHwxj5d2lV8T1TM8lwa5NS2eSoNCQMqolvJ2DItLIJZc-2-dsCPMgnAda32kNiu4m0_MAX2tFvpj4Hzc5Imlfb25DZIlr6PatP25oFGSk1C6UZy2TPTVFf5JTgQMDxHCfsprs_GfPJF9a2iSLGnF4EBbQK9NB3yyLEucsgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrjRrwfd7JZZMY774lJvDeEU0o9RONVjoJCCYqbLtQxnN4MA4J9BxvQlBCbnro_OvXTcqxBA4b8uegZ5YlLnI7WWatMPtjPujYEE-JlBHf1fLaiZjRt0J7Shtq9pxv8xJaFtz_lOsLZD2o-x2lsBsGkpgSZwfK1xfGZ9cer-XzEHQgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:58:53 GMT', + 'Fri, 18 Jun 2021 16:37:51 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', @@ -95,17 +95,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - WUS2 ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBQAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:58:53 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBAAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:37:51 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:58:53 GMT', + 'Fri, 18 Jun 2021 16:37:51 GMT', 'Content-Length', '1327' ]); @@ -121,15 +121,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'yvR2BaQK20aM/y4RJiPC2A.0', + 'WkgNKq8tNEOophFF/SODkA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '3453ms', + '2002ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0PVm2YAAAAAAZQPk1nuhZS7ZV+qoGJHZ2WVZSMzBFREdFMDQxNAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '04MvMYAAAAAAz+Djd8HsRQ4LIYv4ZVh/WWVZSMzBFREdFMDMxOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:58:57 GMT' + 'Fri, 18 Jun 2021 16:37:53 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.js index 1d9e716f7ac6..ebbb8bef9550 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_can_update_a_phone_numbers_capabilities.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "d283ef4ee7ab0823ebb4f6397922c643"; +module.exports.hash = "c712c9c77d67bd041a87c0cfd72c611f"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -19,7 +19,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'ZNng7olGG0q3e0Ep/Lvl3w.0', + 'I99VikQapUCozl5S/WyOtw.0', 'Operation-Location', '/phoneNumbers/operations/capabilities_sanitized?api-version=2021-03-07', 'operation-id', @@ -29,19 +29,19 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '2022ms', + '1785ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0XVm2YAAAAABiHHm0keUdSKduK2gG+RepWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0A8zMYAAAAAB3ggB+vQgHTpdUTovnM/l3WVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:26 GMT' + 'Fri, 18 Jun 2021 16:38:28 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:26.9785389+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:28.5782722+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -53,23 +53,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'v6D9Bli9OkuYgMyivF/5Ug.0', + 'jqhrRy/v5ECHH4kHTR89aw.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '318ms', + '391ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0X1m2YAAAAACVkAZmPGJAT6Scq806HEHZWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0BMzMYAAAAACnEkLQqM1SQ4u8ASmgNGrbWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:27 GMT' + 'Fri, 18 Jun 2021 16:38:28 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:26.9785389+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:28.5782722+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -81,23 +81,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'PrrOv5kQU0yiX0CP7s21yQ.0', + 'nq3C7t8F+UOL/4yGWj8NIg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '324ms', + '298ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0YVm2YAAAAACThWXxs+1pQZU/GmsXaYS7WVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0B8zMYAAAAACJyLQn5ajbS7RH4GQNWKltWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:29 GMT' + 'Fri, 18 Jun 2021 16:38:31 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:26.9785389+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:28.5782722+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -109,23 +109,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'FRe0z8D7Uk253pGHfnQKDA.0', + 'jXXTRhZlrUCMOdmQpWppFg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '326ms', + '304ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0ZFm2YAAAAAAjDcqiPACOTryCiOuREeBzWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0CczMYAAAAAB3VvNfPGagSoG0bGVhlzeZWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:31 GMT' + 'Fri, 18 Jun 2021 16:38:33 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:26.9785389+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:28.5782722+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -137,23 +137,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'jtqtFnGE6EyuGByegQdfnQ.0', + 'gfq27MjhO06jUEOjSLl5PQ.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '325ms', + '297ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Zlm2YAAAAAAYC+tttu42RYIUM3KQb69OWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0DMzMYAAAAACWu1aerjVCRYGLexL5MS8SWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:34 GMT' + 'Fri, 18 Jun 2021 16:38:35 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:26.9785389+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:28.5782722+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -165,23 +165,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - '4V6cApOZaE2aD4p59tuqpg.0', + 'ibRBzJvoFky4Uh8URmmGEg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '341ms', + '294ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0aFm2YAAAAABVp/CH69/BR5rKJgQOvQxPWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0DszMYAAAAACwoYCPkDb5SaTcKFXPUFtHWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:36 GMT' + 'Fri, 18 Jun 2021 16:38:38 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/+14155550100') .query(true) - .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ + .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -189,15 +189,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'WgQQDptpKUew5zLIo+4U8A.0', + 'aXFNE3dQS0Wr+aC0R3a9GA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1442ms', + '1153ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0a1m2YAAAAAAMiBKwlXTSRoiEMBzb6i7EWVZSMzBFREdFMDMxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0EMzMYAAAAACfhh7GaNiZSJXoebTY7IjOWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:39 GMT' + 'Fri, 18 Jun 2021 16:38:41 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.js index 152e3cb9ee2f..7e178fb2a2fe 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update/recording_update_throws_when_phone_number_isnt_owned.js @@ -1,27 +1,29 @@ let nock = require('nock'); -module.exports.hash = "a029440b94d74f4bb37d8021fa55d003"; +module.exports.hash = "9d22e91b3c0859e19eebf021b89a898f"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} nock('https://endpoint', {"encodedQueryParams":false}) .patch('/phoneNumbers/%2B14155550100/capabilities', {"calling":"none","sms":"outbound"}) .query(true) - .reply(404, "", [ + .reply(404, {"error":{"code":"InternalError","message":"The server encountered an internal error."}}, [ + 'Transfer-Encoding', + 'chunked', + 'Content-Type', + 'application/json', 'Request-Context', 'appId=', 'MS-CV', - 'A1uTBbq3nk2rB2RHx2xxiQ.0', + 'QdMD7Y75oUuEz/OnGua9RA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '277ms', + '301ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0blm2YAAAAAApYfcZTdxvQ4um59ELvNWHWVZSMzBFREdFMDMxNAA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0FMzMYAAAAAAJQcr/2q+HTrABQAGhIAtoWVZSMzBFREdFMDQxNQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:42 GMT', - 'Content-Length', - '0' + 'Fri, 18 Jun 2021 16:38:43 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.js index c4f071a6151f..b8c0d8bada6b 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_can_update_a_phone_numbers_capabilities.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "d283ef4ee7ab0823ebb4f6397922c643"; +module.exports.hash = "c712c9c77d67bd041a87c0cfd72c611f"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -10,6 +10,8 @@ nock('https://endpoint', {"encodedQueryParams":false}) .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/SomeTenantId/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ 'Cache-Control', 'max-age=86400, private', + 'Content-Length', + '980', 'Content-Type', 'application/json; charset=utf-8', 'Strict-Transport-Security', @@ -25,24 +27,22 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - EUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBQAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:59:09 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBAAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:38:07 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevrwoi2iwp2FqJTHHrEUb8OOxFK3AbrYkK1dz-2DieHdOv8zEtAdSha35VOoqy12mEvulJHPar7a1DxT8fTcMg8mtrdwN_UucjHwT6boS4bzHvCQbDu3fHGOyahGU7sEVAFAB4UKRTdmf3jYaS5weC5mkeLfPkgPVB0BtixLvw710EgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrQLLp2GiTlCwtak-vNuGKhmWT9ZIfsNIQkbygbgi26gc8MELamdFQ22t9rtt8XZAAXxr637cxo2RyRd6kpKU1jGYSMm_wPZRqtT1U4W1Vw9GnMSOaJKEpUrV-b55ME6yBwZY4p_w5ORdsdVyGou5Zc_mC6pWxtApCMXxrPsTrUmUgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:59:09 GMT', - 'Content-Length', - '980' + 'Fri, 18 Jun 2021 16:38:07 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,23 +60,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBQAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:59:09 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBAAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:38:07 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevrd7SWgSyhEUyUws6pob7eZZzvfiahwd95DoOxxmqhu5IlJVpiIC8x6SanJm07cPYBWqyBbz0gvohetw-NsCDoWMIylitQgueaR-CY3Y3kqJ9Xqa_3kTGIl6H0lpOnLhr4NdKLMLq3AlBV_ZJ__JTLJhY2sH9e7y4sSVjOBahUh68gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrTEfa8rKIDDZeYvLoB0YlDO8TzsLnWieJkJV3_UF2de8aVvdGVXP2hlOM4NCA_XNt4O3w2sTpyt_lJ0UH3nv7ta6TStCzpKYarA77vR7339ebPVGkB1GuhzglpAEI4PbKUoxSIHS5GSK6cWT_1IsM21cJtNlh_XHK3jzt8Fvt_q4gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:59:09 GMT', + 'Fri, 18 Jun 2021 16:38:07 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', @@ -95,17 +95,17 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - WUS2 ProdSlices', + '2.1.11829.4 - EUS ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:59:09 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBQAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:38:07 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:59:09 GMT', + 'Fri, 18 Jun 2021 16:38:07 GMT', 'Content-Length', '1327' ]); @@ -125,7 +125,7 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'TLxm0aJrKE6R5971NCZYfA.0', + 'tggij5FFtUiiWqfEdemqDA.0', 'Operation-Location', '/phoneNumbers/operations/capabilities_sanitized?api-version=2021-03-07', 'operation-id', @@ -135,19 +135,47 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1702ms', + '2254ms', + 'X-Cache', + 'CONFIG_NOCACHE', + 'X-Azure-Ref', + '078vMYAAAAACb4UfzFLE7S52RpLriak1wWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + 'Date', + 'Fri, 18 Jun 2021 16:38:09 GMT' +]); + +nock('https://endpoint', {"encodedQueryParams":false}) + .get('/phoneNumbers/operations/capabilities_sanitized') + .query(true) + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:09.7065242+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + 'Transfer-Encoding', + 'chunked', + 'Content-Type', + 'application/json; charset=utf-8', + 'Location', + '/phoneNumbers/+14155550100?api-version=2021-03-07', + 'Access-Control-Expose-Headers', + 'Location', + 'Request-Context', + 'appId=', + 'MS-CV', + 'Iu8y07y+GUGEs3Go8s53Jg.0', + 'api-supported-versions', + '2021-03-07', + 'X-Processing-Time', + '433ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0TVm2YAAAAAAXrPYkZtVdSZpgTLVCSPPBWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '08svMYAAAAAC+cW6hXAp8Q6albT3fzJeqWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:11 GMT' + 'Fri, 18 Jun 2021 16:38:10 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"notStarted","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:11.1185548+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:09.7065242+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -159,23 +187,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'p5alFMGbYkK1mRdo1eg3AA.0', + 'oXomvaAW0EC5u9BA5m9VQA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '316ms', + '308ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0T1m2YAAAAABd5rH+gIATQ6Ba3JP+wrKEWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '09MvMYAAAAAAloP2DIGrTSqPQXbTozxtTWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:11 GMT' + 'Fri, 18 Jun 2021 16:38:12 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:11.1185548+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:09.7065242+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -187,23 +215,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'ojjnbYg5QECEkWpBFMBBpg.0', + 'L2/xcxMI+kSoohQJafrAKg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '552ms', + '304ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0UVm2YAAAAAClePrdyMnHSKNG8NcIC+FsWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '098vMYAAAAADttYVy9qodS47hqHRreS0fWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:14 GMT' + 'Fri, 18 Jun 2021 16:38:15 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:11.1185548+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"running","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:09.7065242+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -215,23 +243,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'iwPUuQmXdEiumaQ6CCMVBg.0', + 'h15uC+rPcE6AU1DsMIQ8Tg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '316ms', + '302ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0VFm2YAAAAACBGWfOkI30RKGUZLlnuHnoWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0+cvMYAAAAAAY3DoyNBV5R6GtWaWImU4sWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:16 GMT' + 'Fri, 18 Jun 2021 16:38:17 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/operations/capabilities_sanitized') .query(true) - .reply(200, {"status":"succeeded","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-01T15:59:11.1185548+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ + .reply(200, {"status":"succeeded","resourceLocation":"/phoneNumbers/+14155550100?api-version=2021-03-07","createdDateTime":"2021-06-18T16:38:09.7065242+00:00","id":"capabilities_sanitized","operationType":"updatePhoneNumberCapabilities","lastActionDateTime":"0001-01-01T00:00:00+00:00"}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -243,23 +271,23 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'HJmsVjC11UOr39yEjf5MjQ.0', + 'hqUA5kh2nUWKf4M2F6690Q.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '344ms', + '307ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0Vlm2YAAAAAAUc9mEODOCRKVWtX/kWHqDWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0+8vMYAAAAAA1VptBHeVSSoUjTtzXGppkWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:18 GMT' + 'Fri, 18 Jun 2021 16:38:19 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/phoneNumbers/+14155550100') .query(true) - .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:01:55.0949003+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ + .reply(200, {"id":"14155550100","phoneNumber":"+14155550100","countryCode":"US","phoneNumberType":"tollFree","capabilities":{"calling":"none","sms":"outbound"},"assignmentType":"application","purchaseDate":"2021-03-09T15:03:04.7513808+00:00","cost":{"amount":2,"currencyCode":"USD","billingFrequency":"monthly"}}, [ 'Transfer-Encoding', 'chunked', 'Content-Type', @@ -267,15 +295,15 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'Request-Context', 'appId=', 'MS-CV', - 'FTy6B6yfT0OP+gqD8eKi0w.0', + 'Jy4qSxQn40GQyH3yYwUhlg.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '1021ms', + '1346ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0WVm2YAAAAADI8N6jcD4MSoSSO5GBzfiNWVZSMzBFREdFMDQwOQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0/svMYAAAAADzyRudf9A8TrBjhM4bNAEQWVZSMzBFREdFMDMxMQA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:21 GMT' + 'Fri, 18 Jun 2021 16:38:23 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.js b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.js index 9a4802debde4..4c1a127dc915 100644 --- a/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.js +++ b/sdk/communication/communication-phone-numbers/recordings/node/phonenumbersclient__lro__update_aad/recording_update_throws_when_phone_number_isnt_owned.js @@ -1,6 +1,6 @@ let nock = require('nock'); -module.exports.hash = "a029440b94d74f4bb37d8021fa55d003"; +module.exports.hash = "9d22e91b3c0859e19eebf021b89a898f"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} @@ -25,24 +25,24 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.21 - WUS2 ProdSlices', + '2.1.11829.4 - EUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:59:24 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBQAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:38:25 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr7TnBck8pxKJmCT4YxyorRwpqVuhN2c8uaM5mifipybCge_mRADKP1R6UJlQP4Srq1DYxNUhyDkkV5-BSG0vLqwiJyyk7hTkUY2yk5L4Dbn39JxlnnsM4-cLDRof47CtRjKvEax-4NdxQ1F843TBaAnuxY6bjNTHWxi4J1v_riuAgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrE8dretEml899GRHl-N341VdqX3sFB_f-YrQAn6-DKWoBTUZaLK8OfSFA8Faf8B9_CsSrDrKBhe4wpA3tNswfsJS5AVbNzlIQfIHjvXCROLQ2tkf1JsXQwE3t1PE_7GhroiN11nTDwu6j_FzsfKhehlHulvgsv-LgzuMN8XZ36YogAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:59:24 GMT', + 'Fri, 18 Jun 2021 16:38:25 GMT', 'Content-Length', '980' ]); nock('https://endpoint', {"encodedQueryParams":false}) .get('/SomeTenantId/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/SomeTenantId/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/SomeTenantId/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/devicecode","http_logout_supported":false,"frontchannel_logout_supported":false,"end_session_endpoint":"https://login.microsoftonline.com/SomeTenantId/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/SomeTenantId/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -60,28 +60,30 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:59:24 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBQAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:38:25 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr5erknc1cq2HiqJ1ikxgqep9Eve5MZR9MQXljQPwQ7pV6mv-BeP2pMJKZm2MuV8MjkfK8c72w7aknetj7AfIEeVO6UseONgb_xszpvL8L4BjbC1nalYgXEJRKN5heKfJwmzcaN44ig-FF04QeVlAxmjwZPTBqYEt7goI6F5O9QtYgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrfKsrZEh5TYxNLB6-bIyRz80-dst8wyjToCRTCX5lpnvJRMtL9l4PSQUmUZ2epK96OsQYzyKzCXQbd6avpa0OMsO731PZW6c7Ek8-h_iIIge8ziHuoI3ltL2ecPZMGjChpwp5zPLvfjje716FV25dh3FpwIVDouAILfBNZSUx6BMgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:59:24 GMT', + 'Fri, 18 Jun 2021 16:38:25 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://endpoint', {"encodedQueryParams":false}) - .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fcommunication.azure.com%2F%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=sanitized&client_secret=SomeClientSecret") + .post('/SomeTenantId/oauth2/v2.0/token', "client_id=SomeClientId&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=win32&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=sanitized&client_secret=SomeClientSecret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', 'Pragma', 'no-cache', + 'Content-Length', + '1327', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -95,39 +97,39 @@ nock('https://endpoint', {"encodedQueryParams":false}) 'x-ms-request-id', 'sanitized', 'x-ms-ests-server', - '2.1.11722.26 - WUS2 ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=AtoRK8gNCytBsgelMsPAEVxWyo4SBgAAALlPSNgOAAAA; expires=Thu, 01-Jul-2021 15:59:24 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Akx-rKIenedChRbNwm0wEmhWyo4SBgAAAGbCXtgOAAAA; expires=Sun, 18-Jul-2021 16:38:26 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Tue, 01 Jun 2021 15:59:24 GMT', - 'Content-Length', - '1327' + 'Fri, 18 Jun 2021 16:38:25 GMT' ]); nock('https://endpoint', {"encodedQueryParams":false}) .patch('/phoneNumbers/%2B14155550100/capabilities', {"calling":"none","sms":"outbound"}) .query(true) - .reply(404, "", [ + .reply(404, {"error":{"code":"InternalError","message":"The server encountered an internal error."}}, [ + 'Transfer-Encoding', + 'chunked', + 'Content-Type', + 'application/json', 'Request-Context', 'appId=', 'MS-CV', - 'i4XGcpfr/0SW7kuxkulw9g.0', + 'ON3o+UzWtUiWFeOM/BghGA.0', 'api-supported-versions', '2021-03-07', 'X-Processing-Time', - '327ms', + '442ms', 'X-Cache', 'CONFIG_NOCACHE', 'X-Azure-Ref', - '0XFm2YAAAAADhsEI3RfgsSreBUV32r4ZAWVZSMzBFREdFMDMxMwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', + '0AszMYAAAAABDyph1+u3WQandjyKyumqTWVZSMzBFREdFMDQxNwA5ZmM3YjUxOS1hOGNjLTRmODktOTM1ZS1jOTE0OGFlMDllODE=', 'Date', - 'Tue, 01 Jun 2021 15:59:25 GMT', - 'Content-Length', - '0' + 'Fri, 18 Jun 2021 16:38:26 GMT' ]); diff --git a/sdk/communication/communication-phone-numbers/samples/v1/javascript/README.md b/sdk/communication/communication-phone-numbers/samples/v1/javascript/README.md index bfb8722a37f8..fb0a25591cb1 100644 --- a/sdk/communication/communication-phone-numbers/samples/v1/javascript/README.md +++ b/sdk/communication/communication-phone-numbers/samples/v1/javascript/README.md @@ -60,12 +60,12 @@ npx cross-env COMMUNICATION_SAMPLES_CONNECTION_STRING="=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/communication/communication-sms/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/communication/communication-sms/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { @@ -69,7 +69,7 @@ "@azure/communication-common": "^1.0.0", "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" diff --git a/sdk/communication/communication-sms/samples/v1/javascript/README.md b/sdk/communication/communication-sms/samples/v1/javascript/README.md index 7a89b71a56ba..ac97b5d51d4f 100644 --- a/sdk/communication/communication-sms/samples/v1/javascript/README.md +++ b/sdk/communication/communication-sms/samples/v1/javascript/README.md @@ -58,10 +58,10 @@ npx cross-env COMMUNICATION_SAMPLES_CONNECTION_STRING=" { const baseUri = "https://contoso.api.fake:443"; const connectionString = `endpoint=${baseUri};accesskey=banana`; - const dateHeader = isNode ? "date" : "x-ms-date"; + const dateHeader = "x-ms-date"; let sendRequestSpy: sinon.SinonSpy; const mockHttpClient: HttpClient = new MockHttpClient(TEST_NUMBER); diff --git a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/README.md b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/README.md index c9a2b4280963..a826f14d137a 100644 --- a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/README.md +++ b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/README.md @@ -1,89 +1,100 @@ ## Azure ComputeManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ComputeManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ComputeManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-compute-profile-2019-03-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-compute-profile-2019-03-01-hybrid +npm install --save @azure/arm-compute-profile-2019-03-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { ComputeManagementClient, ComputeManagementModels, ComputeManagementMappers } from "@azure/arm-compute-profile-2019-03-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { ComputeManagementClient } = require("@azure/arm-compute-profile-2019-03-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ComputeManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ComputeManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-compute-profile-2019-03-01-hybrid sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcompute%2Farm-compute-profile-2019-03-01-hybrid%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/compute/arm-compute-profile-2019-03-01-hybrid/README.png) diff --git a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/package.json b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/package.json index 2ad22338fb2d..97c125755b25 100644 --- a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/package.json +++ b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-compute-profile-2019-03-01-hybrid", "author": "Microsoft Corporation", "description": "ComputeManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.2", - "@azure/ms-rest-js": "^1.8.1", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -21,13 +22,13 @@ "module": "./esm/computeManagementClient.js", "types": "./esm/computeManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/compute/arm-compute-profile-2019-03-01-hybrid", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/compute/arm-compute-profile-2019-03-01-hybrid", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClient.ts b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClient.ts index 7717ff363ef5..70faef5380b9 100644 --- a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClient.ts +++ b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -36,12 +37,17 @@ class ComputeManagementClient extends ComputeManagementClientContext { /** * Initializes a new instance of the ComputeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.availabilitySets = new operations.AvailabilitySets(this); diff --git a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClientContext.ts b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClientContext.ts index cb5d78ac19ed..a730670ee6b3 100644 --- a/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClientContext.ts +++ b/sdk/compute/arm-compute-profile-2019-03-01-hybrid/src/computeManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-compute-profile-2019-03-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class ComputeManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; /** * Initializes a new instance of the ComputeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/README.md b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/README.md index 0e725eab0838..7369c32125c9 100644 --- a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/README.md +++ b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/README.md @@ -1,90 +1,100 @@ ## Azure ComputeManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ComputeManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ComputeManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-compute-profile-2020-09-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-compute-profile-2020-09-01-hybrid +npm install --save @azure/arm-compute-profile-2020-09-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { ComputeManagementClient, ComputeManagementModels, ComputeManagementMappers } from "@azure/arm-compute-profile-2020-09-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { ComputeManagementClient } = require("@azure/arm-compute-profile-2020-09-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ComputeManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ComputeManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-compute-profile-2020-09-01-hybrid sample - - + diff --git a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/package.json b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/package.json index 199abcf82637..096bc7efff70 100644 --- a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/package.json +++ b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-compute-profile-2020-09-01-hybrid", "author": "Microsoft Corporation", "description": "ComputeManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/computeManagementClient.js", "types": "./esm/computeManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/compute/arm-compute-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/compute/arm-compute-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClient.ts b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClient.ts index 9ae1d6a5cf1f..6ae60a09db8b 100644 --- a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClient.ts +++ b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -42,12 +43,17 @@ class ComputeManagementClient extends ComputeManagementClientContext { /** * Initializes a new instance of the ComputeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.availabilitySets = new operations.AvailabilitySets(this); diff --git a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClientContext.ts b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClientContext.ts index b85d0e4ded9e..325e1c725f7e 100644 --- a/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClientContext.ts +++ b/sdk/compute/arm-compute-profile-2020-09-01-hybrid/src/computeManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-compute-profile-2020-09-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class ComputeManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; /** * Initializes a new instance of the ComputeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ComputeManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/compute/arm-compute/package.json b/sdk/compute/arm-compute/package.json index c48f50b385fa..cb382df80381 100644 --- a/sdk/compute/arm-compute/package.json +++ b/sdk/compute/arm-compute/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/compute/arm-compute", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/compute/arm-compute", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/confidentialledger/ci.yml b/sdk/confidentialledger/ci.yml index b0572d191a64..fd8172601cee 100644 --- a/sdk/confidentialledger/ci.yml +++ b/sdk/confidentialledger/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/confidentialledger/confidential-ledger-rest/README.md b/sdk/confidentialledger/confidential-ledger-rest/README.md index 4fc0175f64a5..c7124221aa5e 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/README.md +++ b/sdk/confidentialledger/confidential-ledger-rest/README.md @@ -157,15 +157,15 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest/samples) directory for detailed examples on how to use this library. +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -178,11 +178,11 @@ If you'd like to contribute to this library, please read the [contributing guide [ccf]: https://github.com/Microsoft/CCF [azure_confidential_computing]: https://azure.microsoft.com/solutions/confidential-compute [confidential_ledger_docs]: https://aka.ms/confidentialledger-servicedocs -[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/rest-clients.md -[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest +[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md +[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest [confidentialledger_npm]: https://www.npmjs.com/package/@azure-rest/confidential-ledger [ref_docs]: https://azure.github.io/azure-sdk-for-js [azure_sub]: https://azure.microsoft.com/free/ -[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#credentials -[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#credentials +[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [azure_resource_manager]: https://docs.microsoft.com/azure/azure-resource-manager/management/overview diff --git a/sdk/confidentialledger/confidential-ledger-rest/package.json b/sdk/confidentialledger/confidential-ledger-rest/package.json index fd5adcd4afce..c5d7755449cc 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/package.json +++ b/sdk/confidentialledger/confidential-ledger-rest/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/confidential-ledger.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/README.md b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/README.md index 68637adedbbe..0587617eb23b 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/README.md +++ b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/README.md @@ -56,9 +56,9 @@ npx cross-env USER_CERT="" USER_CERT_KEY="" ENDPOINT=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[getenclavequotescert]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/getEnclaveQuotesCert.js -[getenclavequotesaad]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/getEnclaveQuotesAAD.js +[getenclavequotescert]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/getEnclaveQuotesCert.js +[getenclavequotesaad]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/getEnclaveQuotesAAD.js [apiref]: https://docs.microsoft.com/javascript/api/?term=confidential-ledger [freesub]: https://azure.microsoft.com/free/ [createinstance_azureconfidentialcompute]: https://azure.microsoft.com/solutions/confidential-compute -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest/README.md diff --git a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/package.json b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/package.json index 5285a11b13c4..f962ebd6227a 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/package.json +++ b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest", "dependencies": { "@azure-rest/confidential-ledger": "next", "dotenv": "latest", diff --git a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/README.md b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/README.md index f2f974f91564..3d12d0716e04 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/README.md +++ b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/README.md @@ -68,10 +68,10 @@ npx cross-env USER_CERT="" USER_CERT_KEY="" ENDPOINT=" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[getenclavequotescert]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/src/getEnclaveQuotesCert.ts -[getenclavequotesaad]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/src/getEnclaveQuotesAAD.ts +[getenclavequotescert]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/src/getEnclaveQuotesCert.ts +[getenclavequotesaad]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/src/getEnclaveQuotesAAD.ts [apiref]: https://docs.microsoft.com/javascript/api/?term=confidential-ledger [freesub]: https://azure.microsoft.com/free/ [createinstance_azureconfidentialcompute]: https://azure.microsoft.com/solutions/confidential-compute -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/package.json b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/package.json index 2a6e67a353c8..f0bc50909aef 100644 --- a/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/package.json +++ b/sdk/confidentialledger/confidential-ledger-rest/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confidentialledger/confidential-ledger-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confidentialledger/confidential-ledger-rest", "dependencies": { "@azure-rest/confidential-ledger": "next", "dotenv": "latest", diff --git a/sdk/confluent/arm-confluent/README.md b/sdk/confluent/arm-confluent/README.md index 9ca2a62fcf35..41008e2f9e0c 100644 --- a/sdk/confluent/arm-confluent/README.md +++ b/sdk/confluent/arm-confluent/README.md @@ -1,89 +1,100 @@ ## Azure ConfluentManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ConfluentManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ConfluentManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-confluent` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-confluent +npm install --save @azure/arm-confluent @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list marketplaceAgreements as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list marketplaceAgreements as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { ConfluentManagementClient } = require("@azure/arm-confluent"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ConfluentManagementClient(creds, subscriptionId); - client.marketplaceAgreements.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ConfluentManagementClient(creds, subscriptionId); + +client.marketplaceAgreements.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list marketplaceAgreements as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list marketplaceAgreements as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-confluent sample - - + diff --git a/sdk/confluent/arm-confluent/package.json b/sdk/confluent/arm-confluent/package.json index 948efd97df24..da71fa1ac326 100644 --- a/sdk/confluent/arm-confluent/package.json +++ b/sdk/confluent/arm-confluent/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-confluent", "author": "Microsoft Corporation", "description": "ConfluentManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/confluentManagementClient.js", "types": "./esm/confluentManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/confluent/arm-confluent", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/confluent/arm-confluent", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/confluent/arm-confluent/src/confluentManagementClient.ts b/sdk/confluent/arm-confluent/src/confluentManagementClient.ts index 60039d7957d1..fc7af6cbdb46 100644 --- a/sdk/confluent/arm-confluent/src/confluentManagementClient.ts +++ b/sdk/confluent/arm-confluent/src/confluentManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,12 +23,17 @@ class ConfluentManagementClient extends ConfluentManagementClientContext { /** * Initializes a new instance of the ConfluentManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Microsoft Azure subscription id * @param [options] The parameter options */ constructor( - credentials: msRest.ServiceClientCredentials, + credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ConfluentManagementClientOptions ) { diff --git a/sdk/confluent/arm-confluent/src/confluentManagementClientContext.ts b/sdk/confluent/arm-confluent/src/confluentManagementClientContext.ts index 8714f2bdeebd..e40c2e8002a2 100644 --- a/sdk/confluent/arm-confluent/src/confluentManagementClientContext.ts +++ b/sdk/confluent/arm-confluent/src/confluentManagementClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-confluent"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class ConfluentManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the ConfluentManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Microsoft Azure subscription id * @param [options] The parameter options */ constructor( - credentials: msRest.ServiceClientCredentials, + credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ConfluentManagementClientOptions ) { diff --git a/sdk/consumption/arm-consumption/README.md b/sdk/consumption/arm-consumption/README.md index de366b0db722..f89dec55ae63 100644 --- a/sdk/consumption/arm-consumption/README.md +++ b/sdk/consumption/arm-consumption/README.md @@ -1,70 +1,78 @@ ## Azure ConsumptionManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ConsumptionManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ConsumptionManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-consumption` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-consumption +npm install --save @azure/arm-consumption @azure/identity ``` -### How to use +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. -#### nodejs - client creation and list usageDetails as an example written in TypeScript. +### How to use -##### Install @azure/ms-rest-nodeauth +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list usageDetails as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package - -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { ConsumptionManagementClient } = require("@azure/arm-consumption"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth - .interactiveLogin() - .then((creds) => { - const client = new ConsumptionManagementClient(creds, subscriptionId); - const expand = "testexpand"; - const filter = "testfilter"; - const skiptoken = "testskiptoken"; - const top = 1; - const apply = "testapply"; - client.usageDetails.list(expand, filter, skiptoken, top, apply).then((result) => { - console.log("The result is:"); - console.log(result); - }); - }) - .catch((err) => { - console.error(err); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ConsumptionManagementClient(creds, subscriptionId); +const expand = "testexpand"; +const filter = "testfilter"; +const skiptoken = "testskiptoken"; +const top = 1; +const apply = "testapply"; +client.usageDetails.list(expand, filter, skiptoken, top, apply).then((result) => { + console.log("The result is:"); + console.log(result); +}).catch((err) => { + console.log("An error occurred:"); + console.error(err); +}); ``` -#### browser - Authentication, client creation and list usageDetails as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list usageDetails as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html ```html @@ -72,40 +80,30 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to @azure/arm-consumption sample - - + diff --git a/sdk/consumption/arm-consumption/package.json b/sdk/consumption/arm-consumption/package.json index 0630b1c7652d..b1ebe75e9646 100644 --- a/sdk/consumption/arm-consumption/package.json +++ b/sdk/consumption/arm-consumption/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-consumption", "author": "Microsoft Corporation", "description": "ConsumptionManagementClient Library with typescript type definitions for node.js and browser.", - "version": "7.0.0", + "version": "7.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/consumptionManagementClient.js", "types": "./esm/consumptionManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/consumption/arm-consumption", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/consumption/arm-consumption", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/consumption/arm-consumption/src/consumptionManagementClient.ts b/sdk/consumption/arm-consumption/src/consumptionManagementClient.ts index b22a01878ab6..d9b9c1705ca0 100644 --- a/sdk/consumption/arm-consumption/src/consumptionManagementClient.ts +++ b/sdk/consumption/arm-consumption/src/consumptionManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -32,12 +33,17 @@ class ConsumptionManagementClient extends ConsumptionManagementClientContext { /** * Initializes a new instance of the ConsumptionManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ constructor( - credentials: msRest.ServiceClientCredentials, + credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ConsumptionManagementClientOptions ) { diff --git a/sdk/consumption/arm-consumption/src/consumptionManagementClientContext.ts b/sdk/consumption/arm-consumption/src/consumptionManagementClientContext.ts index 3a780eadfee0..072c5c28af97 100644 --- a/sdk/consumption/arm-consumption/src/consumptionManagementClientContext.ts +++ b/sdk/consumption/arm-consumption/src/consumptionManagementClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-consumption"; -const packageVersion = "7.0.0"; +const packageVersion = "7.1.0"; export class ConsumptionManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the ConsumptionManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure Subscription ID. * @param [options] The parameter options */ constructor( - credentials: msRest.ServiceClientCredentials, + credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ConsumptionManagementClientOptions ) { diff --git a/sdk/containerinstance/arm-containerinstance/README.md b/sdk/containerinstance/arm-containerinstance/README.md index 8dc6a1b42563..3cd6f8bf240c 100644 --- a/sdk/containerinstance/arm-containerinstance/README.md +++ b/sdk/containerinstance/arm-containerinstance/README.md @@ -1,89 +1,100 @@ ## Azure ContainerInstanceManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ContainerInstanceManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ContainerInstanceManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-containerinstance` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-containerinstance +npm install --save @azure/arm-containerinstance @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list containerGroups as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list containerGroups as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { ContainerInstanceManagementClient } = require("@azure/arm-containerinstance"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ContainerInstanceManagementClient(creds, subscriptionId); - client.containerGroups.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ContainerInstanceManagementClient(creds, subscriptionId); + +client.containerGroups.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list containerGroups as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list containerGroups as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-containerinstance sample - - + diff --git a/sdk/containerinstance/arm-containerinstance/package.json b/sdk/containerinstance/arm-containerinstance/package.json index d838e3794d2d..57537349e9c6 100644 --- a/sdk/containerinstance/arm-containerinstance/package.json +++ b/sdk/containerinstance/arm-containerinstance/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-containerinstance", "author": "Microsoft Corporation", "description": "ContainerInstanceManagementClient Library with typescript type definitions for node.js and browser.", - "version": "6.1.0", + "version": "6.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/containerInstanceManagementClient.js", "types": "./esm/containerInstanceManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerinstance/arm-containerinstance", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerinstance/arm-containerinstance", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClient.ts b/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClient.ts index 0fb60a54b53e..fd8bb11807b4 100644 --- a/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClient.ts +++ b/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -23,12 +24,17 @@ class ContainerInstanceManagementClient extends ContainerInstanceManagementClien /** * Initializes a new instance of the ContainerInstanceManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ContainerInstanceManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ContainerInstanceManagementClientOptions) { super(credentials, subscriptionId, options); this.containerGroups = new operations.ContainerGroups(this); this.operations = new operations.Operations(this); diff --git a/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClientContext.ts b/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClientContext.ts index c86399f5c7ea..dac70a4356bd 100644 --- a/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClientContext.ts +++ b/sdk/containerinstance/arm-containerinstance/src/containerInstanceManagementClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-containerinstance"; -const packageVersion = "6.1.0"; +const packageVersion = "6.2.0"; export class ContainerInstanceManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the ContainerInstanceManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ContainerInstanceManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ContainerInstanceManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/containerregistry/arm-containerregistry/README.md b/sdk/containerregistry/arm-containerregistry/README.md index 2afe51005264..f4fd8ab3ba79 100644 --- a/sdk/containerregistry/arm-containerregistry/README.md +++ b/sdk/containerregistry/arm-containerregistry/README.md @@ -1,96 +1,105 @@ ## Azure ContainerRegistryManagementClient SDK for JavaScript -This package contains an isomorphic SDK for ContainerRegistryManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ContainerRegistryManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-containerregistry` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-containerregistry +npm install --save @azure/arm-containerregistry @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get exportPipelines as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get exportPipelines as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { ContainerRegistryManagementClient, ContainerRegistryManagementModels, ContainerRegistryManagementMappers } from "@azure/arm-containerregistry"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { ContainerRegistryManagementClient } = require("@azure/arm-containerregistry"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ContainerRegistryManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const registryName = "testregistryName"; - const exportPipelineName = "testexportPipelineName"; - client.exportPipelines.get(resourceGroupName, registryName, exportPipelineName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ContainerRegistryManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const registryName = "testregistryName"; +const exportPipelineName = "testexportPipelineName"; +client.exportPipelines.get(resourceGroupName, registryName, exportPipelineName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get exportPipelines as an example written in JavaScript. +#### browser - Authentication, client creation, and get exportPipelines as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-containerregistry sample - - + diff --git a/sdk/containerregistry/arm-containerregistry/package.json b/sdk/containerregistry/arm-containerregistry/package.json index f97ea35d7d71..ee74f4be5381 100644 --- a/sdk/containerregistry/arm-containerregistry/package.json +++ b/sdk/containerregistry/arm-containerregistry/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-containerregistry", "author": "Microsoft Corporation", "description": "ContainerRegistryManagementClient Library with typescript type definitions for node.js and browser.", - "version": "8.0.0", + "version": "8.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/containerRegistryManagementClient.js", "types": "./esm/containerRegistryManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerregistry/arm-containerregistry", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerregistry/arm-containerregistry", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClient.ts b/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClient.ts index 19afb901c50b..0a3143427278 100644 --- a/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClient.ts +++ b/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -34,11 +35,16 @@ class ContainerRegistryManagementClient extends ContainerRegistryManagementClien /** * Initializes a new instance of the ContainerRegistryManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Microsoft Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ContainerRegistryManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ContainerRegistryManagementClientOptions) { super(credentials, subscriptionId, options); this.exportPipelines = new operations.ExportPipelines(this); this.registries = new operations.Registries(this); diff --git a/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClientContext.ts b/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClientContext.ts index a0016e0583e5..9ad2845a5a15 100644 --- a/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClientContext.ts +++ b/sdk/containerregistry/arm-containerregistry/src/containerRegistryManagementClientContext.ts @@ -10,22 +10,28 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-containerregistry"; -const packageVersion = "8.0.0"; +const packageVersion = "8.1.0"; export class ContainerRegistryManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; /** * Initializes a new instance of the ContainerRegistryManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Microsoft Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ContainerRegistryManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ContainerRegistryManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/containerregistry/ci.yml b/sdk/containerregistry/ci.yml index 319dccf98ecc..c49e357f61bc 100644 --- a/sdk/containerregistry/ci.yml +++ b/sdk/containerregistry/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/containerregistry/container-registry/README.md b/sdk/containerregistry/container-registry/README.md index f035512f6ba0..328e83816246 100644 --- a/sdk/containerregistry/container-registry/README.md +++ b/sdk/containerregistry/container-registry/README.md @@ -233,7 +233,7 @@ Please take a look at the [samples][samples] directory for detailed examples tha ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -243,12 +243,12 @@ If you'd like to contribute to this library, please read the [contributing guide [azure_sub]: https://azure.microsoft.com/free/ [acr_resource]: https://ms.portal.azure.com/#create/Microsoft.ContainerRegistry -[source]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/ +[source]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/ [package]: https://www.npmjs.com/package/@azure/container-registry [api_docs]: https://docs.microsoft.com/javascript/api/@azure/container-registry [rest_docs]: https://docs.microsoft.com/rest/api/containerregistry/ [product_docs]: https://docs.microsoft.com/azure/container-registry/ -[samples]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerregistry/container-registry/samples +[samples]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerregistry/container-registry/samples [container_registry_docs]: https://docs.microsoft.com/azure/container-registry/container-registry-intro [container_registry_create_ps]: https://docs.microsoft.com/azure/container-registry/container-registry-get-started-powershell [container_registry_create_cli]: https://docs.microsoft.com/azure/container-registry/container-registry-get-started-azure-cli @@ -256,5 +256,5 @@ If you'd like to contribute to this library, please read the [contributing guide [container_registry_concepts]: https://docs.microsoft.com/azure/container-registry/container-registry-concepts [azure_cli]: https://docs.microsoft.com/cli/azure [azure_sub]: https://azure.microsoft.com/free/ -[identity]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md +[identity]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md [az_sdk_js]: https://github.com/Azure/azure-sdk-for-js diff --git a/sdk/containerregistry/container-registry/package.json b/sdk/containerregistry/container-registry/package.json index 58e4c2a27d00..ecfd88075a42 100644 --- a/sdk/containerregistry/container-registry/package.json +++ b/sdk/containerregistry/container-registry/package.json @@ -15,11 +15,7 @@ "constantPaths": [ { "path": "src/generated/generatedClientContext.ts", - "prefix": "packageVersion" - }, - { - "path": "src/constants.ts", - "prefix": "SDK_VERSION" + "prefix": "const packageDetails" }, { "path": "swagger/README.md", @@ -76,7 +72,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/README.md", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/containerregistry/container-registry/samples/v1/javascript/README.md b/sdk/containerregistry/container-registry/samples/v1/javascript/README.md index 086ad9cdd8d0..d4b62d3881ef 100644 --- a/sdk/containerregistry/container-registry/samples/v1/javascript/README.md +++ b/sdk/containerregistry/container-registry/samples/v1/javascript/README.md @@ -60,12 +60,12 @@ npx cross-env CONTAINER_REGISTRY_ENDPOINT="" node c Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[containerregistryclient]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/javascript/containerRegistryClient.js -[anonymouslisttags]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/javascript/anonymousListTags.js -[deleteimages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/javascript/deleteImages.js -[repositoryandartifact]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/javascript/repositoryAndArtifact.js -[setimageproperties]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/javascript/setImageProperties.js +[containerregistryclient]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/javascript/containerRegistryClient.js +[anonymouslisttags]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/javascript/anonymousListTags.js +[deleteimages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/javascript/deleteImages.js +[repositoryandartifact]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/javascript/repositoryAndArtifact.js +[setimageproperties]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/javascript/setImageProperties.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/container-registry [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecontainerregistry]: https://docs.microsoft.com/azure/container-registry/container-registry-get-started-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerregistry/container-registry/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerregistry/container-registry/README.md diff --git a/sdk/containerregistry/container-registry/samples/v1/javascript/package.json b/sdk/containerregistry/container-registry/samples/v1/javascript/package.json index 9bdd65f51ca7..0814304b6cd8 100644 --- a/sdk/containerregistry/container-registry/samples/v1/javascript/package.json +++ b/sdk/containerregistry/container-registry/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerregistry/container-registry", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerregistry/container-registry", "dependencies": { "@azure/container-registry": "next", "dotenv": "latest", diff --git a/sdk/containerregistry/container-registry/samples/v1/typescript/README.md b/sdk/containerregistry/container-registry/samples/v1/typescript/README.md index 42d4a122217b..e0327fe19335 100644 --- a/sdk/containerregistry/container-registry/samples/v1/typescript/README.md +++ b/sdk/containerregistry/container-registry/samples/v1/typescript/README.md @@ -72,13 +72,13 @@ npx cross-env CONTAINER_REGISTRY_ENDPOINT="" node d Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[containerregistryclient]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/typescript/src/containerRegistryClient.ts -[anonymouslisttags]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/typescript/src/anonymousListTags.ts -[deleteimages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/typescript/src/deleteImages.ts -[repositoryandartifact]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/typescript/src/repositoryAndArtifact.ts -[setimageproperties]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/containerregistry/container-registry/samples/v1/typescript/src/setImageProperties.ts +[containerregistryclient]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/typescript/src/containerRegistryClient.ts +[anonymouslisttags]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/typescript/src/anonymousListTags.ts +[deleteimages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/typescript/src/deleteImages.ts +[repositoryandartifact]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/typescript/src/repositoryAndArtifact.ts +[setimageproperties]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/containerregistry/container-registry/samples/v1/typescript/src/setImageProperties.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/container-registry [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecontainerregistry]: https://docs.microsoft.com/azure/container-registry/container-registry-get-started-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerregistry/container-registry/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerregistry/container-registry/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/containerregistry/container-registry/samples/v1/typescript/package.json b/sdk/containerregistry/container-registry/samples/v1/typescript/package.json index 45acb92c751d..75886328da89 100644 --- a/sdk/containerregistry/container-registry/samples/v1/typescript/package.json +++ b/sdk/containerregistry/container-registry/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerregistry/container-registry", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerregistry/container-registry", "dependencies": { "@azure/container-registry": "next", "dotenv": "latest", diff --git a/sdk/containerregistry/container-registry/src/constants.ts b/sdk/containerregistry/container-registry/src/constants.ts deleted file mode 100644 index 3ec689ed2107..000000000000 --- a/sdk/containerregistry/container-registry/src/constants.ts +++ /dev/null @@ -1,4 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT license. - -export const SDK_VERSION: string = "1.0.0-beta.4"; diff --git a/sdk/containerregistry/container-registry/src/containerRegistryClient.ts b/sdk/containerregistry/container-registry/src/containerRegistryClient.ts index aa323f5395ac..d2a3f9a80eca 100644 --- a/sdk/containerregistry/container-registry/src/containerRegistryClient.ts +++ b/sdk/containerregistry/container-registry/src/containerRegistryClient.ts @@ -15,7 +15,6 @@ import { SpanStatusCode } from "@azure/core-tracing"; import "@azure/core-paging"; import { PageSettings, PagedAsyncIterableIterator } from "@azure/core-paging"; -import { SDK_VERSION } from "./constants"; import { logger } from "./logger"; import { GeneratedClient } from "./generated"; import { createSpan } from "./tracing"; @@ -122,17 +121,6 @@ export class ContainerRegistryClient { options = credentialOrOptions ?? {}; } - // The below code helps us set a proper User-Agent header on all requests - const libInfo = `azsdk-js-container-registry/${SDK_VERSION}`; - if (!options.userAgentOptions) { - options.userAgentOptions = {}; - } - if (options.userAgentOptions.userAgentPrefix) { - options.userAgentOptions.userAgentPrefix = `${options.userAgentOptions.userAgentPrefix} ${libInfo}`; - } else { - options.userAgentOptions.userAgentPrefix = libInfo; - } - const internalPipelineOptions: InternalPipelineOptions = { ...options, loggingOptions: { diff --git a/sdk/containerregistry/container-registry/src/generated/generatedClient.ts b/sdk/containerregistry/container-registry/src/generated/generatedClient.ts index 802392a69460..efe08bacd8e7 100644 --- a/sdk/containerregistry/container-registry/src/generated/generatedClient.ts +++ b/sdk/containerregistry/container-registry/src/generated/generatedClient.ts @@ -6,11 +6,16 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { + ContainerRegistryImpl, + ContainerRegistryBlobImpl, + AuthenticationImpl +} from "./operations"; import { ContainerRegistry, ContainerRegistryBlob, Authentication -} from "./operations"; +} from "./operationsInterfaces"; import { GeneratedClientContext } from "./generatedClientContext"; import { GeneratedClientOptionalParams } from "./models"; @@ -23,9 +28,9 @@ export class GeneratedClient extends GeneratedClientContext { */ constructor(url: string, options?: GeneratedClientOptionalParams) { super(url, options); - this.containerRegistry = new ContainerRegistry(this); - this.containerRegistryBlob = new ContainerRegistryBlob(this); - this.authentication = new Authentication(this); + this.containerRegistry = new ContainerRegistryImpl(this); + this.containerRegistryBlob = new ContainerRegistryBlobImpl(this); + this.authentication = new AuthenticationImpl(this); } containerRegistry: ContainerRegistry; diff --git a/sdk/containerregistry/container-registry/src/generated/generatedClientContext.ts b/sdk/containerregistry/container-registry/src/generated/generatedClientContext.ts index e23312f41401..d6a7b973d414 100644 --- a/sdk/containerregistry/container-registry/src/generated/generatedClientContext.ts +++ b/sdk/containerregistry/container-registry/src/generated/generatedClientContext.ts @@ -27,17 +27,24 @@ export class GeneratedClientContext extends coreClient.ServiceClient { if (!options) { options = {}; } - const defaults: GeneratedClientOptionalParams = { requestContentType: "application/json; charset=utf-8" }; + const packageDetails = `azsdk-js-container-registry/1.0.0-beta.4`; + const userAgentPrefix = + options.userAgentOptions && options.userAgentOptions.userAgentPrefix + ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` + : `${packageDetails}`; + const optionsWithDefaults = { ...defaults, ...options, + userAgentOptions: { + userAgentPrefix + }, baseUri: options.endpoint || "{url}" }; - super(optionsWithDefaults); // Parameter assignments this.url = url; diff --git a/sdk/containerregistry/container-registry/src/generated/index.ts b/sdk/containerregistry/container-registry/src/generated/index.ts index 3aebf3c9a56c..707d58f011e8 100644 --- a/sdk/containerregistry/container-registry/src/generated/index.ts +++ b/sdk/containerregistry/container-registry/src/generated/index.ts @@ -9,3 +9,4 @@ export * from "./models"; export { GeneratedClient } from "./generatedClient"; export { GeneratedClientContext } from "./generatedClientContext"; +export * from "./operationsInterfaces"; diff --git a/sdk/containerregistry/container-registry/src/generated/models/index.ts b/sdk/containerregistry/container-registry/src/generated/models/index.ts index 691193ab46eb..145d3de29f2b 100644 --- a/sdk/containerregistry/container-registry/src/generated/models/index.ts +++ b/sdk/containerregistry/container-registry/src/generated/models/index.ts @@ -7,7 +7,7 @@ */ import * as coreClient from "@azure/core-client"; -import * as coreHttps from "@azure/core-rest-pipeline"; +import * as coreRestPipeline from "@azure/core-rest-pipeline"; /** Acr error response describing why the operation failed */ export interface AcrErrors { @@ -230,12 +230,12 @@ export interface ManifestAttributesBase { * CPU architecture * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly architecture?: ArtifactArchitecture | null; + readonly architecture?: ArtifactArchitecture; /** * Operating system * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly operatingSystem?: ArtifactOperatingSystem | null; + readonly operatingSystem?: ArtifactOperatingSystem; /** * List of artifacts that are referenced by this manifest list, with information about the platform each supports. This list will be empty if this is a leaf manifest and not a manifest list. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -331,12 +331,12 @@ export interface ArtifactManifestProperties { * CPU architecture * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly architecture?: ArtifactArchitecture | null; + readonly architecture?: ArtifactArchitecture; /** * Operating system * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly operatingSystem?: ArtifactOperatingSystem | null; + readonly operatingSystem?: ArtifactOperatingSystem; /** * List of artifacts that are referenced by this manifest list, with information about the platform each supports. This list will be empty if this is a leaf manifest and not a manifest list. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -468,7 +468,7 @@ export interface Descriptor { /** Specifies a list of URIs from which this object may be downloaded. */ urls?: string[]; /** Additional information provided through arbitrary metadata. */ - annotations?: Annotations | null; + annotations?: Annotations; } /** Additional information provided through arbitrary metadata. */ @@ -553,7 +553,7 @@ export type ManifestWrapper = Manifest & { /** (V2, OCI) List of V2 image layer information */ layers?: Descriptor[]; /** (OCI, OCIIndex) Additional metadata */ - annotations?: Annotations | null; + annotations?: Annotations; /** (V1) CPU architecture */ architecture?: string; /** (V1) Image name */ @@ -593,7 +593,7 @@ export type OCIManifest = Manifest & { /** List of V2 image layer information */ layers?: Descriptor[]; /** Additional information provided through arbitrary metadata. */ - annotations?: Annotations | null; + annotations?: Annotations; }; /** Returns the requested OCI index file */ @@ -601,7 +601,7 @@ export type OCIIndex = Manifest & { /** List of OCI image layer information */ manifests?: ManifestListAttributes[]; /** Additional information provided through arbitrary metadata. */ - annotations?: Annotations | null; + annotations?: Annotations; }; /** Returns the requested V1 manifest file */ @@ -773,7 +773,7 @@ export const enum KnownArtifactArchitecture { * Defines values for ArtifactArchitecture. \ * {@link KnownArtifactArchitecture} can be used interchangeably with ArtifactArchitecture, * this enum contains the known values that the service supports. - * ### Know values supported by the service + * ### Known values supported by the service * **386** \ * **amd64** \ * **arm** \ @@ -812,7 +812,7 @@ export const enum KnownArtifactOperatingSystem { * Defines values for ArtifactOperatingSystem. \ * {@link KnownArtifactOperatingSystem} can be used interchangeably with ArtifactOperatingSystem, * this enum contains the known values that the service supports. - * ### Know values supported by the service + * ### Known values supported by the service * **aix** \ * **android** \ * **darwin** \ @@ -836,6 +836,10 @@ export type ArtifactTagOrderBy = "none" | "timedesc" | "timeasc"; /** Defines values for ArtifactManifestOrderBy. */ export type ArtifactManifestOrderBy = "none" | "timedesc" | "timeasc"; +/** Optional parameters. */ +export interface ContainerRegistryCheckDockerV2SupportOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface ContainerRegistryGetManifestOptionalParams extends coreClient.OperationOptions { @@ -846,12 +850,20 @@ export interface ContainerRegistryGetManifestOptionalParams /** Contains response data for the getManifest operation. */ export type ContainerRegistryGetManifestResponse = Manifest; +/** Optional parameters. */ +export interface ContainerRegistryCreateManifestOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the createManifest operation. */ export type ContainerRegistryCreateManifestResponse = ContainerRegistryCreateManifestHeaders & { /** The parsed response body. */ body: any; }; +/** Optional parameters. */ +export interface ContainerRegistryDeleteManifestOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface ContainerRegistryGetRepositoriesOptionalParams extends coreClient.OperationOptions { @@ -865,9 +877,17 @@ export interface ContainerRegistryGetRepositoriesOptionalParams export type ContainerRegistryGetRepositoriesResponse = ContainerRegistryGetRepositoriesHeaders & Repositories; +/** Optional parameters. */ +export interface ContainerRegistryGetPropertiesOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the getProperties operation. */ export type ContainerRegistryGetPropertiesResponse = ContainerRepositoryProperties; +/** Optional parameters. */ +export interface ContainerRegistryDeleteRepositoryOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface ContainerRegistryUpdatePropertiesOptionalParams extends coreClient.OperationOptions { @@ -895,6 +915,10 @@ export interface ContainerRegistryGetTagsOptionalParams export type ContainerRegistryGetTagsResponse = ContainerRegistryGetTagsHeaders & TagList; +/** Optional parameters. */ +export interface ContainerRegistryGetTagPropertiesOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the getTagProperties operation. */ export type ContainerRegistryGetTagPropertiesResponse = ArtifactTagProperties; @@ -908,6 +932,10 @@ export interface ContainerRegistryUpdateTagAttributesOptionalParams /** Contains response data for the updateTagAttributes operation. */ export type ContainerRegistryUpdateTagAttributesResponse = ArtifactTagProperties; +/** Optional parameters. */ +export interface ContainerRegistryDeleteTagOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface ContainerRegistryGetManifestsOptionalParams extends coreClient.OperationOptions { @@ -923,6 +951,10 @@ export interface ContainerRegistryGetManifestsOptionalParams export type ContainerRegistryGetManifestsResponse = ContainerRegistryGetManifestsHeaders & AcrManifests; +/** Optional parameters. */ +export interface ContainerRegistryGetManifestPropertiesOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the getManifestProperties operation. */ export type ContainerRegistryGetManifestPropertiesResponse = ArtifactManifestProperties; @@ -981,6 +1013,10 @@ export interface ContainerRegistryGetManifestsNextOptionalParams export type ContainerRegistryGetManifestsNextResponse = ContainerRegistryGetManifestsNextHeaders & AcrManifests; +/** Optional parameters. */ +export interface ContainerRegistryBlobGetBlobOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the getBlob operation. */ export type ContainerRegistryBlobGetBlobResponse = ContainerRegistryBlobGetBlobHeaders & { /** @@ -999,9 +1035,17 @@ export type ContainerRegistryBlobGetBlobResponse = ContainerRegistryBlobGetBlobH readableStreamBody?: NodeJS.ReadableStream; }; +/** Optional parameters. */ +export interface ContainerRegistryBlobCheckBlobExistsOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the checkBlobExists operation. */ export type ContainerRegistryBlobCheckBlobExistsResponse = ContainerRegistryBlobCheckBlobExistsHeaders; +/** Optional parameters. */ +export interface ContainerRegistryBlobDeleteBlobOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the deleteBlob operation. */ export type ContainerRegistryBlobDeleteBlobResponse = ContainerRegistryBlobDeleteBlobHeaders & { /** @@ -1020,12 +1064,24 @@ export type ContainerRegistryBlobDeleteBlobResponse = ContainerRegistryBlobDelet readableStreamBody?: NodeJS.ReadableStream; }; +/** Optional parameters. */ +export interface ContainerRegistryBlobMountBlobOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the mountBlob operation. */ export type ContainerRegistryBlobMountBlobResponse = ContainerRegistryBlobMountBlobHeaders; +/** Optional parameters. */ +export interface ContainerRegistryBlobGetUploadStatusOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the getUploadStatus operation. */ export type ContainerRegistryBlobGetUploadStatusResponse = ContainerRegistryBlobGetUploadStatusHeaders; +/** Optional parameters. */ +export interface ContainerRegistryBlobUploadChunkOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the uploadChunk operation. */ export type ContainerRegistryBlobUploadChunkResponse = ContainerRegistryBlobUploadChunkHeaders; @@ -1033,15 +1089,27 @@ export type ContainerRegistryBlobUploadChunkResponse = ContainerRegistryBlobUplo export interface ContainerRegistryBlobCompleteUploadOptionalParams extends coreClient.OperationOptions { /** Optional raw data of blob */ - value?: coreHttps.RequestBodyType; + value?: coreRestPipeline.RequestBodyType; } /** Contains response data for the completeUpload operation. */ export type ContainerRegistryBlobCompleteUploadResponse = ContainerRegistryBlobCompleteUploadHeaders; +/** Optional parameters. */ +export interface ContainerRegistryBlobCancelUploadOptionalParams + extends coreClient.OperationOptions {} + +/** Optional parameters. */ +export interface ContainerRegistryBlobStartUploadOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the startUpload operation. */ export type ContainerRegistryBlobStartUploadResponse = ContainerRegistryBlobStartUploadHeaders; +/** Optional parameters. */ +export interface ContainerRegistryBlobGetChunkOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the getChunk operation. */ export type ContainerRegistryBlobGetChunkResponse = ContainerRegistryBlobGetChunkHeaders & { /** @@ -1060,6 +1128,10 @@ export type ContainerRegistryBlobGetChunkResponse = ContainerRegistryBlobGetChun readableStreamBody?: NodeJS.ReadableStream; }; +/** Optional parameters. */ +export interface ContainerRegistryBlobCheckChunkExistsOptionalParams + extends coreClient.OperationOptions {} + /** Contains response data for the checkChunkExists operation. */ export type ContainerRegistryBlobCheckChunkExistsResponse = ContainerRegistryBlobCheckChunkExistsHeaders; diff --git a/sdk/containerregistry/container-registry/src/generated/operations/authentication.ts b/sdk/containerregistry/container-registry/src/generated/operations/authentication.ts index 4adc5bd654e6..d4e078be69dc 100644 --- a/sdk/containerregistry/container-registry/src/generated/operations/authentication.ts +++ b/sdk/containerregistry/container-registry/src/generated/operations/authentication.ts @@ -6,6 +6,7 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { Authentication } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; @@ -18,7 +19,7 @@ import { } from "../models"; /** Class representing a Authentication. */ -export class Authentication { +export class AuthenticationImpl implements Authentication { private readonly client: GeneratedClientContext; /** diff --git a/sdk/containerregistry/container-registry/src/generated/operations/containerRegistry.ts b/sdk/containerregistry/container-registry/src/generated/operations/containerRegistry.ts index f9906614b4ac..9b6e18ae944b 100644 --- a/sdk/containerregistry/container-registry/src/generated/operations/containerRegistry.ts +++ b/sdk/containerregistry/container-registry/src/generated/operations/containerRegistry.ts @@ -6,27 +6,36 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { ContainerRegistry } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { GeneratedClientContext } from "../generatedClientContext"; import { + ContainerRegistryCheckDockerV2SupportOptionalParams, ContainerRegistryGetManifestOptionalParams, ContainerRegistryGetManifestResponse, Manifest, + ContainerRegistryCreateManifestOptionalParams, ContainerRegistryCreateManifestResponse, + ContainerRegistryDeleteManifestOptionalParams, ContainerRegistryGetRepositoriesOptionalParams, ContainerRegistryGetRepositoriesResponse, + ContainerRegistryGetPropertiesOptionalParams, ContainerRegistryGetPropertiesResponse, + ContainerRegistryDeleteRepositoryOptionalParams, ContainerRegistryUpdatePropertiesOptionalParams, ContainerRegistryUpdatePropertiesResponse, ContainerRegistryGetTagsOptionalParams, ContainerRegistryGetTagsResponse, + ContainerRegistryGetTagPropertiesOptionalParams, ContainerRegistryGetTagPropertiesResponse, ContainerRegistryUpdateTagAttributesOptionalParams, ContainerRegistryUpdateTagAttributesResponse, + ContainerRegistryDeleteTagOptionalParams, ContainerRegistryGetManifestsOptionalParams, ContainerRegistryGetManifestsResponse, + ContainerRegistryGetManifestPropertiesOptionalParams, ContainerRegistryGetManifestPropertiesResponse, ContainerRegistryUpdateManifestPropertiesOptionalParams, ContainerRegistryUpdateManifestPropertiesResponse, @@ -39,7 +48,7 @@ import { } from "../models"; /** Class representing a ContainerRegistry. */ -export class ContainerRegistry { +export class ContainerRegistryImpl implements ContainerRegistry { private readonly client: GeneratedClientContext; /** @@ -54,7 +63,9 @@ export class ContainerRegistry { * Tells whether this Docker Registry instance supports Docker Registry HTTP API v2 * @param options The options parameters. */ - checkDockerV2Support(options?: coreClient.OperationOptions): Promise { + checkDockerV2Support( + options?: ContainerRegistryCheckDockerV2SupportOptionalParams + ): Promise { return this.client.sendOperationRequest( { options }, checkDockerV2SupportOperationSpec @@ -89,7 +100,7 @@ export class ContainerRegistry { name: string, reference: string, payload: Manifest, - options?: coreClient.OperationOptions + options?: ContainerRegistryCreateManifestOptionalParams ): Promise { return this.client.sendOperationRequest( { name, reference, payload, options }, @@ -107,7 +118,7 @@ export class ContainerRegistry { deleteManifest( name: string, reference: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryDeleteManifestOptionalParams ): Promise { return this.client.sendOperationRequest( { name, reference, options }, @@ -135,7 +146,7 @@ export class ContainerRegistry { */ getProperties( name: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryGetPropertiesOptionalParams ): Promise { return this.client.sendOperationRequest( { name, options }, @@ -150,7 +161,7 @@ export class ContainerRegistry { */ deleteRepository( name: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryDeleteRepositoryOptionalParams ): Promise { return this.client.sendOperationRequest( { name, options }, @@ -197,7 +208,7 @@ export class ContainerRegistry { getTagProperties( name: string, reference: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryGetTagPropertiesOptionalParams ): Promise { return this.client.sendOperationRequest( { name, reference, options }, @@ -231,7 +242,7 @@ export class ContainerRegistry { deleteTag( name: string, reference: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryDeleteTagOptionalParams ): Promise { return this.client.sendOperationRequest( { name, reference, options }, @@ -263,7 +274,7 @@ export class ContainerRegistry { getManifestProperties( name: string, digest: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryGetManifestPropertiesOptionalParams ): Promise { return this.client.sendOperationRequest( { name, digest, options }, diff --git a/sdk/containerregistry/container-registry/src/generated/operations/containerRegistryBlob.ts b/sdk/containerregistry/container-registry/src/generated/operations/containerRegistryBlob.ts index 4404d3ad9a9b..cd3546d6a2db 100644 --- a/sdk/containerregistry/container-registry/src/generated/operations/containerRegistryBlob.ts +++ b/sdk/containerregistry/container-registry/src/generated/operations/containerRegistryBlob.ts @@ -6,27 +6,38 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +import { ContainerRegistryBlob } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; -import * as coreHttps from "@azure/core-rest-pipeline"; +import * as coreRestPipeline from "@azure/core-rest-pipeline"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { GeneratedClientContext } from "../generatedClientContext"; import { + ContainerRegistryBlobGetBlobOptionalParams, ContainerRegistryBlobGetBlobResponse, + ContainerRegistryBlobCheckBlobExistsOptionalParams, ContainerRegistryBlobCheckBlobExistsResponse, + ContainerRegistryBlobDeleteBlobOptionalParams, ContainerRegistryBlobDeleteBlobResponse, + ContainerRegistryBlobMountBlobOptionalParams, ContainerRegistryBlobMountBlobResponse, + ContainerRegistryBlobGetUploadStatusOptionalParams, ContainerRegistryBlobGetUploadStatusResponse, + ContainerRegistryBlobUploadChunkOptionalParams, ContainerRegistryBlobUploadChunkResponse, ContainerRegistryBlobCompleteUploadOptionalParams, ContainerRegistryBlobCompleteUploadResponse, + ContainerRegistryBlobCancelUploadOptionalParams, + ContainerRegistryBlobStartUploadOptionalParams, ContainerRegistryBlobStartUploadResponse, + ContainerRegistryBlobGetChunkOptionalParams, ContainerRegistryBlobGetChunkResponse, + ContainerRegistryBlobCheckChunkExistsOptionalParams, ContainerRegistryBlobCheckChunkExistsResponse } from "../models"; /** Class representing a ContainerRegistryBlob. */ -export class ContainerRegistryBlob { +export class ContainerRegistryBlobImpl implements ContainerRegistryBlob { private readonly client: GeneratedClientContext; /** @@ -46,7 +57,7 @@ export class ContainerRegistryBlob { getBlob( name: string, digest: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobGetBlobOptionalParams ): Promise { return this.client.sendOperationRequest( { name, digest, options }, @@ -63,7 +74,7 @@ export class ContainerRegistryBlob { checkBlobExists( name: string, digest: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobCheckBlobExistsOptionalParams ): Promise { return this.client.sendOperationRequest( { name, digest, options }, @@ -80,7 +91,7 @@ export class ContainerRegistryBlob { deleteBlob( name: string, digest: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobDeleteBlobOptionalParams ): Promise { return this.client.sendOperationRequest( { name, digest, options }, @@ -99,7 +110,7 @@ export class ContainerRegistryBlob { name: string, mount: string, fromParam: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobMountBlobOptionalParams ): Promise { return this.client.sendOperationRequest( { name, mount, fromParam, options }, @@ -116,7 +127,7 @@ export class ContainerRegistryBlob { */ getUploadStatus( location: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobGetUploadStatusOptionalParams ): Promise { return this.client.sendOperationRequest( { location, options }, @@ -133,8 +144,8 @@ export class ContainerRegistryBlob { */ uploadChunk( location: string, - value: coreHttps.RequestBodyType, - options?: coreClient.OperationOptions + value: coreRestPipeline.RequestBodyType, + options?: ContainerRegistryBlobUploadChunkOptionalParams ): Promise { return this.client.sendOperationRequest( { location, value, options }, @@ -170,7 +181,7 @@ export class ContainerRegistryBlob { */ cancelUpload( location: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobCancelUploadOptionalParams ): Promise { return this.client.sendOperationRequest( { location, options }, @@ -185,7 +196,7 @@ export class ContainerRegistryBlob { */ startUpload( name: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobStartUploadOptionalParams ): Promise { return this.client.sendOperationRequest( { name, options }, @@ -206,7 +217,7 @@ export class ContainerRegistryBlob { name: string, digest: string, range: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobGetChunkOptionalParams ): Promise { return this.client.sendOperationRequest( { name, digest, range, options }, @@ -225,7 +236,7 @@ export class ContainerRegistryBlob { name: string, digest: string, range: string, - options?: coreClient.OperationOptions + options?: ContainerRegistryBlobCheckChunkExistsOptionalParams ): Promise { return this.client.sendOperationRequest( { name, digest, range, options }, diff --git a/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/authentication.ts b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/authentication.ts new file mode 100644 index 000000000000..ac0462ab6a22 --- /dev/null +++ b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/authentication.ts @@ -0,0 +1,32 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + AuthenticationExchangeAadAccessTokenForAcrRefreshTokenOptionalParams, + AuthenticationExchangeAadAccessTokenForAcrRefreshTokenResponse, + AuthenticationExchangeAcrRefreshTokenForAcrAccessTokenOptionalParams, + AuthenticationExchangeAcrRefreshTokenForAcrAccessTokenResponse +} from "../models"; + +/** Interface representing a Authentication. */ +export interface Authentication { + /** + * Exchange AAD tokens for an ACR refresh Token + * @param options The options parameters. + */ + exchangeAadAccessTokenForAcrRefreshToken( + options?: AuthenticationExchangeAadAccessTokenForAcrRefreshTokenOptionalParams + ): Promise; + /** + * Exchange ACR Refresh token for an ACR Access Token + * @param options The options parameters. + */ + exchangeAcrRefreshTokenForAcrAccessToken( + options?: AuthenticationExchangeAcrRefreshTokenForAcrAccessTokenOptionalParams + ): Promise; +} diff --git a/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/containerRegistry.ts b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/containerRegistry.ts new file mode 100644 index 000000000000..8591964af2d9 --- /dev/null +++ b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/containerRegistry.ts @@ -0,0 +1,228 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + ContainerRegistryCheckDockerV2SupportOptionalParams, + ContainerRegistryGetManifestOptionalParams, + ContainerRegistryGetManifestResponse, + Manifest, + ContainerRegistryCreateManifestOptionalParams, + ContainerRegistryCreateManifestResponse, + ContainerRegistryDeleteManifestOptionalParams, + ContainerRegistryGetRepositoriesOptionalParams, + ContainerRegistryGetRepositoriesResponse, + ContainerRegistryGetPropertiesOptionalParams, + ContainerRegistryGetPropertiesResponse, + ContainerRegistryDeleteRepositoryOptionalParams, + ContainerRegistryUpdatePropertiesOptionalParams, + ContainerRegistryUpdatePropertiesResponse, + ContainerRegistryGetTagsOptionalParams, + ContainerRegistryGetTagsResponse, + ContainerRegistryGetTagPropertiesOptionalParams, + ContainerRegistryGetTagPropertiesResponse, + ContainerRegistryUpdateTagAttributesOptionalParams, + ContainerRegistryUpdateTagAttributesResponse, + ContainerRegistryDeleteTagOptionalParams, + ContainerRegistryGetManifestsOptionalParams, + ContainerRegistryGetManifestsResponse, + ContainerRegistryGetManifestPropertiesOptionalParams, + ContainerRegistryGetManifestPropertiesResponse, + ContainerRegistryUpdateManifestPropertiesOptionalParams, + ContainerRegistryUpdateManifestPropertiesResponse, + ContainerRegistryGetRepositoriesNextOptionalParams, + ContainerRegistryGetRepositoriesNextResponse, + ContainerRegistryGetTagsNextOptionalParams, + ContainerRegistryGetTagsNextResponse, + ContainerRegistryGetManifestsNextOptionalParams, + ContainerRegistryGetManifestsNextResponse +} from "../models"; + +/** Interface representing a ContainerRegistry. */ +export interface ContainerRegistry { + /** + * Tells whether this Docker Registry instance supports Docker Registry HTTP API v2 + * @param options The options parameters. + */ + checkDockerV2Support( + options?: ContainerRegistryCheckDockerV2SupportOptionalParams + ): Promise; + /** + * Get the manifest identified by `name` and `reference` where `reference` can be a tag or digest. + * @param name Name of the image (including the namespace) + * @param reference A tag or a digest, pointing to a specific image + * @param options The options parameters. + */ + getManifest( + name: string, + reference: string, + options?: ContainerRegistryGetManifestOptionalParams + ): Promise; + /** + * Put the manifest identified by `name` and `reference` where `reference` can be a tag or digest. + * @param name Name of the image (including the namespace) + * @param reference A tag or a digest, pointing to a specific image + * @param payload Manifest body, can take v1 or v2 values depending on accept header + * @param options The options parameters. + */ + createManifest( + name: string, + reference: string, + payload: Manifest, + options?: ContainerRegistryCreateManifestOptionalParams + ): Promise; + /** + * Delete the manifest identified by `name` and `reference`. Note that a manifest can _only_ be deleted + * by `digest`. + * @param name Name of the image (including the namespace) + * @param reference Digest of a BLOB + * @param options The options parameters. + */ + deleteManifest( + name: string, + reference: string, + options?: ContainerRegistryDeleteManifestOptionalParams + ): Promise; + /** + * List repositories + * @param options The options parameters. + */ + getRepositories( + options?: ContainerRegistryGetRepositoriesOptionalParams + ): Promise; + /** + * Get repository attributes + * @param name Name of the image (including the namespace) + * @param options The options parameters. + */ + getProperties( + name: string, + options?: ContainerRegistryGetPropertiesOptionalParams + ): Promise; + /** + * Delete the repository identified by `name` + * @param name Name of the image (including the namespace) + * @param options The options parameters. + */ + deleteRepository( + name: string, + options?: ContainerRegistryDeleteRepositoryOptionalParams + ): Promise; + /** + * Update the attribute identified by `name` where `reference` is the name of the repository. + * @param name Name of the image (including the namespace) + * @param options The options parameters. + */ + updateProperties( + name: string, + options?: ContainerRegistryUpdatePropertiesOptionalParams + ): Promise; + /** + * List tags of a repository + * @param name Name of the image (including the namespace) + * @param options The options parameters. + */ + getTags( + name: string, + options?: ContainerRegistryGetTagsOptionalParams + ): Promise; + /** + * Get tag attributes by tag + * @param name Name of the image (including the namespace) + * @param reference Tag name + * @param options The options parameters. + */ + getTagProperties( + name: string, + reference: string, + options?: ContainerRegistryGetTagPropertiesOptionalParams + ): Promise; + /** + * Update tag attributes + * @param name Name of the image (including the namespace) + * @param reference Tag name + * @param options The options parameters. + */ + updateTagAttributes( + name: string, + reference: string, + options?: ContainerRegistryUpdateTagAttributesOptionalParams + ): Promise; + /** + * Delete tag + * @param name Name of the image (including the namespace) + * @param reference Tag name + * @param options The options parameters. + */ + deleteTag( + name: string, + reference: string, + options?: ContainerRegistryDeleteTagOptionalParams + ): Promise; + /** + * List manifests of a repository + * @param name Name of the image (including the namespace) + * @param options The options parameters. + */ + getManifests( + name: string, + options?: ContainerRegistryGetManifestsOptionalParams + ): Promise; + /** + * Get manifest attributes + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param options The options parameters. + */ + getManifestProperties( + name: string, + digest: string, + options?: ContainerRegistryGetManifestPropertiesOptionalParams + ): Promise; + /** + * Update properties of a manifest + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param options The options parameters. + */ + updateManifestProperties( + name: string, + digest: string, + options?: ContainerRegistryUpdateManifestPropertiesOptionalParams + ): Promise; + /** + * GetRepositoriesNext + * @param nextLink The nextLink from the previous successful call to the GetRepositories method. + * @param options The options parameters. + */ + getRepositoriesNext( + nextLink: string, + options?: ContainerRegistryGetRepositoriesNextOptionalParams + ): Promise; + /** + * GetTagsNext + * @param name Name of the image (including the namespace) + * @param nextLink The nextLink from the previous successful call to the GetTags method. + * @param options The options parameters. + */ + getTagsNext( + name: string, + nextLink: string, + options?: ContainerRegistryGetTagsNextOptionalParams + ): Promise; + /** + * GetManifestsNext + * @param name Name of the image (including the namespace) + * @param nextLink The nextLink from the previous successful call to the GetManifests method. + * @param options The options parameters. + */ + getManifestsNext( + name: string, + nextLink: string, + options?: ContainerRegistryGetManifestsNextOptionalParams + ): Promise; +} diff --git a/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/containerRegistryBlob.ts b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/containerRegistryBlob.ts new file mode 100644 index 000000000000..4f8d82092b09 --- /dev/null +++ b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/containerRegistryBlob.ts @@ -0,0 +1,166 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import * as coreRestPipeline from "@azure/core-rest-pipeline"; +import { + ContainerRegistryBlobGetBlobOptionalParams, + ContainerRegistryBlobGetBlobResponse, + ContainerRegistryBlobCheckBlobExistsOptionalParams, + ContainerRegistryBlobCheckBlobExistsResponse, + ContainerRegistryBlobDeleteBlobOptionalParams, + ContainerRegistryBlobDeleteBlobResponse, + ContainerRegistryBlobMountBlobOptionalParams, + ContainerRegistryBlobMountBlobResponse, + ContainerRegistryBlobGetUploadStatusOptionalParams, + ContainerRegistryBlobGetUploadStatusResponse, + ContainerRegistryBlobUploadChunkOptionalParams, + ContainerRegistryBlobUploadChunkResponse, + ContainerRegistryBlobCompleteUploadOptionalParams, + ContainerRegistryBlobCompleteUploadResponse, + ContainerRegistryBlobCancelUploadOptionalParams, + ContainerRegistryBlobStartUploadOptionalParams, + ContainerRegistryBlobStartUploadResponse, + ContainerRegistryBlobGetChunkOptionalParams, + ContainerRegistryBlobGetChunkResponse, + ContainerRegistryBlobCheckChunkExistsOptionalParams, + ContainerRegistryBlobCheckChunkExistsResponse +} from "../models"; + +/** Interface representing a ContainerRegistryBlob. */ +export interface ContainerRegistryBlob { + /** + * Retrieve the blob from the registry identified by digest. + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param options The options parameters. + */ + getBlob( + name: string, + digest: string, + options?: ContainerRegistryBlobGetBlobOptionalParams + ): Promise; + /** + * Same as GET, except only the headers are returned. + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param options The options parameters. + */ + checkBlobExists( + name: string, + digest: string, + options?: ContainerRegistryBlobCheckBlobExistsOptionalParams + ): Promise; + /** + * Removes an already uploaded blob. + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param options The options parameters. + */ + deleteBlob( + name: string, + digest: string, + options?: ContainerRegistryBlobDeleteBlobOptionalParams + ): Promise; + /** + * Mount a blob identified by the `mount` parameter from another repository. + * @param name Name of the image (including the namespace) + * @param mount Digest of blob to mount from the source repository. + * @param fromParam Name of the source repository. + * @param options The options parameters. + */ + mountBlob( + name: string, + mount: string, + fromParam: string, + options?: ContainerRegistryBlobMountBlobOptionalParams + ): Promise; + /** + * Retrieve status of upload identified by uuid. The primary purpose of this endpoint is to resolve the + * current status of a resumable upload. + * @param location Link acquired from upload start or previous chunk. Note, do not include initial / + * (must do substring(1) ) + * @param options The options parameters. + */ + getUploadStatus( + location: string, + options?: ContainerRegistryBlobGetUploadStatusOptionalParams + ): Promise; + /** + * Upload a stream of data without completing the upload. + * @param location Link acquired from upload start or previous chunk. Note, do not include initial / + * (must do substring(1) ) + * @param value Raw data of blob + * @param options The options parameters. + */ + uploadChunk( + location: string, + value: coreRestPipeline.RequestBodyType, + options?: ContainerRegistryBlobUploadChunkOptionalParams + ): Promise; + /** + * Complete the upload, providing all the data in the body, if necessary. A request without a body will + * just complete the upload with previously uploaded content. + * @param digest Digest of a BLOB + * @param location Link acquired from upload start or previous chunk. Note, do not include initial / + * (must do substring(1) ) + * @param options The options parameters. + */ + completeUpload( + digest: string, + location: string, + options?: ContainerRegistryBlobCompleteUploadOptionalParams + ): Promise; + /** + * Cancel outstanding upload processes, releasing associated resources. If this is not called, the + * unfinished uploads will eventually timeout. + * @param location Link acquired from upload start or previous chunk. Note, do not include initial / + * (must do substring(1) ) + * @param options The options parameters. + */ + cancelUpload( + location: string, + options?: ContainerRegistryBlobCancelUploadOptionalParams + ): Promise; + /** + * Initiate a resumable blob upload with an empty request body. + * @param name Name of the image (including the namespace) + * @param options The options parameters. + */ + startUpload( + name: string, + options?: ContainerRegistryBlobStartUploadOptionalParams + ): Promise; + /** + * Retrieve the blob from the registry identified by `digest`. This endpoint may also support RFC7233 + * compliant range requests. Support can be detected by issuing a HEAD request. If the header + * `Accept-Range: bytes` is returned, range requests can be used to fetch partial content. + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param range Format : bytes=-, HTTP Range header specifying blob chunk. + * @param options The options parameters. + */ + getChunk( + name: string, + digest: string, + range: string, + options?: ContainerRegistryBlobGetChunkOptionalParams + ): Promise; + /** + * Same as GET, except only the headers are returned. + * @param name Name of the image (including the namespace) + * @param digest Digest of a BLOB + * @param range Format : bytes=-, HTTP Range header specifying blob chunk. + * @param options The options parameters. + */ + checkChunkExists( + name: string, + digest: string, + range: string, + options?: ContainerRegistryBlobCheckChunkExistsOptionalParams + ): Promise; +} diff --git a/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/index.ts b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/index.ts new file mode 100644 index 000000000000..b6666ac1ae96 --- /dev/null +++ b/sdk/containerregistry/container-registry/src/generated/operationsInterfaces/index.ts @@ -0,0 +1,11 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export * from "./containerRegistry"; +export * from "./containerRegistryBlob"; +export * from "./authentication"; diff --git a/sdk/containerregistry/container-registry/swagger/README.md b/sdk/containerregistry/container-registry/swagger/README.md index 144e4c441f9e..a3f9c0acad9d 100644 --- a/sdk/containerregistry/container-registry/swagger/README.md +++ b/sdk/containerregistry/container-registry/swagger/README.md @@ -19,8 +19,7 @@ add-credentials: false override-client-name: GeneratedClient disable-async-iterators: true hide-clients: true -use-core-v2: true use-extension: - "@autorest/typescript": "C:/github/autorest.typescript" + "@autorest/typescript": "6.0.0-beta.4" package-version: 1.0.0-beta.4 ``` diff --git a/sdk/containerservice/arm-containerservice/README.md b/sdk/containerservice/arm-containerservice/README.md index ba129c1f3b94..5c707f9dbfdc 100644 --- a/sdk/containerservice/arm-containerservice/README.md +++ b/sdk/containerservice/arm-containerservice/README.md @@ -1,89 +1,100 @@ ## Azure ContainerServiceClient SDK for JavaScript -This package contains an isomorphic SDK for ContainerServiceClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for ContainerServiceClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-containerservice` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-containerservice +npm install --save @azure/arm-containerservice @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { ContainerServiceClient } = require("@azure/arm-containerservice"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ContainerServiceClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ContainerServiceClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-containerservice sample - - + diff --git a/sdk/containerservice/arm-containerservice/package.json b/sdk/containerservice/arm-containerservice/package.json index abdfbf9dae1d..7603177c7924 100644 --- a/sdk/containerservice/arm-containerservice/package.json +++ b/sdk/containerservice/arm-containerservice/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-containerservice", "author": "Microsoft Corporation", "description": "ContainerServiceClient Library with typescript type definitions for node.js and browser.", - "version": "13.2.0", + "version": "13.3.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/containerServiceClient.js", "types": "./esm/containerServiceClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/containerservice/arm-containerservice", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/containerservice/arm-containerservice", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/containerservice/arm-containerservice/src/containerServiceClient.ts b/sdk/containerservice/arm-containerservice/src/containerServiceClient.ts index 6997e3ab5ce7..244f833d630c 100644 --- a/sdk/containerservice/arm-containerservice/src/containerServiceClient.ts +++ b/sdk/containerservice/arm-containerservice/src/containerServiceClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -26,12 +27,17 @@ class ContainerServiceClient extends ContainerServiceClientContext { /** * Initializes a new instance of the ContainerServiceClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ContainerServiceClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ContainerServiceClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.managedClusters = new operations.ManagedClusters(this); diff --git a/sdk/containerservice/arm-containerservice/src/containerServiceClientContext.ts b/sdk/containerservice/arm-containerservice/src/containerServiceClientContext.ts index 5e6112ec9cca..931b9efe6aa0 100644 --- a/sdk/containerservice/arm-containerservice/src/containerServiceClientContext.ts +++ b/sdk/containerservice/arm-containerservice/src/containerServiceClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-containerservice"; -const packageVersion = "13.2.0"; +const packageVersion = "13.3.0"; export class ContainerServiceClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the ContainerServiceClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ContainerServiceClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ContainerServiceClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/core/README.md b/sdk/core/README.md index 2b274d599379..43bde696f6b1 100644 --- a/sdk/core/README.md +++ b/sdk/core/README.md @@ -6,7 +6,7 @@ These packages are generally not used directly by consumers, but are used as dep ## Core "v1" and Core "v2" -The package `@azure/core-http` is heavily based on `@azure/ms-rest-js` and inherited legacy API surface and concepts that sometimes conflicted with our design principles. A full explanation is available here: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-rest-pipeline/documentation/core2.md +The package `@azure/core-http` is heavily based on `@azure/ms-rest-js` and inherited legacy API surface and concepts that sometimes conflicted with our design principles. A full explanation is available here: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-rest-pipeline/documentation/core2.md For the purposes of this document, understand that "core v1" refers to the package `@azure/core-http` and is considered legacy. "Core v2" refers to the packages `@azure/core-rest-pipeline`, `@azure/core-client`, and `@azure/core-xml`. @@ -20,7 +20,7 @@ Many service operations require client libraries to make one or more HTTP calls The `Pipeline` is what manages these common behaviors, which are grouped into items called `PipelinePolicy`s. Each client library configures its own `Pipeline` using a set of standard `PipelineOptions`. -For more information, refer to https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-rest-pipeline#key-concepts +For more information, refer to https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-rest-pipeline#key-concepts ### ServiceClient @@ -28,7 +28,7 @@ Client libraries come in two flavors: authored and generated. Generated clients `ServiceClient` is the base class of all generated clients. It builds on top of the HTTP Pipeline in order to make requests to services. -For more information, refer to https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-client#key-concepts +For more information, refer to https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-client#key-concepts ### Accessing raw HTTP responses @@ -55,7 +55,7 @@ console.log(item._response.parsedHeaders); ### Authentication -Authentication is handled by [@azure/identity](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/). In most cases this is as simple as passing `DefaultAzureCredential` to a client that takes a `TokenCredential` as a means of authentication. +Authentication is handled by [@azure/identity](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/). In most cases this is as simple as passing `DefaultAzureCredential` to a client that takes a `TokenCredential` as a means of authentication. ```ts const { KeyClient } = require("@azure/keyvault-keys"); @@ -72,7 +72,7 @@ Note that `DefaultAzureCredential` does not work for applications that are runni Client libraries follow our [design guidelines for pagination](https://azure.github.io/azure-sdk/typescript_design.html#ts-pagination). This is largely hand-authored today in convenience clients, but code generation is improving to support this pattern inside generated clients as well. -The standard interfaces for pagination are provided by [@azure/core-paging](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-paging). +The standard interfaces for pagination are provided by [@azure/core-paging](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-paging). Basic code for iterating through all entries of a paged API looks something like: @@ -96,7 +96,7 @@ for await (let page of client.listSecrets().byPage({ maxPageSize: 2 })) { Client libraries follow our [design guidelines for Long Running Operations (LROs)](https://azure.github.io/azure-sdk/typescript_design.html#ts-lro). This ensures all LROs follow a similar pattern to remain **consistent** across clients. -To assist with implementing pollers correctly, primitives are provided by [@azure/core-lro](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-lro). These primitives help implement `Poller` objects which are used to manage `PollOperation`s that contain `PollOperationState`. +To assist with implementing pollers correctly, primitives are provided by [@azure/core-lro](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-lro). These primitives help implement `Poller` objects which are used to manage `PollOperation`s that contain `PollOperationState`. In essence, a `Poller` handles the work of continously checking the server for updates to the LRO on a developer's behalf. `Poller`s are highly customizable, and consumers are able to decide when to poll manually if needed. @@ -118,25 +118,25 @@ const rehydratedPoller = await client.beginDeleteKey(keyName, { resumeFrom: seri ### Tracing -Client libraries have preliminary support for [OpenTelemetry](https://opentelemetry.io/). This functionality is mostly managed by [@azure/core-tracing](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-tracing) +Client libraries have preliminary support for [OpenTelemetry](https://opentelemetry.io/). This functionality is mostly managed by [@azure/core-tracing](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-tracing) -Each client library internally does the work to create a new OpenTelemetry `Span` for each service operation, making sure to end the `Span` after the result is returned back to the consumer. Many clients use a helper method called [createSpan](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/textanalytics/ai-text-analytics/src/tracing.ts) to create the new `Span`. +Each client library internally does the work to create a new OpenTelemetry `Span` for each service operation, making sure to end the `Span` after the result is returned back to the consumer. Many clients use a helper method called [createSpan](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/textanalytics/ai-text-analytics/src/tracing.ts) to create the new `Span`. -When `tracingOptions.spanOptions.parent` is set on an operation, a default request policy will automatically create a span for each HTTP request that is issued. +When `tracingOptions.tracingContext` is set on an operation, a default request policy will automatically create a span for each HTTP request that is issued. -Consumers are expected to pass in the `SpanContext` of the parent `Span` when calling an operation, such as: +Consumers are expected to pass in the `Context` of the parent `Span` when calling an operation, such as: ```ts const result = await blobClient.download(undefined, undefined, { tracingOptions: { - spanOptions: { parent: rootSpan.context() }, + tracingContext: activeContext }, }); ``` ### Logging -Logging in client libraries is provided by [@azure/logger](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +Logging in client libraries is provided by [@azure/logger](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). AzureLogger provides the ability to easily set a global log level (either programmatically or through an environment variable) and log output can be redirected by simply overriding the default `log` method: @@ -161,4 +161,4 @@ A convenience client extends the shape of a generated client in ways that make i ## AMQP and Message-based Clients -More information can be found in [@azure/amqp](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-amqp) +More information can be found in [@azure/amqp](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-amqp) diff --git a/sdk/core/abort-controller/README.md b/sdk/core/abort-controller/README.md index 293d86532cc8..8845c33b55a4 100644 --- a/sdk/core/abort-controller/README.md +++ b/sdk/core/abort-controller/README.md @@ -99,6 +99,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fabort-controller%2FREADME.png) diff --git a/sdk/core/abort-controller/package.json b/sdk/core/abort-controller/package.json index 3f43fb4b387b..ce0d23916447 100644 --- a/sdk/core/abort-controller/package.json +++ b/sdk/core/abort-controller/package.json @@ -74,7 +74,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/abort-controller/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/abort-controller/README.md", "sideEffects": false, "dependencies": { "tslib": "^2.2.0" diff --git a/sdk/core/ci.yml b/sdk/core/ci.yml index 666f2f2e7f15..0f0b8f5e85fc 100644 --- a/sdk/core/ci.yml +++ b/sdk/core/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -19,7 +18,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/core/core-amqp/CHANGELOG.md b/sdk/core/core-amqp/CHANGELOG.md index dd7b75324eba..a26a03e169fd 100644 --- a/sdk/core/core-amqp/CHANGELOG.md +++ b/sdk/core/core-amqp/CHANGELOG.md @@ -161,7 +161,7 @@ We are cleaning the public API surface by ## 1.0.1 (2020-02-06) - Updated to use the latest version of the `rhea` package. - This update improves support for [bundling](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md) this library. + This update improves support for [bundling](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md) this library. ## 1.0.0 (2020-01-08) diff --git a/sdk/core/core-amqp/README.md b/sdk/core/core-amqp/README.md index c1c1949bc25e..501af61fb46d 100644 --- a/sdk/core/core-amqp/README.md +++ b/sdk/core/core-amqp/README.md @@ -112,7 +112,7 @@ When you submit a pull request, a CLA-bot will automatically determine whether y a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA. -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or diff --git a/sdk/core/core-amqp/package.json b/sdk/core/core-amqp/package.json index 5699ef550ad0..8cb51a8531f8 100644 --- a/sdk/core/core-amqp/package.json +++ b/sdk/core/core-amqp/package.json @@ -62,7 +62,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-amqp/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-amqp/README.md", "sideEffects": false, "repository": "github:Azure/azure-sdk-for-js", "bugs": { diff --git a/sdk/core/core-asynciterator-polyfill/README.md b/sdk/core/core-asynciterator-polyfill/README.md index 86df8d734f4f..b53cf8da0630 100644 --- a/sdk/core/core-asynciterator-polyfill/README.md +++ b/sdk/core/core-asynciterator-polyfill/README.md @@ -41,6 +41,6 @@ Log an issue at https://github.com/Azure/azure-sdk-for-js/issues ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-asynciterator-polyfill%2FREADME.png) diff --git a/sdk/core/core-asynciterator-polyfill/package.json b/sdk/core/core-asynciterator-polyfill/package.json index 6409de41b347..3d6168f18ac4 100644 --- a/sdk/core/core-asynciterator-polyfill/package.json +++ b/sdk/core/core-asynciterator-polyfill/package.json @@ -25,7 +25,7 @@ "node": ">=8.0.0" }, "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-asynciterator-polyfill/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-asynciterator-polyfill/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/core/core-auth/README.md b/sdk/core/core-auth/README.md index 28b782913a5f..31ccc7f3fd83 100644 --- a/sdk/core/core-auth/README.md +++ b/sdk/core/core-auth/README.md @@ -73,6 +73,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-auth%2FREADME.png) diff --git a/sdk/core/core-auth/package.json b/sdk/core/core-auth/package.json index e263677a4269..9b804989c99c 100644 --- a/sdk/core/core-auth/package.json +++ b/sdk/core/core-auth/package.json @@ -63,7 +63,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-auth/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-auth/README.md", "sideEffects": false, "dependencies": { "@azure/abort-controller": "^1.0.0", diff --git a/sdk/core/core-client-rest/README.md b/sdk/core/core-client-rest/README.md index 418204b89dd7..4cdcdbe50460 100644 --- a/sdk/core/core-client-rest/README.md +++ b/sdk/core/core-client-rest/README.md @@ -30,6 +30,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore-rest%2Fcore-client%2FREADME.png) diff --git a/sdk/core/core-client-rest/package.json b/sdk/core/core-client-rest/package.json index a3862cc2bca6..8782bb3644e3 100644 --- a/sdk/core/core-client-rest/package.json +++ b/sdk/core/core-client-rest/package.json @@ -57,7 +57,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-client-rest/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-client-rest/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/core/core-client/CHANGELOG.md b/sdk/core/core-client/CHANGELOG.md index 384d044c751d..303d1cae3562 100644 --- a/sdk/core/core-client/CHANGELOG.md +++ b/sdk/core/core-client/CHANGELOG.md @@ -28,7 +28,7 @@ ### Breaking Changes - If the response body is empty and the mapper for it says it is nullable, then a null is returned. -- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. +- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. ## 1.0.0 (2021-03-15) diff --git a/sdk/core/core-client/README.md b/sdk/core/core-client/README.md index 5de050aea4a4..04d1b88b1d4b 100644 --- a/sdk/core/core-client/README.md +++ b/sdk/core/core-client/README.md @@ -48,6 +48,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-client%2FREADME.png) diff --git a/sdk/core/core-client/package.json b/sdk/core/core-client/package.json index 7f80a4f62796..75ae43754150 100644 --- a/sdk/core/core-client/package.json +++ b/sdk/core/core-client/package.json @@ -72,7 +72,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-client/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-client/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/core/core-crypto/README.md b/sdk/core/core-crypto/README.md index d11dd6607564..0e5e0738f7f4 100644 --- a/sdk/core/core-crypto/README.md +++ b/sdk/core/core-crypto/README.md @@ -33,6 +33,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-crypto%2FREADME.png) diff --git a/sdk/core/core-crypto/package.json b/sdk/core/core-crypto/package.json index fcb05b8fca92..00afa9885f07 100644 --- a/sdk/core/core-crypto/package.json +++ b/sdk/core/core-crypto/package.json @@ -71,7 +71,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-crypto/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-crypto/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/core/core-http/CHANGELOG.md b/sdk/core/core-http/CHANGELOG.md index b0602c0a0a9a..6a94d77d6ecf 100644 --- a/sdk/core/core-http/CHANGELOG.md +++ b/sdk/core/core-http/CHANGELOG.md @@ -6,6 +6,8 @@ ### Breaking Changes +- Updated @azure/core-tracing to version `1.0.0-preview.12`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. + ### Key Bugs Fixed ### Fixed @@ -34,7 +36,7 @@ ### Breaking Changes -- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. +- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. ## 1.2.3 (2021-02-04) diff --git a/sdk/core/core-http/README.md b/sdk/core/core-http/README.md index f51dc17e3f34..860078fff69e 100644 --- a/sdk/core/core-http/README.md +++ b/sdk/core/core-http/README.md @@ -19,7 +19,7 @@ This package is primarily used in generated code and not meant to be consumed di ## Key concepts -You can find an explanation of how this repository's code works by going to our [architecture overview](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-http/docs/architectureOverview.md). +You can find an explanation of how this repository's code works by going to our [architecture overview](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-http/docs/architectureOverview.md). ## Examples @@ -27,7 +27,7 @@ Examples can be found in the `samples` folder. ## Next steps -- Build this library (`core-http`). For more information on how to build project in this repo, please refer to the [Contributing Guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md). +- Build this library (`core-http`). For more information on how to build project in this repo, please refer to the [Contributing Guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md). - The code in `samples\node-sample.ts` shows how to create a `ServiceClient` instance with a test `TokenCredential` implementation and use the client instance to perform a `GET` operation from the Azure management service endpoint for subscriptions. To run the code, first obtain an access token to the Azure management service. @@ -61,7 +61,7 @@ node node-sample.js ### Browser - Set values of `subscriptionId` and `token` variable in `samples/index.js` -- Follow the instructions of [JavaScript Bundling Guide using Parcel](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md#using-parcel) to build and run the code in the browser. +- Follow the instructions of [JavaScript Bundling Guide using Parcel](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md#using-parcel) to build and run the code in the browser. ## Troubleshooting @@ -69,6 +69,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-http%2FREADME.png) diff --git a/sdk/core/core-http/package.json b/sdk/core/core-http/package.json index 32904218700d..74a6e273279e 100644 --- a/sdk/core/core-http/package.json +++ b/sdk/core/core-http/package.json @@ -57,7 +57,7 @@ "./dist-esm/src/util/url.js": "./dist-esm/src/util/url.browser.js" }, "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-http/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-http/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -129,7 +129,7 @@ "@azure/abort-controller": "^1.0.0", "@azure/core-asynciterator-polyfill": "^1.0.0", "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "@types/node-fetch": "^2.5.0", "@types/tunnel": "^0.0.1", diff --git a/sdk/core/core-http/src/policies/tracingPolicy.ts b/sdk/core/core-http/src/policies/tracingPolicy.ts index d53599233e0a..660ebd4684d6 100644 --- a/sdk/core/core-http/src/policies/tracingPolicy.ts +++ b/sdk/core/core-http/src/policies/tracingPolicy.ts @@ -76,7 +76,7 @@ export class TracingPolicy extends BaseRequestPolicy { try { // set headers - const spanContext = span.context(); + const spanContext = span.spanContext(); const traceParentHeader = getTraceParentHeader(spanContext); if (traceParentHeader) { request.headers.set("traceparent", traceParentHeader); diff --git a/sdk/core/core-http/test/policies/tracingPolicyTests.ts b/sdk/core/core-http/test/policies/tracingPolicyTests.ts index 19821736d7b6..1e871fef7538 100644 --- a/sdk/core/core-http/test/policies/tracingPolicyTests.ts +++ b/sdk/core/core-http/test/policies/tracingPolicyTests.ts @@ -12,7 +12,6 @@ import { import { setTracer, NoOpTracer, - NoOpSpan, SpanOptions, SpanContext, TraceFlags, @@ -20,24 +19,42 @@ import { setSpan, context, SpanStatusCode, - SpanStatus + SpanStatus, + Span, + SpanAttributes, + SpanAttributeValue, + Tracer } from "@azure/core-tracing"; import { tracingPolicy } from "../../src/policies/tracingPolicy"; -class MockSpan extends NoOpSpan { +class MockSpan implements Span { private _endCalled = false; private _status: SpanStatus = { code: SpanStatusCode.UNSET }; - private _attributes: { [s: string]: unknown } = {}; + private _attributes: SpanAttributes = {}; constructor( private traceId: string, private spanId: string, private flags: TraceFlags, private state: string - ) { - super(); + ) {} + + addEvent(): this { + throw new Error("Not implemented."); + } + + isRecording(): boolean { + return true; + } + + recordException(): void { + throw new Error("Not implemented."); + } + + updateName(): this { + throw new Error("Not implemented."); } didEnd(): boolean { @@ -57,7 +74,12 @@ class MockSpan extends NoOpSpan { return this; } - setAttribute(key: string, value: unknown) { + setAttributes(attributes: SpanAttributes): this { + this._attributes = attributes; + return this; + } + + setAttribute(key: string, value: SpanAttributeValue) { this._attributes[key] = value; return this; } @@ -66,7 +88,7 @@ class MockSpan extends NoOpSpan { return this._attributes[key]; } - context(): SpanContext { + spanContext(): SpanContext { const state = this.state; const traceState = { @@ -95,7 +117,7 @@ class MockSpan extends NoOpSpan { } } -class MockTracer extends NoOpTracer { +class MockTracer implements Tracer { private spans: MockSpan[] = []; private _startSpanCalled = false; @@ -104,9 +126,7 @@ class MockTracer extends NoOpTracer { private spanId = "", private flags = TraceFlags.NONE, private state = "" - ) { - super(); - } + ) {} getStartedSpans(): MockSpan[] { return this.spans; diff --git a/sdk/core/core-lro/CHANGELOG.md b/sdk/core/core-lro/CHANGELOG.md index e72edf05fa54..492bd011c446 100644 --- a/sdk/core/core-lro/CHANGELOG.md +++ b/sdk/core/core-lro/CHANGELOG.md @@ -13,7 +13,7 @@ ### Breaking Changes -- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. +- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. ## 1.0.3 (2021-01-07) diff --git a/sdk/core/core-lro/README.md b/sdk/core/core-lro/README.md index 6dc82ed77047..af6128fcbff5 100644 --- a/sdk/core/core-lro/README.md +++ b/sdk/core/core-lro/README.md @@ -6,7 +6,7 @@ `@azure/core-lro` is made following our [Long Running Operations guidelines](https://azure.github.io/azure-sdk/typescript_design.html#ts-lro) -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-lro) | [Package (npm)](https://www.npmjs.com/package/@azure/core-lro) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/core-lro) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-lro/samples) +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-lro) | [Package (npm)](https://www.npmjs.com/package/@azure/core-lro) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/core-lro) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-lro/samples) ## Getting started @@ -55,8 +55,8 @@ for more information. You will be able to find some working examples of an implementation of an operation and a poller in: -- [The `@azure/core-lro` samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-lro/samples). -- [The `@azure/core-lro` tests](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-lro/test). +- [The `@azure/core-lro` samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-lro/samples). +- [The `@azure/core-lro` tests](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-lro/test). ## Troubleshooting @@ -64,15 +64,15 @@ You will be able to find some working examples of an implementation of an operat Logs can be added at the discretion of the library implementing the Long Running Operation poller. Packages inside of [azure-sdk-for-js](https://github.com/Azure/azure-sdk-for-js) use -[@azure/logger](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +[@azure/logger](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-lro/samples) directory for detailed examples on how to use this library. +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-lro/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ### Testing diff --git a/sdk/core/core-lro/package.json b/sdk/core/core-lro/package.json index a24195811e8b..541fbdd231f3 100644 --- a/sdk/core/core-lro/package.json +++ b/sdk/core/core-lro/package.json @@ -42,7 +42,7 @@ "process": false }, "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-lro/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-lro/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -96,12 +96,12 @@ "sideEffects": false, "dependencies": { "@azure/abort-controller": "^1.0.0", - "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "events": "^3.0.0", "tslib": "^2.2.0" }, "devDependencies": { + "@azure/core-http": "^1.2.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", "@azure/dev-tool": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/core/core-lro/rollup.base.config.js b/sdk/core/core-lro/rollup.base.config.js index de7479d0e117..7b7888881008 100644 --- a/sdk/core/core-lro/rollup.base.config.js +++ b/sdk/core/core-lro/rollup.base.config.js @@ -27,6 +27,7 @@ const banner = [ ].join("\n"); const depNames = Object.keys(pkg.dependencies); +const devDepNames = Object.keys(pkg.devDependencies); const production = process.env.NODE_ENV === "production"; export function nodeConfig(test = false) { @@ -59,6 +60,9 @@ export function nodeConfig(test = false) { baseConfig.input = ["dist-esm/test/*.test.js"]; baseConfig.plugins.unshift(multiEntry({ exports: false })); + // mark devdeps as external + baseConfig.external.push(...devDepNames); + // different output file baseConfig.output.file = "dist-test/index.node.js"; @@ -85,9 +89,6 @@ export function browserConfig(test = false) { banner: banner, format: "umd", name: "azurecorelro", - globals: { - "@azure/core-http": "Azure.Core.HTTP" - }, sourcemap: true }, preserveSymlinks: false, diff --git a/sdk/core/core-lro/samples/README.md b/sdk/core/core-lro/samples/README.md index 7842239a0a2e..d1c903e9bd0f 100644 --- a/sdk/core/core-lro/samples/README.md +++ b/sdk/core/core-lro/samples/README.md @@ -8,7 +8,7 @@ In this folder you will be able to see a simple sample file implementing a `Poll The sample file: -- [typescript/samplesClient.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-lro/samples/typescript/samplesClient.ts) +- [typescript/samplesClient.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-lro/samples/typescript/samplesClient.ts) ## Guide on implementing a LRO method @@ -73,7 +73,7 @@ A guide on how to write them follows. The `update` method defines how to request the remote service for updates on the status of the long running operation. -It optionally receives an object with an `abortSignal` property, from [@azure/abort-controller](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/abort-controller)'s `AbortSignalLike`. +It optionally receives an object with an `abortSignal` property, from [@azure/abort-controller](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/abort-controller)'s `AbortSignalLike`. A more advanced use allows passing in a `fireProgress` function, which, if called, is responsible for triggering the poller's `onProgress` callbacks. @@ -112,7 +112,7 @@ async function update( The operation's `cancel` method should attempt to cancel the pending operation, if it's allowed by the remote service. Otherwise, it should throw. -It only optionally receives an object with an `abortSignal` property, from [@azure/abort-controller](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/abort-controller)'s `AbortSignalLike`. +It only optionally receives an object with an `abortSignal` property, from [@azure/abort-controller](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/abort-controller)'s `AbortSignalLike`. It returns a promise that should be resolved with an updated version of the poller's operation. diff --git a/sdk/core/core-paging/README.md b/sdk/core/core-paging/README.md index c2f6b2ccad0a..5fb49772f52f 100644 --- a/sdk/core/core-paging/README.md +++ b/sdk/core/core-paging/README.md @@ -56,6 +56,6 @@ Log an issue at https://github.com/Azure/azure-sdk-for-js/issues ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-paging%2FREADME.png) diff --git a/sdk/core/core-paging/package.json b/sdk/core/core-paging/package.json index 24a722a330fa..50f6031858b4 100644 --- a/sdk/core/core-paging/package.json +++ b/sdk/core/core-paging/package.json @@ -36,7 +36,7 @@ "node": ">=8.0.0" }, "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-paging/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-paging/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/core/core-rest-pipeline/CHANGELOG.md b/sdk/core/core-rest-pipeline/CHANGELOG.md index b9011a20ad39..83325d678b12 100644 --- a/sdk/core/core-rest-pipeline/CHANGELOG.md +++ b/sdk/core/core-rest-pipeline/CHANGELOG.md @@ -35,7 +35,7 @@ ### Breaking Changes -- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. +- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. ## 1.0.2 (2021-03-25) diff --git a/sdk/core/core-rest-pipeline/README.md b/sdk/core/core-rest-pipeline/README.md index e046a73e681b..4412f183a9bb 100644 --- a/sdk/core/core-rest-pipeline/README.md +++ b/sdk/core/core-rest-pipeline/README.md @@ -85,7 +85,7 @@ const customPolicy = { }; ``` -Most policies only concern themselves with either the request or the response, but there are some exceptions such as the [LogPolicy](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-rest-pipeline/src/policies/logPolicy.ts) which logs information from each. +Most policies only concern themselves with either the request or the response, but there are some exceptions such as the [LogPolicy](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-rest-pipeline/src/policies/logPolicy.ts) which logs information from each. ### Pipelines @@ -149,6 +149,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-rest-pipeline%2FREADME.png) diff --git a/sdk/core/core-rest-pipeline/package.json b/sdk/core/core-rest-pipeline/package.json index 75e7e6aa5e6c..2760c6257af5 100644 --- a/sdk/core/core-rest-pipeline/package.json +++ b/sdk/core/core-rest-pipeline/package.json @@ -79,7 +79,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-rest-pipeline/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-rest-pipeline/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "//metadata": { diff --git a/sdk/core/core-rest-pipeline/samples/v1/javascript/README.md b/sdk/core/core-rest-pipeline/samples/v1/javascript/README.md index 6be4140809a1..39d0ab3f8a34 100644 --- a/sdk/core/core-rest-pipeline/samples/v1/javascript/README.md +++ b/sdk/core/core-rest-pipeline/samples/v1/javascript/README.md @@ -39,6 +39,6 @@ node node-sample.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[node-sample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-rest-pipeline/samples/v1/javascript/node-sample.js +[node-sample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-rest-pipeline/samples/v1/javascript/node-sample.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/core-rest-pipeline -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-rest-pipeline/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-rest-pipeline/README.md diff --git a/sdk/core/core-rest-pipeline/samples/v1/javascript/package.json b/sdk/core/core-rest-pipeline/samples/v1/javascript/package.json index b8872c697ca0..5b13979b381e 100644 --- a/sdk/core/core-rest-pipeline/samples/v1/javascript/package.json +++ b/sdk/core/core-rest-pipeline/samples/v1/javascript/package.json @@ -20,7 +20,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-rest-pipeline", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-rest-pipeline", "dependencies": { "@azure/core-rest-pipeline": "next", "dotenv": "latest" diff --git a/sdk/core/core-rest-pipeline/samples/v1/typescript/README.md b/sdk/core/core-rest-pipeline/samples/v1/typescript/README.md index 78a0393eb91a..58bcc920b6cc 100644 --- a/sdk/core/core-rest-pipeline/samples/v1/typescript/README.md +++ b/sdk/core/core-rest-pipeline/samples/v1/typescript/README.md @@ -51,7 +51,7 @@ node dist/node-sample.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[node-sample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-rest-pipeline/samples/v1/typescript/src/node-sample.ts +[node-sample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-rest-pipeline/samples/v1/typescript/src/node-sample.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/core-rest-pipeline -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-rest-pipeline/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-rest-pipeline/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/core/core-rest-pipeline/samples/v1/typescript/package.json b/sdk/core/core-rest-pipeline/samples/v1/typescript/package.json index 27d4488f82bf..8da5e6dddd63 100644 --- a/sdk/core/core-rest-pipeline/samples/v1/typescript/package.json +++ b/sdk/core/core-rest-pipeline/samples/v1/typescript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-rest-pipeline", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-rest-pipeline", "dependencies": { "@azure/core-rest-pipeline": "next", "dotenv": "latest" diff --git a/sdk/core/core-rest-pipeline/test/tracingPolicy.spec.ts b/sdk/core/core-rest-pipeline/test/tracingPolicy.spec.ts index 034d47b93208..4f10a42646a9 100644 --- a/sdk/core/core-rest-pipeline/test/tracingPolicy.spec.ts +++ b/sdk/core/core-rest-pipeline/test/tracingPolicy.spec.ts @@ -14,30 +14,47 @@ import { import { setTracer, NoOpTracer, - NoOpSpan, SpanContext, TraceFlags, + Span, TraceState, context, setSpan, SpanStatus, - SpanStatusCode + SpanStatusCode, + SpanAttributes, + Tracer, + SpanAttributeValue } from "@azure/core-tracing"; -class MockSpan extends NoOpSpan { +class MockSpan implements Span { private _endCalled = false; private _status: SpanStatus = { code: SpanStatusCode.UNSET }; - private _attributes: { [s: string]: unknown } = {}; + private _attributes: SpanAttributes = {}; constructor( private traceId: string, private spanId: string, private flags: TraceFlags, private state: string - ) { - super(); + ) {} + + addEvent(): this { + throw new Error("Method not implemented."); + } + + isRecording(): boolean { + return true; + } + + recordException(): void { + throw new Error("Method not implemented."); + } + + updateName(): this { + throw new Error("Method not implemented."); } didEnd(): boolean { @@ -57,7 +74,12 @@ class MockSpan extends NoOpSpan { return this; } - setAttribute(key: string, value: unknown) { + setAttributes(attributes: SpanAttributes): this { + this._attributes = attributes; + return this; + } + + setAttribute(key: string, value: SpanAttributeValue) { this._attributes[key] = value; return this; } @@ -95,7 +117,7 @@ class MockSpan extends NoOpSpan { } } -class MockTracer extends NoOpTracer { +class MockTracer implements Tracer { private spans: MockSpan[] = []; private _startSpanCalled = false; @@ -104,9 +126,7 @@ class MockTracer extends NoOpTracer { private spanId = "", private flags = TraceFlags.NONE, private state = "" - ) { - super(); - } + ) {} getStartedSpans(): MockSpan[] { return this.spans; diff --git a/sdk/core/core-tracing/CHANGELOG.md b/sdk/core/core-tracing/CHANGELOG.md index d0eb4e82d663..a309dea716be 100644 --- a/sdk/core/core-tracing/CHANGELOG.md +++ b/sdk/core/core-tracing/CHANGELOG.md @@ -2,9 +2,13 @@ ## 1.0.0-preview.12 (Unreleased) +- Update `@opentelemetry/api` to version 1.0.0 [PR #15883](https://github.com/Azure/azure-sdk-for-js/pull/15883) + ### Breaking Changes - Removed `OpenCensusSpanWrapper` and `OpenCensusTracerWrapper` from the public API. Customers using these wrappers should migrate to using `OpenTelemetry` directly. [PR #15770](https://github.com/Azure/azure-sdk-for-js/pull/15770) +- Update `@azure/core-tracing` to version 1.0.0-preview.12. This brings core-tracing up to date with `@opentelemetry/api@1.0.0`. + - `Span#context` was renamed to `Span#spanContext`. This change is supported in `@azure/core-http@1.2.7`. ## 1.0.0-preview.11 (2021-03-30) diff --git a/sdk/core/core-tracing/README.md b/sdk/core/core-tracing/README.md index 8d5cb2c0b37d..dc088cba6512 100644 --- a/sdk/core/core-tracing/README.md +++ b/sdk/core/core-tracing/README.md @@ -67,6 +67,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-tracing%2FREADME.png) diff --git a/sdk/core/core-tracing/package.json b/sdk/core/core-tracing/package.json index 7056b43d6425..e18afe6c98a7 100644 --- a/sdk/core/core-tracing/package.json +++ b/sdk/core/core-tracing/package.json @@ -57,10 +57,10 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/README.md", "sideEffects": false, "dependencies": { - "@opentelemetry/api": "1.0.0-rc.0", + "@opentelemetry/api": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { diff --git a/sdk/core/core-tracing/review/core-tracing.api.md b/sdk/core/core-tracing/review/core-tracing.api.md index 32e6bd900d86..824fbba74ab5 100644 --- a/sdk/core/core-tracing/review/core-tracing.api.md +++ b/sdk/core/core-tracing/review/core-tracing.api.md @@ -81,25 +81,19 @@ export type HrTime = [number, number]; // @public export interface Link { attributes?: SpanAttributes; - context: LinkContext; + context: SpanContext; } -// @public -export type LinkContext = { - traceId: string; - spanId: string; -}; - // @public export class NoOpSpan implements Span { addEvent(_name: string, _attributes?: SpanAttributes): this; - context(): SpanContext; end(_endTime?: number): void; isRecording(): boolean; recordException(_exception: Exception, _time?: TimeInput): void; setAttribute(_key: string, _value: unknown): this; setAttributes(_attributes: SpanAttributes): this; setStatus(_status: SpanStatus): this; + spanContext(): SpanContext; updateName(_name: string): this; } @@ -129,13 +123,13 @@ export function setTracer(tracer: Tracer): void; // @public export interface Span { addEvent(name: string, attributesOrStartTime?: SpanAttributes | TimeInput, startTime?: TimeInput): this; - context(): SpanContext; end(endTime?: TimeInput): void; isRecording(): boolean; recordException(exception: Exception, time?: TimeInput): void; setAttribute(key: string, value: SpanAttributeValue): this; setAttributes(attributes: SpanAttributes): this; setStatus(status: SpanStatus): this; + spanContext(): SpanContext; updateName(name: string): this; } @@ -200,7 +194,6 @@ export enum SpanStatusCode { export class TestSpan extends NoOpSpan { constructor(parentTracer: Tracer, name: string, context: SpanContext, kind: SpanKind, parentSpanId?: string, startTime?: TimeInput); readonly attributes: SpanAttributes; - context(): SpanContext; end(_endTime?: number): void; endCalled: boolean; isRecording(): boolean; @@ -210,6 +203,7 @@ export class TestSpan extends NoOpSpan { setAttribute(key: string, value: SpanAttributeValue): this; setAttributes(attributes: SpanAttributes): this; setStatus(status: SpanStatus): this; + spanContext(): SpanContext; readonly startTime: TimeInput; status: SpanStatus; tracer(): Tracer; diff --git a/sdk/core/core-tracing/src/index.ts b/sdk/core/core-tracing/src/index.ts index 179a319278ba..46efb7f36c34 100644 --- a/sdk/core/core-tracing/src/index.ts +++ b/sdk/core/core-tracing/src/index.ts @@ -23,7 +23,6 @@ export { getSpanContext, HrTime, Link, - LinkContext, OperationTracingOptions, setSpan, setSpanContext, diff --git a/sdk/core/core-tracing/src/interfaces.ts b/sdk/core/core-tracing/src/interfaces.ts index ed9cc191ae13..cfab37fa8a55 100644 --- a/sdk/core/core-tracing/src/interfaces.ts +++ b/sdk/core/core-tracing/src/interfaces.ts @@ -1,13 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { - context as otContext, - getSpan as otGetSpan, - getSpanContext as otGetSpanContext, - setSpan as otSetSpan, - setSpanContext as otSetSpanContext -} from "@opentelemetry/api"; +import { context as otContext, trace as otTrace } from "@opentelemetry/api"; /** * A Tracer. @@ -178,7 +172,7 @@ export interface ExceptionWithName { * @param context - context to get span from */ export function getSpan(context: Context): Span | undefined { - return otGetSpan(context); + return otTrace.getSpan(context); } /** @@ -188,7 +182,7 @@ export function getSpan(context: Context): Span | undefined { * @param span - span to set active */ export function setSpan(context: Context, span: Span): Context { - return otSetSpan(context, span); + return otTrace.setSpan(context, span); } /** @@ -199,7 +193,7 @@ export function setSpan(context: Context, span: Span): Context { * @param spanContext - span context to be wrapped */ export function setSpanContext(context: Context, spanContext: SpanContext): Context { - return otSetSpanContext(context, spanContext); + return otTrace.setSpanContext(context, spanContext); } /** @@ -208,7 +202,7 @@ export function setSpanContext(context: Context, spanContext: SpanContext): Cont * @param context - context to get values from */ export function getSpanContext(context: Context): SpanContext | undefined { - return otGetSpanContext(context); + return otTrace.getSpanContext(context); } /** @@ -260,7 +254,7 @@ export interface Span { * * @returns the SpanContext object associated with this Span. */ - context(): SpanContext; + spanContext(): SpanContext; /** * Sets an attribute to the span. * @@ -388,20 +382,12 @@ export interface SpanContext { traceState?: TraceState; } -/** - * Context for the linked span. - */ -export type LinkContext = { - traceId: string; - spanId: string; -}; - /** * Used to specify a span that is linked to another. */ export interface Link { - /** The {@link LinkContext} of a linked span. */ - context: LinkContext; + /** The {@link SpanContext} of a linked span. */ + context: SpanContext; /** A set of {@link SpanAttributes} on the link. */ attributes?: SpanAttributes; diff --git a/sdk/core/core-tracing/src/tracers/noop/noOpSpan.ts b/sdk/core/core-tracing/src/tracers/noop/noOpSpan.ts index 55f442111b02..93e8ee94f182 100644 --- a/sdk/core/core-tracing/src/tracers/noop/noOpSpan.ts +++ b/sdk/core/core-tracing/src/tracers/noop/noOpSpan.ts @@ -18,7 +18,7 @@ export class NoOpSpan implements Span { /** * Returns the SpanContext associated with this Span. */ - context(): SpanContext { + spanContext(): SpanContext { return { spanId: "", traceId: "", diff --git a/sdk/core/core-tracing/src/tracers/test/testSpan.ts b/sdk/core/core-tracing/src/tracers/test/testSpan.ts index 50f11fd584a5..9cd23cd73351 100644 --- a/sdk/core/core-tracing/src/tracers/test/testSpan.ts +++ b/sdk/core/core-tracing/src/tracers/test/testSpan.ts @@ -96,7 +96,7 @@ export class TestSpan extends NoOpSpan { /** * Returns the SpanContext associated with this Span. */ - context(): SpanContext { + spanContext(): SpanContext { return this._context; } diff --git a/sdk/core/core-tracing/src/tracers/test/testTracer.ts b/sdk/core/core-tracing/src/tracers/test/testTracer.ts index 99bbcd282755..fe85831fa610 100644 --- a/sdk/core/core-tracing/src/tracers/test/testTracer.ts +++ b/sdk/core/core-tracing/src/tracers/test/testTracer.ts @@ -88,14 +88,14 @@ export class TestTracer extends NoOpTracer { */ getSpanGraph(traceId: string): SpanGraph { const traceSpans = this.knownSpans.filter((span) => { - return span.context().traceId === traceId; + return span.spanContext().traceId === traceId; }); const roots: SpanGraphNode[] = []; const nodeMap: Map = new Map(); for (const span of traceSpans) { - const spanId = span.context().spanId; + const spanId = span.spanContext().spanId; const node: SpanGraphNode = { name: span.name, children: [] diff --git a/sdk/core/core-tracing/src/utils/cache.ts b/sdk/core/core-tracing/src/utils/cache.ts index 0b53650f9a22..92defea17019 100644 --- a/sdk/core/core-tracing/src/utils/cache.ts +++ b/sdk/core/core-tracing/src/utils/cache.ts @@ -4,17 +4,13 @@ import { Tracer } from "../interfaces"; import { getGlobalObject } from "./global"; -// V1 = OpenTelemetry 0.1 -// V2 = OpenTelemetry 0.2 -// V3 = OpenTelemetry 0.6.1 -// V4 = OpenTelemetry 1.0.0-rc.0 -const GLOBAL_TRACER_VERSION = 4; -// preview5 shipped with @azure/core-tracing.tracerCache -// and didn't have smart detection for collisions -const GLOBAL_TRACER_SYMBOL = Symbol.for("@azure/core-tracing.tracerCache3"); +// tracerCache will be updated when a new incompatible version of OTel is +// shipped in core-tracing. +// tracerCache3 - OpenTelemetry 1.0.0-rc.1 +// tracerCache4 - OpenTelemetry 0.20.0 +const GLOBAL_TRACER_SYMBOL = Symbol.for(`@azure/core-tracing.tracerCache4`); export interface TracerCache { - version: number; tracer?: Tracer; } @@ -22,31 +18,13 @@ let cache: TracerCache; function loadTracerCache(): void { const globalObj = getGlobalObject(); - const existingCache: TracerCache = globalObj[GLOBAL_TRACER_SYMBOL]; - let setGlobalCache = true; - if (existingCache) { - if (existingCache.version === GLOBAL_TRACER_VERSION) { - cache = existingCache; - } else { - setGlobalCache = false; - if (existingCache.tracer) { - throw new Error( - `Two incompatible versions of @azure/core-tracing have been loaded. - This library is ${GLOBAL_TRACER_VERSION}, existing is ${existingCache.version}.` - ); - } - } - } - if (!cache) { - cache = { - tracer: undefined, - version: GLOBAL_TRACER_VERSION + if (!globalObj[GLOBAL_TRACER_SYMBOL]) { + globalObj[GLOBAL_TRACER_SYMBOL] = { + tracer: undefined }; } - if (setGlobalCache) { - globalObj[GLOBAL_TRACER_SYMBOL] = cache; - } + cache = globalObj[GLOBAL_TRACER_SYMBOL]; } export function getCache(): TracerCache { diff --git a/sdk/core/core-tracing/test/cache.spec.ts b/sdk/core/core-tracing/test/cache.spec.ts new file mode 100644 index 000000000000..407f258056c9 --- /dev/null +++ b/sdk/core/core-tracing/test/cache.spec.ts @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import assert from "assert"; +import * as fs from "fs"; +import { Context } from "mocha"; +import * as path from "path"; + +const validOpenTelemetryVersions = ["^1.0.0"]; + +describe("cache", () => { + it("ensure current @opentelemetry/api has been validated", function(this: Context) { + if (!fs) { + this.skip(); + } + // This test ensures that we make a conscious and deliberate decision whether two tracers are compatible. + // When upgrading our @opentelemetry/api version, if the changes to the _tracer_ are incompatible we should + // Update GLOBAL_TRACER_SYMBOL to be unique by incrementing the version and remove the existing entries in `validOpenTelemetryVersions`. Otherwise we can share a tracer cache. + // When finished, you can add this version to the `validOpenTelemetryVersions` array. + const packageJson = JSON.parse( + fs.readFileSync(path.join(__dirname, "../package.json"), { encoding: "utf8" }) + ); + assert.ok( + validOpenTelemetryVersions.includes(packageJson["dependencies"]["@opentelemetry/api"]), + "Detected new version of @opentelemetry/api. Please ensure compatibility with current versions or bump the cache version to ensure uniqueness, then add it to the `validOpenTelemetryVersions` list." + ); + }); +}); diff --git a/sdk/core/core-tracing/test/createSpan.spec.ts b/sdk/core/core-tracing/test/createSpan.spec.ts index 8379548cfd73..74baa0a00499 100644 --- a/sdk/core/core-tracing/test/createSpan.spec.ts +++ b/sdk/core/core-tracing/test/createSpan.spec.ts @@ -10,7 +10,7 @@ import { context as otContext, getSpanContext, Context -} from "@opentelemetry/api"; +} from "../src/interfaces"; import { setTracer } from "../src/tracerProxy"; import { TestTracer } from "../src/tracers/test/testTracer"; @@ -197,7 +197,7 @@ describe("createSpan", () => { assert.notDeepEqual(parentContext, otContext.active(), "new child context should be created"); assert.equal( getSpanContext(parentContext!)?.spanId, - span.context().spanId, + span.spanContext().spanId, "context returned in the updated options should point to our newly created span" ); } @@ -212,7 +212,7 @@ describe("createSpan", () => { assert.ok(updatedOptions.tracingOptions.tracingContext); assert.equal( getSpanContext(updatedOptions.tracingOptions.tracingContext!)?.spanId, - childSpan.context().spanId + childSpan.spanContext().spanId ); }); }); diff --git a/sdk/core/core-tracing/test/interfaces.spec.ts b/sdk/core/core-tracing/test/interfaces.spec.ts index 70555fddc7a6..822086c2c29b 100644 --- a/sdk/core/core-tracing/test/interfaces.spec.ts +++ b/sdk/core/core-tracing/test/interfaces.spec.ts @@ -31,6 +31,7 @@ describe("interface compatibility", () => { links: [ { context: { + traceFlags: coreTracing.TraceFlags.NONE, spanId: "", traceId: "" } @@ -53,7 +54,8 @@ describe("interface compatibility", () => { { context: { spanId: "spanId", - traceId: "traceId" + traceId: "traceId", + traceFlags: coreTracing.TraceFlags.NONE }, attributes: { hello2: "world2" diff --git a/sdk/core/core-util/README.md b/sdk/core/core-util/README.md index cedddcecd18c..299357f28332 100644 --- a/sdk/core/core-util/README.md +++ b/sdk/core/core-util/README.md @@ -30,6 +30,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-util%2FREADME.png) diff --git a/sdk/core/core-util/package.json b/sdk/core/core-util/package.json index 52f499a0373b..183336377de0 100644 --- a/sdk/core/core-util/package.json +++ b/sdk/core/core-util/package.json @@ -64,7 +64,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-util/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-util/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/core/core-xml/README.md b/sdk/core/core-xml/README.md index 95e3e1e8e749..63acacf44ad1 100644 --- a/sdk/core/core-xml/README.md +++ b/sdk/core/core-xml/README.md @@ -30,6 +30,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Fcore-client%2FREADME.png) diff --git a/sdk/core/core-xml/package.json b/sdk/core/core-xml/package.json index bd7e35680311..db57ef7ae1e5 100644 --- a/sdk/core/core-xml/package.json +++ b/sdk/core/core-xml/package.json @@ -71,7 +71,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-xml/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-xml/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/core/logger/README.md b/sdk/core/logger/README.md index 1a49c0b6ccb9..b1b3b5a2e1fe 100644 --- a/sdk/core/logger/README.md +++ b/sdk/core/logger/README.md @@ -83,6 +83,6 @@ If you run into issues while using this library, please feel free to [file an is ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcore%2Flogger%2FREADME.png) diff --git a/sdk/core/logger/package.json b/sdk/core/logger/package.json index ab7e72fa833d..28a453becd0e 100644 --- a/sdk/core/logger/package.json +++ b/sdk/core/logger/package.json @@ -65,7 +65,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger/README.md", "sideEffects": false, "dependencies": { "tslib": "^2.2.0" diff --git a/sdk/cosmosdb/arm-cosmosdb/package.json b/sdk/cosmosdb/arm-cosmosdb/package.json index 65bc0efd7133..f32cdbf59391 100644 --- a/sdk/cosmosdb/arm-cosmosdb/package.json +++ b/sdk/cosmosdb/arm-cosmosdb/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cosmosdb/arm-cosmosdb", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/arm-cosmosdb", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/cosmosdb/ci.yml b/sdk/cosmosdb/ci.yml index 32f1ac85524f..245dbfdd16f9 100644 --- a/sdk/cosmosdb/ci.yml +++ b/sdk/cosmosdb/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/cosmosdb/cosmos/README.md b/sdk/cosmosdb/cosmos/README.md index b35091b229cd..0870a91113ef 100644 --- a/sdk/cosmosdb/cosmos/README.md +++ b/sdk/cosmosdb/cosmos/README.md @@ -233,7 +233,7 @@ For more extensive documentation on the Cosmos DB service, see the [Azure Cosmos - [Welcome to Azure Cosmos DB](https://docs.microsoft.com/azure/cosmos-db/community) - [Quick start](https://docs.microsoft.com/azure/cosmos-db/sql-api-nodejs-get-started) - [Tutorial](https://docs.microsoft.com/azure/cosmos-db/sql-api-nodejs-application) -- [Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cosmosdb/cosmos/samples) +- [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/cosmos/samples) - [Introduction to Resource Model of Azure Cosmos DB Service](https://docs.microsoft.com/azure/cosmos-db/sql-api-resources) - [Introduction to SQL API of Azure Cosmos DB Service](https://docs.microsoft.com/azure/cosmos-db/sql-api-sql-query) - [Partitioning](https://docs.microsoft.com/azure/cosmos-db/sql-api-partition-data) @@ -241,7 +241,7 @@ For more extensive documentation on the Cosmos DB service, see the [Azure Cosmos ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcosmosdb%2Fcosmos%2FREADME.png) @@ -263,7 +263,7 @@ If you'd like to contribute to this library, please read the [contributing guide [cosmos_item]: https://docs.microsoft.com/azure/cosmos-db/databases-containers-items#azure-cosmos-items [cosmos_request_units]: https://docs.microsoft.com/azure/cosmos-db/request-units [cosmos_resources]: https://docs.microsoft.com/azure/cosmos-db/databases-containers-items -[cosmos_samples]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cosmosdb/cosmos/samples +[cosmos_samples]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/cosmos/samples [cosmos_sql_queries]: https://docs.microsoft.com/azure/cosmos-db/how-to-sql-query [cosmos_ttl]: https://docs.microsoft.com/azure/cosmos-db/time-to-live [npm]: https://www.npmjs.com/package/@azure/cosmos diff --git a/sdk/cosmosdb/cosmos/package.json b/sdk/cosmosdb/cosmos/package.json index 13454db899f1..b7fe171f8e98 100644 --- a/sdk/cosmosdb/cosmos/package.json +++ b/sdk/cosmosdb/cosmos/package.json @@ -32,7 +32,7 @@ "README.md", "LICENSE" ], - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cosmosdb/cosmos/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/cosmos/README.md", "sideEffects": false, "types": "./dist/types/latest/cosmos.d.ts", "typesVersions": { diff --git a/sdk/customer-insights/arm-customerinsights/README.md b/sdk/customer-insights/arm-customerinsights/README.md index 4c0674371b16..fca618f3fd17 100644 --- a/sdk/customer-insights/arm-customerinsights/README.md +++ b/sdk/customer-insights/arm-customerinsights/README.md @@ -1,89 +1,100 @@ ## Azure CustomerInsightsManagementClient SDK for JavaScript -This package contains an isomorphic SDK for CustomerInsightsManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for CustomerInsightsManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites -``` -npm install @azure/arm-customerinsights +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-customerinsights` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: +```bash +npm install --save @azure/arm-customerinsights @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { CustomerInsightsManagementClient, CustomerInsightsManagementModels, CustomerInsightsManagementMappers } from "@azure/arm-customerinsights"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { CustomerInsightsManagementClient } = require("@azure/arm-customerinsights"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new CustomerInsightsManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new CustomerInsightsManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-customerinsights sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fcustomer-insights%2Farm-customerinsights%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/customer-insights/arm-customerinsights/README.png) diff --git a/sdk/customer-insights/arm-customerinsights/package.json b/sdk/customer-insights/arm-customerinsights/package.json index 8da0aaac415b..5ef0f595af5f 100644 --- a/sdk/customer-insights/arm-customerinsights/package.json +++ b/sdk/customer-insights/arm-customerinsights/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-customerinsights", "author": "Microsoft Corporation", "description": "CustomerInsightsManagementClient Library with typescript type definitions for node.js and browser.", - "version": "3.1.0", + "version": "3.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/customerInsightsManagementClient.js", "types": "./esm/customerInsightsManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/customer-insights/arm-customerinsights", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/customer-insights/arm-customerinsights", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClient.ts b/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClient.ts index 756b2eaa4155..6222dfec17cc 100644 --- a/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClient.ts +++ b/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -37,12 +38,17 @@ class CustomerInsightsManagementClient extends CustomerInsightsManagementClientC /** * Initializes a new instance of the CustomerInsightsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.CustomerInsightsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.CustomerInsightsManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.hubs = new operations.Hubs(this); diff --git a/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClientContext.ts b/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClientContext.ts index 90b220dba9bb..056ca9a3d8fd 100644 --- a/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClientContext.ts +++ b/sdk/customer-insights/arm-customerinsights/src/customerInsightsManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-customerinsights"; -const packageVersion = "0.1.0"; +const packageVersion = "3.2.0"; export class CustomerInsightsManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the CustomerInsightsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.CustomerInsightsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.CustomerInsightsManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/databox/arm-databox/README.md b/sdk/databox/arm-databox/README.md index 4a3b8f3d1504..da15b9671dab 100644 --- a/sdk/databox/arm-databox/README.md +++ b/sdk/databox/arm-databox/README.md @@ -1,90 +1,100 @@ ## Azure DataBoxManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DataBoxManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataBoxManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-databox` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-databox +npm install --save @azure/arm-databox @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DataBoxManagementClient, DataBoxManagementModels, DataBoxManagementMappers } from "@azure/arm-databox"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DataBoxManagementClient } = require("@azure/arm-databox"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DataBoxManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DataBoxManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-databox sample - - + diff --git a/sdk/databox/arm-databox/package.json b/sdk/databox/arm-databox/package.json index 4609f88a04ca..16cd93139780 100644 --- a/sdk/databox/arm-databox/package.json +++ b/sdk/databox/arm-databox/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-databox", "author": "Microsoft Corporation", "description": "DataBoxManagementClient Library with typescript type definitions for node.js and browser.", - "version": "4.0.0", + "version": "4.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dataBoxManagementClient.js", "types": "./esm/dataBoxManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/databox/arm-databox", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/databox/arm-databox", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/databox/arm-databox/src/dataBoxManagementClient.ts b/sdk/databox/arm-databox/src/dataBoxManagementClient.ts index f602142b81a6..ef58e9ba9067 100644 --- a/sdk/databox/arm-databox/src/dataBoxManagementClient.ts +++ b/sdk/databox/arm-databox/src/dataBoxManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -23,11 +24,16 @@ class DataBoxManagementClient extends DataBoxManagementClientContext { /** * Initializes a new instance of the DataBoxManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Subscription Id * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataBoxManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataBoxManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.jobs = new operations.Jobs(this); diff --git a/sdk/databox/arm-databox/src/dataBoxManagementClientContext.ts b/sdk/databox/arm-databox/src/dataBoxManagementClientContext.ts index c96e85eca2a9..dd8008144963 100644 --- a/sdk/databox/arm-databox/src/dataBoxManagementClientContext.ts +++ b/sdk/databox/arm-databox/src/dataBoxManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-databox"; -const packageVersion = "4.0.0"; +const packageVersion = "4.1.0"; export class DataBoxManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the DataBoxManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The Subscription Id * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataBoxManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataBoxManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/README.md b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/README.md index de4e81764af3..ce1d3af84c2d 100644 --- a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/README.md +++ b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/README.md @@ -1,90 +1,100 @@ ## Azure DataBoxEdgeManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DataBoxEdgeManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataBoxEdgeManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-databoxedge-profile-2020-09-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-databoxedge-profile-2020-09-01-hybrid +npm install --save @azure/arm-databoxedge-profile-2020-09-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DataBoxEdgeManagementClient, DataBoxEdgeManagementModels, DataBoxEdgeManagementMappers } from "@azure/arm-databoxedge-profile-2020-09-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DataBoxEdgeManagementClient } = require("@azure/arm-databoxedge-profile-2020-09-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DataBoxEdgeManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DataBoxEdgeManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-databoxedge-profile-2020-09-01-hybrid sample - - + diff --git a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/package.json b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/package.json index b2dfc62b4175..ab84c75a50f7 100644 --- a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/package.json +++ b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-databoxedge-profile-2020-09-01-hybrid", "author": "Microsoft Corporation", "description": "DataBoxEdgeManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dataBoxEdgeManagementClient.js", "types": "./esm/dataBoxEdgeManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClient.ts b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClient.ts index eb7d557efa73..5c59037970dc 100644 --- a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClient.ts +++ b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -36,11 +37,16 @@ class DataBoxEdgeManagementClient extends DataBoxEdgeManagementClientContext { /** * Initializes a new instance of the DataBoxEdgeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.devices = new operations.Devices(this); diff --git a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClientContext.ts b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClientContext.ts index fe065c028fa0..5c2a8b6738ca 100644 --- a/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClientContext.ts +++ b/sdk/databoxedge/arm-databoxedge-profile-2020-09-01-hybrid/src/dataBoxEdgeManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-databoxedge-profile-2020-09-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class DataBoxEdgeManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the DataBoxEdgeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/databoxedge/arm-databoxedge/README.md b/sdk/databoxedge/arm-databoxedge/README.md index a577fd2649c4..53816f7385fa 100644 --- a/sdk/databoxedge/arm-databoxedge/README.md +++ b/sdk/databoxedge/arm-databoxedge/README.md @@ -1,90 +1,100 @@ ## Azure DataBoxEdgeManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DataBoxEdgeManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataBoxEdgeManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-databoxedge` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-databoxedge +npm install --save @azure/arm-databoxedge @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DataBoxEdgeManagementClient, DataBoxEdgeManagementModels, DataBoxEdgeManagementMappers } from "@azure/arm-databoxedge"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DataBoxEdgeManagementClient } = require("@azure/arm-databoxedge"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DataBoxEdgeManagementClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DataBoxEdgeManagementClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-databoxedge sample - - + diff --git a/sdk/databoxedge/arm-databoxedge/package.json b/sdk/databoxedge/arm-databoxedge/package.json index db93e4ac2bfd..737451b0934f 100644 --- a/sdk/databoxedge/arm-databoxedge/package.json +++ b/sdk/databoxedge/arm-databoxedge/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-databoxedge", "author": "Microsoft Corporation", "description": "DataBoxEdgeManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dataBoxEdgeManagementClient.js", "types": "./esm/dataBoxEdgeManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/databoxedge/arm-databoxedge", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/databoxedge/arm-databoxedge", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClient.ts b/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClient.ts index eb7d557efa73..5c59037970dc 100644 --- a/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClient.ts +++ b/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -36,11 +37,16 @@ class DataBoxEdgeManagementClient extends DataBoxEdgeManagementClientContext { /** * Initializes a new instance of the DataBoxEdgeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.devices = new operations.Devices(this); diff --git a/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClientContext.ts b/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClientContext.ts index 64e905bd34e6..de420a60aa07 100644 --- a/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClientContext.ts +++ b/sdk/databoxedge/arm-databoxedge/src/dataBoxEdgeManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-databoxedge"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class DataBoxEdgeManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the DataBoxEdgeManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataBoxEdgeManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/databricks/arm-databricks/package.json b/sdk/databricks/arm-databricks/package.json index bbb647556acb..bf9a5c43a413 100644 --- a/sdk/databricks/arm-databricks/package.json +++ b/sdk/databricks/arm-databricks/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/databricks/arm-databricks", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/databricks/arm-databricks", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/datacatalog/arm-datacatalog/README.md b/sdk/datacatalog/arm-datacatalog/README.md index f8e46fc91566..bfe24b08786b 100644 --- a/sdk/datacatalog/arm-datacatalog/README.md +++ b/sdk/datacatalog/arm-datacatalog/README.md @@ -1,89 +1,100 @@ ## Azure DataCatalogRestClient SDK for JavaScript -This package contains an isomorphic SDK for DataCatalogRestClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataCatalogRestClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites -``` -npm install @azure/arm-datacatalog +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-datacatalog` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: +```bash +npm install --save @azure/arm-datacatalog @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list aDCOperations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list aDCOperations as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DataCatalogRestClient, DataCatalogRestModels, DataCatalogRestMappers } from "@azure/arm-datacatalog"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DataCatalogRestClient } = require("@azure/arm-datacatalog"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DataCatalogRestClient(creds, subscriptionId); - client.aDCOperations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DataCatalogRestClient(creds, subscriptionId); + +client.aDCOperations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list aDCOperations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list aDCOperations as an example written in JavaScript. -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-datacatalog sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdatacatalog%2Farm-datacatalog%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/datacatalog/arm-datacatalog/README.png) diff --git a/sdk/datacatalog/arm-datacatalog/package.json b/sdk/datacatalog/arm-datacatalog/package.json index a6156ca2efa3..d14331b4d263 100644 --- a/sdk/datacatalog/arm-datacatalog/package.json +++ b/sdk/datacatalog/arm-datacatalog/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-datacatalog", "author": "Microsoft Corporation", "description": "DataCatalogRestClient Library with typescript type definitions for node.js and browser.", - "version": "1.1.0", + "version": "1.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/dataCatalogRestClient.js", "types": "./esm/dataCatalogRestClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/datacatalog/arm-datacatalog", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/datacatalog/arm-datacatalog", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClient.ts b/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClient.ts index 4aa9c94fa9ea..81ff23bff504 100644 --- a/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClient.ts +++ b/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,13 +23,18 @@ class DataCatalogRestClient extends DataCatalogRestClientContext { /** * Initializes a new instance of the DataCatalogRestClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify the Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param catalogName The name of the data catlog in the specified subscription and resource group. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, catalogName: string, options?: Models.DataCatalogRestClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, catalogName: string, options?: Models.DataCatalogRestClientOptions) { super(credentials, subscriptionId, catalogName, options); this.aDCOperations = new operations.ADCOperations(this); this.aDCCatalogs = new operations.ADCCatalogs(this); diff --git a/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClientContext.ts b/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClientContext.ts index 625a2fd045b7..80b966832bdc 100644 --- a/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClientContext.ts +++ b/sdk/datacatalog/arm-datacatalog/src/dataCatalogRestClientContext.ts @@ -10,26 +10,32 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-datacatalog"; -const packageVersion = "0.1.0"; +const packageVersion = "1.2.0"; export class DataCatalogRestClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; catalogName: string; /** * Initializes a new instance of the DataCatalogRestClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify the Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param catalogName The name of the data catlog in the specified subscription and resource group. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, catalogName: string, options?: Models.DataCatalogRestClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, catalogName: string, options?: Models.DataCatalogRestClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/datadog/arm-datadog/README.md b/sdk/datadog/arm-datadog/README.md index a20955120dc4..3896344cab4d 100644 --- a/sdk/datadog/arm-datadog/README.md +++ b/sdk/datadog/arm-datadog/README.md @@ -1,89 +1,100 @@ ## Azure MicrosoftDatadogClient SDK for JavaScript -This package contains an isomorphic SDK for MicrosoftDatadogClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for MicrosoftDatadogClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-datadog` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-datadog +npm install --save @azure/arm-datadog @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list marketplaceAgreements as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list marketplaceAgreements as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { MicrosoftDatadogClient } = require("@azure/arm-datadog"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new MicrosoftDatadogClient(creds, subscriptionId); - client.marketplaceAgreements.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new MicrosoftDatadogClient(creds, subscriptionId); + +client.marketplaceAgreements.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list marketplaceAgreements as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list marketplaceAgreements as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-datadog sample - - + diff --git a/sdk/datadog/arm-datadog/package.json b/sdk/datadog/arm-datadog/package.json index b82c25bf66fd..8ba72f35e2a9 100644 --- a/sdk/datadog/arm-datadog/package.json +++ b/sdk/datadog/arm-datadog/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-datadog", "author": "Microsoft Corporation", "description": "MicrosoftDatadogClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/microsoftDatadogClient.js", "types": "./esm/microsoftDatadogClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/datadog/arm-datadog", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/datadog/arm-datadog", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/datadog/arm-datadog/src/microsoftDatadogClient.ts b/sdk/datadog/arm-datadog/src/microsoftDatadogClient.ts index 5098f57e6721..2bf92969c7a8 100644 --- a/sdk/datadog/arm-datadog/src/microsoftDatadogClient.ts +++ b/sdk/datadog/arm-datadog/src/microsoftDatadogClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -24,11 +25,16 @@ class MicrosoftDatadogClient extends MicrosoftDatadogClientContext { /** * Initializes a new instance of the MicrosoftDatadogClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.MicrosoftDatadogClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.MicrosoftDatadogClientOptions) { super(credentials, subscriptionId, options); this.marketplaceAgreements = new operations.MarketplaceAgreements(this); this.monitors = new operations.Monitors(this); diff --git a/sdk/datadog/arm-datadog/src/microsoftDatadogClientContext.ts b/sdk/datadog/arm-datadog/src/microsoftDatadogClientContext.ts index 6c3e2a613997..098cb8df85c7 100644 --- a/sdk/datadog/arm-datadog/src/microsoftDatadogClientContext.ts +++ b/sdk/datadog/arm-datadog/src/microsoftDatadogClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-datadog"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class MicrosoftDatadogClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the MicrosoftDatadogClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ constructor( - credentials: msRest.ServiceClientCredentials, + credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.MicrosoftDatadogClientOptions ) { diff --git a/sdk/datafactory/arm-datafactory/package.json b/sdk/datafactory/arm-datafactory/package.json index 86bb470d5dc6..b58ebbd9c0e7 100644 --- a/sdk/datafactory/arm-datafactory/package.json +++ b/sdk/datafactory/arm-datafactory/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/datafactory/arm-datafactory", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/datafactory/arm-datafactory", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/datalake-analytics/arm-datalake-analytics/README.md b/sdk/datalake-analytics/arm-datalake-analytics/README.md index 79c4361896d1..d6f15d764fac 100644 --- a/sdk/datalake-analytics/arm-datalake-analytics/README.md +++ b/sdk/datalake-analytics/arm-datalake-analytics/README.md @@ -1,101 +1,111 @@ ## Azure DataLakeAnalyticsAccountManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DataLakeAnalyticsAccountManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataLakeAnalyticsAccountManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-datalake-analytics` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-datalake-analytics +npm install --save @azure/arm-datalake-analytics @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and list accounts as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and list accounts as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { DataLakeAnalyticsAccountManagementClient } = require("@azure/arm-datalake-analytics"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DataLakeAnalyticsAccountManagementClient(creds, subscriptionId); - const filter = "testfilter"; - const top = 1; - const skip = 1; - const select = "testselect"; - const orderby = "testorderby"; - const count = true; - client.accounts.list(filter, top, skip, select, orderby, count).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DataLakeAnalyticsAccountManagementClient(creds, subscriptionId); +const filter = "testfilter"; +const top = 1; +const skip = 1; +const select = "testselect"; +const orderby = "testorderby"; +const count = true; +client.accounts.list(filter, top, skip, select, orderby, count).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list accounts as an example written in JavaScript. +#### browser - Authentication, client creation, and list accounts as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-datalake-analytics sample - - + diff --git a/sdk/datalake-analytics/arm-datalake-analytics/package.json b/sdk/datalake-analytics/arm-datalake-analytics/package.json index bc834bc3ef9e..51b4c33b85f9 100644 --- a/sdk/datalake-analytics/arm-datalake-analytics/package.json +++ b/sdk/datalake-analytics/arm-datalake-analytics/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-datalake-analytics", "author": "Microsoft Corporation", "description": "DataLakeAnalyticsAccountManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dataLakeAnalyticsAccountManagementClient.js", "types": "./esm/dataLakeAnalyticsAccountManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/datalake-analytics/arm-datalake-analytics", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/datalake-analytics/arm-datalake-analytics", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClient.ts b/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClient.ts index a91597e62ced..9f5e7ff53f1e 100644 --- a/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClient.ts +++ b/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -26,12 +27,17 @@ class DataLakeAnalyticsAccountManagementClient extends DataLakeAnalyticsAccountM /** * Initializes a new instance of the DataLakeAnalyticsAccountManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Get subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataLakeAnalyticsAccountManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataLakeAnalyticsAccountManagementClientOptions) { super(credentials, subscriptionId, options); this.accounts = new operations.Accounts(this); this.dataLakeStoreAccounts = new operations.DataLakeStoreAccounts(this); diff --git a/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClientContext.ts b/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClientContext.ts index 4e527da3fa69..748544f2f1e7 100644 --- a/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClientContext.ts +++ b/sdk/datalake-analytics/arm-datalake-analytics/src/dataLakeAnalyticsAccountManagementClientContext.ts @@ -9,24 +9,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-datalake-analytics"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class DataLakeAnalyticsAccountManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the DataLakeAnalyticsAccountManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Get subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataLakeAnalyticsAccountManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataLakeAnalyticsAccountManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/datamigration/arm-datamigration/README.md b/sdk/datamigration/arm-datamigration/README.md index d6b3a84c59a5..6868b32fb3ef 100644 --- a/sdk/datamigration/arm-datamigration/README.md +++ b/sdk/datamigration/arm-datamigration/README.md @@ -1,90 +1,100 @@ ## Azure DataMigrationServiceClient SDK for JavaScript -This package contains an isomorphic SDK for DataMigrationServiceClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataMigrationServiceClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-datamigration` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-datamigration +npm install --save @azure/arm-datamigration @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and listSkus resourceSkus as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and listSkus resourceSkus as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DataMigrationServiceClient, DataMigrationServiceModels, DataMigrationServiceMappers } from "@azure/arm-datamigration"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DataMigrationServiceClient } = require("@azure/arm-datamigration"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DataMigrationServiceClient(creds, subscriptionId); - client.resourceSkus.listSkus().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DataMigrationServiceClient(creds, subscriptionId); + +client.resourceSkus.listSkus().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and listSkus resourceSkus as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and listSkus resourceSkus as an example written in JavaScript. -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-datamigration sample - - + @@ -96,4 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdatamigration%2Farm-datamigration%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/datamigration/arm-datamigration/README.png) diff --git a/sdk/datamigration/arm-datamigration/package.json b/sdk/datamigration/arm-datamigration/package.json index f3836232e42b..a3596c215d2d 100644 --- a/sdk/datamigration/arm-datamigration/package.json +++ b/sdk/datamigration/arm-datamigration/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-datamigration", "author": "Microsoft Corporation", "description": "DataMigrationServiceClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dataMigrationServiceClient.js", "types": "./esm/dataMigrationServiceClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/datamigration/arm-datamigration", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/datamigration/arm-datamigration", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts b/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts index 62d5230fee13..25396551b380 100644 --- a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts +++ b/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -28,11 +29,16 @@ class DataMigrationServiceClient extends DataMigrationServiceClientContext { /** * Initializes a new instance of the DataMigrationServiceClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Identifier of the subscription * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataMigrationServiceClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataMigrationServiceClientOptions) { super(credentials, subscriptionId, options); this.resourceSkus = new operations.ResourceSkus(this); this.services = new operations.Services(this); diff --git a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts b/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts index 6a0937753ff2..69901d9c9581 100644 --- a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts +++ b/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-datamigration"; -const packageVersion = "1.0.1"; +const packageVersion = "2.1.0"; export class DataMigrationServiceClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the DataMigrationServiceClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Identifier of the subscription * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DataMigrationServiceClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataMigrationServiceClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/deploymentmanager/arm-deploymentmanager/README.md b/sdk/deploymentmanager/arm-deploymentmanager/README.md index a3a985772bf3..1e3949dc85e0 100644 --- a/sdk/deploymentmanager/arm-deploymentmanager/README.md +++ b/sdk/deploymentmanager/arm-deploymentmanager/README.md @@ -1,94 +1,103 @@ ## Azure AzureDeploymentManager SDK for JavaScript -This package contains an isomorphic SDK for AzureDeploymentManager. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureDeploymentManager. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-deploymentmanager` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-deploymentmanager +npm install --save @azure/arm-deploymentmanager @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get serviceTopologies as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get serviceTopologies as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { AzureDeploymentManager, AzureDeploymentManagerModels, AzureDeploymentManagerMappers } from "@azure/arm-deploymentmanager"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { AzureDeploymentManager } = require("@azure/arm-deploymentmanager"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AzureDeploymentManager(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const serviceTopologyName = "testserviceTopologyName"; - client.serviceTopologies.get(resourceGroupName, serviceTopologyName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AzureDeploymentManager(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const serviceTopologyName = "testserviceTopologyName"; +client.serviceTopologies.get(resourceGroupName, serviceTopologyName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get serviceTopologies as an example written in JavaScript. +#### browser - Authentication, client creation, and get serviceTopologies as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-deploymentmanager sample - - + diff --git a/sdk/deploymentmanager/arm-deploymentmanager/package.json b/sdk/deploymentmanager/arm-deploymentmanager/package.json index 9f1b9483e37f..16e1a1791988 100644 --- a/sdk/deploymentmanager/arm-deploymentmanager/package.json +++ b/sdk/deploymentmanager/arm-deploymentmanager/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-deploymentmanager", "author": "Microsoft Corporation", "description": "AzureDeploymentManager Library with typescript type definitions for node.js and browser.", - "version": "3.0.0", + "version": "3.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/azureDeploymentManager.js", "types": "./esm/azureDeploymentManager.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deploymentmanager/arm-deploymentmanager", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deploymentmanager/arm-deploymentmanager", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManager.ts b/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManager.ts index f948ddd290cd..d45c245be8ee 100644 --- a/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManager.ts +++ b/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManager.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -27,12 +28,17 @@ class AzureDeploymentManager extends AzureDeploymentManagerContext { /** * Initializes a new instance of the AzureDeploymentManager class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureDeploymentManagerOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureDeploymentManagerOptions) { super(credentials, subscriptionId, options); this.serviceTopologies = new operations.ServiceTopologies(this); this.services = new operations.Services(this); diff --git a/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManagerContext.ts b/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManagerContext.ts index 397f56cb3595..fb0ea8f030d6 100644 --- a/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManagerContext.ts +++ b/sdk/deploymentmanager/arm-deploymentmanager/src/azureDeploymentManagerContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-deploymentmanager"; -const packageVersion = "3.0.0"; +const packageVersion = "3.1.0"; export class AzureDeploymentManagerContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AzureDeploymentManager class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureDeploymentManagerOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureDeploymentManagerOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/README.md b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/README.md index a3ee467ae318..4338b81b9f77 100644 --- a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/README.md +++ b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/README.md @@ -1,89 +1,100 @@ ## Azure IotDpsClient SDK for JavaScript -This package contains an isomorphic SDK for IotDpsClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for IotDpsClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites -``` -npm install @azure/arm-deviceprovisioningservices +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-deviceprovisioningservices` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: +```bash +npm install --save @azure/arm-deviceprovisioningservices @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list operations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { IotDpsClient, IotDpsModels, IotDpsMappers } from "@azure/arm-deviceprovisioningservices"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { IotDpsClient } = require("@azure/arm-deviceprovisioningservices"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new IotDpsClient(creds, subscriptionId); - client.operations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new IotDpsClient(creds, subscriptionId); + +client.operations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list operations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list operations as an example written in JavaScript. -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-deviceprovisioningservices sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdeviceprovisioningservices%2Farm-deviceprovisioningservices%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/README.png) diff --git a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/package.json b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/package.json index a1f070d5456d..4e474c5b2d93 100644 --- a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/package.json +++ b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-deviceprovisioningservices", "author": "Microsoft Corporation", "description": "IotDpsClient Library with typescript type definitions for node.js and browser.", - "version": "2.1.0", + "version": "2.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/iotDpsClient.js", "types": "./esm/iotDpsClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/deviceprovisioningservices/arm-deviceprovisioningservices", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/deviceprovisioningservices/arm-deviceprovisioningservices", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClient.ts b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClient.ts index b5b09d14c58d..12a7443f5b95 100644 --- a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClient.ts +++ b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -23,11 +24,16 @@ class IotDpsClient extends IotDpsClientContext { /** * Initializes a new instance of the IotDpsClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription identifier. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.IotDpsClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.IotDpsClientOptions) { super(credentials, subscriptionId, options); this.operations = new operations.Operations(this); this.dpsCertificate = new operations.DpsCertificate(this); diff --git a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClientContext.ts b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClientContext.ts index 48146b6d20a3..c331f7277b8e 100644 --- a/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClientContext.ts +++ b/sdk/deviceprovisioningservices/arm-deviceprovisioningservices/src/iotDpsClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-deviceprovisioningservices"; -const packageVersion = "0.1.0"; +const packageVersion = "2.2.0"; export class IotDpsClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the IotDpsClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription identifier. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.IotDpsClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.IotDpsClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/deviceupdate/ci.yml b/sdk/deviceupdate/ci.yml index 6f536631a706..d81cbdae9ed1 100644 --- a/sdk/deviceupdate/ci.yml +++ b/sdk/deviceupdate/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/deviceupdate/iot-device-update/README.md b/sdk/deviceupdate/iot-device-update/README.md index 5918e753fd0b..f9413b812fa4 100644 --- a/sdk/deviceupdate/iot-device-update/README.md +++ b/sdk/deviceupdate/iot-device-update/README.md @@ -2,7 +2,7 @@ The library provides access to the Device Update for IoT Hub service that enables customers to publish updates for their IoT devices to the cloud, and then deploy these updates to their devices (approve updates to groups of devices managed and provisioned in IoT Hub). -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk) | [Product documentation](https://docs.microsoft.com/azure/iot-hub-device-update/understand-device-update) +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk) | [Product documentation](https://docs.microsoft.com/azure/iot-hub-device-update/understand-device-update) ## Getting started @@ -36,7 +36,7 @@ You can learn more about Device Update for IoT Hub by visiting [Device Update fo ## Examples -You can familiarize yourself with different APIs using [Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deviceupdate/iot-device-update/samples). +You can familiarize yourself with different APIs using [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deviceupdate/iot-device-update/samples). ## Troubleshooting @@ -50,15 +50,15 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Get started with our [Device Update for IoT Hub samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deviceupdate/iot-device-update/samples) +Get started with our [Device Update for IoT Hub samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deviceupdate/iot-device-update/samples) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects diff --git a/sdk/deviceupdate/iot-device-update/package.json b/sdk/deviceupdate/iot-device-update/package.json index 8b64b1bad739..c17a477d4259 100644 --- a/sdk/deviceupdate/iot-device-update/package.json +++ b/sdk/deviceupdate/iot-device-update/package.json @@ -7,7 +7,7 @@ "dependencies": { "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "keywords": [ diff --git a/sdk/deviceupdate/iot-device-update/samples/v1/javascript/README.md b/sdk/deviceupdate/iot-device-update/samples/v1/javascript/README.md index c6bd1486b12c..3f6d246fa302 100644 --- a/sdk/deviceupdate/iot-device-update/samples/v1/javascript/README.md +++ b/sdk/deviceupdate/iot-device-update/samples/v1/javascript/README.md @@ -56,8 +56,8 @@ npx cross-env ACCOUNT_ENDPOINT="" INSTANCE_ID="" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[updates]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/deviceupdate/iot-device-update/samples/v1/javascript/updates.js +[updates]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/deviceupdate/iot-device-update/samples/v1/javascript/updates.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/iot-device-update [freesub]: https://azure.microsoft.com/free/ [createinstance_azuredeviceupdateforiothubinstance]: https://docs.microsoft.com/azure/iot-hub-device-update/understand-device-update -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deviceupdate/iot-device-update/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deviceupdate/iot-device-update/README.md diff --git a/sdk/deviceupdate/iot-device-update/samples/v1/javascript/package.json b/sdk/deviceupdate/iot-device-update/samples/v1/javascript/package.json index 42212631be9f..4b49e7de29e6 100644 --- a/sdk/deviceupdate/iot-device-update/samples/v1/javascript/package.json +++ b/sdk/deviceupdate/iot-device-update/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deviceupdate/iot-device-update", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deviceupdate/iot-device-update", "dependencies": { "@azure/iot-device-update": "next", "dotenv": "latest", diff --git a/sdk/deviceupdate/iot-device-update/samples/v1/typescript/README.md b/sdk/deviceupdate/iot-device-update/samples/v1/typescript/README.md index d51351d2dced..933ebb2ab323 100644 --- a/sdk/deviceupdate/iot-device-update/samples/v1/typescript/README.md +++ b/sdk/deviceupdate/iot-device-update/samples/v1/typescript/README.md @@ -68,9 +68,9 @@ npx cross-env ACCOUNT_ENDPOINT="" INSTANCE_ID="" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[updates]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/deviceupdate/iot-device-update/samples/v1/typescript/src/updates.ts +[updates]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/deviceupdate/iot-device-update/samples/v1/typescript/src/updates.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/iot-device-update [freesub]: https://azure.microsoft.com/free/ [createinstance_azuredeviceupdateforiothubinstance]: https://docs.microsoft.com/azure/iot-hub-device-update/understand-device-update -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deviceupdate/iot-device-update/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deviceupdate/iot-device-update/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/deviceupdate/iot-device-update/samples/v1/typescript/package.json b/sdk/deviceupdate/iot-device-update/samples/v1/typescript/package.json index 6ab79fc39ac4..eac957d57ab8 100644 --- a/sdk/deviceupdate/iot-device-update/samples/v1/typescript/package.json +++ b/sdk/deviceupdate/iot-device-update/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/deviceupdate/iot-device-update", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/deviceupdate/iot-device-update", "dependencies": { "@azure/iot-device-update": "next", "dotenv": "latest", diff --git a/sdk/devspaces/arm-devspaces/README.md b/sdk/devspaces/arm-devspaces/README.md index 5f5f691cba70..1f4b6113bdda 100644 --- a/sdk/devspaces/arm-devspaces/README.md +++ b/sdk/devspaces/arm-devspaces/README.md @@ -1,93 +1,103 @@ ## Azure DevSpacesManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DevSpacesManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DevSpacesManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites -``` -npm install @azure/arm-devspaces +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-devspaces` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: +```bash +npm install --save @azure/arm-devspaces @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get controllers as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and get controllers as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DevSpacesManagementClient, DevSpacesManagementModels, DevSpacesManagementMappers } from "@azure/arm-devspaces"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DevSpacesManagementClient } = require("@azure/arm-devspaces"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DevSpacesManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const name = "testname"; - client.controllers.get(resourceGroupName, name).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DevSpacesManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const name = "testname"; +client.controllers.get(resourceGroupName, name).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get controllers as an example written in JavaScript. +#### browser - Authentication, client creation, and get controllers as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-devspaces sample - - + @@ -99,5 +109,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdevspaces%2Farm-devspaces%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/devspaces/arm-devspaces/README.png) diff --git a/sdk/devspaces/arm-devspaces/package.json b/sdk/devspaces/arm-devspaces/package.json index 186018c67a51..ee5299518048 100644 --- a/sdk/devspaces/arm-devspaces/package.json +++ b/sdk/devspaces/arm-devspaces/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-devspaces", "author": "Microsoft Corporation", "description": "DevSpacesManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.1.0", + "version": "1.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/devSpacesManagementClient.js", "types": "./esm/devSpacesManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/devspaces/arm-devspaces", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/devspaces/arm-devspaces", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/devspaces/arm-devspaces/src/devSpacesManagementClient.ts b/sdk/devspaces/arm-devspaces/src/devSpacesManagementClient.ts index be116e003310..e01c000e3052 100644 --- a/sdk/devspaces/arm-devspaces/src/devSpacesManagementClient.ts +++ b/sdk/devspaces/arm-devspaces/src/devSpacesManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -23,11 +24,16 @@ class DevSpacesManagementClient extends DevSpacesManagementClientContext { /** * Initializes a new instance of the DevSpacesManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DevSpacesManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DevSpacesManagementClientOptions) { super(credentials, subscriptionId, options); this.containerHostMappings = new operations.ContainerHostMappings(this); this.controllers = new operations.Controllers(this); diff --git a/sdk/devspaces/arm-devspaces/src/devSpacesManagementClientContext.ts b/sdk/devspaces/arm-devspaces/src/devSpacesManagementClientContext.ts index 1369a6260a07..b2b8060c0769 100644 --- a/sdk/devspaces/arm-devspaces/src/devSpacesManagementClientContext.ts +++ b/sdk/devspaces/arm-devspaces/src/devSpacesManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-devspaces"; -const packageVersion = "0.1.0"; +const packageVersion = "1.2.0"; export class DevSpacesManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the DevSpacesManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Azure subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DevSpacesManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DevSpacesManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/devtestlabs/arm-devtestlabs/README.md b/sdk/devtestlabs/arm-devtestlabs/README.md index f00489748b4a..884a722c47aa 100644 --- a/sdk/devtestlabs/arm-devtestlabs/README.md +++ b/sdk/devtestlabs/arm-devtestlabs/README.md @@ -1,89 +1,100 @@ ## Azure DevTestLabsClient SDK for JavaScript -This package contains an isomorphic SDK for DevTestLabsClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DevTestLabsClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-devtestlabs` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-devtestlabs +npm install --save @azure/arm-devtestlabs @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list providerOperations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list providerOperations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DevTestLabsClient, DevTestLabsModels, DevTestLabsMappers } from "@azure/arm-devtestlabs"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DevTestLabsClient } = require("@azure/arm-devtestlabs"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DevTestLabsClient(creds, subscriptionId); - client.providerOperations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DevTestLabsClient(creds, subscriptionId); + +client.providerOperations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list providerOperations as an example written in JavaScript. +#### browser - Authentication, client creation, and list providerOperations as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-devtestlabs sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdevtestlabs%2Farm-devtestlabs%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/devtestlabs/arm-devtestlabs/README.png) diff --git a/sdk/devtestlabs/arm-devtestlabs/package.json b/sdk/devtestlabs/arm-devtestlabs/package.json index bbe78efddd6d..92b1cf869dc0 100644 --- a/sdk/devtestlabs/arm-devtestlabs/package.json +++ b/sdk/devtestlabs/arm-devtestlabs/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-devtestlabs", "author": "Microsoft Corporation", "description": "DevTestLabsClient Library with typescript type definitions for node.js and browser.", - "version": "3.2.0", + "version": "3.3.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.1", - "@azure/ms-rest-js": "^1.2.6", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/devTestLabsClient.js", "types": "./esm/devTestLabsClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/devtestlabs/arm-devtestlabs", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/devtestlabs/arm-devtestlabs", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts b/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts index 3661410b1c1e..d65f2ffacb1f 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -45,11 +46,16 @@ class DevTestLabsClient extends DevTestLabsClientContext { /** * Initializes a new instance of the DevTestLabsClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DevTestLabsClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DevTestLabsClientOptions) { super(credentials, subscriptionId, options); this.providerOperations = new operations.ProviderOperations(this); this.labs = new operations.Labs(this); diff --git a/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClientContext.ts b/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClientContext.ts index 4ea49aa18b6a..b0b4ead147db 100644 --- a/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClientContext.ts +++ b/sdk/devtestlabs/arm-devtestlabs/src/devTestLabsClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-devtestlabs"; -const packageVersion = "1.0.0"; +const packageVersion = "3.3.0"; export class DevTestLabsClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; apiVersion?: string; subscriptionId: string; /** * Initializes a new instance of the DevTestLabsClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription ID. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DevTestLabsClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DevTestLabsClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/digitaltwins/arm-digitaltwins/README.md b/sdk/digitaltwins/arm-digitaltwins/README.md index 0f74fb4e79d7..48d9191e17e0 100644 --- a/sdk/digitaltwins/arm-digitaltwins/README.md +++ b/sdk/digitaltwins/arm-digitaltwins/README.md @@ -1,93 +1,103 @@ ## Azure AzureDigitalTwinsManagementClient SDK for JavaScript -This package contains an isomorphic SDK for AzureDigitalTwinsManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for AzureDigitalTwinsManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-digitaltwins` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-digitaltwins +npm install --save @azure/arm-digitaltwins @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - client creation and get digitalTwins as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get digitalTwins as an example written in JavaScript. ##### Sample code -While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package -```typescript -const msRestNodeAuth = require("@azure/ms-rest-nodeauth"); +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); const { AzureDigitalTwinsManagementClient } = require("@azure/arm-digitaltwins"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new AzureDigitalTwinsManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const resourceName = "testresourceName"; - client.digitalTwins.get(resourceGroupName, resourceName).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new AzureDigitalTwinsManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const resourceName = "testresourceName"; +client.digitalTwins.get(resourceGroupName, resourceName).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get digitalTwins as an example written in JavaScript. +#### browser - Authentication, client creation, and get digitalTwins as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-digitaltwins sample - - + diff --git a/sdk/digitaltwins/arm-digitaltwins/package.json b/sdk/digitaltwins/arm-digitaltwins/package.json index dd9176307257..e13bc848ee97 100644 --- a/sdk/digitaltwins/arm-digitaltwins/package.json +++ b/sdk/digitaltwins/arm-digitaltwins/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-digitaltwins", "author": "Microsoft Corporation", "description": "AzureDigitalTwinsManagementClient Library with typescript type definitions for node.js and browser.", - "version": "2.0.0", + "version": "2.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/azureDigitalTwinsManagementClient.js", "types": "./esm/azureDigitalTwinsManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/arm-digitaltwins", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/arm-digitaltwins", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClient.ts b/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClient.ts index a2c8ab2fc8ab..9a9bf51be733 100644 --- a/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClient.ts +++ b/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClient.ts @@ -8,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -24,11 +25,16 @@ class AzureDigitalTwinsManagementClient extends AzureDigitalTwinsManagementClien /** * Initializes a new instance of the AzureDigitalTwinsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription identifier. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureDigitalTwinsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureDigitalTwinsManagementClientOptions) { super(credentials, subscriptionId, options); this.digitalTwins = new operations.DigitalTwins(this); this.digitalTwinsEndpoint = new operations.DigitalTwinsEndpoint(this); diff --git a/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClientContext.ts b/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClientContext.ts index be8bdb2c9c96..ee784856c160 100644 --- a/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClientContext.ts +++ b/sdk/digitaltwins/arm-digitaltwins/src/azureDigitalTwinsManagementClientContext.ts @@ -9,23 +9,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-digitaltwins"; -const packageVersion = "2.0.0"; +const packageVersion = "2.1.0"; export class AzureDigitalTwinsManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the AzureDigitalTwinsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The subscription identifier. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureDigitalTwinsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.AzureDigitalTwinsManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/digitaltwins/ci.yml b/sdk/digitaltwins/ci.yml index 252b1f63c43e..f086a8135b3f 100644 --- a/sdk/digitaltwins/ci.yml +++ b/sdk/digitaltwins/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/digitaltwins/digital-twins-core/README.md b/sdk/digitaltwins/digital-twins-core/README.md index 8890d1d34226..5f5b5245d50b 100644 --- a/sdk/digitaltwins/digital-twins-core/README.md +++ b/sdk/digitaltwins/digital-twins-core/README.md @@ -32,7 +32,7 @@ To use this client library in the browser, first you need to use a bundler. For Azure Digital Twins doesn't currently support Cross-Origin Resource Sharing (CORS). As a result, this library cannot be used to make direct calls to the template service from a browser. -Please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/master/samples/cors/ts/README.md) for guidance. +Please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/main/samples/cors/ts/README.md) for guidance. ## Key concepts @@ -321,7 +321,7 @@ const response = await serviceClient.publishComponentTelemetry( ### Additional Examples Additional examples can be found in the -[samples directory](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core/samples). +[samples directory](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core/samples). ## Troubleshooting @@ -335,16 +335,16 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -- Take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core/samples) directory for detailed examples that demonstrate how to use the client libraries. +- Take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core/samples) directory for detailed examples that demonstrate how to use the client libraries. - Explore the Azure Digital Twins [documentation](https://docs.microsoft.com/azure/digital-twins/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects diff --git a/sdk/digitaltwins/digital-twins-core/package.json b/sdk/digitaltwins/digital-twins-core/package.json index dad7d08c63a3..c34f53b5efbc 100644 --- a/sdk/digitaltwins/digital-twins-core/package.json +++ b/sdk/digitaltwins/digital-twins-core/package.json @@ -61,14 +61,14 @@ "isomorphic" ], "repository": "github:Azure/azure-sdk-for-js", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core/", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "dependencies": { "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, diff --git a/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/README.md b/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/README.md index b07b47e9b4a1..e4be140a9f64 100644 --- a/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/README.md +++ b/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/README.md @@ -73,25 +73,25 @@ npx cross-env AZURE_DIGITALTWINS_URL="" node dt_componen Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[dt_component_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_component_lifecycle.js -[dt_create_digitaltwins_service_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_create_digitaltwins_service_client.js -[dt_digitaltwins_delete]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_delete.js -[dt_digitaltwins_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_get.js -[dt_digitaltwins_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_lifecycle.js -[dt_digitaltwins_query]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_query.js -[dt_event_routes_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_event_routes_get.js -[dt_event_routes_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_event_routes_list.js -[dt_incoming_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_incoming_relationships_list.js -[dt_models_delete]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_delete.js -[dt_models_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_get.js -[dt_models_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_lifecycle.js -[dt_models_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_list.js -[dt_publish_component_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_publish_component_telemetry.js -[dt_publish_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_publish_telemetry.js -[dt_relationships_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_relationships_get.js -[dt_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_relationships_list.js -[dt_scenario]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_scenario.js +[dt_component_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_component_lifecycle.js +[dt_create_digitaltwins_service_client]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_create_digitaltwins_service_client.js +[dt_digitaltwins_delete]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_delete.js +[dt_digitaltwins_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_get.js +[dt_digitaltwins_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_lifecycle.js +[dt_digitaltwins_query]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_digitaltwins_query.js +[dt_event_routes_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_event_routes_get.js +[dt_event_routes_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_event_routes_list.js +[dt_incoming_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_incoming_relationships_list.js +[dt_models_delete]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_delete.js +[dt_models_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_get.js +[dt_models_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_lifecycle.js +[dt_models_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_models_list.js +[dt_publish_component_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_publish_component_telemetry.js +[dt_publish_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_publish_telemetry.js +[dt_relationships_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_relationships_get.js +[dt_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_relationships_list.js +[dt_scenario]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/dt_scenario.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/digital-twins-core [freesub]: https://azure.microsoft.com/free/ [createinstance_azuredigitaltwinsinstance]: https://docs.microsoft.com/azure/digital-twins/how-to-set-up-instance-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core/README.md diff --git a/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/package.json b/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/package.json index fefd1a10c706..1f6ab8709e34 100644 --- a/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/package.json +++ b/sdk/digitaltwins/digital-twins-core/samples/v1/javascript/package.json @@ -27,7 +27,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core", "dependencies": { "@azure/digital-twins-core": "latest", "dotenv": "latest", diff --git a/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/README.md b/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/README.md index 0b257ab28828..9471c3894a26 100644 --- a/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/README.md +++ b/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/README.md @@ -85,26 +85,26 @@ npx cross-env AZURE_DIGITALTWINS_URL="" node dist/dt_com Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[dt_component_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_component_lifecycle.ts -[dt_create_digitaltwins_service_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_create_digitaltwins_service_client.ts -[dt_digitaltwins_delete]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_delete.ts -[dt_digitaltwins_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_get.ts -[dt_digitaltwins_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_lifecycle.ts -[dt_digitaltwins_query]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_query.ts -[dt_event_routes_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_event_routes_get.ts -[dt_event_routes_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_event_routes_list.ts -[dt_incoming_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_incoming_relationships_list.ts -[dt_models_delete]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_delete.ts -[dt_models_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_get.ts -[dt_models_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_lifecycle.ts -[dt_models_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_list.ts -[dt_publish_component_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_publish_component_telemetry.ts -[dt_publish_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_publish_telemetry.ts -[dt_relationships_get]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_relationships_get.ts -[dt_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_relationships_list.ts -[dt_scenario]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_scenario.ts +[dt_component_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_component_lifecycle.ts +[dt_create_digitaltwins_service_client]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_create_digitaltwins_service_client.ts +[dt_digitaltwins_delete]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_delete.ts +[dt_digitaltwins_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_get.ts +[dt_digitaltwins_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_lifecycle.ts +[dt_digitaltwins_query]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_digitaltwins_query.ts +[dt_event_routes_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_event_routes_get.ts +[dt_event_routes_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_event_routes_list.ts +[dt_incoming_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_incoming_relationships_list.ts +[dt_models_delete]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_delete.ts +[dt_models_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_get.ts +[dt_models_lifecycle]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_lifecycle.ts +[dt_models_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_models_list.ts +[dt_publish_component_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_publish_component_telemetry.ts +[dt_publish_telemetry]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_publish_telemetry.ts +[dt_relationships_get]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_relationships_get.ts +[dt_relationships_list]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_relationships_list.ts +[dt_scenario]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/src/dt_scenario.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/digital-twins-core [freesub]: https://azure.microsoft.com/free/ [createinstance_azuredigitaltwinsinstance]: https://docs.microsoft.com/azure/digital-twins/how-to-set-up-instance-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/package.json b/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/package.json index 2757ca164288..3eb3d5505050 100644 --- a/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/package.json +++ b/sdk/digitaltwins/digital-twins-core/samples/v1/typescript/package.json @@ -31,7 +31,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/digitaltwins/digital-twins-core", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/digitaltwins/digital-twins-core", "dependencies": { "@azure/digital-twins-core": "latest", "dotenv": "latest", diff --git a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/README.md b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/README.md index 76c4e0b8ac49..2154ff925b42 100644 --- a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/README.md +++ b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/README.md @@ -1,97 +1,107 @@ ## Azure DnsManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DnsManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DnsManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-dns-profile-2019-03-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-dns-profile-2019-03-01-hybrid +npm install --save @azure/arm-dns-profile-2019-03-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get recordSets as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -```bash -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and get recordSets as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DnsManagementClient, DnsManagementModels, DnsManagementMappers } from "@azure/arm-dns-profile-2019-03-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DnsManagementClient } = require("@azure/arm-dns-profile-2019-03-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DnsManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const zoneName = "testzoneName"; - const relativeRecordSetName = "testrelativeRecordSetName"; - const recordType = "A"; - client.recordSets.get(resourceGroupName, zoneName, relativeRecordSetName, recordType).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DnsManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const zoneName = "testzoneName"; +const relativeRecordSetName = "testrelativeRecordSetName"; +const recordType = "A"; +client.recordSets.get(resourceGroupName, zoneName, relativeRecordSetName, recordType).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get recordSets as an example written in JavaScript. +#### browser - Authentication, client creation, and get recordSets as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-dns-profile-2019-03-01-hybrid sample - - + @@ -103,5 +113,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdns%2Farm-dns-profile-2019-03-01-hybrid%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/dns/arm-dns-profile-2019-03-01-hybrid/README.png) diff --git a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/package.json b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/package.json index dbd3f9650f7e..9f556013de7d 100644 --- a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/package.json +++ b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-dns-profile-2019-03-01-hybrid", "author": "Microsoft Corporation", "description": "DnsManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.2", - "@azure/ms-rest-js": "^1.8.1", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -21,13 +22,13 @@ "module": "./esm/dnsManagementClient.js", "types": "./esm/dnsManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/dns/arm-dns-profile-2019-03-01-hybrid", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/dns/arm-dns-profile-2019-03-01-hybrid", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClient.ts b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClient.ts index 3e6f9a758eea..422ab30a3daf 100644 --- a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClient.ts +++ b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +23,16 @@ class DnsManagementClient extends DnsManagementClientContext { /** * Initializes a new instance of the DnsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DnsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DnsManagementClientOptions) { super(credentials, subscriptionId, options); this.recordSets = new operations.RecordSets(this); this.zones = new operations.Zones(this); diff --git a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClientContext.ts b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClientContext.ts index 19ef9e342abf..b7213d730aaa 100644 --- a/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClientContext.ts +++ b/sdk/dns/arm-dns-profile-2019-03-01-hybrid/src/dnsManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-dns-profile-2019-03-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class DnsManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the DnsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DnsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DnsManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/README.md b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/README.md index 5c7f88c4d415..dc171426c710 100644 --- a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/README.md +++ b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/README.md @@ -1,98 +1,107 @@ ## Azure DnsManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DnsManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DnsManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-dns-profile-2020-09-01-hybrid` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-dns-profile-2020-09-01-hybrid +npm install --save @azure/arm-dns-profile-2020-09-01-hybrid @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get recordSets as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get recordSets as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DnsManagementClient, DnsManagementModels, DnsManagementMappers } from "@azure/arm-dns-profile-2020-09-01-hybrid"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DnsManagementClient } = require("@azure/arm-dns-profile-2020-09-01-hybrid"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DnsManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const zoneName = "testzoneName"; - const relativeRecordSetName = "testrelativeRecordSetName"; - const recordType = "A"; - client.recordSets.get(resourceGroupName, zoneName, relativeRecordSetName, recordType).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DnsManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const zoneName = "testzoneName"; +const relativeRecordSetName = "testrelativeRecordSetName"; +const recordType = "A"; +client.recordSets.get(resourceGroupName, zoneName, relativeRecordSetName, recordType).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get recordSets as an example written in JavaScript. +#### browser - Authentication, client creation, and get recordSets as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-dns-profile-2020-09-01-hybrid sample - - + diff --git a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/package.json b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/package.json index cf5528d17c64..a3e6eef5ec3a 100644 --- a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/package.json +++ b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-dns-profile-2020-09-01-hybrid", "author": "Microsoft Corporation", "description": "DnsManagementClient Library with typescript type definitions for node.js and browser.", - "version": "1.0.0", + "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dnsManagementClient.js", "types": "./esm/dnsManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/dns/arm-dns-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/dns/arm-dns-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClient.ts b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClient.ts index 3e6f9a758eea..422ab30a3daf 100644 --- a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClient.ts +++ b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +23,16 @@ class DnsManagementClient extends DnsManagementClientContext { /** * Initializes a new instance of the DnsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DnsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DnsManagementClientOptions) { super(credentials, subscriptionId, options); this.recordSets = new operations.RecordSets(this); this.zones = new operations.Zones(this); diff --git a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClientContext.ts b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClientContext.ts index fd9507aacb1c..be7bd08f580f 100644 --- a/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClientContext.ts +++ b/sdk/dns/arm-dns-profile-2020-09-01-hybrid/src/dnsManagementClientContext.ts @@ -10,23 +10,29 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-dns-profile-2020-09-01-hybrid"; -const packageVersion = "1.0.0"; +const packageVersion = "1.1.0"; export class DnsManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the DnsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DnsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DnsManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/dns/arm-dns/README.md b/sdk/dns/arm-dns/README.md index a298c815d4ab..806e1ac8583a 100644 --- a/sdk/dns/arm-dns/README.md +++ b/sdk/dns/arm-dns/README.md @@ -1,98 +1,107 @@ ## Azure DnsManagementClient SDK for JavaScript -This package contains an isomorphic SDK for DnsManagementClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DnsManagementClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge, and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-dns` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-dns +npm install --save @azure/arm-dns @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and get recordSets as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. -```bash -npm install @azure/ms-rest-nodeauth@"^3.0.0" -``` +#### nodejs - Authentication, client creation, and get recordSets as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DnsManagementClient, DnsManagementModels, DnsManagementMappers } from "@azure/arm-dns"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DnsManagementClient } = require("@azure/arm-dns"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DnsManagementClient(creds, subscriptionId); - const resourceGroupName = "testresourceGroupName"; - const zoneName = "testzoneName"; - const relativeRecordSetName = "testrelativeRecordSetName"; - const recordType = "A"; - client.recordSets.get(resourceGroupName, zoneName, relativeRecordSetName, recordType).then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DnsManagementClient(creds, subscriptionId); +const resourceGroupName = "testresourceGroupName"; +const zoneName = "testzoneName"; +const relativeRecordSetName = "testrelativeRecordSetName"; +const recordType = "A"; +client.recordSets.get(resourceGroupName, zoneName, relativeRecordSetName, recordType).then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and get recordSets as an example written in JavaScript. +#### browser - Authentication, client creation, and get recordSets as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-dns sample - - + diff --git a/sdk/dns/arm-dns/package.json b/sdk/dns/arm-dns/package.json index e98d95a3c239..37bcfae3c4ae 100644 --- a/sdk/dns/arm-dns/package.json +++ b/sdk/dns/arm-dns/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-dns", "author": "Microsoft Corporation", "description": "DnsManagementClient Library with typescript type definitions for node.js and browser.", - "version": "4.0.0", + "version": "4.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^2.0.1", - "@azure/ms-rest-js": "^2.0.4", + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.10.0" }, "keywords": [ @@ -20,13 +21,13 @@ "module": "./esm/dnsManagementClient.js", "types": "./esm/dnsManagementClient.d.ts", "devDependencies": { - "typescript": "^3.5.3", + "typescript": "^3.6.0", "rollup": "^1.18.0", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/dns/arm-dns", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/dns/arm-dns", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/dns/arm-dns/src/dnsManagementClient.ts b/sdk/dns/arm-dns/src/dnsManagementClient.ts index c2142deb6643..5a7d85c07575 100644 --- a/sdk/dns/arm-dns/src/dnsManagementClient.ts +++ b/sdk/dns/arm-dns/src/dnsManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -23,12 +24,17 @@ class DnsManagementClient extends DnsManagementClientContext { /** * Initializes a new instance of the DnsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Specifies the Azure subscription ID, which uniquely identifies the * Microsoft Azure subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DnsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DnsManagementClientOptions) { super(credentials, subscriptionId, options); this.recordSets = new operations.RecordSets(this); this.zones = new operations.Zones(this); diff --git a/sdk/dns/arm-dns/src/dnsManagementClientContext.ts b/sdk/dns/arm-dns/src/dnsManagementClientContext.ts index f4deb26940ab..f11d7d427648 100644 --- a/sdk/dns/arm-dns/src/dnsManagementClientContext.ts +++ b/sdk/dns/arm-dns/src/dnsManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-dns"; -const packageVersion = "4.0.0"; +const packageVersion = "4.1.0"; export class DnsManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the DnsManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Specifies the Azure subscription ID, which uniquely identifies the * Microsoft Azure subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DnsManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DnsManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/documenttranslator/ai-document-translator-rest/README.md b/sdk/documenttranslator/ai-document-translator-rest/README.md index de63c095e90a..e7fd5fedd303 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/README.md +++ b/sdk/documenttranslator/ai-document-translator-rest/README.md @@ -14,11 +14,11 @@ Use the client library to: | Apply custom translation | Translate documents using general and [custom translation](https://docs.microsoft.com/azure/cognitive-services/translator/customization#custom-translator) models. | | Apply custom glossaries | Translate documents using custom glossaries. | -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/documenttranslator/ai-document-translator-rest/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/documenttranslator/ai-document-translator-rest/) | [Package (NPM)](https://www.npmjs.com/package/@azure-rest/ai-document-translator) | [API reference documentation](https://docs.microsoft.com/azure/cognitive-services/translator/document-translation/overview) | [Product documentation](https://docs.microsoft.com/azure/cognitive-services/translator/document-translation/overview) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/documenttranslator/ai-document-translator-rest/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/documenttranslator/ai-document-translator-rest/samples) ## Getting started @@ -188,8 +188,8 @@ See the service documentation for all [supported languages][supported_languages] Please refer to the samples folder to see code samples, including: -- [List Supported Formats](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/documenttranslator/ai-document-translator-rest/samples/v1/typescript/src/listFormats.ts) -- [Translate documents](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/documenttranslator/ai-document-translator-rest/samples/v1/typescript/src/translateFromBlob.ts) +- [List Supported Formats](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/documenttranslator/ai-document-translator-rest/samples/v1/typescript/src/listFormats.ts) +- [Translate documents](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/documenttranslator/ai-document-translator-rest/samples/v1/typescript/src/translateFromBlob.ts) ## Troubleshooting @@ -203,15 +203,15 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/documenttranslator/ai-document-translator-rest/samples) directory for detailed examples on how to use this library. +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/documenttranslator/ai-document-translator-rest/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -223,10 +223,10 @@ If you'd like to contribute to this library, please read the [contributing guide [azure_sub]: https://azure.microsoft.com/free/ [translator_resource]: https://ms.portal.azure.com/#create/Microsoft.CognitiveServicesTextTranslation [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [cognitive_auth]: https://docs.microsoft.com/azure/cognitive-services/authentication [register_aad_app]: https://docs.microsoft.com/azure/cognitive-services/authentication#assign-a-role-to-a-service-principal -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [azure_cli_create_dt_resource]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account-cli?tabs=windows [azure_portal_get_endpoint]: https://docs.microsoft.com/azure/cognitive-services/translator/document-translation/get-started-with-document-translation?tabs=csharp#get-your-custom-domain-name-and-subscription-key [source_containers]: https://docs.microsoft.com/azure/cognitive-services/translator/document-translation/get-started-with-document-translation?tabs=csharp#create-your-azure-blob-storage-containers diff --git a/sdk/documenttranslator/ai-document-translator-rest/package.json b/sdk/documenttranslator/ai-document-translator-rest/package.json index d93337139914..b4cf27b654e2 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/package.json +++ b/sdk/documenttranslator/ai-document-translator-rest/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/ai-document-translator.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/documenttranslator/ai-document-translator/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/documenttranslator/ai-document-translator/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/documenttranslator/ai-document-translator-rest/samples/v1/javascript/README.md b/sdk/documenttranslator/ai-document-translator-rest/samples/v1/javascript/README.md index 204f29d29cdd..b726da4e6f56 100644 --- a/sdk/documenttranslator/ai-document-translator-rest/samples/v1/javascript/README.md +++ b/sdk/documenttranslator/ai-document-translator-rest/samples/v1/javascript/README.md @@ -59,9 +59,9 @@ npx cross-env ENDPOINT="" DOCUMENT_TRANSLATOR_API_KEY=" **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. + ### How to use -#### nodejs - Authentication, client creation and list domainServiceOperations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. -``` -npm install @azure/ms-rest-nodeauth -``` +#### nodejs - Authentication, client creation, and list domainServiceOperations as an example written in JavaScript. ##### Sample code -```ts -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { DomainservicesManagementClient, DomainservicesManagementModels, DomainservicesManagementMappers } from "@azure/arm-domainservices"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { DomainservicesManagementClient } = require("@azure/arm-domainservices"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new DomainservicesManagementClient(creds, subscriptionId); - client.domainServiceOperations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new DomainservicesManagementClient(creds, subscriptionId); + +client.domainServiceOperations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list domainServiceOperations as an example written in JavaScript. - -##### Install @azure/ms-rest-browserauth +#### browser - Authentication, client creation, and list domainServiceOperations as an example written in JavaScript. -``` -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-domainservices sample - - + @@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdomainservices%2Farm-domainservices%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/domainservices/arm-domainservices/README.png) diff --git a/sdk/domainservices/arm-domainservices/package.json b/sdk/domainservices/arm-domainservices/package.json index 6ed59f03b209..4d8eff6ea775 100644 --- a/sdk/domainservices/arm-domainservices/package.json +++ b/sdk/domainservices/arm-domainservices/package.json @@ -2,10 +2,11 @@ "name": "@azure/arm-domainservices", "author": "Microsoft Corporation", "description": "DomainservicesManagementClient Library with typescript type definitions for node.js and browser.", - "version": "3.1.0", + "version": "3.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", + "@azure/ms-rest-azure-js": "^1.4.0", + "@azure/ms-rest-js": "^1.11.0", + "@azure/core-auth": "^1.1.4", "tslib": "^1.9.3" }, "keywords": [ @@ -20,12 +21,12 @@ "module": "./esm/domainservicesManagementClient.js", "types": "./esm/domainservicesManagementClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", + "typescript": "^3.6.0", "rollup": "^0.66.2", "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/domainservices/arm-domainservices", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/domainservices/arm-domainservices", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/domainservices/arm-domainservices/src/domainservicesManagementClient.ts b/sdk/domainservices/arm-domainservices/src/domainservicesManagementClient.ts index 99e64b1dd67b..0bb81ecbda52 100644 --- a/sdk/domainservices/arm-domainservices/src/domainservicesManagementClient.ts +++ b/sdk/domainservices/arm-domainservices/src/domainservicesManagementClient.ts @@ -9,6 +9,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,12 +23,17 @@ class DomainservicesManagementClient extends DomainservicesManagementClientConte /** * Initializes a new instance of the DomainservicesManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify the Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DomainservicesManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DomainservicesManagementClientOptions) { super(credentials, subscriptionId, options); this.domainServiceOperations = new operations.DomainServiceOperations(this); this.domainServices = new operations.DomainServices(this); diff --git a/sdk/domainservices/arm-domainservices/src/domainservicesManagementClientContext.ts b/sdk/domainservices/arm-domainservices/src/domainservicesManagementClientContext.ts index 83b1b9c3eecd..70778dd9f58f 100644 --- a/sdk/domainservices/arm-domainservices/src/domainservicesManagementClientContext.ts +++ b/sdk/domainservices/arm-domainservices/src/domainservicesManagementClientContext.ts @@ -10,24 +10,30 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-domainservices"; -const packageVersion = "0.1.0"; +const packageVersion = "3.2.0"; export class DomainservicesManagementClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the DomainservicesManagementClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId Gets subscription credentials which uniquely identify the Microsoft Azure * subscription. The subscription ID forms part of the URI for every service call. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.DomainservicesManagementClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DomainservicesManagementClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } diff --git a/sdk/edgegateway/arm-edgegateway/package.json b/sdk/edgegateway/arm-edgegateway/package.json index 26932d3391a5..9a2d803c2bc2 100644 --- a/sdk/edgegateway/arm-edgegateway/package.json +++ b/sdk/edgegateway/arm-edgegateway/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/edgegateway/arm-edgegateway", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/edgegateway/arm-edgegateway", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/eventgrid/arm-eventgrid/package.json b/sdk/eventgrid/arm-eventgrid/package.json index e6df49fe6e3f..0f19c904f815 100644 --- a/sdk/eventgrid/arm-eventgrid/package.json +++ b/sdk/eventgrid/arm-eventgrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/arm-eventgrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/arm-eventgrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/eventgrid/ci.yml b/sdk/eventgrid/ci.yml index 1eb48256306a..3ac43f7b3910 100644 --- a/sdk/eventgrid/ci.yml +++ b/sdk/eventgrid/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/eventgrid/eventgrid/MIGRATION.md b/sdk/eventgrid/eventgrid/MIGRATION.md index 22240bc22c96..102805791985 100644 --- a/sdk/eventgrid/eventgrid/MIGRATION.md +++ b/sdk/eventgrid/eventgrid/MIGRATION.md @@ -2,7 +2,7 @@ This guide is intended to assist in the migration to `@azure/eventgrid@4` from `@azure/eventgrid@2`. It will focus on side-by-side comparisons for similar operations between the two packages. -We assume that you are familiar with `@azure/eventgrid@2`. If not, please refer to the [README for name of new package here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/README.md) rather than this guide. +We assume that you are familiar with `@azure/eventgrid@2`. If not, please refer to the [README for name of new package here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/README.md) rather than this guide. ## Table of contents @@ -90,4 +90,4 @@ Note that the `id` and `eventTime` properties are no longer required, they defau ## Additional samples -More examples can be found at [Samples for add @azure/eventgrid](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/samples) +More examples can be found at [Samples for add @azure/eventgrid](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/samples) diff --git a/sdk/eventgrid/eventgrid/README.md b/sdk/eventgrid/eventgrid/README.md index 5bb7eedab2ff..5e5681e18e48 100644 --- a/sdk/eventgrid/eventgrid/README.md +++ b/sdk/eventgrid/eventgrid/README.md @@ -8,11 +8,11 @@ Use the client library to: - Decode and process events which were delivered to an Event Grid handler - Generate Shared Access Signatures for Event Grid topics -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/) | [Package (NPM)](https://www.npmjs.com/package/@azure/eventgrid/v/next) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/eventgrid/) | [Product documentation](https://docs.microsoft.com/azure/event-grid/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/samples) ## Getting started @@ -284,17 +284,17 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -306,6 +306,6 @@ If you'd like to contribute to this library, please read the [contributing guide [azure_sub]: https://azure.microsoft.com/free/ [event_grid]: https://docs.microsoft.com/azure/event-grid [azure_portal]: https://portal.azure.com -[azure-core-tracing-github]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-tracing +[azure-core-tracing-github]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-tracing [cloud-events-distributed-tracing-spec]: https://github.com/cloudevents/spec/blob/master/extensions/distributed-tracing.md [eventgrid-on-kubernetes-using-azure-arc]: https://docs.microsoft.com/azure/event-grid/kubernetes/ diff --git a/sdk/eventgrid/eventgrid/package.json b/sdk/eventgrid/eventgrid/package.json index 78d44cfd4b0b..667a68b65182 100644 --- a/sdk/eventgrid/eventgrid/package.json +++ b/sdk/eventgrid/eventgrid/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/eventgrid.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/eventgrid/eventgrid/samples/v4/javascript/README.md b/sdk/eventgrid/eventgrid/samples/v4/javascript/README.md index 83b0bd9a72cf..d221249dd1d5 100644 --- a/sdk/eventgrid/eventgrid/samples/v4/javascript/README.md +++ b/sdk/eventgrid/eventgrid/samples/v4/javascript/README.md @@ -60,12 +60,12 @@ npx cross-env SERVICE_BUS_CONNECTION_STRING="" SE Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[consumeeventsfromservicebusqueue]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/samples/v4/javascript/consumeEventsFromServiceBusQueue.js -[sendeventgridevent]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/samples/v4/javascript/sendEventGridEvent.js -[sendcloudevent]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/samples/v4/javascript/sendCloudEvent.js +[consumeeventsfromservicebusqueue]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/samples/v4/javascript/consumeEventsFromServiceBusQueue.js +[sendeventgridevent]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/samples/v4/javascript/sendEventGridEvent.js +[sendcloudevent]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/samples/v4/javascript/sendCloudEvent.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/eventgrid [freesub]: https://azure.microsoft.com/free/ [createinstance_azureeventgridcustomtopic,configuredtousetheeventgridschema]: https://docs.microsoft.com/azure/event-grid/scripts/event-grid-cli-create-custom-topic [createinstance_azureeventgridcustomtopic,configuredtousethecloudevent1.0schema]: https://docs.microsoft.com/azure/event-grid/scripts/event-grid-cli-create-custom-topic [createinstance_azureservicebusqueue]: https://docs.microsoft.com/azure/service-bus-messaging/service-bus-quickstart-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/README.md diff --git a/sdk/eventgrid/eventgrid/samples/v4/javascript/package.json b/sdk/eventgrid/eventgrid/samples/v4/javascript/package.json index f20d01b15e7a..74690d17b9b0 100644 --- a/sdk/eventgrid/eventgrid/samples/v4/javascript/package.json +++ b/sdk/eventgrid/eventgrid/samples/v4/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid", "dependencies": { "@azure/eventgrid": "latest", "dotenv": "latest", diff --git a/sdk/eventgrid/eventgrid/samples/v4/typescript/README.md b/sdk/eventgrid/eventgrid/samples/v4/typescript/README.md index f2a5bc74e39e..d06c53be1e79 100644 --- a/sdk/eventgrid/eventgrid/samples/v4/typescript/README.md +++ b/sdk/eventgrid/eventgrid/samples/v4/typescript/README.md @@ -72,13 +72,13 @@ npx cross-env SERVICE_BUS_CONNECTION_STRING="" SE Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[consumeeventsfromservicebusqueue]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/samples/v4/typescript/src/consumeEventsFromServiceBusQueue.ts -[sendeventgridevent]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/samples/v4/typescript/src/sendEventGridEvent.ts -[sendcloudevent]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventgrid/eventgrid/samples/v4/typescript/src/sendCloudEvent.ts +[consumeeventsfromservicebusqueue]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/samples/v4/typescript/src/consumeEventsFromServiceBusQueue.ts +[sendeventgridevent]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/samples/v4/typescript/src/sendEventGridEvent.ts +[sendcloudevent]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventgrid/eventgrid/samples/v4/typescript/src/sendCloudEvent.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/eventgrid [freesub]: https://azure.microsoft.com/free/ [createinstance_azureeventgridcustomtopic,configuredtousetheeventgridschema]: https://docs.microsoft.com/azure/event-grid/scripts/event-grid-cli-create-custom-topic [createinstance_azureeventgridcustomtopic,configuredtousethecloudevent1.0schema]: https://docs.microsoft.com/azure/event-grid/scripts/event-grid-cli-create-custom-topic [createinstance_azureservicebusqueue]: https://docs.microsoft.com/azure/service-bus-messaging/service-bus-quickstart-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/eventgrid/eventgrid/samples/v4/typescript/package.json b/sdk/eventgrid/eventgrid/samples/v4/typescript/package.json index b84e725965ef..3a0d25606933 100644 --- a/sdk/eventgrid/eventgrid/samples/v4/typescript/package.json +++ b/sdk/eventgrid/eventgrid/samples/v4/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventgrid/eventgrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/eventgrid", "dependencies": { "@azure/eventgrid": "latest", "dotenv": "latest", diff --git a/sdk/eventhub/README.md b/sdk/eventhub/README.md index 8c68169b4e51..9e5d0e8b6dbd 100644 --- a/sdk/eventhub/README.md +++ b/sdk/eventhub/README.md @@ -16,9 +16,9 @@ To send and receive events from an Azure Event Hub instance, you would use the b | NPM Package | Reference | Samples | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [@azure/event-hubs](https://npmjs.com/package/@azure/event-hubs) | [API Reference for @azure/event-hubs](https://docs.microsoft.com/javascript/api/@azure/event-hubs) | [Samples for sending & receiving events](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples) | -| [@azure/eventhubs-checkpointstore-blob](https://www.npmjs.com/package/@azure/eventhubs-checkpointstore-blob) | [API Reference for @azure/eventhubs-checkpointstore-blob](https://docs.microsoft.com/javascript/api/@azure/eventhubs-checkpointstore-blob/) | [Samples for using checkpoint store when receiving events](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples) | +| [@azure/event-hubs](https://npmjs.com/package/@azure/event-hubs) | [API Reference for @azure/event-hubs](https://docs.microsoft.com/javascript/api/@azure/event-hubs) | [Samples for sending & receiving events](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples) | +| [@azure/eventhubs-checkpointstore-blob](https://www.npmjs.com/package/@azure/eventhubs-checkpointstore-blob) | [API Reference for @azure/eventhubs-checkpointstore-blob](https://docs.microsoft.com/javascript/api/@azure/eventhubs-checkpointstore-blob/) | [Samples for using checkpoint store when receiving events](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples) | -There is an older package `@azure/event-processor-host` meant for receiving events from multiple partitions such that the partition load is balanced across multiple instances of your application. This is done by making use Azure Storage Blob to store checkpoints. This package is deprecated and has been replaced by the packages listed in the above table. Follow the [migration guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/migrationguide.md#migrating-from-eventprocessorhost-to-eventhubconsumerclient-for-receiving-events) to move your application off of this package. +There is an older package `@azure/event-processor-host` meant for receiving events from multiple partitions such that the partition load is balanced across multiple instances of your application. This is done by making use Azure Storage Blob to store checkpoints. This package is deprecated and has been replaced by the packages listed in the above table. Follow the [migration guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/migrationguide.md#migrating-from-eventprocessorhost-to-eventhubconsumerclient-for-receiving-events) to move your application off of this package. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Feventhub%2FREADME.png) diff --git a/sdk/eventhub/arm-eventhub-profile-2020-09-01-hybrid/package.json b/sdk/eventhub/arm-eventhub-profile-2020-09-01-hybrid/package.json index 945073a52e03..cab3741b3807 100644 --- a/sdk/eventhub/arm-eventhub-profile-2020-09-01-hybrid/package.json +++ b/sdk/eventhub/arm-eventhub-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/arm-eventhub-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/arm-eventhub-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/eventhub/arm-eventhub/package.json b/sdk/eventhub/arm-eventhub/package.json index 63c849412710..74625440a88b 100644 --- a/sdk/eventhub/arm-eventhub/package.json +++ b/sdk/eventhub/arm-eventhub/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/eventhub/arm-eventhub", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/eventhub/arm-eventhub", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/eventhub/ci.yml b/sdk/eventhub/ci.yml index 18dc714fea40..80079fb77eda 100644 --- a/sdk/eventhub/ci.yml +++ b/sdk/eventhub/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/eventhub/contribute.md b/sdk/eventhub/contribute.md index d30ed1051854..b3f00bfe8f5d 100644 --- a/sdk/eventhub/contribute.md +++ b/sdk/eventhub/contribute.md @@ -9,4 +9,4 @@ There are many ways that you can contribute to the Azure Event Hubs client proje ## Contributing Code -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. diff --git a/sdk/eventhub/event-hubs/CHANGELOG.md b/sdk/eventhub/event-hubs/CHANGELOG.md index 9c451920b410..64ac238c7f17 100644 --- a/sdk/eventhub/event-hubs/CHANGELOG.md +++ b/sdk/eventhub/event-hubs/CHANGELOG.md @@ -164,7 +164,7 @@ changes between patch and minor updates. after calling `subscribe` would cause events to still be read. - Updated to use the latest version of the `@azure/core-amqp` package which in turn uses the latest version of the `rhea` package. - This update improves support for [bundling](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md) this library. + This update improves support for [bundling](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md) this library. ([Pull Request](https://github.com/amqp/rhea/pull/274)) ## 5.0.0 (2020-01-09) @@ -346,7 +346,7 @@ For more information, please visit https://aka.ms/azsdk/releases/july2019preview ### Next Steps - Refer to the `API reference documentation` to get an overview of the entire API surface. -- Refer to our [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples) to understand the usage of the new APIs. +- Refer to our [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples) to understand the usage of the new APIs. ## 2.1.0 (2019-06-10) @@ -368,7 +368,7 @@ For more information, please visit https://aka.ms/azsdk/releases/july2019preview ### Bug fixes and other changes - A network connection lost error is now treated as retryable error. A new error with name `ConnectionLostError` - is introduced for this scenario which you can see if you enable the [logs](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/README.md#debug-logs). + is introduced for this scenario which you can see if you enable the [logs](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/README.md#debug-logs). - When recovering from an error that caused the underlying AMQP connection to get disconnected, [rhea](https://github.com/amqp/rhea/issues/205) reconnects all the older AMQP links on the connection resulting in the below 2 errors in the logs. We now clear rhea's internal map to avoid such reconnections. @@ -439,7 +439,7 @@ For more information, please visit https://aka.ms/azsdk/releases/july2019preview ## 0.2.6 (2018-08-07) - Improved log statements. -- Documented different mechanisms of getting the debug logs in [README](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs//#debug-logs). +- Documented different mechanisms of getting the debug logs in [README](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs//#debug-logs). - Minimum dependency on `"rhea": "^0.2.18"`. - Fixed bugs in recovery logic - Added support to recover from session close for sender and receiver diff --git a/sdk/eventhub/event-hubs/README.md b/sdk/eventhub/event-hubs/README.md index e5b548d4e248..5656075c7919 100644 --- a/sdk/eventhub/event-hubs/README.md +++ b/sdk/eventhub/event-hubs/README.md @@ -4,14 +4,14 @@ Azure Event Hubs is a highly scalable publish-subscribe service that can ingest The Azure Event Hubs client library allows you to send and receive events in your Node.js application. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs) | [Package (npm)](https://www.npmjs.com/package/@azure/event-hubs) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/event-hubs) | [Product documentation](https://azure.microsoft.com/services/event-hubs/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples) **NOTE**: If you are using version 2.1.0 or lower and want to migrate to the latest version -of this package please look at our [migration guide to move from EventHubs V2 to EventHubs V5](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/migrationguide.md) +of this package please look at our [migration guide to move from EventHubs V2 to EventHubs V5](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/migrationguide.md) Samples for v2 and documentation are still available here: @@ -459,7 +459,7 @@ export AZURE_LOG_LEVEL=verbose ``` For more detailed instructions on how to enable logs, you can look at the -[@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +[@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). You can alternatively set the `DEBUG` environment variable to get logs when using this library. This can be useful if you also want to emit logs from the dependencies `rhea-promise` and `rhea` as well. @@ -496,12 +496,12 @@ export DEBUG=azure:*:(error|warning),rhea-promise:error,rhea:events,rhea:frames, ### More sample code -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples) +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples) directory for detailed examples of how to use this library to send and receive events to/from [Event Hubs](https://docs.microsoft.com/azure/event-hubs/event-hubs-about). ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Feventhub%2Fevent-hubs%2FREADME.png) diff --git a/sdk/eventhub/event-hubs/migrationguide.md b/sdk/eventhub/event-hubs/migrationguide.md index 178e8750e1c4..f75dd77f61e0 100644 --- a/sdk/eventhub/event-hubs/migrationguide.md +++ b/sdk/eventhub/event-hubs/migrationguide.md @@ -4,8 +4,8 @@ This guide is intended to assist in the migration from version 2 of the Event Hu It will focus on side-by-side comparisons for similar operations between the two packages. Familiarity with the version 2 of the `@azure/event-hubs` and `@azure/event-processor-host` libraries are assumed. -For those new to the Event Hubs client library, please refer to the [README](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/README.md). -and [Event Hubs samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples) for the `@azure/event-hubs` library rather than this guide. +For those new to the Event Hubs client library, please refer to the [README](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/README.md). +and [Event Hubs samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples) for the `@azure/event-hubs` library rather than this guide. ## Table of contents @@ -54,7 +54,7 @@ We have a variety of new features in version 5 of the Event Hubs library. - Ability to cancel async operations on the clients using the abort signal from `@azure/abort-controller`. - Authentication with AAD credentials using `@azure/identity`. -Refer to the [changelog](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/CHANGELOG.md) for more new features, changes and bug fixes. +Refer to the [changelog](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/CHANGELOG.md) for more new features, changes and bug fixes. ## Important changes @@ -69,9 +69,9 @@ allowing the `EventHubConsumerClient` to be the single point of entry for receiv | In v2 | Equivalent in v5 | Sample | | ------------------------------------------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `EventHubClient.createFromConnectionString()` | `new EventHubProducerClient()` or `new EventHubConsumerClient()` | [receiveEvents](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts), [sendEvents](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/sendEvents.ts) | -| `EventHubClient.createFromAadTokenCredentials()` | `new EventHubProducerClient()` or `new EventHubConsumerClient()` | [usingAadAuth](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/usingAadAuth.ts) | -| `EventProcessorHost.createFromConnectionString()` | `new EventHubConsumerClient(..., checkpointStore)` | [receiveEventsUsingCheckpointStore](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/src/receiveEventsUsingCheckpointStore.ts) | +| `EventHubClient.createFromConnectionString()` | `new EventHubProducerClient()` or `new EventHubConsumerClient()` | [receiveEvents](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts), [sendEvents](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/sendEvents.ts) | +| `EventHubClient.createFromAadTokenCredentials()` | `new EventHubProducerClient()` or `new EventHubConsumerClient()` | [usingAadAuth](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/usingAadAuth.ts) | +| `EventProcessorHost.createFromConnectionString()` | `new EventHubConsumerClient(..., checkpointStore)` | [receiveEventsUsingCheckpointStore](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/src/receiveEventsUsingCheckpointStore.ts) | Other noteworthy changes: @@ -89,7 +89,7 @@ This and the need to support improvements to the algorithm used for managing par | In v2 | Equivalent in v5 | Sample | | ---------------------------------- | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `EventHubClient.sendBatch(events)` | `EventHubProducerClient.sendBatch(eventBatch)` | [sendEvents](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/sendEvents.ts) | +| `EventHubClient.sendBatch(events)` | `EventHubProducerClient.sendBatch(eventBatch)` | [sendEvents](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/sendEvents.ts) | Other noteworthy changes: @@ -176,7 +176,7 @@ if (batch.count > 0) { | In v2 | Equivalent in v5 | Sample | | -------------------------------------------------------------- | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- | -| `EventHubClient.receive()` and `EventHubClient.receiveBatch()` | `EventHubConsumerClient.subscribe()` | [receiveEvents](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts) | +| `EventHubClient.receive()` and `EventHubClient.receiveBatch()` | `EventHubConsumerClient.subscribe()` | [receiveEvents](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts) | Other noteworthy changes: @@ -226,7 +226,7 @@ const subscription = eventHubConsumerClient.subscribe( await subscription.close(); ``` -See [`receiveEvents.ts`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts) +See [`receiveEvents.ts`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts) for a sample program demonstrating this. #### Migrating from `EventProcessorHost` to `EventHubConsumerClient` for receiving events @@ -333,7 +333,7 @@ what order, making checkpointing difficult to do correctly. In V5 the model has been simplified so new events are not delivered until the previous batch has been consumed by your event handler. You can see a sample -demonstrating this [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts) +demonstrating this [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/samples/typescript/src/receiveEvents.ts) ### Creating EventPosition @@ -350,7 +350,7 @@ demonstrating this [here](https://github.com/Azure/azure-sdk-for-js/blob/master/ Retry logic and tuning has been externalized, allowing for better configuration to better suit your network configuration and reliability. -More information about configuring and tuning retries can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs#guidance-around-retries). +More information about configuring and tuning retries can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs#guidance-around-retries). ### Handling errors @@ -367,6 +367,6 @@ More information about configuring and tuning retries can be found [here](https: ## Additional samples -More examples can be found at [samples for @azure/event-hubs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples). +More examples can be found at [samples for @azure/event-hubs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples). ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Feventhub%2Fevent-hubs%2FMIGRATIONGUIDE.png) diff --git a/sdk/eventhub/event-hubs/package.json b/sdk/eventhub/event-hubs/package.json index 1beca2b6736a..8fb3d86eeb5e 100644 --- a/sdk/eventhub/event-hubs/package.json +++ b/sdk/eventhub/event-hubs/package.json @@ -5,7 +5,7 @@ "description": "Azure Event Hubs SDK for JS.", "author": "Microsoft Corporation", "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/", "repository": "github:Azure/azure-sdk-for-js", "sideEffects": false, "keywords": [ @@ -93,7 +93,7 @@ "@azure/core-amqp": "^3.0.0", "@azure/core-asynciterator-polyfill": "^1.0.0", "@azure/core-auth": "^1.3.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "buffer": "^5.2.1", "is-buffer": "^2.0.3", diff --git a/sdk/eventhub/event-hubs/samples/browserSample/README.md b/sdk/eventhub/event-hubs/samples/browserSample/README.md index 78aea69adc7c..e61d02413b68 100644 --- a/sdk/eventhub/event-hubs/samples/browserSample/README.md +++ b/sdk/eventhub/event-hubs/samples/browserSample/README.md @@ -77,14 +77,14 @@ as the redirect URI you added to your app registration. If you're following alon Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[sendevents]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/browserSample/src/sendEvents.js -[receiveevents]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/browserSample/src/receiveEvents.js -[configuration]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/browserSample/src/configuration.js -[app]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/browserSample/src/index.js -[htmlpage]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/browserSample/index.html +[sendevents]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/browserSample/src/sendEvents.js +[receiveevents]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/browserSample/src/receiveEvents.js +[configuration]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/browserSample/src/configuration.js +[app]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/browserSample/src/index.js +[htmlpage]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/browserSample/index.html [apiref]: https://docs.microsoft.com/javascript/api/@azure/event-hubs [azhubacct]: https://docs.microsoft.com/azure/event-hubs/event-hubs-node-get-started-send [aziothub]: https://docs.microsoft.com/azure/iot-hub/iot-hub-node-node-module-twin-getstarted [freesub]: https://azure.microsoft.com/free/ -[browsercred]: https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/using-azure-identity.md#interactivebrowsercredential +[browsercred]: https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/using-azure-identity.md#interactivebrowsercredential [implicitgrantflow]: https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-implicit-grant-flow diff --git a/sdk/eventhub/event-hubs/samples/expressSample/src/README.md b/sdk/eventhub/event-hubs/samples/expressSample/src/README.md index 235af012b016..9c2840f9954b 100644 --- a/sdk/eventhub/event-hubs/samples/expressSample/src/README.md +++ b/sdk/eventhub/event-hubs/samples/expressSample/src/README.md @@ -49,6 +49,6 @@ curl --header "Content-Type: application/json" \ Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[eventproducer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/expressSample/src/asyncBatchingProducer.ts -[index]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-hubs/samples/expressSample/src/index.ts +[eventproducer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/expressSample/src/asyncBatchingProducer.ts +[index]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-hubs/samples/expressSample/src/index.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/event-hubs diff --git a/sdk/eventhub/event-hubs/samples/javascript/README.md b/sdk/eventhub/event-hubs/samples/javascript/README.md index b02f3958e907..3f7852236241 100644 --- a/sdk/eventhub/event-hubs/samples/javascript/README.md +++ b/sdk/eventhub/event-hubs/samples/javascript/README.md @@ -64,15 +64,15 @@ npx cross-env EVENTHUB_NAME="" EVENTHUB_CONNECTION_STRING=" { ); should.exist(span); - should.exist(span.context().spanId); - should.exist(span.context().traceId); + should.exist(span.spanContext().spanId); + should.exist(span.spanContext().traceId); should.equal((span as any).name, "Azure.EventHubs.message"); assert.deepStrictEqual((span as any).attributes, { diff --git a/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts b/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts index e30b7aa115c9..e3b0d5a02344 100644 --- a/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/partitionPump.spec.ts @@ -41,7 +41,7 @@ describe("PartitionPump", () => { } it("basic span properties are set", async () => { - const fakeParentSpanContext = setSpanContext(context.active(), new NoOpSpan().context()); + const fakeParentSpanContext = setSpanContext(context.active(), new NoOpSpan().spanContext()); const { tracer, resetTracer } = setTracerForTest(new TestTracer2()); await createProcessingSpan([], eventHubProperties, { @@ -94,11 +94,11 @@ describe("PartitionPump", () => { tracer.spanOptions!.links!.length.should.equal(3 - 1); // the test tracer just hands out a string integer that just gets // incremented - tracer.spanOptions!.links![0]!.context.traceId.should.equal(firstEvent.context().traceId); + tracer.spanOptions!.links![0]!.context.traceId.should.equal(firstEvent.spanContext().traceId); (tracer.spanOptions!.links![0]!.attributes!.enqueuedTime as number).should.equal( requiredEventProperties.enqueuedTimeUtc.getTime() ); - tracer.spanOptions!.links![1]!.context.traceId.should.equal(thirdEvent.context().traceId); + tracer.spanOptions!.links![1]!.context.traceId.should.equal(thirdEvent.spanContext().traceId); (tracer.spanOptions!.links![1]!.attributes!.enqueuedTime as number).should.equal( requiredEventProperties.enqueuedTimeUtc.getTime() ); diff --git a/sdk/eventhub/event-hubs/test/internal/sender.spec.ts b/sdk/eventhub/event-hubs/test/internal/sender.spec.ts index 04e65be92ff8..3e78b2d5f8b2 100644 --- a/sdk/eventhub/event-hubs/test/internal/sender.spec.ts +++ b/sdk/eventhub/event-hubs/test/internal/sender.spec.ts @@ -349,14 +349,14 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); function legacyOptionsUsingSpanContext(rootSpan: TestSpan): Pick { return { - parentSpan: rootSpan.context() + parentSpan: rootSpan.spanContext() }; } @@ -422,7 +422,7 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -473,7 +473,7 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -667,7 +667,7 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); @@ -725,7 +725,7 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); @@ -886,7 +886,7 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); const knownSendSpans = tracer @@ -952,7 +952,7 @@ describe("EventHub Sender", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); diff --git a/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts b/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts index 9248e375aa0b..35f0e324585d 100644 --- a/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts +++ b/sdk/eventhub/event-hubs/test/public/hubruntime.spec.ts @@ -96,7 +96,7 @@ describe("RuntimeInformation", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -131,7 +131,7 @@ describe("RuntimeInformation", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -192,7 +192,7 @@ describe("RuntimeInformation", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -229,7 +229,7 @@ describe("RuntimeInformation", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -372,7 +372,7 @@ describe("RuntimeInformation", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -411,7 +411,7 @@ describe("RuntimeInformation", function(): void { ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); diff --git a/sdk/eventhub/event-processor-host/CHANGELOG.md b/sdk/eventhub/event-processor-host/CHANGELOG.md index 4e5fa80744cf..132728ed7735 100644 --- a/sdk/eventhub/event-processor-host/CHANGELOG.md +++ b/sdk/eventhub/event-processor-host/CHANGELOG.md @@ -10,7 +10,7 @@ ## 2.1.0 (2019-08-06) - Added support for WebSockets. WebSockets enable Event processor Host to work over an HTTP proxy and in environments where the standard AMQP port 5671 is blocked. - Refer to the [websockets](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-processor-host/samples/typescript/src/websockets.ts) sample to see how to use WebSockets. + Refer to the [websockets](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-processor-host/samples/typescript/src/websockets.ts) sample to see how to use WebSockets. - Fixed [bug 4363](https://github.com/Azure/azure-sdk-for-js/issues/4363) which stopped users from providing their own LeaseManager. If both a lease manager and the options for leaseDuration/leaseRenewInterval are provided, then the latter will be ignored in favor of the leaseDuration/leaseRenewInterval properties on the lease manager. ## 2.0.0 (2019-07-16) @@ -18,7 +18,7 @@ - Use the latest version of the dependency on [@azure/event-hubs](https://www.npmjs.com/package/@azure/event-hubs/v/2.1.1) that has the following bug fixes - Added event handlers for `error` and `protocolError` events on the connection object to avoid the case of unhandled exceptions. This is related to the [bug 4136](https://github.com/Azure/azure-sdk-for-js/issues/4136) - A network connection lost error is now treated as retryable error. A new error with name `ConnectionLostError` - is introduced for this scenario which you can see if you enable the [logs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-processor-host#debug-logs). + is introduced for this scenario which you can see if you enable the [logs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-processor-host#debug-logs). - When recovering from an error that caused the underlying AMQP connection to get disconnected, [rhea](https://github.com/amqp/rhea/issues/205) reconnects all the older AMQP links on the connection resulting in the below 2 errors in the logs. We now clear rhea's internal map to avoid such reconnections. @@ -85,7 +85,7 @@ - `onEphError` - `leaseRenewInterval` - `leaseDuration` -- Please take a look at the [examples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-processor-host/samples) for more details. +- Please take a look at the [examples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-processor-host/samples) for more details. ## 0.1.4 (2018-07-16) diff --git a/sdk/eventhub/event-processor-host/README.md b/sdk/eventhub/event-processor-host/README.md index ee3b958013f1..ee154f032cf1 100644 --- a/sdk/eventhub/event-processor-host/README.md +++ b/sdk/eventhub/event-processor-host/README.md @@ -1,6 +1,6 @@ # @azure/event-processor-host -> Please note, a newer package [@azure/event-hubs](https://www.npmjs.com/package/@azure/event-hubs) is available as of January, 2020. While this package will continue to receive critical bug fixes, we strongly encourage you to upgrade. See the [migration guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs/migrationguide.md) for more details. +> Please note, a newer package [@azure/event-hubs](https://www.npmjs.com/package/@azure/event-hubs) is available as of January, 2020. While this package will continue to receive critical bug fixes, we strongly encourage you to upgrade. See the [migration guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs/migrationguide.md) for more details. Azure Event Processor Host helps you efficiently receive events from an EventHub. It will create EventHub Receivers across all the partitions in the provided consumer group of an EventHub and provide you messages received across @@ -9,10 +9,10 @@ Azure Storage Blob. This makes it easy to continue receiving messages from where #### Conceptual Overview -![overview](https://raw.githubusercontent.com/Azure/azure-sdk-for-js/master/sdk/eventhub/event-processor-host/eph.png) +![overview](https://raw.githubusercontent.com/Azure/azure-sdk-for-js/main/sdk/eventhub/event-processor-host/eph.png) - More information about Azure Event Processor Host can be found over [here](https://docs.microsoft.com/azure/event-hubs/event-hubs-event-processor-host). -- General overview of how the Event Processor Host SDK works internally can be found over [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-processor-host/overview.md). +- General overview of how the Event Processor Host SDK works internally can be found over [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-processor-host/overview.md). ## Pre-requisite @@ -89,7 +89,7 @@ export DEBUG=azure:eph:error,azure:event-hubs:error,azure-amqp-common:error,rhea ## Examples - Examples can be found over - [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-processor-host/samples). + [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-processor-host/samples). ## Usage @@ -97,8 +97,8 @@ export DEBUG=azure:eph:error,azure:event-hubs:error,azure-amqp-common:error,rhea The following samples focus on EPH (Event Processor Host) which is responsible for receiving messages. For sending messages to the EventHub, please use the `@azure/event-hubs` package from npm. More -information about the event hub client can be found over [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-hubs). -You can also use [this example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/event-processor-host/samples/typescript/src/sendBatch.ts) that sends +information about the event hub client can be found over [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-hubs). +You can also use [this example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/event-processor-host/samples/typescript/src/sendBatch.ts) that sends multiple messages batched together. You should be able to run the `send` example from one terminal window and see those messages being received in the `singleEph` or `multipleEph` example being run in the second terminal window. diff --git a/sdk/eventhub/event-processor-host/package.json b/sdk/eventhub/event-processor-host/package.json index b1344440f7fb..8915e8479998 100644 --- a/sdk/eventhub/event-processor-host/package.json +++ b/sdk/eventhub/event-processor-host/package.json @@ -5,7 +5,7 @@ "description": "Azure Event Processor Host (Event Hubs) SDK for JS.", "author": "Microsoft Corporation", "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/event-processor-host/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/event-processor-host/", "repository": "github:Azure/azure-sdk-for-js", "sideEffects": false, "keywords": [ diff --git a/sdk/eventhub/event-processor-host/test/README.md b/sdk/eventhub/event-processor-host/test/README.md index f837f3425863..bf56583f8673 100644 --- a/sdk/eventhub/event-processor-host/test/README.md +++ b/sdk/eventhub/event-processor-host/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -The Azure Event Processor Host client does not have any recorded tests and so, all the tests require an Azure Event Hubs namespace to be set up beforehand with at lease a single Event Hub instance in it. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/test-resources.json) that already has all of the the necessary configurations. +The Azure Event Processor Host client does not have any recorded tests and so, all the tests require an Azure Event Hubs namespace to be set up beforehand with at lease a single Event Hub instance in it. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/test-resources.json) that already has all of the the necessary configurations. The Azure resources that are used by the tests in this project are: diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/README.md b/sdk/eventhub/eventhubs-checkpointstore-blob/README.md index eba860c0f0fd..0fe085452376 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/README.md +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/README.md @@ -2,7 +2,7 @@ An Azure Blob storage based solution to store checkpoints and to aid in load balancing when using `EventHubConsumerClient` from the [@azure/event-hubs](https://www.npmjs.com/package/@azure/event-hubs) library -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob) | [Package (npm)](https://www.npmjs.com/package/@azure/eventhubs-checkpointstore-blob) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/eventhubs-checkpointstore-blob/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples) +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob) | [Package (npm)](https://www.npmjs.com/package/@azure/eventhubs-checkpointstore-blob) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/eventhubs-checkpointstore-blob/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples) ## Getting started @@ -195,11 +195,11 @@ export DEBUG=azure:eventhubs-checkpointstore-blob:info ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples) +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples) directory for detailed example. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Feventhub%2Feventhubs-checkpointstore-blob%2FREADME.png) diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/package.json b/sdk/eventhub/eventhubs-checkpointstore-blob/package.json index be9d87d45ca2..ff8c02ad877d 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/package.json +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/package.json @@ -5,7 +5,7 @@ "description": "An Azure Storage Blob solution to store checkpoints when using Event Hubs.", "author": "Microsoft Corporation", "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob/", "repository": "github:Azure/azure-sdk-for-js", "sideEffects": false, "keywords": [ diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/README.md b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/README.md index cd5029f395dc..1d823bd43b4b 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/README.md +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/README.md @@ -58,10 +58,10 @@ npx cross-env EVENT_HUB_CONNECTION_STRING="" EVENT_ Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[receiveeventsusingcheckpointstore]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/receiveEventsUsingCheckpointStore.js -[receiveeventswithapispecificstorage]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/receiveEventsWithApiSpecificStorage.js +[receiveeventsusingcheckpointstore]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/receiveEventsUsingCheckpointStore.js +[receiveeventswithapispecificstorage]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/receiveEventsWithApiSpecificStorage.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/eventhubs-checkpointstore-blob [freesub]: https://azure.microsoft.com/free/ [createinstance_azureeventhub]: https://docs.microsoft.com/azure/event-hubs/event-hubs-create [createinstance_azurestorageaccount]: https://docs.microsoft.com/azure/storage/common/storage-account-overview -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob/README.md diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/package.json b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/package.json index f6b5a6c46425..60b8d4f625cd 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/package.json +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/javascript/package.json @@ -22,7 +22,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob", "dependencies": { "@azure/eventhubs-checkpointstore-blob": "latest", "dotenv": "latest", diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/README.md b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/README.md index 1b92089a6fb1..abe29e2598b2 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/README.md +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/README.md @@ -70,11 +70,11 @@ npx cross-env EVENT_HUB_CONNECTION_STRING="" EVENT_ Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[receiveeventsusingcheckpointstore]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/src/receiveEventsUsingCheckpointStore.ts -[receiveeventswithapispecificstorage]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/src/receiveEventsWithApiSpecificStorage.ts +[receiveeventsusingcheckpointstore]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/src/receiveEventsUsingCheckpointStore.ts +[receiveeventswithapispecificstorage]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/src/receiveEventsWithApiSpecificStorage.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/eventhubs-checkpointstore-blob [freesub]: https://azure.microsoft.com/free/ [createinstance_azureeventhub]: https://docs.microsoft.com/azure/event-hubs/event-hubs-create [createinstance_azurestorageaccount]: https://docs.microsoft.com/azure/storage/common/storage-account-overview -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/package.json b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/package.json index 7043f696aa8e..b9a8a0a2278a 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/package.json +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/samples/v1/typescript/package.json @@ -26,7 +26,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/eventhubs-checkpointstore-blob", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/eventhubs-checkpointstore-blob", "dependencies": { "@azure/eventhubs-checkpointstore-blob": "latest", "dotenv": "latest", diff --git a/sdk/eventhub/eventhubs-checkpointstore-blob/test/README.md b/sdk/eventhub/eventhubs-checkpointstore-blob/test/README.md index e92056266db7..20f3a32ab73c 100644 --- a/sdk/eventhub/eventhubs-checkpointstore-blob/test/README.md +++ b/sdk/eventhub/eventhubs-checkpointstore-blob/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -The Azure Event Hubs Checkpoint Store client does not have any recorded tests and so, all the tests require an Azure Event Hubs namespace to be set up beforehand with at lease a single Event Hub instance in it. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/test-resources.json) that already has all of the the necessary configurations. +The Azure Event Hubs Checkpoint Store client does not have any recorded tests and so, all the tests require an Azure Event Hubs namespace to be set up beforehand with at lease a single Event Hub instance in it. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/test-resources.json) that already has all of the the necessary configurations. The Azure resources that are used by the tests in this project are: diff --git a/sdk/eventhub/mock-hub/README.md b/sdk/eventhub/mock-hub/README.md index 0f35c2733fbb..039f363b2720 100644 --- a/sdk/eventhub/mock-hub/README.md +++ b/sdk/eventhub/mock-hub/README.md @@ -41,8 +41,8 @@ Here's a list of some features that would be helpful for the `event-hubs` live t ### Additional details -Some details on what features the mock service supports can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/mock-hub/design/features.md). +Some details on what features the mock service supports can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/mock-hub/design/features.md). -Some details on the overal architecture of this project can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/mock-hub/design/architecture.md). +Some details on the overal architecture of this project can be found [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/mock-hub/design/architecture.md). -To see a quick example of how to start the mock service, look at [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/eventhub/mock-hub/samples/typescript/readme.md). +To see a quick example of how to start the mock service, look at [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventhub/mock-hub/samples/typescript/readme.md). diff --git a/sdk/eventhub/mock-hub/package.json b/sdk/eventhub/mock-hub/package.json index 090cf619745a..437b14586606 100644 --- a/sdk/eventhub/mock-hub/package.json +++ b/sdk/eventhub/mock-hub/package.json @@ -48,7 +48,7 @@ "README.md", "License" ], - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/eventhub/mock-hub/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/eventhub/mock-hub/README.md", "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", diff --git a/sdk/features/arm-features/package.json b/sdk/features/arm-features/package.json index 59164bbe04f5..b9c9587fcd8d 100644 --- a/sdk/features/arm-features/package.json +++ b/sdk/features/arm-features/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/features/arm-features", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/features/arm-features", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/formrecognizer/ai-form-recognizer/README.md b/sdk/formrecognizer/ai-form-recognizer/README.md index ada3b6ffbd83..3559603dfaa7 100644 --- a/sdk/formrecognizer/ai-form-recognizer/README.md +++ b/sdk/formrecognizer/ai-form-recognizer/README.md @@ -8,11 +8,11 @@ Azure Cognitive Services [Form Recognizer](https://azure.microsoft.com/services/ **Note:** This package targets Azure Form Recognizer service API version 2.x. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/) | [Package (NPM)](https://www.npmjs.com/package/@azure/ai-form-recognizer) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/ai-form-recognizer) | [Product documentation](https://docs.microsoft.com/azure/cognitive-services/form-recognizer/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer/samples) ## Getting started @@ -446,15 +446,15 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer/samples) directory for detailed code samples that show how to use this library including several features and methods that are not shown in the "Examples" section above, such as copying and composing models. +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer/samples) directory for detailed code samples that show how to use this library including several features and methods that are not shown in the "Examples" section above, such as copying and composing models. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fformrecognizer%2Fai-form-recognizer%2FREADME.png) @@ -462,11 +462,11 @@ If you'd like to contribute to this library, please read the [contributing guide [azure_sub]: https://azure.microsoft.com/free/ [fr_or_cs_resource]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account?tabs=multiservice%2Cwindows [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [register_aad_app]: https://docs.microsoft.com/azure/cognitive-services/authentication#assign-a-role-to-a-service-principal -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [quickstart_training]: https://docs.microsoft.com/azure/cognitive-services/form-recognizer/quickstarts/curl-train-extract#train-a-form-recognizer-model -[labeled_sample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/trainLabeledModel.ts +[labeled_sample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/trainLabeledModel.ts [multi_and_single_service]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account?tabs=multiservice%2Cwindows [azure_portal_create_fr_resource]: https://ms.portal.azure.com/#create/Microsoft.CognitiveServicesFormRecognizer [azure_cli_create_fr_resource]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account-cli?tabs=windows diff --git a/sdk/formrecognizer/ai-form-recognizer/package.json b/sdk/formrecognizer/ai-form-recognizer/package.json index ac5c69b81efa..a35b7cf0556f 100644 --- a/sdk/formrecognizer/ai-form-recognizer/package.json +++ b/sdk/formrecognizer/ai-form-recognizer/package.json @@ -19,7 +19,7 @@ "./dist-esm/src/utils/utils.node.js": "./dist-esm/src/utils/utils.browser.js" }, "types": "./types/ai-form-recognizer.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer/", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -82,14 +82,14 @@ "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils": "^1.0.0", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/README.md b/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/README.md index d855f9ca9254..9f7383660b5c 100644 --- a/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/README.md +++ b/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/README.md @@ -74,25 +74,25 @@ npx cross-env FORM_RECOGNIZER_ENDPOINT="
" FORM_RECOGNI Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[recognizecustomform]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeCustomForm.js -[recognizereceipt]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeReceipt.js -[recognizebusinesscard]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeBusinessCard.js -[recognizeidentitydocument]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeIdentityDocument.js -[recognizeinvoice]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeInvoice.js -[recognizecontent]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeContent.js -[recognizereceiptfromurl]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeReceiptFromUrl.js -[trainlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/trainLabeledModel.js -[trainunlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/trainUnlabeledModel.js -[differentiatelabeledunlabeled]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/differentiateLabeledUnlabeled.js -[getboundingboxes]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/getBoundingBoxes.js -[copymodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/copyModel.js -[createcomposedmodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/createComposedModel.js -[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/authenticationMethods.js -[custommodelmanagement]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/customModelManagement.js -[iteratormodels]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/iteratorModels.js -[stronglytypingrecognizedform]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/stronglyTypingRecognizedForm.js -[deleteallmodels]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/deleteAllModels.js +[recognizecustomform]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeCustomForm.js +[recognizereceipt]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeReceipt.js +[recognizebusinesscard]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeBusinessCard.js +[recognizeidentitydocument]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeIdentityDocument.js +[recognizeinvoice]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeInvoice.js +[recognizecontent]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeContent.js +[recognizereceiptfromurl]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/recognizeReceiptFromUrl.js +[trainlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/trainLabeledModel.js +[trainunlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/trainUnlabeledModel.js +[differentiatelabeledunlabeled]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/differentiateLabeledUnlabeled.js +[getboundingboxes]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/getBoundingBoxes.js +[copymodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/copyModel.js +[createcomposedmodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/createComposedModel.js +[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/authenticationMethods.js +[custommodelmanagement]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/customModelManagement.js +[iteratormodels]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/iteratorModels.js +[stronglytypingrecognizedform]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/stronglyTypingRecognizedForm.js +[deleteallmodels]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/deleteAllModels.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/ai-form-recognizer [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesaccount]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer/README.md diff --git a/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/package.json b/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/package.json index 7718ad316534..aaa752598a47 100644 --- a/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/package.json +++ b/sdk/formrecognizer/ai-form-recognizer/samples/v3/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer", "dependencies": { "@azure/ai-form-recognizer": "latest", "dotenv": "latest", diff --git a/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/README.md b/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/README.md index 8c31f2adf95a..16e677dd5691 100644 --- a/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/README.md +++ b/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/README.md @@ -86,26 +86,26 @@ npx cross-env FORM_RECOGNIZER_ENDPOINT="" FORM_RECOGNI Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[recognizecustomform]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeCustomForm.ts -[recognizereceipt]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeReceipt.ts -[recognizebusinesscard]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeBusinessCard.ts -[recognizeidentitydocument]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeIdentityDocument.ts -[recognizeinvoice]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeInvoice.ts -[recognizecontent]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeContent.ts -[recognizereceiptfromurl]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeReceiptFromUrl.ts -[trainlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/trainLabeledModel.ts -[trainunlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/trainUnlabeledModel.ts -[differentiatelabeledunlabeled]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/differentiateLabeledUnlabeled.ts -[getboundingboxes]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/getBoundingBoxes.ts -[copymodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/copyModel.ts -[createcomposedmodel]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/createComposedModel.ts -[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/authenticationMethods.ts -[custommodelmanagement]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/customModelManagement.ts -[iteratormodels]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/iteratorModels.ts -[stronglytypingrecognizedform]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/stronglyTypingRecognizedForm.ts -[deleteallmodels]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/deleteAllModels.ts +[recognizecustomform]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeCustomForm.ts +[recognizereceipt]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeReceipt.ts +[recognizebusinesscard]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeBusinessCard.ts +[recognizeidentitydocument]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeIdentityDocument.ts +[recognizeinvoice]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeInvoice.ts +[recognizecontent]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeContent.ts +[recognizereceiptfromurl]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/recognizeReceiptFromUrl.ts +[trainlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/trainLabeledModel.ts +[trainunlabeledmodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/trainUnlabeledModel.ts +[differentiatelabeledunlabeled]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/differentiateLabeledUnlabeled.ts +[getboundingboxes]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/getBoundingBoxes.ts +[copymodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/copyModel.ts +[createcomposedmodel]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/createComposedModel.ts +[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/authenticationMethods.ts +[custommodelmanagement]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/customModelManagement.ts +[iteratormodels]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/iteratorModels.ts +[stronglytypingrecognizedform]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/stronglyTypingRecognizedForm.ts +[deleteallmodels]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/src/deleteAllModels.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/ai-form-recognizer [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesaccount]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/package.json b/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/package.json index 1215873e31ce..0eacf666f549 100644 --- a/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/package.json +++ b/sdk/formrecognizer/ai-form-recognizer/samples/v3/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/formrecognizer/ai-form-recognizer", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/formrecognizer/ai-form-recognizer", "dependencies": { "@azure/ai-form-recognizer": "latest", "dotenv": "latest", diff --git a/sdk/formrecognizer/ci.yml b/sdk/formrecognizer/ci.yml index 2d479988c4f0..0d293fe0ae4c 100644 --- a/sdk/formrecognizer/ci.yml +++ b/sdk/formrecognizer/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/formrecognizer/perf-tests/ai-form-recognizer/package.json b/sdk/formrecognizer/perf-tests/ai-form-recognizer/package.json index 969f726ba369..a67cbaf8f5ea 100644 --- a/sdk/formrecognizer/perf-tests/ai-form-recognizer/package.json +++ b/sdk/formrecognizer/perf-tests/ai-form-recognizer/package.json @@ -9,7 +9,7 @@ "license": "ISC", "dependencies": { "@azure/ai-form-recognizer": "3.1.0-beta.3", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-perfstress": "^1.0.0", "dotenv": "^8.2.0", "tslib": "^2.2.0" diff --git a/sdk/frontdoor/arm-frontdoor/package.json b/sdk/frontdoor/arm-frontdoor/package.json index 43966c1a6208..e02afe2818a4 100644 --- a/sdk/frontdoor/arm-frontdoor/package.json +++ b/sdk/frontdoor/arm-frontdoor/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/frontdoor/arm-frontdoor", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/frontdoor/arm-frontdoor", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/graphrbac/graph/package.json b/sdk/graphrbac/graph/package.json index bd0dc241f8bd..49daf0969bb7 100644 --- a/sdk/graphrbac/graph/package.json +++ b/sdk/graphrbac/graph/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/graphrbac/graph", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/graphrbac/graph", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/hanaonazure/arm-hanaonazure/package.json b/sdk/hanaonazure/arm-hanaonazure/package.json index 62dee2ed0a7d..5482c18a84a9 100644 --- a/sdk/hanaonazure/arm-hanaonazure/package.json +++ b/sdk/hanaonazure/arm-hanaonazure/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/hanaonazure/arm-hanaonazure", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/hanaonazure/arm-hanaonazure", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/hdinsight/arm-hdinsight/package.json b/sdk/hdinsight/arm-hdinsight/package.json index a93a57868999..236c44b11058 100644 --- a/sdk/hdinsight/arm-hdinsight/package.json +++ b/sdk/hdinsight/arm-hdinsight/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/hdinsight/arm-hdinsight", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/hdinsight/arm-hdinsight", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/healthbot/arm-healthbot/package.json b/sdk/healthbot/arm-healthbot/package.json index 561d9da7c459..7b0b7f2cdbe1 100644 --- a/sdk/healthbot/arm-healthbot/package.json +++ b/sdk/healthbot/arm-healthbot/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/healthbot/arm-healthbot", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/healthbot/arm-healthbot", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/healthcareapis/arm-healthcareapis/package.json b/sdk/healthcareapis/arm-healthcareapis/package.json index b78262a8533f..44c4443b0b6c 100644 --- a/sdk/healthcareapis/arm-healthcareapis/package.json +++ b/sdk/healthcareapis/arm-healthcareapis/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/healthcareapis/arm-healthcareapis", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/healthcareapis/arm-healthcareapis", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/hybridcompute/arm-hybridcompute/package.json b/sdk/hybridcompute/arm-hybridcompute/package.json index e9bbc5f7e8da..a9e95ce265a7 100644 --- a/sdk/hybridcompute/arm-hybridcompute/package.json +++ b/sdk/hybridcompute/arm-hybridcompute/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/hybridcompute/arm-hybridcompute", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/hybridcompute/arm-hybridcompute", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/hybridkubernetes/arm-hybridkubernetes/package.json b/sdk/hybridkubernetes/arm-hybridkubernetes/package.json index b3d2833a6f58..b3cdcdcf0e86 100644 --- a/sdk/hybridkubernetes/arm-hybridkubernetes/package.json +++ b/sdk/hybridkubernetes/arm-hybridkubernetes/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/hybridkubernetes/arm-hybridkubernetes", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/hybridkubernetes/arm-hybridkubernetes", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/identity/ci.yml b/sdk/identity/ci.yml index 9777c510351a..855f8e9c53e6 100644 --- a/sdk/identity/ci.yml +++ b/sdk/identity/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* @@ -30,3 +28,7 @@ extends: Artifacts: - name: azure-identity safeName: azureidentity + - name: azure-identity-cache-persistence + safeName: azureidentitycachepersistence + - name: azure-identity-vscode + safeName: azureidentityvscode diff --git a/sdk/identity/identity-cache-persistence/.eslintrc.json b/sdk/identity/identity-cache-persistence/.eslintrc.json new file mode 100644 index 000000000000..1c1503b9333a --- /dev/null +++ b/sdk/identity/identity-cache-persistence/.eslintrc.json @@ -0,0 +1,8 @@ +{ + "plugins": ["@azure/azure-sdk"], + "extends": ["plugin:@azure/azure-sdk/azure-sdk-base"], + "rules": { + "@azure/azure-sdk/ts-package-json-module": "off", + "@azure/azure-sdk/ts-package-json-engine-is-present": "off" + } +} diff --git a/sdk/identity/identity-cache-persistence/.gitignore b/sdk/identity/identity-cache-persistence/.gitignore new file mode 100644 index 000000000000..3c8af5ad63ff --- /dev/null +++ b/sdk/identity/identity-cache-persistence/.gitignore @@ -0,0 +1 @@ +!test/assets/cert.pem diff --git a/sdk/identity/identity-cache-persistence/CHANGELOG.md b/sdk/identity/identity-cache-persistence/CHANGELOG.md new file mode 100644 index 000000000000..078f0038aef8 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/CHANGELOG.md @@ -0,0 +1,11 @@ +# Release History + +## 1.0.0-beta.1 (Unreleased) + +### New features + +- This release marks the initial beta availability of the `@azure/identity-cache-persistence` package. This package provides an extension to `@azure/identity` that enables persistent token caching in a secure storage defined by the Operating System (caching of token values across sessions), which allows skipping interactive authentication flows if a previously-cached token is still available. This is implemented using the following technologies: + - On Windows, the cache will use a DPAPI-protected file. + - On macOS, the cache will use the macOS Keychain. + - On Linux, the cache will use `libsecret` to store the tokens (this will use a provider backend, e.g. GNOME Keyring). + - On Linux and macOS, the cache may optionally use an unencrypted file as a last resort, but only if the `allowUnencryptedStorage` property is set to true in the `tokenCachePersistenceOptions` passed to the credential constructor. diff --git a/sdk/identity/identity-cache-persistence/LICENSE b/sdk/identity/identity-cache-persistence/LICENSE new file mode 100644 index 000000000000..ea8fb1516028 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2020 Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/sdk/identity/identity-cache-persistence/README.md b/sdk/identity/identity-cache-persistence/README.md new file mode 100644 index 000000000000..ffd728000ef3 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/README.md @@ -0,0 +1,95 @@ +## Azure Identity Extension for Token Cache Persistence + +This package provides an extension to the Azure Identity library for JavaScript ([`@azure/identity`](https://npmjs.com/package/@azure/identity)) that enables persistent token caching. Token cache persistence allows the built-in token cache to persist across sessions using a secure storage system provided by the local Operating System. + +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-cache-persistence) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity-cache-persistence/samples-dev) + +## Getting started + +### Install the package + +This package is designed to be used with Azure Identity for JavaScript. Install both `@azure/identity` and this package using `npm`: + +```sh +$ npm install --save @azure/identity +$ npm install --save @azure/identity-cache-persistence +``` + +### Prerequisites + +- An [Azure subscription](https://azure.microsoft.com/free/). + +#### Supported Environments + +Azure Identity extensions for JavaScript support stable (even numbered) versions of Node.js starting from v12. While it may run in other Node versions, no support is guaranteed. `@azure/identity-cache-persistence` **does not** support browser environments. + +## Key concepts + +If this is your first time using `@azure/identity` or the Microsoft identity platform (Azure Active Directory), we recommend that you read [Using `@azure/identity` with Microsoft Identity Platform](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/using-azure-identity.md) first. This document will give you a deeper understanding of the platform and how to configure your Azure account correctly. + +### Azure Identity Extensions + +As of `@azure/identity` version 2.0.0, the Identity client library for JavaScript includes an extension API. This package (`@azure/identity-cache-persistence`) exports an extension object that you must pass as an argument to the top-level `useIdentityExtension` function from the `@azure/identity` package. Enable token cache persistence in your program as follows: + +```typescript +import { useIdentityExtension } from "@azure/identity"; +import { cachePersistenceExtension } from "@azure/identity-cache-persistence"; + +useIdentityExtension(cachePersistenceExtension); +``` + +After calling `useIdentityExtension`, the persistent token cache extension is registered to the `@azure/identity` package and will be available on all credentials that support persistent token caching (those that have `tokenCachePersistenceOptions` in their constructor options). + +## Examples + +Once the extension is registered, you can enable token cache persistence by passing `tokenCachePersistenceOptions` with an `enabled` property set to `true` to a credential constructor. In the following example, we use the `DeviceCodeCredential`, since persistent caching of its tokens allows you to skip the interactive device-code authentication flow if a cached token is available. + +```typescript +import { useIdentityExtension, DeviceCodeCredential } from "@azure/identity"; +import { cachePersistenceExtension } from "@azure/identity-cache-persistence"; + +useIdentityExtension(cachePersistenceExtension); + +async function main() { + const credential = new DeviceCodeCredential({ + tokenCachePersistenceOptions: { + enabled: true + } + }); + + // We'll use the Microsoft Graph scope as an example + const scope = "https://graph.microsoft.com/.default"; + + // Print out part of the access token + console.log((await credential.getToken(scope)).token.substr(0, 10), "..."); +} + +main().catch((error) => { + console.error("An error occurred:", error); + process.exit(1); +}); +``` + +## Troubleshooting + +### Logging + +Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`: + +```javascript +import { setLogLevel } from "@azure/logger"; + +setLogLevel("info"); +``` + +## Next steps + +### Provide Feedback + +If you encounter bugs or have suggestions, please [open an issue](https://github.com/Azure/azure-sdk-for-js/issues). + +## Contributing + +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fidentity%2Fidentity%2FREADME.png) diff --git a/sdk/identity/identity-cache-persistence/api-extractor.json b/sdk/identity/identity-cache-persistence/api-extractor.json new file mode 100644 index 000000000000..f7b471ed2265 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/api-extractor.json @@ -0,0 +1,31 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "./types/identity-cache-persistence/src/index.d.ts", + "docModel": { + "enabled": true + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "", + "publicTrimmedFilePath": "./types/identity-cache-persistence.d.ts" + }, + "messages": { + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, + "extractorMessageReporting": { + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } + } + } +} diff --git a/sdk/identity/identity-cache-persistence/package.json b/sdk/identity/identity-cache-persistence/package.json new file mode 100644 index 000000000000..51b9ca4cc660 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/package.json @@ -0,0 +1,101 @@ +{ + "name": "@azure/identity-cache-persistence", + "version": "1.0.0-beta.1", + "sdk-type": "client", + "description": "A secure, persistent token cache for Azure Identity credentials that uses the OS secret-management API", + "main": "dist/index.js", + "module": "dist-esm/identity-cache-persistence/src/index.js", + "types": "./types/identity-cache-persistence.d.ts", + "scripts": { + "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", + "build:samples": "echo skipped", + "build:test": "tsc -p . && rollup -c rollup.config.js 2>&1", + "build": "npm run extract-api && tsc -p . && rollup -c 2>&1", + "check-format": "prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"*.{js,json}\" \"samples-dev/**/*.ts\"", + "clean": "rimraf dist dist-* typings *.tgz *.log", + "execute:samples": "echo skipped", + "extract-api": "tsc -p . && api-extractor run --local", + "format": "prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"*.{js,json}\" \"samples-dev/**/*.ts\"", + "integration-test:browser": "echo skipped", + "integration-test:node": "echo skipped", + "integration-test": "npm run integration-test:node && npm run integration-test:browser", + "lint:fix": "eslint package.json api-extractor.json src test --ext .ts --fix --fix-type [problem,suggestion]", + "lint": "eslint package.json api-extractor.json src test --ext .ts", + "pack": "npm pack 2>&1", + "prebuild": "npm run clean", + "test:browser": "npm run clean && npm run build:test && npm run unit-test:browser && npm run integration-test:browser", + "test:node": "npm run clean && npm run build:test && npm run unit-test:node && npm run integration-test:node", + "test": "npm run clean && npm run build:test && npm run unit-test && npm run integration-test", + "unit-test:browser": "echo skipped", + "unit-test:node": "mocha -r esm -r ts-node/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 180000 --full-trace --exclude \"test/**/browser/**/*.spec.ts\" \"test/**/*.spec.ts\"", + "unit-test": "npm run unit-test:node && npm run unit-test:browser", + "docs": "typedoc --excludePrivate --excludeNotExported --excludeExternals --stripInternal --mode file --out ./dist/docs ./src" + }, + "files": [ + "dist/", + "dist-esm/identity/src", + "dist-esm/identity-cache-persistence/src", + "types/identity-cache-persistence.d.ts", + "README.md", + "LICENSE" + ], + "engines": { + "node": ">=12.0.0" + }, + "repository": "github:Azure/azure-sdk-for-js", + "keywords": [ + "azure", + "cloud", + "active directory", + "authentication", + "credential", + "certificate", + "persistence", + "cache" + ], + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "engine": { + "node": ">=12.0.0" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-cache-persistence/README.md", + "sideEffects": false, + "dependencies": { + "@azure/core-auth": "^1.3.0", + "@azure/identity": "^2.0.0-beta.4", + "@azure/msal-node": "^1.1.0", + "@azure/msal-node-extensions": "1.0.0-alpha.6", + "keytar": "^7.6.0", + "tslib": "^2.2.0" + }, + "devDependencies": { + "@azure/eslint-plugin-azure-sdk": "^3.0.0", + "@azure/dev-tool": "^1.0.0", + "@azure/test-utils-recorder": "^1.0.0", + "@microsoft/api-extractor": "7.7.11", + "@types/jws": "^3.2.2", + "@types/mocha": "^7.0.2", + "@types/node": "^8.0.0", + "@types/qs": "^6.5.3", + "assert": "^1.4.1", + "cross-env": "^7.0.2", + "dotenv": "^8.2.0", + "eslint": "^7.15.0", + "inherits": "^2.0.3", + "mocha": "^7.1.1", + "mocha-junit-reporter": "^1.18.0", + "puppeteer": "^3.3.0", + "rimraf": "^3.0.0", + "rollup": "^1.16.3", + "typescript": "~4.2.0", + "util": "^0.12.1", + "sinon": "^9.0.2", + "@types/sinon": "^9.0.4", + "mock-fs": "^4.10.4", + "typedoc": "0.15.2", + "prettier": "^1.16.4" + } +} diff --git a/sdk/identity/identity-cache-persistence/recordings/node/clientcertificatecredential_internal/recording_accepts_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/clientcertificatecredential_internal/recording_accepts_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..0011ebc6bd57 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/clientcertificatecredential_internal/recording_accepts_tokencachepersistenceoptions.js @@ -0,0 +1,111 @@ +let nock = require('nock'); + +module.exports.hash = "f2f314ebfb0b21270e281f8cfaa428eb"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'afae0f31-2449-4ead-bae3-5872d9ac1000', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:37 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:36 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '9b573481-cec3-4a8f-add9-eabeab1c2300', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:37 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '1651' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=client-request-id&client_assertion=client_assertion&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer") + .reply(200, {"token_type":"Bearer","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '76255ad6-29e6-4527-a4a3-ff6ce6a97600', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:37 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '1588' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/clientcertificatecredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/clientcertificatecredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..34219511f44d --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/clientcertificatecredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js @@ -0,0 +1,182 @@ +let nock = require('nock'); + +module.exports.hash = "a35165f908e286361502828da4c76736"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '839e3095-5d46-49ec-a3de-bde9f1a40e00', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:37 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '9e1bae85-2215-44d4-8edc-49f2ba2c1a00', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:37 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '1651' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=client-request-id&client_assertion=client_assertion&client_assertion_type=urn%3Aietf%3Aparams%3Aoauth%3Aclient-assertion-type%3Ajwt-bearer") + .reply(200, {"token_type":"Bearer","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '409bd16b-3d19-4ecb-993b-15cb6b951800', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '1588' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'df68a08d-09ef-4790-8194-b5dbacdd6c00', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '18fea51e-7f24-414e-9d58-99875bde2500', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:37 GMT', + 'Content-Length', + '1651' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/clientsecretcredential_internal/recording_accepts_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/clientsecretcredential_internal/recording_accepts_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..c2a6d0a6f70b --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/clientsecretcredential_internal/recording_accepts_tokencachepersistenceoptions.js @@ -0,0 +1,111 @@ +let nock = require('nock'); + +module.exports.hash = "e5b2fd33648fbcb25002eb5d85a3b1b7"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '6ec3837f-1b8d-4b9c-899e-c708c14b9200', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '409bd16b-3d19-4ecb-993b-15cb9b951800', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT', + 'Content-Length', + '1651' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=client-request-id&client_secret=azure_client_secret") + .reply(200, {"token_type":"Bearer","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Length', + '1588', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'bd0f0928-051d-4666-8f19-5267ddc31900', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/clientsecretcredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/clientsecretcredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..dc5389c124fd --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/clientsecretcredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js @@ -0,0 +1,182 @@ +let nock = require('nock'); + +module.exports.hash = "efc3f10af9de458ea8671542d0000e3b"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Length', + '980', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '2d859df5-c16e-4a19-8c78-d944bed23c00', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '76255ad6-29e6-4527-a4a3-ff6c5aaa7600', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:38 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT', + 'Content-Length', + '1651' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|771,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=client-request-id&client_secret=azure_client_secret") + .reply(200, {"token_type":"Bearer","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Length', + '1588', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '9b573481-cec3-4a8f-add9-eabe3a1d2300', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:39 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '884b75b2-1b54-49f2-a391-454a07e21400', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:39 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '9e1bae85-2215-44d4-8edc-49f21d2d1a00', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:39 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:38 GMT', + 'Content-Length', + '1651' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_accepts_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_accepts_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..20612e770d36 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_accepts_tokencachepersistenceoptions.js @@ -0,0 +1,146 @@ +let nock = require('nock'); + +module.exports.hash = "1835013ecdba7993776a10d98850fb5f"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/organizations/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'ae17da35-2635-4b07-a094-b0de800c1200', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:39 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:39 GMT', + 'Content-Length', + '957' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/organizations/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/organizations/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/{tenantid}/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":null,"cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '13bdc6cc-fd34-4d40-a854-12a2ef7c8000', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:39 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:39 GMT', + 'Content-Length', + '1510' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/devicecode', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46") + .reply(200, {"user_code":"USER_CODE","device_code":"DEVICE_CODE","verification_uri":"https://microsoft.com/devicelogin","expires_in":900,"interval": 0,"message":"To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code USER_CODE to authenticate."}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Length', + '473', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '700be316-e865-4268-95dd-d742ba380200', + 'x-ms-ests-server', + '2.1.11787.15 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:39 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:39 GMT' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/token', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46&grant_type=device_code&device_code=DEVICE_CODE&client-request-id=client-request-id&client_info=1&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|671,0|,&x-client-last-telemetry=2|0|||0,0") + .reply(200, {"token_type":"Bearer","scope":"email openid profile https://graph.microsoft.com/AuditLog.Read.All https://graph.microsoft.com/Directory.AccessAsUser.All https://graph.microsoft.com/Group.ReadWrite.All https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token","foci":"1","id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz","client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '409bd16b-3d19-4ecb-993b-15cbe49a1800', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:54 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:54 GMT', + 'Content-Length', + '5043' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_allows_passing_an_authenticationrecord_to_avoid_further_manual_authentications.js b/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_allows_passing_an_authenticationrecord_to_avoid_further_manual_authentications.js new file mode 100644 index 000000000000..efbb014a72e9 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_allows_passing_an_authenticationrecord_to_avoid_further_manual_authentications.js @@ -0,0 +1,287 @@ +let nock = require('nock'); + +module.exports.hash = "9b2722ac6356324e61d860b570724ee6"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/organizations/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '1862a810-e5a7-40ee-a59a-5a4f1abb2400', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:10 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:10 GMT', + 'Content-Length', + '957' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/organizations/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/organizations/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/{tenantid}/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":null,"cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '73d7c60d-e6d5-4b21-ae5d-7961dd751700', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:10 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:10 GMT', + 'Content-Length', + '1510' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/devicecode', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46") + .reply(200, {"user_code":"USER_CODE","device_code":"DEVICE_CODE","verification_uri":"https://microsoft.com/devicelogin","expires_in":900,"interval": 0,"message":"To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code USER_CODE to authenticate."}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '1a3165b3-78ec-42a2-95fe-ff3930e97000', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:11 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:10 GMT', + 'Content-Length', + '473' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/token', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46&grant_type=device_code&device_code=DEVICE_CODE&client-request-id=client-request-id&client_info=1&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|671,0|,&x-client-last-telemetry=2|0|||0,0") + .reply(200, {"token_type":"Bearer","scope":"email openid profile https://graph.microsoft.com/AuditLog.Read.All https://graph.microsoft.com/Directory.AccessAsUser.All https://graph.microsoft.com/Group.ReadWrite.All https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token","foci":"1","id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz","client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'bd0f0928-051d-4666-8f19-52673ccf1900', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:21 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:21 GMT', + 'Content-Length', + '5038' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/organizations/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'cb7b6143-2d08-4775-81b7-fd8aa6979800', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:22 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:21 GMT', + 'Content-Length', + '957' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/organizations/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/organizations/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/{tenantid}/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":null,"cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'a03f3270-b884-43e5-9ac1-f8e494da1e00', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:22 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:21 GMT', + 'Content-Length', + '1510' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/devicecode', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46") + .reply(200, {"user_code":"USER_CODE","device_code":"DEVICE_CODE","verification_uri":"https://microsoft.com/devicelogin","expires_in":900,"interval": 0,"message":"To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code USER_CODE to authenticate."}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'fa8fbb31-7fa8-4dc8-b47c-a23004171d00', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:22 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:21 GMT', + 'Content-Length', + '473' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/token', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46&grant_type=device_code&device_code=DEVICE_CODE&client-request-id=client-request-id&client_info=1&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|671,0|,&x-client-last-telemetry=2|0|||0,0") + .reply(200, {"token_type":"Bearer","scope":"email openid profile https://graph.microsoft.com/AuditLog.Read.All https://graph.microsoft.com/Directory.AccessAsUser.All https://graph.microsoft.com/Group.ReadWrite.All https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token","foci":"1","id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz","client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '76255ad6-29e6-4527-a4a3-ff6c7dbf7600', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:47 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:47 GMT', + 'Content-Length', + '5038' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..616d46331ca6 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/devicecodecredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js @@ -0,0 +1,146 @@ +let nock = require('nock'); + +module.exports.hash = "aeb016d49a5430c8099b373e080e5151"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/organizations/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'aae5811f-fa30-46fd-ad7c-d5462ccf3700', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:55 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:54 GMT', + 'Content-Length', + '957' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/organizations/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/organizations/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/{tenantid}/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/organizations/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":null,"cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'de6f2ed2-0294-42be-b8e8-334a8f181000', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:55 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:54 GMT', + 'Content-Length', + '1510' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/devicecode', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46") + .reply(200, {"user_code":"USER_CODE","device_code":"DEVICE_CODE","verification_uri":"https://microsoft.com/devicelogin","expires_in":900,"interval": 0,"message":"To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code USER_CODE to authenticate."}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '3cc42f87-f9a4-4066-a5e2-f4c107629700', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:05:55 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:05:54 GMT', + 'Content-Length', + '473' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/organizations/oauth2/v2.0/token', "scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&client_id=04b07795-8ddb-461a-bbee-02f9e1bf7b46&grant_type=device_code&device_code=DEVICE_CODE&client-request-id=client-request-id&client_info=1&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|671,0|,&x-client-last-telemetry=2|0|||0,0") + .reply(200, {"token_type":"Bearer","scope":"email openid profile https://graph.microsoft.com/AuditLog.Read.All https://graph.microsoft.com/Directory.AccessAsUser.All https://graph.microsoft.com/Group.ReadWrite.All https://graph.microsoft.com/User.ReadWrite.All https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token","foci":"1","id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz","client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '9b573481-cec3-4a8f-add9-eabecc262300', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:10 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:10 GMT', + 'Content-Length', + '5043' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/usernamepasswordcredential_internal/recording_accepts_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/usernamepasswordcredential_internal/recording_accepts_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..e5ebaf7786de --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/usernamepasswordcredential_internal/recording_accepts_tokencachepersistenceoptions.js @@ -0,0 +1,111 @@ +let nock = require('nock'); + +module.exports.hash = "7990c61bae7d74517e9b9878ee29fdfe"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'cbc58672-7ee0-42bd-a2ff-04c07925a700', + 'x-ms-ests-server', + '2.1.11787.14 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:47 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:47 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'bd0f0928-051d-4666-8f19-526771d51900', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:47 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:47 GMT', + 'Content-Length', + '1651' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&username=azure_username&password=azure_password&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&grant_type=password&client_info=1&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|371,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=client-request-id") + .reply(200, {"token_type":"Bearer","scope":"profile openid email https://graph.microsoft.com/User.Read https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token","id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz","client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '9e1bae85-2215-44d4-8edc-49f25c3d1a00', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:48 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:47 GMT', + 'Content-Length', + '4609' +]); diff --git a/sdk/identity/identity-cache-persistence/recordings/node/usernamepasswordcredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js b/sdk/identity/identity-cache-persistence/recordings/node/usernamepasswordcredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js new file mode 100644 index 000000000000..75b1ab05eee8 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/recordings/node/usernamepasswordcredential_internal/recording_authenticates_silently_with_tokencachepersistenceoptions.js @@ -0,0 +1,111 @@ +let nock = require('nock'); + +module.exports.hash = "bdd6d580a139539982f96a31a4f9e3cc"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'dab65d46-f669-4e01-8263-513c9e450e00', + 'x-ms-ests-server', + '2.1.11787.14 - EUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:48 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:47 GMT', + 'Content-Length', + '980' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"NA","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + 'Cache-Control', + 'max-age=86400, private', + 'Content-Type', + 'application/json; charset=utf-8', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'Access-Control-Allow-Origin', + '*', + 'Access-Control-Allow-Methods', + 'GET, OPTIONS', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'fccd1380-a9b6-4c6b-86b8-f9064aeb1900', + 'x-ms-ests-server', + '2.1.11787.14 - NCUS ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:48 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'esctx=esctx; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:47 GMT', + 'Content-Length', + '1651' +]); + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&username=azure_username&password=azure_password&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20openid%20profile%20offline_access&grant_type=password&client_info=1&x-client-SKU=msal.js.node&x-client-VER=1.1.0&x-client-OS=linux&x-client-CPU=x64&x-ms-lib-capability=retry-after, h429&x-client-current-telemetry=2|371,0|,&x-client-last-telemetry=2|0|||0,0&client-request-id=client-request-id") + .reply(200, {"token_type":"Bearer","scope":"profile openid email https://graph.microsoft.com/User.Read https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token","id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz","client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '588429da-f260-4926-899e-61e0ae787a00', + 'x-ms-ests-server', + '2.1.11787.14 - WUS2 ProdSlices', + 'x-ms-clitelem', + '1,0,0,,', + 'Set-Cookie', + 'fpc=fpc;; expires=Fri, 09-Jul-2021 22:06:48 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Wed, 09 Jun 2021 22:06:48 GMT', + 'Content-Length', + '4615' +]); diff --git a/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md b/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md new file mode 100644 index 000000000000..4d1cf8afbe53 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/review/identity-cache-persistence.api.md @@ -0,0 +1,15 @@ +## API Report File for "@azure/identity-cache-persistence" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { IdentityExtension } from '@azure/identity'; + +// @public +export const cachePersistenceExtension: IdentityExtension; + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/identity/identity-cache-persistence/rollup.config.js b/sdk/identity/identity-cache-persistence/rollup.config.js new file mode 100644 index 000000000000..5d7deee44c14 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/rollup.config.js @@ -0,0 +1,3 @@ +import { makeConfig } from "@azure/dev-tool/shared-config/rollup"; + +export default makeConfig(require("./package.json")); diff --git a/sdk/identity/identity-cache-persistence/samples-dev/extension.ts b/sdk/identity/identity-cache-persistence/samples-dev/extension.ts new file mode 100644 index 000000000000..d826b5ca6ee7 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/samples-dev/extension.ts @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/** + * This sample shows how to add a persistent token cache to `@azure/identity` + * using the persistence extension. Once the persistence extension is added + * through `useIdentityExtension`, some credentials, such as + * `DeviceCodeCredential`, will be able to retrieve tokens from the cache rather + * than requesting new tokens from the Azure Active Directory token endpoint. + * + * In order to utilize the persistent token cache, the `enabled` property must + * be set to `true` within `tokenCachePersistenceOptions` in the credential's + * options. + * + * @summary import and use the persistence extension + */ + +import { useIdentityExtension, DeviceCodeCredential } from "@azure/identity"; + +import { cachePersistenceExtension } from "@azure/identity-cache-persistence"; +useIdentityExtension(cachePersistenceExtension); + +import dotenv from "dotenv"; +dotenv.config(); + +async function main() { + const credential = new DeviceCodeCredential({ + // This property must be provided, with `enabled` set to true to enable + // persistent token caching. + tokenCachePersistenceOptions: { + enabled: true + } + }); + + // This is the scope we will use to get a token from the AAD token endpoint. + // By default, we'll use the Microsoft Graph scope as an example, but when + // you use the credential with an Azure SDK package, it will configure the + // scope for you automatically. + const scope = process.env.AAD_TEST_SCOPE ?? "https://graph.microsoft.com/.default"; + + // A little helper function to print part of an access_token + const logToken = async () => + console.log((await credential.getToken(scope)).token.substr(0, 10), "..."); + + // You should observe that the same token is printed twice, and that running the sample twice + // only prompts for interactive authentication once. In the second execution, the token should + // be retrieved from the cache. + console.log("Calling getToken()", 1); + await logToken(); + console.log("Calling getToken()", 2); + await logToken(); +} + +main().catch((error) => { + console.error("The sample encountered an error:", error); + process.exit(1); +}); diff --git a/sdk/identity/identity-cache-persistence/src/index.ts b/sdk/identity/identity-cache-persistence/src/index.ts new file mode 100644 index 000000000000..9dc439e31e78 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/src/index.ts @@ -0,0 +1,40 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { IdentityExtension } from "@azure/identity"; + +import { AzureExtensionContext } from "../../identity/src/extensions/provider"; +import { createPersistenceCachePlugin } from "./provider"; + +/** + * An extension that provides persistent token caching for `@azure/identity` + * credentials. The extension API is compatible with `@azure/identity` versions + * 2.0.0 and later. Load this extension using the `useIdentityExtension` + * function, imported from `@azure/identity`. + * + * In order to enable this functionality, you must also pass + * `tokenCachePersistenceOptions` to your credential constructors with an + * `enabled` property set to true. + * + * Example: + * + * ```typescript + * import { useIdentityExtension, DeviceCodeCredential } from "@azure/identity"; + * import { cachePersistenceExtension } from "@azure/identity-cache-persistence"; + * + * // Load the extension + * useIdentityExtension(cachePersistenceExtension); + * + * const credential = new DeviceCodeCredential({ + * tokenCachePersistenceOptions: { + * enabled: true + * } + * }); + * ``` + */ + +export const cachePersistenceExtension: IdentityExtension = (context) => { + const { cachePluginControl } = context as AzureExtensionContext; + + cachePluginControl.setPersistence(createPersistenceCachePlugin); +}; diff --git a/sdk/identity/identity-cache-persistence/src/platforms.ts b/sdk/identity/identity-cache-persistence/src/platforms.ts new file mode 100644 index 000000000000..0a1d591fd696 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/src/platforms.ts @@ -0,0 +1,143 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable tsdoc/syntax */ + +import * as path from "path"; + +import { + KeychainPersistence, + FilePersistence, + DataProtectionScope, + FilePersistenceWithDataProtection, + LibSecretPersistence, + IPersistence as Persistence +} from "@azure/msal-node-extensions"; + +import { TokenCachePersistenceOptions } from "@azure/identity"; + +/** + * Local application data folder + * Expected values: + * - Darwin: '/Users/user/' + * - Windows 8: 'C:\Users\user\AppData\Local' + * - Windows XP: 'C:\Documents and Settings\user\Application Data\Local' + * - Linux: '/home/user/.local/share' + * @internal + */ +const localApplicationDataFolder = + process.env.APPDATA?.replace?.(/(.Roaming)*$/, "\\Local") ?? process.env.HOME!; + +/** + * Dictionary of values that we use as default as we discover, pick and enable the persistence layer. + * @internal + */ +export const defaultMsalValues = { + tokenCache: { + name: "msal.cache", + // Expected values: + // - Darwin: '/Users/user/.IdentityService' + // - Windows 8: 'C:\Users\user\AppData\Local\.IdentityService' + // - Windows XP: 'C:\Documents and Settings\user\Application Data\Local\.IdentityService' + // - Linux: '/home/user/.IdentityService' + directory: path.join(localApplicationDataFolder, ".IdentityService") + }, + keyRing: { + label: "MSALCache", + schema: "msal.cache", + collection: "default", + attributes: { + MsalClientID: "Microsoft.Developer.IdentityService", + "Microsoft.Developer.IdentityService": "1.0.0.0" + }, + service: "Microsoft.Developer.IdentityService", + account: "MSALCache" + }, + keyChain: { + service: "Microsoft.Developer.IdentityService", + account: "MSALCache" + } +}; + +/** + * Options that are used by the underlying MSAL cache provider. + * @internal + */ +export type MsalPersistenceOptions = Omit; + +/** + * A function that returns a persistent token cache instance. + * @internal + */ +type MsalPersistenceFactory = (options?: MsalPersistenceOptions) => Promise; + +/** + * Expected responses: + * - Darwin: '/Users/user/.IdentityService/' + * - Windows 8: 'C:\Users\user\AppData\Local\.IdentityService\' + * - Windows XP: 'C:\Documents and Settings\user\Application Data\Local\.IdentityService\' + * - Linux: '/home/user/.IdentityService/' + * @internal + */ +function getPersistencePath(name: string): string { + return path.join(defaultMsalValues.tokenCache.directory, name); +} + +/** + * Set of the platforms we attempt to deliver persistence on. + * + * - On Windows we use DPAPI. + * - On OSX (Darwin), we try to use the system's Keychain, otherwise if the property `allowUnencryptedStorage` is set to true, we use an unencrypted file. + * - On Linux, we try to use the system's Keyring, otherwise if the property `allowUnencryptedStorage` is set to true, we use an unencrypted file. + * + * Other platforms _are not supported_ at this time. + * + * @internal + */ +export const msalPersistencePlatforms: Partial> = { + win32: ({ name = defaultMsalValues.tokenCache.name } = {}): Promise => + FilePersistenceWithDataProtection.create( + getPersistencePath(name), + DataProtectionScope.CurrentUser + ), + + darwin: async (options: MsalPersistenceOptions = {}): Promise => { + const { name, allowUnencryptedStorage } = options; + const { service, account } = defaultMsalValues.keyChain; + const persistencePath = getPersistencePath(name || defaultMsalValues.tokenCache.name); + + try { + const persistence = await KeychainPersistence.create(persistencePath, service, account); + // If we don't encounter an error when trying to read from the keychain, then we should be good to go. + await persistence.load(); + return persistence; + } catch (e) { + // If we got an error while trying to read from the keyring, + // we will proceed only if the user has specified that unencrypted storage is allowed. + if (!allowUnencryptedStorage) { + throw new Error("Unable to read from the macOS Keychain."); + } + return FilePersistence.create(persistencePath); + } + }, + + linux: async (options: MsalPersistenceOptions = {}): Promise => { + const { name, allowUnencryptedStorage } = options; + const { service, account } = defaultMsalValues.keyRing; + const persistencePath = getPersistencePath(name || defaultMsalValues.tokenCache.name); + + try { + const persistence = await LibSecretPersistence.create(persistencePath, service, account); + // If we don't encounter an error when trying to read from the keyring, then we should be good to go. + await persistence.load(); + return persistence; + } catch (e) { + // If we got an error while trying to read from the keyring, + // we will proceed only if the user has specified that unencrypted storage is allowed. + if (!allowUnencryptedStorage) { + throw new Error("Unable to read from the system keyring (libsecret)."); + } + return FilePersistence.create(persistencePath); + } + } +}; diff --git a/sdk/identity/identity-cache-persistence/src/provider.ts b/sdk/identity/identity-cache-persistence/src/provider.ts new file mode 100644 index 000000000000..bbad7ddf910b --- /dev/null +++ b/sdk/identity/identity-cache-persistence/src/provider.ts @@ -0,0 +1,34 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { ICachePlugin as CachePlugin } from "@azure/msal-node"; +import { PersistenceCachePlugin, IPersistence as Persistence } from "@azure/msal-node-extensions"; + +import { MsalPersistenceOptions, msalPersistencePlatforms } from "./platforms"; + +/** + * This is used to gain access to the underlying Persistence instance, which we use for testing + * + * @returns a raw persistence instance + * @internal + */ +export async function createPersistence(options: MsalPersistenceOptions): Promise { + const persistence = await msalPersistencePlatforms[process.platform]?.(options); + + if (persistence === undefined) { + throw new Error("no persistence providers are available on this platform"); + } + + return persistence; +} + +export async function createPersistenceCachePlugin( + options?: MsalPersistenceOptions +): Promise { + const persistence = await createPersistence(options ?? {}); + + return new PersistenceCachePlugin(persistence, { + retryNumber: 100, + retryDelay: 50 + }); +} diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts new file mode 100644 index 000000000000..9f87a562cc18 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/test/internal/node/clientCertificateCredential.spec.ts @@ -0,0 +1,126 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ + +import Sinon from "sinon"; +import assert from "assert"; +import * as path from "path"; + +import { env, isPlaybackMode } from "@azure/test-utils-recorder"; +import { ConfidentialClientApplication } from "@azure/msal-node"; + +import { + ClientCertificateCredential, + TokenCachePersistenceOptions +} from "../../../../identity/src"; +import { MsalTestCleanup, msalNodeTestSetup } from "../../../../identity/test/msalTestUtils"; +import { MsalNode } from "../../../../identity/src/msal/nodeFlows/nodeCommon"; + +import { createPersistence } from "./setup.spec"; + +const ASSET_PATH = "assets"; + +describe("ClientCertificateCredential (internal)", function(this: Mocha.Suite) { + let cleanup: MsalTestCleanup; + let getTokenSilentSpy: Sinon.SinonSpy; + let doGetTokenSpy: Sinon.SinonSpy; + + beforeEach(function(this: Mocha.Context) { + const setup = msalNodeTestSetup(this); + cleanup = setup.cleanup; + + getTokenSilentSpy = setup.sandbox.spy(MsalNode.prototype, "getTokenSilent"); + + // MsalClientSecret calls to this method underneath. + doGetTokenSpy = setup.sandbox.spy( + ConfidentialClientApplication.prototype, + "acquireTokenByClientCredential" + ); + }); + afterEach(async function() { + await cleanup(); + }); + + // We use AZURE_CLIENT_CERTIFICATE_PATH if it is defined, and otherwise we will use the dummy cert + const certificatePath = + process.env.AZURE_CLIENT_CERTIFICATE_PATH ?? path.join(ASSET_PATH, "cert.pem"); + const scope = "https://graph.microsoft.com/.default"; + + it("Accepts tokenCachePersistenceOptions", async function(this: Mocha.Context) { + if (isPlaybackMode()) { + // MSAL creates a client assertion based on the certificate that I haven't been able to mock. + // This assertion could be provided as parameters, but we don't have that in the public API yet, + // and I'm trying to avoid having to generate one ourselves. + this.skip(); + } + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new ClientCertificateCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + certificatePath, + { tokenCachePersistenceOptions } + ); + + await credential.getToken(scope); + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + }); + + it("Authenticates silently with tokenCachePersistenceOptions", async function(this: Mocha.Context) { + if (isPlaybackMode()) { + // MSAL creates a client assertion based on the certificate that I haven't been able to mock. + // This assertion could be provided as parameters, but we don't have that in the public API yet, + // and I'm trying to avoid having to generate one ourselves. + this.skip(); + } + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + await persistence?.save("{}"); + + const credential = new ClientCertificateCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + certificatePath, + { tokenCachePersistenceOptions } + ); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 1); + assert.equal(doGetTokenSpy.callCount, 1); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 2); + // Even though we're providing a file persistence cache, + // The Client Credential flow does not return the account information from the authentication service, + // so each time getToken gets called, we will have to acquire a new token through the service. + // MSAL also doesn't store the account in the cache (getAllAccounts returns an empty array). + assert.equal(doGetTokenSpy.callCount, 2); + }); +}); diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts new file mode 100644 index 000000000000..cfb960f966f0 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/test/internal/node/clientSecretCredential.spec.ts @@ -0,0 +1,105 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ + +import Sinon from "sinon"; +import assert from "assert"; + +import { env } from "@azure/test-utils-recorder"; +import { ConfidentialClientApplication } from "@azure/msal-node"; + +import { ClientSecretCredential, TokenCachePersistenceOptions } from "../../../../identity/src"; +import { MsalTestCleanup, msalNodeTestSetup } from "../../../../identity/test/msalTestUtils"; +import { MsalNode } from "../../../../identity/src/msal/nodeFlows/nodeCommon"; + +import { createPersistence } from "./setup.spec"; + +const scope = "https://graph.microsoft.com/.default"; + +describe("ClientSecretCredential (internal)", function(this: Mocha.Suite) { + let cleanup: MsalTestCleanup; + let getTokenSilentSpy: Sinon.SinonSpy; + let doGetTokenSpy: Sinon.SinonSpy; + + beforeEach(function(this: Mocha.Context) { + const setup = msalNodeTestSetup(this); + cleanup = setup.cleanup; + + getTokenSilentSpy = setup.sandbox.spy(MsalNode.prototype, "getTokenSilent"); + + // MsalClientSecret calls to this method underneath. + doGetTokenSpy = setup.sandbox.spy( + ConfidentialClientApplication.prototype, + "acquireTokenByClientCredential" + ); + }); + afterEach(async function() { + await cleanup(); + }); + + it("Accepts tokenCachePersistenceOptions", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new ClientSecretCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + env.AZURE_CLIENT_SECRET, + { tokenCachePersistenceOptions } + ); + + await credential.getToken(scope); + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + }); + + it("Authenticates silently with tokenCachePersistenceOptions", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new ClientSecretCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + env.AZURE_CLIENT_SECRET, + { tokenCachePersistenceOptions } + ); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 1); + assert.equal(doGetTokenSpy.callCount, 1); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 2); + + // Even though we're providing the same default in memory persistence cache that we use for DeviceCodeCredential, + // The Client Secret flow does not return the account information from the authentication service, + // so each time getToken gets called, we will have to acquire a new token through the service. + assert.equal(doGetTokenSpy.callCount, 2); + }); +}); diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts new file mode 100644 index 000000000000..dbede0e5438d --- /dev/null +++ b/sdk/identity/identity-cache-persistence/test/internal/node/deviceCodeCredential.spec.ts @@ -0,0 +1,160 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ + +import Sinon from "sinon"; +import assert from "assert"; + +import { PublicClientApplication } from "@azure/msal-node"; +import { isLiveMode } from "@azure/test-utils-recorder"; + +import { DeviceCodeCredential, TokenCachePersistenceOptions } from "../../../../identity/src"; +import { MsalTestCleanup, msalNodeTestSetup } from "../../../../identity/test/msalTestUtils"; +import { MsalNode } from "../../../../identity/src/msal/nodeFlows/nodeCommon"; + +import { createPersistence } from "./setup.spec"; + +describe("DeviceCodeCredential (internal)", function(this: Mocha.Suite) { + let cleanup: MsalTestCleanup; + let getTokenSilentSpy: Sinon.SinonSpy; + let doGetTokenSpy: Sinon.SinonSpy; + + beforeEach(function(this: Mocha.Context) { + const setup = msalNodeTestSetup(this); + cleanup = setup.cleanup; + + getTokenSilentSpy = setup.sandbox.spy(MsalNode.prototype, "getTokenSilent"); + + // MsalClientSecret calls to this method underneath. + doGetTokenSpy = setup.sandbox.spy( + PublicClientApplication.prototype, + "acquireTokenByDeviceCode" + ); + }); + afterEach(async function() { + await cleanup(); + }); + + const scope = "https://graph.microsoft.com/.default"; + + it("Accepts tokenCachePersistenceOptions", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + // These tests should not run live because this credential requires user interaction. + if (isLiveMode()) { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new DeviceCodeCredential({ + tokenCachePersistenceOptions + }); + + await credential.getToken(scope); + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + }); + + it("Authenticates silently with tokenCachePersistenceOptions", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + // These tests should not run live because this credential requires user interaction. + if (isLiveMode()) { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new DeviceCodeCredential({ + tokenCachePersistenceOptions + }); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 1); + assert.equal(doGetTokenSpy.callCount, 1); + + // The cache should have a token a this point + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 2); + assert.equal(doGetTokenSpy.callCount, 1); + }); + + it("allows passing an authenticationRecord to avoid further manual authentications", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + // These tests should not run live because this credential requires user interaction. + if (isLiveMode()) { + this.skip(); + } + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new DeviceCodeCredential({ + // To be able to re-use the account, the Token Cache must also have been provided. + // TODO: Perhaps make the account parameter part of the tokenCachePersistenceOptions? + tokenCachePersistenceOptions + }); + + const account = await credential.authenticate(scope); + assert.ok(account); + assert.equal(getTokenSilentSpy.callCount, 1); + assert.equal(doGetTokenSpy.callCount, 1); + + const credential2 = new DeviceCodeCredential({ + authenticationRecord: account, + // To be able to re-use the account, the Token Cache must also have been provided. + // TODO: Perhaps make the account parameter part of the tokenCachePersistenceOptions? + tokenCachePersistenceOptions + }); + + // The cache should have a token a this point + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + + const token = await credential2.getToken(scope); + assert.ok(token?.token); + assert.ok(token?.expiresOnTimestamp! > Date.now()); + assert.equal(getTokenSilentSpy.callCount, 2); + + // TODO: Why is this the case? + // I created an issue to track this: https://github.com/Azure/azure-sdk-for-js/issues/14701 + assert.equal(doGetTokenSpy.callCount, 2); + }); +}); diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/setup.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/setup.spec.ts new file mode 100644 index 000000000000..175e5f813cb7 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/test/internal/node/setup.spec.ts @@ -0,0 +1,33 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable @typescript-eslint/no-require-imports */ + +// We need to set up the extension for the tests! + +import { useIdentityExtension } from "../../../../identity/src"; + +// The persistence tests have to run on the same version of Node that's used to +// install dependencies, currently 14. +// TODO: We need a better solution for this, but this will do for now. +if (!process.versions.node.startsWith("14")) { + console.warn( + "WARNING: skipping persistence tests on incompatible node version:", + process.version + ); + console.warn("Persistence tests are only compatible with Node 14."); + process.exit(0); +} + +// This shim is required to defer loading of msal-node-extensions in environments where +// it will crash CI with an invalid Node API version. +export const createPersistence: typeof import("../../../src/provider").createPersistence = ( + ...args +) => { + const { createPersistence: create } = require("../../../src/provider"); + return create(...args); +}; + +before(function() { + useIdentityExtension(require("../../../src").cachePersistenceExtension); +}); diff --git a/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts b/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts new file mode 100644 index 000000000000..bf13301d4f89 --- /dev/null +++ b/sdk/identity/identity-cache-persistence/test/internal/node/usernamePasswordCredential.spec.ts @@ -0,0 +1,109 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ + +import Sinon from "sinon"; +import assert from "assert"; + +import { env } from "@azure/test-utils-recorder"; +import { PublicClientApplication } from "@azure/msal-node"; + +import { UsernamePasswordCredential, TokenCachePersistenceOptions } from "../../../../identity/src"; +import { MsalTestCleanup, msalNodeTestSetup } from "../../../../identity/test/msalTestUtils"; +import { MsalNode } from "../../../../identity/src/msal/nodeFlows/nodeCommon"; + +import { createPersistence } from "./setup.spec"; + +describe("UsernamePasswordCredential (internal)", function(this: Mocha.Suite) { + let cleanup: MsalTestCleanup; + let getTokenSilentSpy: Sinon.SinonSpy; + let doGetTokenSpy: Sinon.SinonSpy; + + beforeEach(function(this: Mocha.Context) { + const setup = msalNodeTestSetup(this); + cleanup = setup.cleanup; + + getTokenSilentSpy = setup.sandbox.spy(MsalNode.prototype, "getTokenSilent"); + + // MsalClientSecret calls to this method underneath. + doGetTokenSpy = setup.sandbox.spy( + PublicClientApplication.prototype, + "acquireTokenByUsernamePassword" + ); + }); + + afterEach(async function() { + await cleanup(); + }); + + const scope = "https://graph.microsoft.com/.default"; + + it("Accepts tokenCachePersistenceOptions", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new UsernamePasswordCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + env.AZURE_USERNAME, + env.AZURE_PASSWORD, + { tokenCachePersistenceOptions } + ); + + await credential.getToken(scope); + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + }); + + it("Authenticates silently with tokenCachePersistenceOptions", async function(this: Mocha.Context) { + // OSX asks for passwords on CI, so we need to skip these tests from our automation + if (process.platform === "darwin") { + this.skip(); + } + + const tokenCachePersistenceOptions: TokenCachePersistenceOptions = { + enabled: true, + name: this.test?.title.replace(/[^a-zA-Z]/g, "_"), + allowUnencryptedStorage: true + }; + + // Emptying the token cache before we start. + const persistence = await createPersistence(tokenCachePersistenceOptions); + persistence?.save("{}"); + + const credential = new UsernamePasswordCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + env.AZURE_USERNAME, + env.AZURE_PASSWORD, + { tokenCachePersistenceOptions } + ); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 1); + assert.equal(doGetTokenSpy.callCount, 1); + + // The cache should have a token a this point + const result = await persistence?.load(); + const parsedResult = JSON.parse(result!); + assert.ok(parsedResult.AccessToken); + + await credential.getToken(scope); + assert.equal(getTokenSilentSpy.callCount, 2); + assert.equal(doGetTokenSpy.callCount, 1); + }); +}); diff --git a/sdk/identity/identity-cache-persistence/tsconfig.json b/sdk/identity/identity-cache-persistence/tsconfig.json new file mode 100644 index 000000000000..fa5828a32c3a --- /dev/null +++ b/sdk/identity/identity-cache-persistence/tsconfig.json @@ -0,0 +1,14 @@ +{ + "extends": "../../../tsconfig.package", + "compilerOptions": { + "target": "es6", + "lib": ["DOM"], + "declarationDir": "./types", + "outDir": "./dist-esm", + "resolveJsonModule": true, + "paths": { + "@azure/identity-cache-persistence": ["./src/index"] + } + }, + "include": ["src/**/*", "test/**/*", "samples-dev/**/*"] +} diff --git a/sdk/identity/identity-cache-persistence/tsdoc.json b/sdk/identity/identity-cache-persistence/tsdoc.json new file mode 100644 index 000000000000..81c5a8a2aa2f --- /dev/null +++ b/sdk/identity/identity-cache-persistence/tsdoc.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json", + "extends": ["../../../tsdoc.json"] +} diff --git a/sdk/identity/identity-vscode/.eslintrc.json b/sdk/identity/identity-vscode/.eslintrc.json new file mode 100644 index 000000000000..1c1503b9333a --- /dev/null +++ b/sdk/identity/identity-vscode/.eslintrc.json @@ -0,0 +1,8 @@ +{ + "plugins": ["@azure/azure-sdk"], + "extends": ["plugin:@azure/azure-sdk/azure-sdk-base"], + "rules": { + "@azure/azure-sdk/ts-package-json-module": "off", + "@azure/azure-sdk/ts-package-json-engine-is-present": "off" + } +} diff --git a/sdk/identity/identity-vscode/CHANGELOG.md b/sdk/identity/identity-vscode/CHANGELOG.md new file mode 100644 index 000000000000..b4a00d2e3023 --- /dev/null +++ b/sdk/identity/identity-vscode/CHANGELOG.md @@ -0,0 +1,7 @@ +# Release History + +## 1.0.0-beta.1 (Unreleased) + +### New features + +- This release marks the initial beta availability of the `@azure/identity-vscode` package. This package extends `@azure/identity` by providing the dependencies of `VisualStudioCodeCredential` and enabling it within the `@azure/identity` package. `VisualStudioCodeCredential` uses the authenticated session from the "Azure Account" extension in Visual Studio Code. If this extension package is not loaded using `useIdentityExtension`, then `VisualStudioCodeCredential` from `@azure/identity` will throw a `CredentialUnavailableError`. By enabling `VisualStudioCodeCredential`, the `DefaultAzureCredential` class in `@azure/identity` also gains functionality allowing it to use the "Azure Account" session if it is available. diff --git a/sdk/identity/identity-vscode/LICENSE b/sdk/identity/identity-vscode/LICENSE new file mode 100644 index 000000000000..ea8fb1516028 --- /dev/null +++ b/sdk/identity/identity-vscode/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2020 Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/sdk/identity/identity-vscode/README.md b/sdk/identity/identity-vscode/README.md new file mode 100644 index 000000000000..b4da40df904f --- /dev/null +++ b/sdk/identity/identity-vscode/README.md @@ -0,0 +1,125 @@ +## Azure Identity Extension for Visual Studio Code Authentication + +This package provides an extension to the Azure Identity library for JavaScript ([`@azure/identity`](https://npmjs.com/package/@azure/identity)) that enables authentication through the "Azure Account" extension for Visual Studio Code. This extension provides the dependencies of the `VisualStudioCodeCredential` in `@azure/identity` and enables it for use on its own or as part of `DefaultAzureCredential`. + +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-vscode) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity-vscode/samples-dev) + +## Getting started + +### Install the package + +This package is designed to be used with Azure Identity for JavaScript. Install both `@azure/identity` and this package using `npm`: + +```sh +$ npm install --save @azure/identity +$ npm install --save @azure/identity-vscode +``` + +### Prerequisites + +- An [Azure subscription](https://azure.microsoft.com/free/). +- Install [Visual Studio Code](https://aka.ms/vscode) and the ["Azure Account" extension][azaccountext] + +#### Supported Environments + +Azure Identity extensions for JavaScript support stable (even numbered) versions of Node.js starting from v12. While it may run in other Node versions, no support is guaranteed. `@azure/identity-vscode` **does not** support browser environments. + +## Key concepts + +If this is your first time using `@azure/identity` or the Microsoft identity platform (Azure Active Directory), we recommend that you read [Using `@azure/identity` with Microsoft Identity Platform](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/using-azure-identity.md) first. This document will give you a deeper understanding of the platform and how to configure your Azure account correctly. + +### Azure Identity Extensions + +As of `@azure/identity` version 2.0.0, the Identity client library for JavaScript includes an extension API. This package (`@azure/identity-vscode`) exports an extension object that you must pass as an argument to the top-level `useIdentityExtension` function from the `@azure/identity` package. Enable authentication through the "Azure Account" extension for Visual Studio Code as follows: + +```typescript +import { useIdentityExtension } from "@azure/identity"; +import { vsCodeExtension } from "@azure/identity-vscode"; + +useIdentityExtension(vsCodeExtension); +``` + +After calling `useIdentityExtension`, the `VisualStudioCodeCredential` from the `@azure/identity` package will be enabled. If this extension is not used, then `VisualStudioCodeCredential` will throw a `CredentialUnavailableError`, and it will not be available as part of `DefaultAzureCredential`. + +### Visual Studio Code Authentication + +`VisualStudioCodeCredential` uses the authentication session from the ["Azure Accounts" extension][azaccountext]. To use this credential, you must sign in to your Azure account using the extension. To do so, open Visual Studio Code, ensure that the extension is installed, and sign in using the menu (Ctrl+Shift+P), and select the "Azure: Sign In" option to open a browser window and sign in to Azure. Alternatively, you can select "Azure: Sign In with Device Code" to use the device code flow. + +After signing in, you may need to select a subscription (for example, if you have multiple Azure subscriptions), and you can change the active subscription by using the menu to select the "Azure: Select Subscriptions" entry. + +## Examples + +Once the extension is registered, you can use `VisualStudioCodeCredential` in a similar fashion to the other credential classes in `@azure/identity`: + +```typescript +import { useIdentityExtension, VisualStudioCodeCredential } from "@azure/identity"; +import { vsCodeExtension } from "@azure/identity-vscode"; + +useIdentityExtension(vsCodeExtension); + +async function main() { + const credential = new VisualStudioCodeCredential(); + + // The graph.microsoft.com scope is used as an example + const scope = "https://graph.microsoft.com/.default"; + + // Print out part of the access token + console.log((await credential.getToken(scope)).token.substr(0, 10), "..."); +} + +main().catch((error) => { + console.error("An error occurred:", error); + process.exit(1); +}); +``` + +You can also use `DefaultAzureCredential`, which will attempt to authenticate using the "Azure Account" extension for Visual Studio Code if it is available: + +```typescript +import { useIdentityExtension, DefaultAzureCredential } from "@azure/identity"; +import { vsCodeExtension } from "@azure/identity-vscode"; + +useIdentityExtension(vsCodeExtension); + +async function main() { + // With the extension enabled above, `DefaultAzureCredential` will use + // Visual Studio Code's "Azure Account" extension to authenticate if + // it is available. + const credential = new DefaultAzureCredential(); + + // This will print a JWT access_token and its expiration timestamp + // The graph.microsoft.com scope is used as an example + console.log("Token:", await credential.getToken("https://graph.microsoft.com/.default")); +} + +main().catch((error) => { + console.error("An error occurred:", error); + process.exit(1); +}); +``` + +## Troubleshooting + +### Logging + +Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`: + +```javascript +import { setLogLevel } from "@azure/logger"; + +setLogLevel("info"); +``` + +## Next steps + +### Provide Feedback + +If you encounter bugs or have suggestions, please [open an issue](https://github.com/Azure/azure-sdk-for-js/issues). + +## Contributing + +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. + +[azaccountext]: https://marketplace.visualstudio.com/items?itemName=ms-vscode.azure-account + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fidentity%2Fidentity%2FREADME.png) diff --git a/sdk/identity/identity-vscode/api-extractor.json b/sdk/identity/identity-vscode/api-extractor.json new file mode 100644 index 000000000000..52d0268dd182 --- /dev/null +++ b/sdk/identity/identity-vscode/api-extractor.json @@ -0,0 +1,31 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "./types/identity-vscode/src/index.d.ts", + "docModel": { + "enabled": true + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "", + "publicTrimmedFilePath": "./types/identity-vscode.d.ts" + }, + "messages": { + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, + "extractorMessageReporting": { + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } + } + } +} diff --git a/sdk/identity/identity-vscode/package.json b/sdk/identity/identity-vscode/package.json new file mode 100644 index 000000000000..05f3dd3efd27 --- /dev/null +++ b/sdk/identity/identity-vscode/package.json @@ -0,0 +1,99 @@ +{ + "name": "@azure/identity-vscode", + "version": "1.0.0-beta.1", + "sdk-type": "client", + "description": "Use the Azure Account extension for Visual Studio Code to authenticate with Azure Identity", + "main": "dist/index.js", + "module": "dist-esm/identity-vscode/src/index.js", + "types": "./types/identity-vscode.d.ts", + "scripts": { + "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", + "build:samples": "echo skipped", + "build:test": "tsc -p . && rollup -c rollup.config.js 2>&1", + "build": "npm run extract-api && tsc -p . && rollup -c 2>&1", + "check-format": "prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"*.{js,json}\" \"samples-dev/**/*.ts\"", + "clean": "rimraf dist dist-* typings *.tgz *.log", + "execute:samples": "echo skipped", + "extract-api": "tsc -p . && api-extractor run --local", + "format": "prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"*.{js,json}\" \"samples-dev/**/*.ts\"", + "integration-test:browser": "echo skipped", + "integration-test:node": "echo skipped", + "integration-test": "npm run integration-test:node && npm run integration-test:browser", + "lint:fix": "eslint package.json api-extractor.json src test --ext .ts --fix --fix-type [problem,suggestion]", + "lint": "eslint package.json api-extractor.json src test --ext .ts", + "pack": "npm pack 2>&1", + "prebuild": "npm run clean", + "test:browser": "npm run clean && npm run build:test && npm run unit-test:browser && npm run integration-test:browser", + "test:node": "npm run clean && npm run build:test && npm run unit-test:node && npm run integration-test:node", + "test": "npm run clean && npm run build:test && npm run unit-test && npm run integration-test", + "unit-test:browser": "echo skipped", + "unit-test:node": "mocha -r esm -r ts-node/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 180000 --full-trace --exclude \"test/**/browser/**/*.spec.ts\" \"test/**/*.spec.ts\"", + "unit-test": "npm run unit-test:node && npm run unit-test:browser", + "docs": "typedoc --excludePrivate --excludeNotExported --excludeExternals --stripInternal --mode file --out ./dist/docs ./src" + }, + "files": [ + "dist/", + "dist-esm/identity/src", + "dist-esm/identity-vscode/src", + "types/identity-vscode.d.ts", + "README.md", + "LICENSE" + ], + "engines": { + "node": ">=12.0.0" + }, + "repository": "github:Azure/azure-sdk-for-js", + "keywords": [ + "azure", + "cloud", + "active directory", + "authentication", + "credential", + "certificate", + "vscode", + "account" + ], + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "engine": { + "node": ">=12.0.0" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-vscode/README.md", + "sideEffects": false, + "dependencies": { + "@azure/identity": "^2.0.0-beta.4", + "keytar": "^7.6.0", + "tslib": "^2.2.0" + }, + "devDependencies": { + "@azure/eslint-plugin-azure-sdk": "^3.0.0", + "@azure/dev-tool": "^1.0.0", + "@azure/test-utils-recorder": "^1.0.0", + "@microsoft/api-extractor": "7.7.11", + "@types/jws": "^3.2.2", + "@types/mocha": "^7.0.2", + "@types/node": "^8.0.0", + "@types/qs": "^6.5.3", + "@types/sinon": "^9.0.4", + "@types/uuid": "^8.0.0", + "assert": "^1.4.1", + "cross-env": "^7.0.2", + "dotenv": "^8.2.0", + "eslint": "^7.15.0", + "inherits": "^2.0.3", + "mocha": "^7.1.1", + "mocha-junit-reporter": "^1.18.0", + "mock-fs": "^4.10.4", + "prettier": "^1.16.4", + "puppeteer": "^3.3.0", + "rimraf": "^3.0.0", + "rollup": "^1.16.3", + "sinon": "^9.0.2", + "typedoc": "0.15.2", + "typescript": "~4.2.0", + "util": "^0.12.1" + } +} diff --git a/sdk/identity/identity-vscode/recordings/node/visualstudiocodecredential/recording_successfully_gets_a_token.js b/sdk/identity/identity-vscode/recordings/node/visualstudiocodecredential/recording_successfully_gets_a_token.js new file mode 100644 index 000000000000..b750f17a15ab --- /dev/null +++ b/sdk/identity/identity-vscode/recordings/node/visualstudiocodecredential/recording_successfully_gets_a_token.js @@ -0,0 +1,38 @@ +let nock = require('nock'); + +module.exports.hash = "1c4d58b38fd9e805bcc6c90e143ce993"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/common/oauth2/v2.0/token', "grant_type=refresh_token&client_id=aebc6443-996d-45c2-90f0-388ff96faa56&refresh_token=refresh_token&scope=https%3A%2F%2Fgraph.microsoft.com%2F.default%20offline_access") + .reply(200, {"token_type":"Bearer","scope":"email openid profile https://graph.microsoft.com/Mail.ReadWrite https://graph.microsoft.com/Mail.Send https://graph.microsoft.com/Tasks.ReadWrite https://graph.microsoft.com/User.Read https://graph.microsoft.com/.default","expires_in":3599,"ext_expires_in":3599,"access_token":"access_token","refresh_token":"refresh_token"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + 'd8a6162d-b070-4f8b-bcf6-34a6faee0600', + 'x-ms-ests-server', + '2.1.11787.15 - WUS2 ProdSlices', + 'Set-Cookie', + 'fpc=fpc;; expires=Thu, 15-Jul-2021 01:45:15 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Tue, 15 Jun 2021 01:45:15 GMT', + 'Content-Length', + '3657' +]); diff --git a/sdk/identity/identity-vscode/review/identity-vscode.api.md b/sdk/identity/identity-vscode/review/identity-vscode.api.md new file mode 100644 index 000000000000..938540060eaa --- /dev/null +++ b/sdk/identity/identity-vscode/review/identity-vscode.api.md @@ -0,0 +1,15 @@ +## API Report File for "@azure/identity-vscode" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { IdentityExtension } from '@azure/identity'; + +// @public +export const vsCodeExtension: IdentityExtension; + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/identity/identity-vscode/rollup.config.js b/sdk/identity/identity-vscode/rollup.config.js new file mode 100644 index 000000000000..5d7deee44c14 --- /dev/null +++ b/sdk/identity/identity-vscode/rollup.config.js @@ -0,0 +1,3 @@ +import { makeConfig } from "@azure/dev-tool/shared-config/rollup"; + +export default makeConfig(require("./package.json")); diff --git a/sdk/identity/identity-vscode/samples-dev/extension.ts b/sdk/identity/identity-vscode/samples-dev/extension.ts new file mode 100644 index 000000000000..ef72c4698a13 --- /dev/null +++ b/sdk/identity/identity-vscode/samples-dev/extension.ts @@ -0,0 +1,39 @@ +// Copyright (c) Microsoft Corporation +// Licensed under the MIT license. + +/** + * In this sample, we use the extension API to provide an implementation of + * `VisualStudioCodeCredential` to the `@azure/identity` package, and we use it + * through the `DefaultAzureCredential` class. Without the extension, the + * credential will simply throw a `CredentialNotFoundError`, and the + * `DefaultAzureCredential` will use a different credential, if one is + * available. + * + * @summary loads the `VisualStudioCodeCredential` extension and uses it through + * `DefaultAzureCredential` + */ + +import { useIdentityExtension, DefaultAzureCredential } from "@azure/identity"; + +// The extension is the package's default export, so you may import and use it +// as any name you like, and simply pass it to `useIdentityExtension`. +import { vsCodeExtension } from "@azure/identity-vscode"; +useIdentityExtension(vsCodeExtension); + +export async function main() { + const credential = new DefaultAzureCredential(); + + // This is the scope we will use to get a token from the AAD token endpoint. + // By default, we'll use the Microsoft Graph scope as an example, but when + // you use the credential with an Azure SDK package, it will configure the + // scope for you automatically. + const scope = process.env.AAD_TEST_SCOPE ?? "https://graph.microsoft.com/.default"; + + // Print out part of the access token + console.log((await credential.getToken(scope)).token.substr(0, 10), "..."); +} + +main().catch((error) => { + console.error("The sample encountered an error:", error); + process.exit(1); +}); diff --git a/sdk/identity/identity-vscode/samples-dev/nodeEnv.ts b/sdk/identity/identity-vscode/samples-dev/nodeEnv.ts new file mode 100644 index 000000000000..1ee058503bb0 --- /dev/null +++ b/sdk/identity/identity-vscode/samples-dev/nodeEnv.ts @@ -0,0 +1,55 @@ +// Copyright (c) Microsoft Corporation +// Licensed under the MIT license. + +/** + * This sample shows an example of how to load the `@azure/identity-vscode` + * extension only in certain environments. As an example, we use the NODE_ENV + * environment variable to determine whether or not to load the extension. + * + * NOTE: The NODE_ENV environment variable is merely a convention, and you are + * responsible for setting it as appropriate, for example, by setting the + * variable at runtime: + * + * ```bash + * $ NODE_ENV="production" node dist/nodeEnv.js + * ``` + * + * @summary uses NODE_ENV to load the extension only in development environments + * @azsdk-weight -10 + */ + +import { useIdentityExtension, DefaultAzureCredential } from "@azure/identity"; + +// Get the environment according to NODE_ENV. If it is not defined, we will +// assume the environment is _not_ a production environment. This may not be +// what you want for your use case. +const isProduction = process.env.NODE_ENV === "production"; + +// We'll load the VisualStudioCodeCredential extension only in non-production +// environments. For your use case, this could be "development" only, but you +// may also have other development environments. You can customize this logic to +// suit your needs. +if (!isProduction) { + const { + vsCodeExtension + } = require("@azure/identity-vscode") as typeof import("@azure/identity-vscode"); + useIdentityExtension(vsCodeExtension); +} + +export async function main() { + const credential = new DefaultAzureCredential(); + + // This is the scope we will use to get a token from the AAD token endpoint. + // By default, we'll use the Microsoft Graph scope as an example, but when + // you use the credential with an Azure SDK package, it will configure the + // scope for you automatically. + const scope = process.env.AAD_TEST_SCOPE ?? "https://graph.microsoft.com/.default"; + + // Print out part of the access token + console.log((await credential.getToken(scope)).token.substr(0, 10), "..."); +} + +main().catch((error) => { + console.error("The sample encountered an error:", error); + process.exit(1); +}); diff --git a/sdk/identity/identity-vscode/src/index.ts b/sdk/identity/identity-vscode/src/index.ts new file mode 100644 index 000000000000..6131f33b0524 --- /dev/null +++ b/sdk/identity/identity-vscode/src/index.ts @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { IdentityExtension } from "@azure/identity"; + +import { AzureExtensionContext } from "../../identity/src/extensions/provider"; + +import keytar from "keytar"; + +const VSCodeServiceName = "VS Code Azure"; + +/** + * An extension that provides the dependencies of `VisualStudioCodeCredential` + * and enables it within `@azure/identity`. The extension API is compatible with + * `@azure/identity` versions 2.0.0 and later. Load this extension using the + * `useIdentityExtension` function, imported from `@azure/identity`. + * + * `VisualStudioCodeCredential` uses the authentication session from the "Azure + * Account" extension in VS Code. + * + * To use this functionality, import `VisualStudioCodeCredential` or + * `DefaultAzureCredential` from `@azure/identity`. If this extension is not + * enabled, then `VisualStudioCodeCredential` will throw a + * `CredentialUnavailableError`, and `DefaultAzureCredential` will not be able + * to use authentication through Visual Studio Code. + * + * Example: + * + * ```typescript + * import { useIdentityExtension, VisualStudioCodeCredential } from "@azure/identity"; + * import { vsCodeExtension } from "@azure/identity-vscode"; + * + * // Load the extension + * useIdentityExtension(vsCodeExtension); + * + * // Now that the extension is loaded, this credential may be used + * const credential = new VisualStudioCodeCredential(); + * ``` + */ +export const vsCodeExtension: IdentityExtension = (context) => { + const { vsCodeCredentialControl } = context as AzureExtensionContext; + + vsCodeCredentialControl.setVsCodeCredentialFinder(() => + keytar.findCredentials(VSCodeServiceName) + ); +}; diff --git a/sdk/identity/identity-vscode/test/public/node/setup.spec.ts b/sdk/identity/identity-vscode/test/public/node/setup.spec.ts new file mode 100644 index 000000000000..b45a9f5b4f07 --- /dev/null +++ b/sdk/identity/identity-vscode/test/public/node/setup.spec.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { vsCodeExtension as extension } from "../../../src"; + +import { useIdentityExtension } from "@azure/identity"; + +before(function() { + useIdentityExtension(extension); +}); diff --git a/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts b/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts new file mode 100644 index 000000000000..5be8e7a00e2b --- /dev/null +++ b/sdk/identity/identity-vscode/test/public/node/visualStudioCodeCredential.spec.ts @@ -0,0 +1,53 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */ +/* eslint-disable @typescript-eslint/no-require-imports */ + +import assert from "assert"; +import sinon from "sinon"; + +import { MsalTestCleanup, msalNodeTestSetup } from "../../../../identity/test/msalTestUtils"; +import { VisualStudioCodeCredential } from "@azure/identity"; +import { isRecordMode } from "@azure/test-utils-recorder"; + +const mockedResponse = [ + { + account: "AzureCloud", + password: "refresh_token" + } +]; + +describe("VisualStudioCodeCredential", function(this: Mocha.Suite) { + let cleanup: MsalTestCleanup; + + beforeEach(function(this: Mocha.Context) { + const setup = msalNodeTestSetup(this); + cleanup = setup.cleanup; + }); + + afterEach(async function() { + await cleanup(); + }); + + const scope = "https://graph.microsoft.com/.default"; + + it("successfully gets a token", async () => { + if (!isRecordMode()) { + // In live CI or playback CI, we need to avoid actually using keytar + // to try to read the Azure Account state, since it won't be available + const mock = sinon.mock(require("keytar")); + mock + .expects("findCredentials") + .onFirstCall() + .returns(mockedResponse); + } + + const cred = new VisualStudioCodeCredential(); + + const token = await cred.getToken(scope); + + assert.ok(token.expiresOnTimestamp); + assert.ok(token.token); + }); +}); diff --git a/sdk/identity/identity-vscode/tsconfig.json b/sdk/identity/identity-vscode/tsconfig.json new file mode 100644 index 000000000000..23d8f29b3565 --- /dev/null +++ b/sdk/identity/identity-vscode/tsconfig.json @@ -0,0 +1,14 @@ +{ + "extends": "../../../tsconfig.package", + "compilerOptions": { + "target": "es6", + "lib": ["DOM"], + "declarationDir": "./types", + "outDir": "./dist-esm", + "resolveJsonModule": true, + "paths": { + "@azure/identity-vscode": ["./src/index"] + } + }, + "include": ["src/**/*", "test/**/*", "samples-dev/**/*"] +} diff --git a/sdk/identity/identity-vscode/tsdoc.json b/sdk/identity/identity-vscode/tsdoc.json new file mode 100644 index 000000000000..81c5a8a2aa2f --- /dev/null +++ b/sdk/identity/identity-vscode/tsdoc.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json", + "extends": ["../../../tsdoc.json"] +} diff --git a/sdk/identity/identity/CHANGELOG.md b/sdk/identity/identity/CHANGELOG.md index 3fd454807739..4b50feac4357 100644 --- a/sdk/identity/identity/CHANGELOG.md +++ b/sdk/identity/identity/CHANGELOG.md @@ -2,12 +2,20 @@ ## 2.0.0-beta.4 (Unreleased) +### New features + +- Introduced an extension API through a top-level method `useIdentityExtension`. The function accepts an "extension" as an argument, which is a function accepting a `context`. The extension context is an internal part of the Azure Identity API, so it has an `unknown` type. Two new packages are designed to be used with this API: + - `@azure/identity-vscode`, which provides the dependencies of `VisualStudioCodeCredential` and enables it (see more below). + - `@azure/identity-cache-persistence`, which provides persistent token caching (same as was available in version 2.0.0-beta.2, but now provided through a secondary extension package). +- Reintroduced a stub implementation of `VisualStudioCodeCredential`. If the `@azure/identity-vscode` extension is not used, then it will throw a `CredentialUnavailableError` (similar to how it previously behaved if the `keytar` package was not installed). The extension now provides the underlying implementation of `VisualStudioCodeCredential` through dependency injection. +- Reintroduced the `TokenCachePersistenceOptions` property on most credential constructor options. This property must be present with an `enabled` property set to true to enable persistent token caching for a credential instance. Credentials that do not support persistent token caching do not have this property. + ## Bug fixes - Fixed an issue in which `InteractiveBrowserCredential` on Node would sometimes cause the process to hang if there was no browser available. -- Fixed an issue in which the `AZURE_AUTHORITY_HOST` environment variable was not properly picked up in NodeJS. +- Fixed an issue in which the `AZURE_AUTHORITY_HOST` environment variable was not properly picked up in NodeJS. -### Breaking changes +### Breaking changes - Removed the protected method `getAzureCliAccessToken` from the public API of the `AzureCliCredential`. While it will continue to be available as part of v1, we won't be supporting this method as part of v2's public API. @@ -52,7 +60,7 @@ ### Tracing Changes -- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. +- Updated @azure/core-tracing to version `1.0.0-preview.11`. See [@azure/core-tracing CHANGELOG](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/CHANGELOG.md) for details about breaking changes with tracing. ## 2.0.0-beta.1 (2021-03-24) @@ -61,7 +69,7 @@ This update marks the preview for the first major version update of the `@azure/ ### Breaking changes - Changes to `InteractiveBrowserCredential` - - When used in browser applications, the `InteractiveBrowserCredential` has been updated to use the [Auth Code Flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) with [PKCE](https://tools.ietf.org/html/rfc7636) rather than [Implicit Grant Flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-implicit-grant-flow) by default to better support browsers with enhanced security restrictions. Please note that this credential always used the Auth Code Flow when used in Node.js applications. Read more on this in our [docs on Interactive Browser Credential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/interactive-browser-credential.md). + - When used in browser applications, the `InteractiveBrowserCredential` has been updated to use the [Auth Code Flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) with [PKCE](https://tools.ietf.org/html/rfc7636) rather than [Implicit Grant Flow](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-implicit-grant-flow) by default to better support browsers with enhanced security restrictions. Please note that this credential always used the Auth Code Flow when used in Node.js applications. Read more on this in our [docs on Interactive Browser Credential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/interactive-browser-credential.md). - The default client ID used for `InteractiveBrowserCredential` was viable only in Node.js and not for the browser. Therefore, client Id is now a required parameter when constructing this credential in browser applications. - The `loginStyle` and `flow` options to the constructor for `InteractiveBrowserCredential` will now show up only when used in browser applications as these were never applicable to Node.js - Removed the `postLogoutRedirectUri` from the options to the constructor for `InteractiveBrowserCredential`. This option was not being used since we don't have a way for users to log out yet. @@ -104,7 +112,7 @@ This release doesn't have the changes from `1.2.4-beta.1`. ## 1.2.4-beta.1 (2021-02-12) -- Breaking Change: Updated `InteractiveBrowserCredential` to use the Auth Code Flow with PKCE rather than Implicit Grant Flow by default in the browser, to better support browsers with enhanced security restrictions. A new file was added to provide more information about this credential [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/interactive-browser-credential.md). +- Breaking Change: Updated `InteractiveBrowserCredential` to use the Auth Code Flow with PKCE rather than Implicit Grant Flow by default in the browser, to better support browsers with enhanced security restrictions. A new file was added to provide more information about this credential [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/interactive-browser-credential.md). ## 1.2.3 (2021-02-09) diff --git a/sdk/identity/identity/README.md b/sdk/identity/identity/README.md index bf75a7697e02..119a11ee5df4 100644 --- a/sdk/identity/identity/README.md +++ b/sdk/identity/identity/README.md @@ -2,9 +2,11 @@ The Azure Identity library provides Azure Active Directory token authentication support across the Azure SDK. It provides a set of [TokenCredential](https://docs.microsoft.com/javascript/api/@azure/core-auth/tokencredential) implementations which can be used to construct Azure SDK clients which support AAD token authentication. -You can find examples for these various credentials in the [Azure Identity Examples Page](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md) +You can find examples for these various credentials in the [Azure Identity Examples Page](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md) -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity) | [Package (npm)](https://www.npmjs.com/package/@azure/identity) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/identity) | [Product documentation](https://azure.microsoft.com/services/active-directory/) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples) +> **Note**: As of `@azure/identity` >=2.0.0, `VisualStudioCodeCredential` now requires a secondary extension package to use. Please see the [`@azure/identity-vscode` package](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-vscode) as well as [the "Extensions" section](#extensions) below for more information. + +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity) | [Package (npm)](https://www.npmjs.com/package/@azure/identity) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/identity) | [Product documentation](https://azure.microsoft.com/services/active-directory/) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples) ## Getting started @@ -51,7 +53,7 @@ To authenticate with [Azure PowerShell][azure_powershell] users can run the `Con ![Azure PowerShell Account Sign In][azurepowershelllogin_image] -If interactive authnetication cannot be supported in the session, then the `-UseDeviceAuthentication` argument will force the cmdlet to use a device code authentication flow instead, similar to the corresponding option in the Azure CLI credential. +If interactive authentication cannot be supported in the session, then the `-UseDeviceAuthentication` argument will force the cmdlet to use a device code authentication flow instead, similar to the corresponding option in the Azure CLI credential. ### Authenticate the client in browsers @@ -59,13 +61,13 @@ To authenticate Azure SDKs within web browsers, we currently offer the `Interact ## Key concepts -If this is your first time using `@azure/identity` or the Microsoft identity platform (Azure Active Directory), we recommend that you read [Using `@azure/identity` with Microsoft Identity Platform](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/using-azure-identity.md) first. This document will give you a deeper understanding of the platform and how to configure your Azure account correctly. +If this is your first time using `@azure/identity` or the Microsoft identity platform (Azure Active Directory), we recommend that you read [Using `@azure/identity` with Microsoft Identity Platform](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/using-azure-identity.md) first. This document will give you a deeper understanding of the platform and how to configure your Azure account correctly. ### Credentials A credential is a class which contains or can obtain the data needed for a service client to authenticate requests. Service clients across Azure SDK accept credentials when they are constructed, and service clients use those credentials to authenticate requests to the service. -The Azure Identity library focuses on OAuth authentication with Azure Active directory, and it offers a variety of credential classes capable of acquiring an AAD token to authenticate service requests. All of the credential classes in this library are implementations of the [TokenCredential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-auth/src/tokenCredential.ts) abstract class, and any of them can be used by to construct service clients capable of authenticating with a TokenCredential. +The Azure Identity library focuses on OAuth authentication with Azure Active directory, and it offers a variety of credential classes capable of acquiring an AAD token to authenticate service requests. All of the credential classes in this library are implementations of the [TokenCredential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-auth/src/tokenCredential.ts) abstract class, and any of them can be used by to construct service clients capable of authenticating with a TokenCredential. See [Credential Classes](#credential-classes). @@ -84,6 +86,13 @@ If used from NodeJS, the `DefaultAzureCredential` will attempt to authenticate v - Azure CLI - If the developer has authenticated an account via the Azure CLI `az login` command, the `DefaultAzureCredential` will authenticate with that account. - Azure PowerShell - If the developer has authenticated using the Azure PowerShell module `Connect-AzAccount` command, the `DefaultAzureCredential` will authenticate with that account. +## Extensions + +Azure Identity for JavaScript provides an extension API that allows us to provide certain functionality through separate _extension packages_. The `@azure/identity` package exports a top-level function (`useIdentityExtension`) that can be used to enable an extension, and we provide two extension packages: + +- [`@azure/identity-cache-persistence`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-cache-persistence), which provides persistent token caching in Node.js using a native secure storage system provided by your operating system. This extension allows cached `access_token` values to persist across sessions, meaning that an interactive login flow does not need to be repeated as long as a cached token is available. +- [`@azure/identity-vscode`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity-vscode), which provides the dependencies of `VisualStudioCodeCredential` and enables it. Without this extension, the `VisualStudioCodeCredential` in this package will throw a `CredentialUnavailableError`. The extension provides the underlying implementation of this credential, enabling it for use both on its own and as part of the `DefaultAzureCredential` described above. + ## Environment Variables `DefaultAzureCredential` and `EnvironmentCredential` can be configured with environment variables. Each type of authentication requires values for specific variables: @@ -116,7 +125,7 @@ Configuration is attempted in the above order. For example, if values for a clie ## Examples -You can find more examples of using various credentials in [Azure Identity Examples Page](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md) +You can find more examples of using various credentials in [Azure Identity Examples Page](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md) ### Authenticating with the `DefaultAzureCredential` @@ -141,7 +150,7 @@ const client = new KeyClient(vaultUrl, credential); ### Specifying a user assigned managed identity with the `DefaultAzureCredential` -A relatively common scenario involves authenticating using a user assigned managed identity for an Azure resource. Explore the [example on Authenticating a user assigned managed identity with DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-assigned-managed-identity-with-defaultazurecredential) to see how this is made a relatively straightforward task that can be configured using environment variables or in code. +A relatively common scenario involves authenticating using a user assigned managed identity for an Azure resource. Explore the [example on Authenticating a user assigned managed identity with DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-assigned-managed-identity-with-defaultazurecredential) to see how this is made a relatively straightforward task that can be configured using environment variables or in code. ### Define a custom authentication flow with the `ChainedTokenCredential` @@ -172,7 +181,7 @@ The [Managed identity authentication](https://docs.microsoft.com/azure/active-di - [Azure Arc](https://docs.microsoft.com/azure/azure-arc/servers/managed-identity-authentication) - [Azure Service Fabric](https://docs.microsoft.com/azure/service-fabric/concepts-managed-identity) -For examples of how to use managed identity for authentication please refer to [the examples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-in-azure-with-managed-identity) +For examples of how to use managed identity for authentication please refer to [the examples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-in-azure-with-managed-identity) ## Credential Classes @@ -180,33 +189,33 @@ For examples of how to use managed identity for authentication please refer to [ | credential | usage | example | | --------------------------- | ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DefaultAzureCredential` | Provides a simplified authentication experience to quickly start developing applications run in the Azure cloud. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-defaultazurecredential) | -| `ChainedTokenCredential` | Allows users to define custom authentication flows composing multiple credentials. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#chaining-credentials) | -| `EnvironmentCredential` | Authenticates a service principal or user via credential information specified in environment variables. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-environment-credentials) | -| `ManagedIdentityCredential` | Authenticates the managed identity of an Azure resource. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-in-azure-with-managed-identity) | +| `DefaultAzureCredential` | Provides a simplified authentication experience to quickly start developing applications run in the Azure cloud. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-defaultazurecredential) | +| `ChainedTokenCredential` | Allows users to define custom authentication flows composing multiple credentials. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#chaining-credentials) | +| `EnvironmentCredential` | Authenticates a service principal or user via credential information specified in environment variables. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-environment-credentials) | +| `ManagedIdentityCredential` | Authenticates the managed identity of an Azure resource. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-in-azure-with-managed-identity) | ### Authenticating Service Principals | credential | usage | example | reference | | ----------------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------- | -| `ClientSecretCredential` | Authenticates a service principal using a secret. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-a-client-secret) | [Service principal authentication](https://docs.microsoft.com/azure/active-directory/develop/app-objects-and-service-principals) | -| `ClientCertificateCredential` | Authenticates a service principal using a certificate. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-a-client-certificate) | [Service principal authentication](https://docs.microsoft.com/azure/active-directory/develop/app-objects-and-service-principals) | +| `ClientSecretCredential` | Authenticates a service principal using a secret. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-a-client-secret) | [Service principal authentication](https://docs.microsoft.com/azure/active-directory/develop/app-objects-and-service-principals) | +| `ClientCertificateCredential` | Authenticates a service principal using a certificate. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-service-principal-with-a-client-certificate) | [Service principal authentication](https://docs.microsoft.com/azure/active-directory/develop/app-objects-and-service-principals) | ### Authenticating Users | credential | usage | example | reference | | ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `InteractiveBrowserCredential` | Interactively authenticates a user with the default system browser. Read more about how this happens [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/interactive-browser-credential.md). | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-interactively-in-the-browser) | [OAuth2 authentication code](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) | -| `DeviceCodeCredential` | Interactively authenticates a user on devices with limited UI. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-device-code-flow) | [Device code authentication](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-device-code) | -| `UsernamePasswordCredential` | Authenticates a user with a username and password. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-username-and-password) | [Username + password authentication](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth-ropc) | -| `AuthorizationCodeCredential` | Authenticate a user with a previously obtained authorization code. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-auth-code-flow) | [OAuth2 authentication code](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) | +| `InteractiveBrowserCredential` | Interactively authenticates a user with the default system browser. Read more about how this happens [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/interactive-browser-credential.md). | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-interactively-in-the-browser) | [OAuth2 authentication code](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) | +| `DeviceCodeCredential` | Interactively authenticates a user on devices with limited UI. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-device-code-flow) | [Device code authentication](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-device-code) | +| `UsernamePasswordCredential` | Authenticates a user with a username and password. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-username-and-password) | [Username + password authentication](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth-ropc) | +| `AuthorizationCodeCredential` | Authenticate a user with a previously obtained authorization code. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-auth-code-flow) | [OAuth2 authentication code](https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow) | ### Authenticating via Development Tools -| credential | usage | example | reference | -| ---------------------------- | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | -| `AzureCliCredential` | Authenticate in a development environment with the Azure CLI. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-azure-cli) | [Azure CLI authentication](https://docs.microsoft.com/cli/azure/authenticate-azure-cli) | -| `AzurePowerShellCredential` | Authenticate in a development environment using Azure PowerShell. | [example](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-azure-powershell) | [Azure PowerShell authentication](https://docs.microsoft.com/powershell/azure/authenticate-azureps) | +| credential | usage | example | reference | +| --------------------------- | ----------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | +| `AzureCliCredential` | Authenticate in a development environment with the Azure CLI. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-azure-cli) | [Azure CLI authentication](https://docs.microsoft.com/cli/azure/authenticate-azure-cli) | +| `AzurePowerShellCredential` | Authenticate in a development environment using Azure PowerShell. | [example](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-a-user-account-with-azure-powershell) | [Azure PowerShell authentication](https://docs.microsoft.com/powershell/azure/authenticate-azureps) | ## Troubleshooting @@ -236,7 +245,7 @@ If you encounter bugs or have suggestions, please [open an issue](https://github ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. [1]: https://azuresdkdocs.blob.core.windows.net/$web/javascript/azure-identity/1.0.0/classes/defaultazurecredential.html [2]: https://azuresdkdocs.blob.core.windows.net/$web/javascript/azure-identity/1.0.0/classes/managedidentitycredential.html @@ -249,9 +258,9 @@ If you'd like to contribute to this library, please read the [contributing guide [9]: https://azuresdkdocs.blob.core.windows.net/$web/javascript/azure-identity/1.0.0/classes/usernamepasswordcredential.html [azure_cli]: https://docs.microsoft.com/cli/azure [azure_powershell]: https://docs.microsoft.com/powershell/azure/ -[azureclilogin_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/master/sdk/identity/identity/images/AzureCliLogin.png -[azureclilogindevicecode_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/master/sdk/identity/identity/images/AzureCliLoginDeviceCode.png -[azurepowershelllogin_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/master/sdk/identity/identity/images/AzurePowerShellLogin.png -[defaultauthflow_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/master/sdk/identity/identity/images/DefaultAzureCredentialAuthenticationFlow.png +[azureclilogin_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/main/sdk/identity/identity/images/AzureCliLogin.png +[azureclilogindevicecode_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/main/sdk/identity/identity/images/AzureCliLoginDeviceCode.png +[azurepowershelllogin_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/main/sdk/identity/identity/images/AzurePowerShellLogin.png +[defaultauthflow_image]: https://raw.githubusercontent.com/Azure/azure-sdk-for-js/main/sdk/identity/identity/images/DefaultAzureCredentialAuthenticationFlow.png ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fidentity%2Fidentity%2FREADME.png) diff --git a/sdk/identity/identity/interactive-browser-credential.md b/sdk/identity/identity/interactive-browser-credential.md index e9d7d25b864a..77832499f20f 100644 --- a/sdk/identity/identity/interactive-browser-credential.md +++ b/sdk/identity/identity/interactive-browser-credential.md @@ -52,6 +52,6 @@ Then you need to visit your app registration and update the redirect URI you're ## Sample code -You can see a sample project that uses `InteractiveBrowserCredential` here: [link to the sample project](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity/test/manual). +You can see a sample project that uses `InteractiveBrowserCredential` here: [link to the sample project](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity/test/manual). [AuthCodeFlow]: https://docs.microsoft.com/azure/active-directory/develop/v2-oauth2-auth-code-flow diff --git a/sdk/identity/identity/package.json b/sdk/identity/identity/package.json index 901f8b5252e9..8c8982830086 100644 --- a/sdk/identity/identity/package.json +++ b/sdk/identity/identity/package.json @@ -20,7 +20,8 @@ "./dist-esm/src/credentials/usernamePasswordCredential.js": "./dist-esm/src/credentials/usernamePasswordCredential.browser.js", "./dist-esm/src/credentials/azurePowerShellCredential.js": "./dist-esm/src/credentials/azurePowerShellCredential.browser.js", "./dist-esm/src/util/authHostEnv.js": "./dist-esm/src/util/authHostEnv.browser.js", - "./dist-esm/src/tokenCache/TokenCachePersistence.js": "./dist-esm/src/tokenCache/TokenCachePersistence.browser.js" + "./dist-esm/src/tokenCache/TokenCachePersistence.js": "./dist-esm/src/tokenCache/TokenCachePersistence.browser.js", + "./dist-esm/src/extensions/consumer.js": "./dist-esm/src/extensions/consumer.browser.js" }, "scripts": { "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", @@ -75,11 +76,12 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity/README.md", "sideEffects": false, "dependencies": { + "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "@azure/abort-controller": "^1.0.0", "@azure/msal-common": "^4.3.0", diff --git a/sdk/identity/identity/review/identity.api.md b/sdk/identity/identity/review/identity.api.md index 4f2152d01d2a..10e053664152 100644 --- a/sdk/identity/identity/review/identity.api.md +++ b/sdk/identity/identity/review/identity.api.md @@ -4,11 +4,11 @@ ```ts -import { AccessToken } from '@azure/core-http'; +import { AccessToken } from '@azure/core-auth'; import { AzureLogger } from '@azure/logger'; -import { GetTokenOptions } from '@azure/core-http'; +import { GetTokenOptions } from '@azure/core-auth'; import { PipelineOptions } from '@azure/core-http'; -import { TokenCredential } from '@azure/core-http'; +import { TokenCredential } from '@azure/core-auth'; export { AccessToken } @@ -91,7 +91,7 @@ export class ClientCertificateCredential implements TokenCredential { } // @public -export interface ClientCertificateCredentialOptions extends TokenCredentialOptions { +export interface ClientCertificateCredentialOptions extends TokenCredentialOptions, CredentialPersistenceOptions { regionalAuthority?: string; sendCertificateChain?: boolean; } @@ -103,10 +103,15 @@ export class ClientSecretCredential implements TokenCredential { } // @public -export interface ClientSecretCredentialOptions extends TokenCredentialOptions { +export interface ClientSecretCredentialOptions extends TokenCredentialOptions, CredentialPersistenceOptions { regionalAuthority?: string; } +// @public +export interface CredentialPersistenceOptions { + tokenCachePersistenceOptions?: TokenCachePersistenceOptions; +} + // @public export class CredentialUnavailableError extends Error { constructor(message?: string); @@ -121,7 +126,7 @@ export class DefaultAzureCredential extends ChainedTokenCredential { } // @public -export interface DefaultAzureCredentialOptions extends TokenCredentialOptions { +export interface DefaultAzureCredentialOptions extends TokenCredentialOptions, CredentialPersistenceOptions { managedIdentityClientId?: string; tenantId?: string; } @@ -137,7 +142,7 @@ export class DeviceCodeCredential implements TokenCredential { } // @public -export interface DeviceCodeCredentialOptions extends InteractiveCredentialOptions { +export interface DeviceCodeCredentialOptions extends InteractiveCredentialOptions, CredentialPersistenceOptions { clientId?: string; tenantId?: string; userPromptCallback?: DeviceCodePromptCallback; @@ -155,10 +160,14 @@ export type DeviceCodePromptCallback = (deviceCodeInfo: DeviceCodeInfo) => void; // @public export class EnvironmentCredential implements TokenCredential { - constructor(options?: TokenCredentialOptions); + constructor(options?: EnvironmentCredentialOptions); getToken(scopes: string | string[], options?: GetTokenOptions): Promise; } +// @public +export interface EnvironmentCredentialOptions extends TokenCredentialOptions, CredentialPersistenceOptions { +} + // @public export interface ErrorResponse { correlationId?: string; @@ -174,6 +183,9 @@ export function getDefaultAzureCredential(): TokenCredential; export { GetTokenOptions } +// @public +export type IdentityExtension = (context: unknown) => void; + // @public export class InteractiveBrowserCredential implements TokenCredential { constructor(options?: InteractiveBrowserCredentialOptions | InteractiveBrowserCredentialBrowserOptions); @@ -182,19 +194,19 @@ export class InteractiveBrowserCredential implements TokenCredential { } // @public -export type InteractiveBrowserCredentialBrowserOptions = TokenCredentialOptions & InteractiveCredentialOptions & { - redirectUri?: string | (() => string); - tenantId?: string; +export interface InteractiveBrowserCredentialBrowserOptions extends InteractiveCredentialOptions { clientId: string; loginStyle?: BrowserLoginStyle; -}; + redirectUri?: string | (() => string); + tenantId?: string; +} // @public -export type InteractiveBrowserCredentialOptions = TokenCredentialOptions & InteractiveCredentialOptions & { +export interface InteractiveBrowserCredentialOptions extends InteractiveCredentialOptions, CredentialPersistenceOptions { + clientId?: string; redirectUri?: string | (() => string); tenantId?: string; - clientId?: string; -}; +} // @public export interface InteractiveCredentialOptions extends TokenCredentialOptions { @@ -272,6 +284,13 @@ export enum RegionalAuthority { // @public export function serializeAuthenticationRecord(record: AuthenticationRecord): string; +// @public +export interface TokenCachePersistenceOptions { + allowUnencryptedStorage?: boolean; + enabled: boolean; + name?: string; +} + export { TokenCredential } // @public @@ -279,6 +298,9 @@ export interface TokenCredentialOptions extends PipelineOptions { authorityHost?: string; } +// @public +export function useIdentityExtension(extension: IdentityExtension): void; + // @public export class UsernamePasswordCredential implements TokenCredential { constructor(tenantId: string, clientId: string, username: string, password: string, options?: UsernamePasswordCredentialOptions); @@ -286,7 +308,18 @@ export class UsernamePasswordCredential implements TokenCredential { } // @public -export interface UsernamePasswordCredentialOptions extends TokenCredentialOptions { +export interface UsernamePasswordCredentialOptions extends TokenCredentialOptions, CredentialPersistenceOptions { +} + +// @public +export class VisualStudioCodeCredential implements TokenCredential { + constructor(options?: VisualStudioCodeCredentialOptions); + getToken(scopes: string | string[], _options?: GetTokenOptions): Promise; + } + +// @public +export interface VisualStudioCodeCredentialOptions extends TokenCredentialOptions { + tenantId?: string; } diff --git a/sdk/identity/identity/samples/AzureIdentityExamples.md b/sdk/identity/identity/samples/AzureIdentityExamples.md index 789b1b8671f5..af07eabf52d8 100644 --- a/sdk/identity/identity/samples/AzureIdentityExamples.md +++ b/sdk/identity/identity/samples/AzureIdentityExamples.md @@ -103,7 +103,7 @@ If your application is hosted in Azure, you can make use of [Managed Identity](h #### Authenticating with `DefaultAzureCredential` -This example demonstrates authenticating the `SecretClient` from the [@azure/keyvault-secrets][secrets_client_library] client library using the `DefaultAzureCredential`. There's also [a runnable sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/typescript/src/defaultAzureCredential.ts) to create a Key Vault key client you can copy-paste. The `DefaultAzureCredential` makes for a terrific starting point as it provides sane defaults with minimal configuration and chains multiple credentials together. While you may outgrow it eventually, it is a sensible first choice for most scenarios where the application is intended to ultimately be run in the Azure Cloud. +This example demonstrates authenticating the `SecretClient` from the [@azure/keyvault-secrets][secrets_client_library] client library using the `DefaultAzureCredential`. There's also [a runnable sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/typescript/src/defaultAzureCredential.ts) to create a Key Vault key client you can copy-paste. The `DefaultAzureCredential` makes for a terrific starting point as it provides sane defaults with minimal configuration and chains multiple credentials together. While you may outgrow it eventually, it is a sensible first choice for most scenarios where the application is intended to ultimately be run in the Azure Cloud. ```ts /** @@ -155,7 +155,7 @@ function withInteractiveBrowserCredential() { #### Authenticating a service principal with a client secret -This example demonstrates authenticating the `SecretClient` from the [@azure/keyvault-secrets][secrets_client_library] client library using the `ClientSecretCredential`. There's also [a runnable sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/typescript/src/clientSecretCredential.ts) to create a Key Vault key client you can copy-paste. +This example demonstrates authenticating the `SecretClient` from the [@azure/keyvault-secrets][secrets_client_library] client library using the `ClientSecretCredential`. There's also [a runnable sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/typescript/src/clientSecretCredential.ts) to create a Key Vault key client you can copy-paste. An Azure service principal is an identity created for use with applications, hosted services, and automated tools to access Azure resources. This access is restricted by the roles assigned to the service principal, giving you control over which resources can be accessed and at which level. For security reasons, it's always recommended to use service principals with automated tools rather than allowing them to log in with a user identity. @@ -286,7 +286,7 @@ Next, prompt the user to login at the URL documented at [Microsoft identity plat Then create an API at the redirect URL with the following code to access the Key Vault service. -For a complete example using the authorization code flow in Electron please refer to [our electron sample](https://github.com/Azure/azure-sdk-for-js/blob/master/samples/frameworks/electron/ts/src/authProvider.ts) +For a complete example using the authorization code flow in Electron please refer to [our electron sample](https://github.com/Azure/azure-sdk-for-js/blob/main/samples/frameworks/electron/ts/src/authProvider.ts) ```ts /** diff --git a/sdk/identity/identity/samples/javascript/README.md b/sdk/identity/identity/samples/javascript/README.md index 4bc829b75cfe..372288c6fdd5 100644 --- a/sdk/identity/identity/samples/javascript/README.md +++ b/sdk/identity/identity/samples/javascript/README.md @@ -70,10 +70,10 @@ npx cross-env KEYVAULT_NAME="" AZURE_TENANT_ID="" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[defaultAzureCredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/javascript/defaultAzureCredential.js -[clientSecretCredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/javascript/clientSecretCredential.js -[environmentCredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/javascript/environmentCredential.js +[defaultAzureCredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/javascript/defaultAzureCredential.js +[clientSecretCredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/javascript/clientSecretCredential.js +[environmentCredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/javascript/environmentCredential.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/identity [azkeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity/README.md diff --git a/sdk/identity/identity/samples/typescript/README.md b/sdk/identity/identity/samples/typescript/README.md index eb549b9ebdd4..bb33229b0c14 100644 --- a/sdk/identity/identity/samples/typescript/README.md +++ b/sdk/identity/identity/samples/typescript/README.md @@ -82,11 +82,11 @@ npx cross-env KEYVAULT_NAME="" AZURE_TENANT_ID="" Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[defaultAzureCredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/typescript/src/defaultAzureCredential.ts -[clientSecretCredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/typescript/src/clientSecretCredential.ts -[environmentCredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/typescript/src/environmentCredential.ts +[defaultAzureCredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/typescript/src/defaultAzureCredential.ts +[clientSecretCredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/typescript/src/clientSecretCredential.ts +[environmentCredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/typescript/src/environmentCredential.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/identity [azkeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/identity/identity/src/client/identityClient.ts b/sdk/identity/identity/src/client/identityClient.ts index 063955a18d62..7b107439a1d0 100644 --- a/sdk/identity/identity/src/client/identityClient.ts +++ b/sdk/identity/identity/src/client/identityClient.ts @@ -26,7 +26,6 @@ const noCorrelationId = "noCorrelationId"; /** * An internal type used to communicate details of a token request's * response that should not be sent back as part of the access token. - * @internal */ export interface TokenResponse { /** @@ -62,7 +61,6 @@ export function getIdentityClientAuthorityHost(options?: TokenCredentialOptions) * It allows for credentials to abort any pending request independently of the MSAL flow, * by calling to the `abortRequests()` method. * - * @internal */ export class IdentityClient extends ServiceClient implements INetworkModule { public authorityHost: string; diff --git a/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts b/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts index 44e9169b30b0..364afd8b852f 100644 --- a/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/authorizationCodeCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential, AccessToken } from "@azure/core-http"; +import { TokenCredential, AccessToken } from "@azure/core-auth"; + import { TokenCredentialOptions } from "../client/identityClient"; import { credentialLogger, formatError } from "../util/logging"; diff --git a/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts b/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts index e976bfee7b30..3df20f63e9a0 100644 --- a/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts +++ b/sdk/identity/identity/src/credentials/authorizationCodeCredential.ts @@ -2,9 +2,11 @@ // Licensed under the MIT license. import qs from "qs"; + +import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; + import { createSpan } from "../util/tracing"; import { CredentialUnavailableError } from "../client/errors"; -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-http"; import { IdentityClient, TokenResponse, TokenCredentialOptions } from "../client/identityClient"; import { SpanStatusCode } from "@azure/core-tracing"; import { credentialLogger, formatSuccess, formatError } from "../util/logging"; @@ -122,10 +124,8 @@ export class AuthorizationCodeCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * @param scopes - The list of scopes for which the token will have access. * @param options - The options used to configure any requests this diff --git a/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts b/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts index fb9259da24f3..501ee08e4568 100644 --- a/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azureCliCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, TokenCredential } from "@azure/core-http"; +import { AccessToken, TokenCredential } from "@azure/core-auth"; + import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error("AzureCliCredential is not supported in the browser."); diff --git a/sdk/identity/identity/src/credentials/azureCliCredential.ts b/sdk/identity/identity/src/credentials/azureCliCredential.ts index 7fa8e9332f85..e95d7fc91cdf 100644 --- a/sdk/identity/identity/src/credentials/azureCliCredential.ts +++ b/sdk/identity/identity/src/credentials/azureCliCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-http"; +import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; + import { createSpan } from "../util/tracing"; import { CredentialUnavailableError } from "../client/errors"; import { SpanStatusCode } from "@azure/core-tracing"; @@ -65,10 +66,8 @@ const logger = credentialLogger("AzureCliCredential"); */ export class AzureCliCredential implements TokenCredential { /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * @param scopes - The list of scopes for which the token will have access. * @param options - The options used to configure any requests this diff --git a/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts b/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts index ebf66ebff972..f1ddbc2b9a9e 100644 --- a/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/azurePowerShellCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential, AccessToken } from "@azure/core-http"; +import { TokenCredential, AccessToken } from "@azure/core-auth"; + import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts b/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts index eb1783bd3746..fecddb084bc0 100644 --- a/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts +++ b/sdk/identity/identity/src/credentials/azurePowerShellCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-http"; +import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; + import { CredentialUnavailableError } from "../client/errors"; import { credentialLogger, formatSuccess, formatError } from "../util/logging"; import { trace } from "../util/tracing"; @@ -133,10 +134,8 @@ export class AzurePowerShellCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If the authentication cannot be performed through PowerShell, a {@link CredentialUnavailableError} will be thrown. * * @param scopes - The list of scopes for which the token will have access. * @param options - The options used to configure any requests this TokenCredential implementation might make. diff --git a/sdk/identity/identity/src/credentials/chainedTokenCredential.ts b/sdk/identity/identity/src/credentials/chainedTokenCredential.ts index 739f55338700..d8ca5388ed23 100644 --- a/sdk/identity/identity/src/credentials/chainedTokenCredential.ts +++ b/sdk/identity/identity/src/credentials/chainedTokenCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, TokenCredential, GetTokenOptions } from "@azure/core-http"; +import { AccessToken, TokenCredential, GetTokenOptions } from "@azure/core-auth"; + import { AggregateAuthenticationError, CredentialUnavailableError } from "../client/errors"; import { createSpan } from "../util/tracing"; import { SpanStatusCode } from "@azure/core-tracing"; diff --git a/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts b/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts index 0f772315c5e9..ff14581a9e50 100644 --- a/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/clientCertificateCredential.browser.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential, AccessToken } from "@azure/core-http"; +import { TokenCredential, AccessToken } from "@azure/core-auth"; import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/clientCertificateCredential.ts b/sdk/identity/identity/src/credentials/clientCertificateCredential.ts index 392cf5ecdf64..12e2a2ea95d5 100644 --- a/sdk/identity/identity/src/credentials/clientCertificateCredential.ts +++ b/sdk/identity/identity/src/credentials/clientCertificateCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { MsalClientCertificate } from "../msal/nodeFlows/msalClientCertificate"; import { credentialLogger } from "../util/logging"; import { trace } from "../util/tracing"; @@ -48,10 +49,8 @@ export class ClientCertificateCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * @param scopes - The list of scopes for which the token will have access. * @param options - The options used to configure any requests this diff --git a/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts b/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts index 74c149a2f6dd..42dc5a0d6910 100644 --- a/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/clientCertificateCredentialOptions.ts @@ -2,11 +2,14 @@ // Licensed under the MIT license. import { TokenCredentialOptions } from "../client/identityClient"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; /** * Optional parameters for the {@link ClientCertificateCredential} class. */ -export interface ClientCertificateCredentialOptions extends TokenCredentialOptions { +export interface ClientCertificateCredentialOptions + extends TokenCredentialOptions, + CredentialPersistenceOptions { /** * Option to include x5c header for SubjectName and Issuer name authorization. * Set this option to send base64 encoded public certificate in the client assertion header as an x5c claim diff --git a/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts b/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts index b4b2c308c7a2..ed941edad125 100644 --- a/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/clientSecretCredential.browser.ts @@ -2,7 +2,9 @@ // Licensed under the MIT license. import qs from "qs"; -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-http"; + +import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; + import { TokenCredentialOptions, IdentityClient } from "../client/identityClient"; import { createSpan } from "../util/tracing"; import { SpanStatusCode } from "@azure/core-tracing"; diff --git a/sdk/identity/identity/src/credentials/clientSecretCredential.ts b/sdk/identity/identity/src/credentials/clientSecretCredential.ts index 9286ac21ab28..bd7954146907 100644 --- a/sdk/identity/identity/src/credentials/clientSecretCredential.ts +++ b/sdk/identity/identity/src/credentials/clientSecretCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { MsalClientSecret } from "../msal/nodeFlows/msalClientSecret"; import { credentialLogger } from "../util/logging"; import { trace } from "../util/tracing"; @@ -48,10 +49,8 @@ export class ClientSecretCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * @param scopes - The list of scopes for which the token will have access. * @param options - The options used to configure any requests this diff --git a/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts b/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts index 83a4694abb4b..8cc4e68c1d50 100644 --- a/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/clientSecretCredentialOptions.ts @@ -2,11 +2,14 @@ // Licensed under the MIT license. import { TokenCredentialOptions } from "../client/identityClient"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; /** * Optional parameters for the {@link ClientSecretCredential} class. */ -export interface ClientSecretCredentialOptions extends TokenCredentialOptions { +export interface ClientSecretCredentialOptions + extends TokenCredentialOptions, + CredentialPersistenceOptions { /** * Specifies a regional authority. Please refer to the {@link RegionalAuthority} type for the accepted values. * If {@link RegionalAuthority.AutoDiscoverRegion} is specified, we will try to discover the regional authority endpoint. diff --git a/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts b/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts new file mode 100644 index 000000000000..ca5e749c0870 --- /dev/null +++ b/sdk/identity/identity/src/credentials/credentialPersistenceOptions.ts @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { TokenCachePersistenceOptions } from "../msal/nodeFlows/tokenCachePersistenceOptions"; + +/** + * Shared configuration options for credentials that support persistent token + * caching. + */ +export interface CredentialPersistenceOptions { + /** + * Options to provide to the persistence layer (if one is available) when + * storing credentials. + * + * You must first register a persistence provider as an extension. See the + * `@azure/identity-cache-persistence` package on NPM. + * + * Example: + * + * ```typescript + * import persistence from "@azure/identity-cache-persistence"; + * import { useIdentityExtension, DeviceCodeCredential } from "@azure/identity"; + * + * useIdentityExtension(persistence); + * + * async function main() { + * const credential = new DeviceCodeCredential({ + * tokenCachePersistenceOptions: { + * name: "mycustomcachename" + * } + * }); + * } + * + * main().catch((error) => { + * console.error("An error occured:", error); + * process.exit(1); + * }); + * ``` +- */ + + tokenCachePersistenceOptions?: TokenCachePersistenceOptions; +} diff --git a/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts b/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts index 0632d4399020..7a08a8cf0b9d 100644 --- a/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/defaultAzureCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken } from "@azure/core-http"; +import { AccessToken } from "@azure/core-auth"; + import { TokenCredentialOptions } from "../client/identityClient"; import { credentialLogger, formatError } from "../util/logging"; import { ChainedTokenCredential } from "./chainedTokenCredential"; diff --git a/sdk/identity/identity/src/credentials/defaultAzureCredential.ts b/sdk/identity/identity/src/credentials/defaultAzureCredential.ts index d07319be6370..1bbbda2020b5 100644 --- a/sdk/identity/identity/src/credentials/defaultAzureCredential.ts +++ b/sdk/identity/identity/src/credentials/defaultAzureCredential.ts @@ -1,17 +1,25 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. +import { TokenCredential } from "@azure/core-auth"; + import { TokenCredentialOptions } from "../client/identityClient"; + import { ChainedTokenCredential } from "./chainedTokenCredential"; -import { EnvironmentCredential } from "./environmentCredential"; -import { ManagedIdentityCredential } from "./managedIdentityCredential"; + import { AzureCliCredential } from "./azureCliCredential"; import { AzurePowerShellCredential } from "./azurePowerShellCredential"; +import { EnvironmentCredential } from "./environmentCredential"; +import { ManagedIdentityCredential } from "./managedIdentityCredential"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; +import { VisualStudioCodeCredential } from "./visualStudioCodeCredential"; /** * Provides options to configure the {@link DefaultAzureCredential} class. */ -export interface DefaultAzureCredentialOptions extends TokenCredentialOptions { +export interface DefaultAzureCredentialOptions + extends TokenCredentialOptions, + CredentialPersistenceOptions { /** * Optionally pass in a Tenant ID to be used as part of the credential. * By default it may use a generic tenant ID depending on the underlying credential. @@ -25,16 +33,59 @@ export interface DefaultAzureCredentialOptions extends TokenCredentialOptions { } /** - * Provides a default {@link ChainedTokenCredential} configuration that should work for most applications that use the Azure SDK. - * The following credential types will be tried, in order: + * The type of a class that implements TokenCredential and accepts + * `DefaultAzureCredentialOptions`. + */ +interface DefaultCredentialConstructor { + new (options?: DefaultAzureCredentialOptions): TokenCredential; +} + +/** + * A shim around ManagedIdentityCredential that adapts it to accept + * `DefaultAzureCredentialOptions`. + * + * @internal + */ +class DefaultManagedIdentityCredential extends ManagedIdentityCredential { + constructor(options?: DefaultAzureCredentialOptions) { + const managedIdentityClientId = options?.managedIdentityClientId ?? process.env.AZURE_CLIENT_ID; + if (managedIdentityClientId !== undefined) { + super(managedIdentityClientId, options); + } else { + super(options); + } + } +} + +export const defaultCredentials: DefaultCredentialConstructor[] = [ + EnvironmentCredential, + DefaultManagedIdentityCredential, + VisualStudioCodeCredential, + AzureCliCredential, + AzurePowerShellCredential +]; + +/** + * Provides a default {@link ChainedTokenCredential} configuration that should + * work for most applications that use the Azure SDK. The following credential + * types will be tried, in order: * * - {@link EnvironmentCredential} * - {@link ManagedIdentityCredential} + * - {@link VisualStudioCodeCredential} * - {@link AzureCliCredential} * - {@link AzurePowerShellCredential} * * Consult the documentation of these credential types for more information * on how they attempt authentication. + * + * **Note**: `VisualStudioCodeCredential` is provided by an extension package: + * `@azure/identity-vscode`. If this package is not installed and registered + * using the extension API (`useIdentityExtension`), then authentication using + * `VisualStudioCodeCredential` will not be available. + * + * Azure Identity extensions may add credential types to the default credential + * stack. */ export class DefaultAzureCredential extends ChainedTokenCredential { /** @@ -43,24 +94,7 @@ export class DefaultAzureCredential extends ChainedTokenCredential { * @param options - Optional parameters. See {@link DefaultAzureCredentialOptions}. */ constructor(options?: DefaultAzureCredentialOptions) { - const credentials = []; - credentials.push(new EnvironmentCredential(options)); - - // A client ID for the ManagedIdentityCredential - // can be provided either through the optional parameters or through the environment variables. - const managedIdentityClientId = options?.managedIdentityClientId || process.env.AZURE_CLIENT_ID; - - // If a client ID is not provided, we will try with the system assigned ID. - if (managedIdentityClientId) { - credentials.push(new ManagedIdentityCredential(managedIdentityClientId, options)); - } else { - credentials.push(new ManagedIdentityCredential(options)); - } - - credentials.push(new AzureCliCredential()); - credentials.push(new AzurePowerShellCredential()); - - super(...credentials); + super(...defaultCredentials.map((ctor) => new ctor(options))); this.UnavailableMessage = "DefaultAzureCredential => failed to retrieve a token from the included credentials"; } diff --git a/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts b/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts index 2a8b2ac5ef25..811fba10264f 100644 --- a/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/deviceCodeCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential, AccessToken } from "@azure/core-http"; +import { TokenCredential, AccessToken } from "@azure/core-auth"; + import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error("DeviceCodeCredential is not supported in the browser."); diff --git a/sdk/identity/identity/src/credentials/deviceCodeCredential.ts b/sdk/identity/identity/src/credentials/deviceCodeCredential.ts index 32ecb2956d33..ce6e0f157c5c 100644 --- a/sdk/identity/identity/src/credentials/deviceCodeCredential.ts +++ b/sdk/identity/identity/src/credentials/deviceCodeCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { credentialLogger } from "../util/logging"; import { MsalDeviceCode } from "../msal/nodeFlows/msalDeviceCode"; import { MsalFlow } from "../msal/flows"; @@ -44,10 +45,8 @@ export class DeviceCodeCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the user provided the option `disableAutomaticAuthentication`, * once the token can't be retrieved silently, @@ -68,10 +67,8 @@ export class DeviceCodeCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the token can't be retrieved silently, this method will require user interaction to retrieve the token. * diff --git a/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts b/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts index a6cc1c5fbedc..e16679b1d448 100644 --- a/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/deviceCodeCredentialOptions.ts @@ -2,6 +2,7 @@ // Licensed under the MIT license. import { InteractiveCredentialOptions } from "./interactiveCredentialOptions"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; /** * Provides the user code and verification URI where the code must be @@ -37,7 +38,9 @@ export type DeviceCodePromptCallback = (deviceCodeInfo: DeviceCodeInfo) => void; /** * Defines options for the InteractiveBrowserCredential class for NodeJS. */ -export interface DeviceCodeCredentialOptions extends InteractiveCredentialOptions { +export interface DeviceCodeCredentialOptions + extends InteractiveCredentialOptions, + CredentialPersistenceOptions { /** * The Azure Active Directory tenant (directory) ID. */ diff --git a/sdk/identity/identity/src/credentials/environmentCredential.browser.ts b/sdk/identity/identity/src/credentials/environmentCredential.browser.ts index c01020cd49ed..737c084eaef6 100644 --- a/sdk/identity/identity/src/credentials/environmentCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/environmentCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, TokenCredential } from "@azure/core-http"; +import { AccessToken, TokenCredential } from "@azure/core-auth"; + import { credentialLogger, formatError } from "../util/logging"; const BrowserNotSupportedError = new Error( diff --git a/sdk/identity/identity/src/credentials/environmentCredential.ts b/sdk/identity/identity/src/credentials/environmentCredential.ts index 32c81b045514..f6aee5963c89 100644 --- a/sdk/identity/identity/src/credentials/environmentCredential.ts +++ b/sdk/identity/identity/src/credentials/environmentCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, TokenCredential, GetTokenOptions } from "@azure/core-http"; +import { AccessToken, TokenCredential, GetTokenOptions } from "@azure/core-auth"; + import { credentialLogger, processEnvVars, formatSuccess, formatError } from "../util/logging"; import { TokenCredentialOptions } from "../client/identityClient"; import { ClientSecretCredential } from "./clientSecretCredential"; @@ -10,6 +11,7 @@ import { checkTenantId } from "../util/checkTenantId"; import { trace } from "../util/tracing"; import { ClientCertificateCredential } from "./clientCertificateCredential"; import { UsernamePasswordCredential } from "./usernamePasswordCredential"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; /** * Contains the list of all supported environment variable names so that an @@ -29,13 +31,29 @@ export const AllSupportedEnvironmentVariables = [ const logger = credentialLogger("EnvironmentCredential"); +/** + * Enables authentication to Azure Active Directory depending on the available environment variables. + * Defines options for the EnvironmentCredential class. + */ +export interface EnvironmentCredentialOptions + extends TokenCredentialOptions, + CredentialPersistenceOptions {} + /** * Enables authentication to Azure Active Directory using client secret * details configured in the following environment variables: * - * - AZURE_TENANT_ID: The Azure Active Directory tenant (directory) ID. - * - AZURE_CLIENT_ID: The client (application) ID of an App Registration in the tenant. - * - AZURE_CLIENT_SECRET: A client secret that was generated for the App Registration. + * Required environment variables: + * - `AZURE_TENANT_ID`: The Azure Active Directory tenant (directory) ID. + * - `AZURE_CLIENT_ID`: The client (application) ID of an App Registration in the tenant. + * + * Environment variables used for client credential authentication: + * - `AZURE_CLIENT_SECRET`: A client secret that was generated for the App Registration. + * - `AZURE_CLIENT_CERTIFICATE_PATH`: The path to a PEM certificate to use during the authentication, instead of the client secret. + * + * Alternatively, users can provide environment variables for username and password authentication: + * - `AZURE_USERNAME`: Username to authenticate with. + * - `AZURE_PASSWORD`: Password to authenticate with. * * This credential ultimately uses a {@link ClientSecretCredential} to * perform the authentication using these details. Please consult the @@ -47,14 +65,26 @@ export class EnvironmentCredential implements TokenCredential { | ClientCertificateCredential | UsernamePasswordCredential = undefined; /** - * Creates an instance of the EnvironmentCredential class and reads - * client secret details from environment variables. If the expected - * environment variables are not found at this time, the getToken method - * will return null when invoked. + * Creates an instance of the EnvironmentCredential class and decides what credential to use depending on the available environment variables. + * + * Required environment variables: + * - `AZURE_TENANT_ID`: The Azure Active Directory tenant (directory) ID. + * - `AZURE_CLIENT_ID`: The client (application) ID of an App Registration in the tenant. + * + * Environment variables used for client credential authentication: + * - `AZURE_CLIENT_SECRET`: A client secret that was generated for the App Registration. + * - `AZURE_CLIENT_CERTIFICATE_PATH`: The path to a PEM certificate to use during the authentication, instead of the client secret. + * + * Alternatively, users can provide environment variables for username and password authentication: + * - `AZURE_USERNAME`: Username to authenticate with. + * - `AZURE_PASSWORD`: Password to authenticate with. + * + * If the environment variables required to perform the authentication are missing, a {@link CredentialUnavailableError} will be thrown. + * If the authentication fails, or if there's an unknown error, an {@link AuthenticationError} will be thrown. * * @param options - Options for configuring the client which makes the authentication request. */ - constructor(options?: TokenCredentialOptions) { + constructor(options?: EnvironmentCredentialOptions) { // Keep track of any missing environment variables for error details const assigned = processEnvVars(AllSupportedEnvironmentVariables).assigned.join(", "); diff --git a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts index 8e9dba33ae4a..d5eb46ac0abc 100644 --- a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { credentialLogger, formatError } from "../util/logging"; import { trace } from "../util/tracing"; import { MsalFlow } from "../msal/flows"; @@ -75,10 +76,8 @@ export class InteractiveBrowserCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the user provided the option `disableAutomaticAuthentication`, * once the token can't be retrieved silently, @@ -99,10 +98,8 @@ export class InteractiveBrowserCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the token can't be retrieved silently, this method will require user interaction to retrieve the token. * diff --git a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts index f7b6ec4f7008..35238d2579f0 100644 --- a/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts +++ b/sdk/identity/identity/src/credentials/interactiveBrowserCredential.ts @@ -3,7 +3,8 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { credentialLogger } from "../util/logging"; import { trace } from "../util/tracing"; import { AuthenticationRecord } from "../msal/types"; @@ -54,10 +55,8 @@ export class InteractiveBrowserCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the user provided the option `disableAutomaticAuthentication`, * once the token can't be retrieved silently, @@ -78,10 +77,8 @@ export class InteractiveBrowserCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the token can't be retrieved silently, this method will require user interaction to retrieve the token. * diff --git a/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts b/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts index 7d5e59c947c2..2057c792f8bb 100644 --- a/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/interactiveBrowserCredentialOptions.ts @@ -1,8 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredentialOptions } from "../client/identityClient"; import { InteractiveCredentialOptions } from "./interactiveCredentialOptions"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; /** * (Browser-only feature) @@ -18,52 +18,52 @@ export type BrowserLoginStyle = "redirect" | "popup"; /** * Defines the common options for the InteractiveBrowserCredential class. */ -export type InteractiveBrowserCredentialOptions = TokenCredentialOptions & - InteractiveCredentialOptions & { - /** - * Gets the redirect URI of the application. This should be same as the value - * in the application registration portal. Defaults to `window.location.href`. - */ - redirectUri?: string | (() => string); +export interface InteractiveBrowserCredentialOptions + extends InteractiveCredentialOptions, + CredentialPersistenceOptions { + /** + * Gets the redirect URI of the application. This should be same as the value + * in the application registration portal. Defaults to `window.location.href`. + */ + redirectUri?: string | (() => string); - /** - * The Azure Active Directory tenant (directory) ID. - */ - tenantId?: string; + /** + * The Azure Active Directory tenant (directory) ID. + */ + tenantId?: string; - /** - * The client (application) ID of an App Registration in the tenant. - */ - clientId?: string; - }; + /** + * The client (application) ID of an App Registration in the tenant. + */ + clientId?: string; +} /** * Defines the common options for the InteractiveBrowserCredential class. */ -export type InteractiveBrowserCredentialBrowserOptions = TokenCredentialOptions & - InteractiveCredentialOptions & { - /** - * Gets the redirect URI of the application. This should be same as the value - * in the application registration portal. Defaults to `window.location.href`. - */ - redirectUri?: string | (() => string); +export interface InteractiveBrowserCredentialBrowserOptions extends InteractiveCredentialOptions { + /** + * Gets the redirect URI of the application. This should be same as the value + * in the application registration portal. Defaults to `window.location.href`. + */ + redirectUri?: string | (() => string); - /** - * The Azure Active Directory tenant (directory) ID. - */ - tenantId?: string; + /** + * The Azure Active Directory tenant (directory) ID. + */ + tenantId?: string; - /** - * The client (application) ID of an App Registration in the tenant. - * This parameter is required on the browser. - */ - clientId: string; + /** + * The client (application) ID of an App Registration in the tenant. + * This parameter is required on the browser. + */ + clientId: string; - /** - * Specifies whether a redirect or a popup window should be used to - * initiate the user authentication flow. Possible values are "redirect" - * or "popup" (default) for browser and "popup" (default) for node. - * - */ - loginStyle?: BrowserLoginStyle; - }; + /** + * Specifies whether a redirect or a popup window should be used to + * initiate the user authentication flow. Possible values are "redirect" + * or "popup" (default) for browser and "popup" (default) for node. + * + */ + loginStyle?: BrowserLoginStyle; +} diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts index 6a556b1d38d0..f0a050f46b20 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/appServiceMsi2017.ts @@ -1,7 +1,10 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, RequestPrepareOptions } from "@azure/core-http"; +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; + +import { RequestPrepareOptions } from "@azure/core-http"; + import { IdentityClient } from "../../client/identityClient"; import { credentialLogger } from "../../util/logging"; import { MSI } from "./models"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts index c379f350f1d4..a30b749a4766 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/arcMsi.ts @@ -1,7 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, RequestPrepareOptions } from "@azure/core-http"; +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import { RequestPrepareOptions } from "@azure/core-http"; + import { MSI } from "./models"; import { credentialLogger } from "../../util/logging"; import { IdentityClient } from "../../client/identityClient"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts index 80b741f0690e..547b64d07e7c 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/cloudShellMsi.ts @@ -2,7 +2,10 @@ // Licensed under the MIT license. import qs from "qs"; -import { AccessToken, GetTokenOptions, RequestPrepareOptions } from "@azure/core-http"; + +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import { RequestPrepareOptions } from "@azure/core-http"; + import { MSI } from "./models"; import { credentialLogger } from "../../util/logging"; import { IdentityClient } from "../../client/identityClient"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts index 2678a9048306..ff625535a64b 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/fabricMsi.ts @@ -1,7 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, RequestPrepareOptions } from "@azure/core-http"; +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import { RequestPrepareOptions } from "@azure/core-http"; + import { MSI } from "./models"; import { credentialLogger } from "../../util/logging"; import { IdentityClient } from "../../client/identityClient"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts index dff12380ab78..eb8715548626 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.browser.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, TokenCredential } from "@azure/core-http"; +import { AccessToken, TokenCredential } from "@azure/core-auth"; + import { TokenCredentialOptions } from "../../client/identityClient"; import { credentialLogger, formatError } from "../../util/logging"; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts index a49723c57984..49a95cd31cf2 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/index.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { IdentityClient, TokenCredentialOptions } from "../../client/identityClient"; import { createSpan } from "../../util/tracing"; import { AuthenticationError, CredentialUnavailableError } from "../../client/errors"; @@ -115,10 +116,9 @@ export class ManagedIdentityCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. + * If an unexpected error occurs, an {@link AuthenticationError} will be thrown with the details of the failure. * * @param scopes - The list of scopes for which the token will have access. * @param options - The options used to configure any requests this diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts index e449ffd64b18..237b758554fa 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/models.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions } from "@azure/core-http"; +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; + import { IdentityClient } from "../../client/identityClient"; export type MSIExpiresInParser = (requestBody: any) => number; diff --git a/sdk/identity/identity/src/credentials/managedIdentityCredential/utils.ts b/sdk/identity/identity/src/credentials/managedIdentityCredential/utils.ts index 6c54ec33a94b..ef2336c6a9c7 100644 --- a/sdk/identity/identity/src/credentials/managedIdentityCredential/utils.ts +++ b/sdk/identity/identity/src/credentials/managedIdentityCredential/utils.ts @@ -1,7 +1,9 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, RequestPrepareOptions } from "@azure/core-http"; +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import { RequestPrepareOptions } from "@azure/core-http"; + import { IdentityClient } from "../../client/identityClient"; import { DefaultScopeSuffix } from "./constants"; import { MSIExpiresInParser } from "./models"; diff --git a/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts b/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts index e76b83b68863..91f4cd31a692 100644 --- a/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts +++ b/sdk/identity/identity/src/credentials/usernamePasswordCredential.browser.ts @@ -2,7 +2,9 @@ // Licensed under the MIT license. import qs from "qs"; -import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-http"; + +import { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; + import { TokenCredentialOptions, IdentityClient } from "../client/identityClient"; import { createSpan } from "../util/tracing"; import { SpanStatusCode } from "@azure/core-tracing"; diff --git a/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts b/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts index f7ffeefc0883..93c111767752 100644 --- a/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts +++ b/sdk/identity/identity/src/credentials/usernamePasswordCredential.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-http"; +import { AccessToken, GetTokenOptions, TokenCredential } from "@azure/core-auth"; + import { credentialLogger } from "../util/logging"; import { MsalUsernamePassword } from "../msal/nodeFlows/msalUsernamePassword"; import { MsalFlow } from "../msal/flows"; @@ -51,10 +52,8 @@ export class UsernamePasswordCredential implements TokenCredential { } /** - * Authenticates with Azure Active Directory and returns an access token if - * successful. If authentication cannot be performed at this time, this method may - * return null. If an error occurs during authentication, an {@link AuthenticationError} - * containing failure details will be thrown. + * Authenticates with Azure Active Directory and returns an access token if successful. + * If authentication fails, a {@link CredentialUnavailableError} will be thrown with the details of the failure. * * If the user provided the option `disableAutomaticAuthentication`, * once the token can't be retrieved silently, diff --git a/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts b/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts index f82a1cdb2922..5abe8010dd14 100644 --- a/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts +++ b/sdk/identity/identity/src/credentials/usernamePasswordCredentialOptions.ts @@ -2,8 +2,11 @@ // Licensed under the MIT license. import { TokenCredentialOptions } from "../client/identityClient"; +import { CredentialPersistenceOptions } from "./credentialPersistenceOptions"; /** * Defines options for the {@link UsernamePasswordCredential} class. */ -export interface UsernamePasswordCredentialOptions extends TokenCredentialOptions {} +export interface UsernamePasswordCredentialOptions + extends TokenCredentialOptions, + CredentialPersistenceOptions {} diff --git a/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts new file mode 100644 index 000000000000..8255eeac4dce --- /dev/null +++ b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.browser.ts @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { TokenCredential, AccessToken } from "@azure/core-auth"; + +import { credentialLogger, formatError } from "../util/logging"; + +const BrowserNotSupportedError = new Error( + "VisualStudioCodeCredential is not supported in the browser." +); +const logger = credentialLogger("VisualStudioCodeCredential"); + +export const vsCodeCredentialControl = { + set vsCodeCredentialFinder(_finder: never) { + throw new Error( + "Attempted to register a VisualStudioCodeCredential provider extension in the browser. This environment is not supported by VisualStudioCodeCredential." + ); + } +}; + +export class VisualStudioCodeCredential implements TokenCredential { + constructor() { + logger.info(formatError("", BrowserNotSupportedError)); + throw BrowserNotSupportedError; + } + + public getToken(): Promise { + logger.getToken.info(formatError("", BrowserNotSupportedError)); + throw BrowserNotSupportedError; + } +} diff --git a/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts new file mode 100644 index 000000000000..c12d7dde7c9b --- /dev/null +++ b/sdk/identity/identity/src/credentials/visualStudioCodeCredential.ts @@ -0,0 +1,234 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { TokenCredential, AccessToken, GetTokenOptions } from "@azure/core-auth"; + +import fs from "fs"; +import os from "os"; +import path from "path"; + +import { CredentialUnavailableError } from "../client/errors"; +import { IdentityClient, TokenCredentialOptions } from "../client/identityClient"; +import { AzureAuthorityHosts } from "../constants"; +import { checkTenantId } from "../util/checkTenantId"; +import { credentialLogger, formatError, formatSuccess } from "../util/logging"; +import { VSCodeCredentialFinder } from "./visualStudioCodeCredentialExtension"; + +const CommonTenantId = "common"; +const AzureAccountClientId = "aebc6443-996d-45c2-90f0-388ff96faa56"; // VSC: 'aebc6443-996d-45c2-90f0-388ff96faa56' +const logger = credentialLogger("VisualStudioCodeCredential"); + +let findCredentials: VSCodeCredentialFinder | undefined = undefined; + +export const vsCodeCredentialControl = { + setVsCodeCredentialFinder(finder: VSCodeCredentialFinder): void { + findCredentials = finder; + } +}; + +// Map of unsupported Tenant IDs and the errors we will be throwing. +const unsupportedTenantIds: Record = { + adfs: "The VisualStudioCodeCredential does not support authentication with ADFS tenants." +}; + +function checkUnsupportedTenant(tenantId: string): void { + // If the Tenant ID isn't supported, we throw. + const unsupportedTenantError = unsupportedTenantIds[tenantId]; + if (unsupportedTenantError) { + throw new CredentialUnavailableError(unsupportedTenantError); + } +} + +type VSCodeCloudNames = "AzureCloud" | "AzureChina" | "AzureGermanCloud" | "AzureUSGovernment"; + +const mapVSCodeAuthorityHosts: Record = { + AzureCloud: AzureAuthorityHosts.AzurePublicCloud, + AzureChina: AzureAuthorityHosts.AzureChina, + AzureGermanCloud: AzureAuthorityHosts.AzureGermany, + AzureUSGovernment: AzureAuthorityHosts.AzureGovernment +}; + +/** + * Attempts to load a specific property from the VSCode configurations of the current OS. + * If it fails at any point, returns undefined. + */ +export function getPropertyFromVSCode(property: string): string | undefined { + const settingsPath = ["User", "settings.json"]; + // Eventually we can add more folders for more versions of VSCode. + const vsCodeFolder = "Code"; + const homedir = os.homedir(); + + function loadProperty(...pathSegments: string[]): string | undefined { + const fullPath = path.join(...pathSegments, vsCodeFolder, ...settingsPath); + const settings = JSON.parse(fs.readFileSync(fullPath, { encoding: "utf8" })); + return settings[property]; + } + + try { + let appData: string; + switch (process.platform) { + case "win32": + appData = process.env.APPDATA!; + return appData ? loadProperty(appData) : undefined; + case "darwin": + return loadProperty(homedir, "Library", "Application Support"); + case "linux": + return loadProperty(homedir, ".config"); + default: + return; + } + } catch (e) { + logger.info(`Failed to load the Visual Studio Code configuration file. Error: ${e.message}`); + return; + } +} + +/** + * Provides options to configure the Visual Studio Code credential. + */ +export interface VisualStudioCodeCredentialOptions extends TokenCredentialOptions { + /** + * Optionally pass in a Tenant ID to be used as part of the credential + */ + tenantId?: string; +} + +/** + * Connect to Azure using the credential provided by the VSCode extension 'Azure Account'. + * Once the user has logged in via the extension, this credential can share the same refresh token + * that is cached by the extension. + */ +export class VisualStudioCodeCredential implements TokenCredential { + private identityClient: IdentityClient; + private tenantId: string; + private cloudName: VSCodeCloudNames; + + /** + * Creates an instance of VisualStudioCodeCredential to use for automatically authenticating via VSCode. + * + * @param options - Options for configuring the client which makes the authentication request. + */ + constructor(options?: VisualStudioCodeCredentialOptions) { + // We want to make sure we use the one assigned by the user on the VSCode settings. + // Or just `AzureCloud` by default. + this.cloudName = (getPropertyFromVSCode("azure.cloud") || "AzureCloud") as VSCodeCloudNames; + + // Picking an authority host based on the cloud name. + const authorityHost = mapVSCodeAuthorityHosts[this.cloudName]; + + this.identityClient = new IdentityClient({ + authorityHost, + ...options + }); + + if (options && options.tenantId) { + checkTenantId(logger, options.tenantId); + this.tenantId = options.tenantId; + } else { + this.tenantId = CommonTenantId; + } + + checkUnsupportedTenant(this.tenantId); + } + + /** + * Runs preparations for any further getToken request. + */ + private async prepare(): Promise { + // Attempts to load the tenant from the VSCode configuration file. + const settingsTenant = getPropertyFromVSCode("azure.tenant"); + if (settingsTenant) { + this.tenantId = settingsTenant; + } + checkUnsupportedTenant(this.tenantId); + } + + /** + * The promise of the single preparation that will be executed at the first getToken request for an instance of this class. + */ + private preparePromise: Promise | undefined; + + /** + * Runs preparations for any further getToken, but only once. + */ + private prepareOnce(): Promise | undefined { + if (!this.preparePromise) { + this.preparePromise = this.prepare(); + } + return this.preparePromise; + } + + /** + * Returns the token found by searching VSCode's authentication cache or + * returns null if no token could be found. + * + * @param scopes - The list of scopes for which the token will have access. + * @param options - The options used to configure any requests this + * `TokenCredential` implementation might make. + */ + public async getToken( + scopes: string | string[], + _options?: GetTokenOptions + ): Promise { + await this.prepareOnce(); + if (findCredentials === undefined) { + throw new CredentialUnavailableError( + "No implementation of VisualStudioCodeCredential is available (do you need to install and use the `@azure/identity-vscode` extension package?)" + ); + } + + let scopeString = typeof scopes === "string" ? scopes : scopes.join(" "); + + // Check to make sure the scope we get back is a valid scope + if (!scopeString.match(/^[0-9a-zA-Z-.:/]+$/)) { + const error = new Error("Invalid scope was specified by the user or calling client"); + logger.getToken.info(formatError(scopes, error)); + throw error; + } + + if (scopeString.indexOf("offline_access") < 0) { + scopeString += " offline_access"; + } + + // findCredentials returns an array similar to: + // [ + // { + // account: "", + // password: "", + // }, + // /* ... */ + // ] + const credentials = await findCredentials(); + + // If we can't find the credential based on the name, we'll pick the first one available. + const { password: refreshToken } = + credentials.find(({ account }) => account === this.cloudName) ?? credentials[0] ?? {}; + + if (refreshToken) { + const tokenResponse = await this.identityClient.refreshAccessToken( + this.tenantId, + AzureAccountClientId, + scopeString, + refreshToken, + undefined + ); + + if (tokenResponse) { + logger.getToken.info(formatSuccess(scopes)); + return tokenResponse.accessToken; + } else { + const error = new CredentialUnavailableError( + "Could not retrieve the token associated with Visual Studio Code. Have you connected using the 'Azure Account' extension recently?" + ); + logger.getToken.info(formatError(scopes, error)); + throw error; + } + } else { + const error = new CredentialUnavailableError( + "Could not retrieve the token associated with Visual Studio Code. Did you connect using the 'Azure Account' extension?" + ); + logger.getToken.info(formatError(scopes, error)); + throw error; + } + } +} diff --git a/sdk/identity/identity/src/credentials/visualStudioCodeCredentialExtension.ts b/sdk/identity/identity/src/credentials/visualStudioCodeCredentialExtension.ts new file mode 100644 index 000000000000..4dd49ae1dbc2 --- /dev/null +++ b/sdk/identity/identity/src/credentials/visualStudioCodeCredentialExtension.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +// Copyright (c) Microsoft Corporation +// Licensed under the MIT license. + +/** + * A function that searches for credentials in the Visual Studio Code credential store. + * + * @returns an array of credentials (username and password) + * @internal + */ +export type VSCodeCredentialFinder = () => Promise>; diff --git a/sdk/identity/identity/src/extensions/consumer.browser.ts b/sdk/identity/identity/src/extensions/consumer.browser.ts new file mode 100644 index 000000000000..900a924cd408 --- /dev/null +++ b/sdk/identity/identity/src/extensions/consumer.browser.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +// This module is a shim for the extension consumer in the browser + +export function useIdentityExtension(_extension: unknown): void { + throw new Error("Identity extensions are not supported in browser environments."); +} diff --git a/sdk/identity/identity/src/extensions/consumer.ts b/sdk/identity/identity/src/extensions/consumer.ts new file mode 100644 index 000000000000..9b3495a8bba2 --- /dev/null +++ b/sdk/identity/identity/src/extensions/consumer.ts @@ -0,0 +1,47 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { AzureExtensionContext, IdentityExtension } from "./provider"; +import { msalNodeFlowCacheControl } from "../msal/nodeFlows/nodeCommon"; +import { vsCodeCredentialControl } from "../credentials/visualStudioCodeCredential"; + +/** + * The context passed to an Identity Extension. This contains objects that + * extensions can use to set backend implementations. + * @internal + */ +const extensionContext: AzureExtensionContext = { + cachePluginControl: msalNodeFlowCacheControl, + vsCodeCredentialControl: vsCodeCredentialControl +}; + +/** + * Extend Azure Identity with additional functionality. Pass an extension from + * an extension package, such as: + * + * - `@azure/identity-cache-persistence`: provides persistent token caching + * - `@azure/identity-vscode`: provides the dependencies of + * `VisualStudioCodeCredential` and enables it + * + * Example: + * + * ```javascript + * import { cachePersistenceExtension } from "@azure/identity-cache-persistence"; + * + * import { useIdentityExtension, DefaultAzureCredential } from "@azure/identity"; + * useIdentityExtension(persistence); + * + * // The extension has the capability to extend `DefaultAzureCredential` and to + * // add middleware to the underlying credentials, such as persistence. + * const credential = new DefaultAzureCredential({ + * tokenCachePersistenceOptions: { + * enabled: true + * } + * }); + * ``` + * + * @param extension - the extension to register + */ +export function useIdentityExtension(extension: IdentityExtension): void { + extension(extensionContext); +} diff --git a/sdk/identity/identity/src/extensions/provider.ts b/sdk/identity/identity/src/extensions/provider.ts new file mode 100644 index 000000000000..ad661a00cdb8 --- /dev/null +++ b/sdk/identity/identity/src/extensions/provider.ts @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { VSCodeCredentialFinder } from "../credentials/visualStudioCodeCredentialExtension"; +import { TokenCachePersistenceOptions } from "../msal/nodeFlows/tokenCachePersistenceOptions"; + +/** + * The type of an Azure Identity Extension, a function accepting an extension + * context. + */ +export type IdentityExtension = (context: unknown) => void; + +/** + * Extension context entries for controlling cache plugins. + */ +export interface CachePluginControl { + setPersistence( + persistenceFactory: ( + options?: TokenCachePersistenceOptions + ) => Promise + ): void; +} + +/** + * Extension context entries for controlling VisualStudioCodeCredential. + */ +export interface VisualStudioCodeCredentialControl { + setVsCodeCredentialFinder(finder: VSCodeCredentialFinder): void; +} + +/** + * Context options passed to an extension during initialization. + * + * Extension authors are responsible for casting their extension context values + * to this type. + * + * @internal + */ +export interface AzureExtensionContext { + cachePluginControl: CachePluginControl; + vsCodeCredentialControl: VisualStudioCodeCredentialControl; +} diff --git a/sdk/identity/identity/src/index.ts b/sdk/identity/identity/src/index.ts index 7e951d958cb3..564e52a96157 100644 --- a/sdk/identity/identity/src/index.ts +++ b/sdk/identity/identity/src/index.ts @@ -1,7 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { TokenCredential } from "@azure/core-http"; +export * from "./extensions/consumer"; + +export { IdentityExtension } from "./extensions/provider"; + +import { TokenCredential } from "@azure/core-auth"; import { DefaultAzureCredential } from "./credentials/defaultAzureCredential"; export { AuthenticationRecord } from "./msal/types"; @@ -16,11 +20,15 @@ export { DefaultAzureCredential, DefaultAzureCredentialOptions } from "./credentials/defaultAzureCredential"; -export { EnvironmentCredential } from "./credentials/environmentCredential"; +export { + EnvironmentCredential, + EnvironmentCredentialOptions +} from "./credentials/environmentCredential"; export { ClientSecretCredential } from "./credentials/clientSecretCredential"; export { ClientSecretCredentialOptions } from "./credentials/clientSecretCredentialOptions"; export { ClientCertificateCredential } from "./credentials/clientCertificateCredential"; export { ClientCertificateCredentialOptions } from "./credentials/clientCertificateCredentialOptions"; +export { CredentialPersistenceOptions } from "./credentials/credentialPersistenceOptions"; export { AzureCliCredential } from "./credentials/azureCliCredential"; export { InteractiveBrowserCredential } from "./credentials/interactiveBrowserCredential"; export { @@ -40,6 +48,13 @@ export { UsernamePasswordCredentialOptions } from "./credentials/usernamePasswor export { AuthorizationCodeCredential } from "./credentials/authorizationCodeCredential"; export { AzurePowerShellCredential } from "./credentials/azurePowerShellCredential"; +export { + VisualStudioCodeCredential, + VisualStudioCodeCredentialOptions +} from "./credentials/visualStudioCodeCredential"; + +export { TokenCachePersistenceOptions } from "./msal/nodeFlows/tokenCachePersistenceOptions"; + export { AuthenticationError, ErrorResponse, @@ -50,7 +65,7 @@ export { CredentialUnavailableErrorName } from "./client/errors"; -export { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-http"; +export { TokenCredential, GetTokenOptions, AccessToken } from "@azure/core-auth"; export { logger } from "./util/logging"; export { AzureAuthorityHosts } from "./constants"; diff --git a/sdk/identity/identity/src/msal/browserFlows/browserCommon.ts b/sdk/identity/identity/src/msal/browserFlows/browserCommon.ts index 75783b8bad7d..5e06a9ea4dbd 100644 --- a/sdk/identity/identity/src/msal/browserFlows/browserCommon.ts +++ b/sdk/identity/identity/src/msal/browserFlows/browserCommon.ts @@ -2,7 +2,9 @@ // Licensed under the MIT license. import * as msalBrowser from "@azure/msal-browser"; -import { AccessToken } from "@azure/core-http"; + +import { AccessToken } from "@azure/core-auth"; + import { DefaultTenantId } from "../../constants"; import { resolveTenantId } from "../../util/resolveTenantId"; import { BrowserLoginStyle } from "../../credentials/interactiveBrowserCredentialOptions"; diff --git a/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts b/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts index 0a2ed5e90adc..9c8ee4317b26 100644 --- a/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts +++ b/sdk/identity/identity/src/msal/browserFlows/msalAuthCode.ts @@ -2,8 +2,10 @@ // Licensed under the MIT license. import * as msalBrowser from "@azure/msal-browser"; + +import { AccessToken } from "@azure/core-auth"; + import { MsalBrowserFlowOptions, MsalBrowser } from "./browserCommon"; -import { AccessToken } from "@azure/core-http"; import { defaultLoggerCallback, msalToPublic, publicToMsal } from "../utils"; import { AuthenticationRecord } from "../types"; import { AuthenticationRequiredError } from "../errors"; diff --git a/sdk/identity/identity/src/msal/credentials.ts b/sdk/identity/identity/src/msal/credentials.ts index 4d0238c83338..6b80f45b96f1 100644 --- a/sdk/identity/identity/src/msal/credentials.ts +++ b/sdk/identity/identity/src/msal/credentials.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken, GetTokenOptions } from "@azure/core-http"; +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; + import { AuthenticationRecord } from "./types"; /** diff --git a/sdk/identity/identity/src/msal/errors.ts b/sdk/identity/identity/src/msal/errors.ts index 1ee4183092d4..71ee673d5fb1 100644 --- a/sdk/identity/identity/src/msal/errors.ts +++ b/sdk/identity/identity/src/msal/errors.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { GetTokenOptions } from "@azure/core-http"; +import { GetTokenOptions } from "@azure/core-auth"; /** * Error used to enforce authentication after trying to retrieve a token silently. diff --git a/sdk/identity/identity/src/msal/flows.ts b/sdk/identity/identity/src/msal/flows.ts index 80d9a69dd38e..f678af41d690 100644 --- a/sdk/identity/identity/src/msal/flows.ts +++ b/sdk/identity/identity/src/msal/flows.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken } from "@azure/core-http"; +import { AccessToken } from "@azure/core-auth"; + import { CredentialLogger } from "../util/logging"; import { AuthenticationRecord } from "./types"; import { CredentialFlowGetTokenOptions } from "./credentials"; @@ -28,10 +29,6 @@ export interface MsalFlow { * Allows for any setup before any request is processed. */ init(options?: CredentialFlowGetTokenOptions): Promise; - /** - * Clears the MSAL cache. - */ - logout(): Promise; /** * Tries to load the active account, either from memory or from MSAL. */ diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalClientCertificate.ts b/sdk/identity/identity/src/msal/nodeFlows/msalClientCertificate.ts index b70aca7356e7..3b5131f5725e 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalClientCertificate.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalClientCertificate.ts @@ -3,7 +3,9 @@ import { readFileSync } from "fs"; import { createHash } from "crypto"; -import { AccessToken } from "@azure/core-http"; + +import { AccessToken } from "@azure/core-auth"; + import { MsalNodeOptions, MsalNode } from "./nodeCommon"; import { formatError } from "../../util/logging"; import { CredentialFlowGetTokenOptions } from "../credentials"; diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalClientSecret.ts b/sdk/identity/identity/src/msal/nodeFlows/msalClientSecret.ts index e40ba09db500..eafbc6e70be8 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalClientSecret.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalClientSecret.ts @@ -1,7 +1,8 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { AccessToken } from "@azure/core-http"; +import { AccessToken } from "@azure/core-auth"; + import { CredentialFlowGetTokenOptions } from "../credentials"; import { MsalNodeOptions, MsalNode } from "./nodeCommon"; diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalDeviceCode.ts b/sdk/identity/identity/src/msal/nodeFlows/msalDeviceCode.ts index f12d90294f85..391726b786fb 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalDeviceCode.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalDeviceCode.ts @@ -2,7 +2,9 @@ // Licensed under the MIT license. import * as msalNode from "@azure/msal-node"; -import { AccessToken } from "@azure/core-http"; + +import { AccessToken } from "@azure/core-auth"; + import { DeviceCodePromptCallback } from "../../credentials/deviceCodeCredentialOptions"; import { CredentialFlowGetTokenOptions } from "../credentials"; import { MsalNodeOptions, MsalNode } from "./nodeCommon"; diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalOpenBrowser.ts b/sdk/identity/identity/src/msal/nodeFlows/msalOpenBrowser.ts index 674bcbec57d9..8b584bbc99a4 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalOpenBrowser.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalOpenBrowser.ts @@ -2,11 +2,14 @@ // Licensed under the MIT license. import * as msalNode from "@azure/msal-node"; + +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; + import { Socket } from "net"; import http from "http"; import open from "open"; import stoppable from "stoppable"; -import { AccessToken, GetTokenOptions } from "@azure/core-http"; + import { credentialLogger, formatError, formatSuccess } from "../../util/logging"; import { MsalNodeOptions, MsalNode } from "./nodeCommon"; import { msalToPublic } from "../utils"; diff --git a/sdk/identity/identity/src/msal/nodeFlows/msalUsernamePassword.ts b/sdk/identity/identity/src/msal/nodeFlows/msalUsernamePassword.ts index 8095fd0741ae..93f71eed2a7c 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/msalUsernamePassword.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/msalUsernamePassword.ts @@ -2,7 +2,9 @@ // Licensed under the MIT license. import * as msalNode from "@azure/msal-node"; -import { AccessToken } from "@azure/core-http"; + +import { AccessToken } from "@azure/core-auth"; + import { MsalNodeOptions, MsalNode } from "./nodeCommon"; import { CredentialFlowGetTokenOptions } from "../credentials"; diff --git a/sdk/identity/identity/src/msal/nodeFlows/nodeCommon.ts b/sdk/identity/identity/src/msal/nodeFlows/nodeCommon.ts index d0f90b587c3b..63625c5228af 100644 --- a/sdk/identity/identity/src/msal/nodeFlows/nodeCommon.ts +++ b/sdk/identity/identity/src/msal/nodeFlows/nodeCommon.ts @@ -3,8 +3,10 @@ import * as msalNode from "@azure/msal-node"; import * as msalCommon from "@azure/msal-common"; -import { AccessToken, GetTokenOptions } from "@azure/core-http"; + +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; import { AbortSignalLike } from "@azure/abort-controller"; + import { DeveloperSignOnClientId } from "../../constants"; import { IdentityClient, TokenCredentialOptions } from "../../client/identityClient"; import { resolveTenantId } from "../../util/resolveTenantId"; @@ -20,6 +22,7 @@ import { msalToPublic, publicToMsal } from "../utils"; +import { TokenCachePersistenceOptions } from "./tokenCachePersistenceOptions"; import { RegionalAuthority } from "../../regionalAuthority"; /** @@ -27,6 +30,7 @@ import { RegionalAuthority } from "../../regionalAuthority"; * @internal */ export interface MsalNodeOptions extends MsalFlowOptions { + tokenCachePersistenceOptions?: TokenCachePersistenceOptions; tokenCredentialOptions: TokenCredentialOptions; /** * Specifies a regional authority. Please refer to the {@link RegionalAuthority} type for the accepted values. @@ -36,6 +40,24 @@ export interface MsalNodeOptions extends MsalFlowOptions { regionalAuthority?: string; } +/** + * The current persistence provider, undefined by default. + * @internal + */ +let persistenceProvider: + | ((options?: TokenCachePersistenceOptions) => Promise) + | undefined = undefined; + +/** + * An object that allows setting the persistence provider. + * @internal + */ +export const msalNodeFlowCacheControl = { + setPersistence(pluginProvider: Exclude): void { + persistenceProvider = pluginProvider; + } +}; + /** * MSAL partial base client for NodeJS. * @@ -54,10 +76,22 @@ export abstract class MsalNode extends MsalBaseUtilities implements MsalFlow { protected requiresConfidential: boolean = false; protected azureRegion?: string; + protected createCachePlugin: (() => Promise) | undefined; + constructor(options: MsalNodeOptions) { super(options); this.msalConfig = this.defaultNodeMsalConfig(options); this.clientId = this.msalConfig.auth.clientId; + + // If persistence has been configured + if (persistenceProvider !== undefined && options.tokenCachePersistenceOptions?.enabled) { + this.createCachePlugin = () => persistenceProvider!(options.tokenCachePersistenceOptions); + } else if (options.tokenCachePersistenceOptions?.enabled) { + throw new Error( + "Persistent token caching was requested, but no persistence provider was configured (do you need to use the `@azure/identity-cache-persistence` package?)" + ); + } + this.azureRegion = options.regionalAuthority ?? process.env.AZURE_REGIONAL_AUTHORITY_NAME; if (this.azureRegion === RegionalAuthority.AutoDiscoverRegion) { this.azureRegion = "AUTO_DISCOVER"; @@ -110,6 +144,12 @@ export abstract class MsalNode extends MsalBaseUtilities implements MsalFlow { return; } + if (this.createCachePlugin !== undefined) { + this.msalConfig.cache = { + cachePlugin: await this.createCachePlugin() + }; + } + this.publicApp = new msalNode.PublicClientApplication(this.msalConfig); // The confidential client requires either a secret, assertion or certificate. if ( @@ -156,7 +196,7 @@ export abstract class MsalNode extends MsalBaseUtilities implements MsalFlow { if (this.account) { return this.account; } - const cache = this.publicApp?.getTokenCache(); + const cache = this.confidentialApp?.getTokenCache() ?? this.publicApp?.getTokenCache(); const accountsByTenant = await cache?.getAllAccounts(); if (!accountsByTenant) { @@ -178,13 +218,6 @@ To work with multiple accounts for the same Client ID and Tenant ID, please prov return this.account; } - /** - * Clears MSAL's cache. - */ - async logout(): Promise { - // Intentionally empty - } - /** * Attempts to retrieve a token from cache. */ @@ -206,7 +239,9 @@ To work with multiple accounts for the same Client ID and Tenant ID, please prov try { this.logger.info("Attempting to acquire token silently"); - const response = await this.publicApp!.acquireTokenSilent(silentRequest); + const response = + (await this.confidentialApp?.acquireTokenSilent(silentRequest)) ?? + (await this.publicApp!.acquireTokenSilent(silentRequest)); return this.handleResult(scopes, this.clientId, response || undefined); } catch (err) { throw this.handleError(scopes, err, options); diff --git a/sdk/identity/identity/src/msal/nodeFlows/tokenCachePersistenceOptions.ts b/sdk/identity/identity/src/msal/nodeFlows/tokenCachePersistenceOptions.ts new file mode 100644 index 000000000000..fb5dbe5cf31d --- /dev/null +++ b/sdk/identity/identity/src/msal/nodeFlows/tokenCachePersistenceOptions.ts @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/** + * Parameters that enable token cache persistence in the Identity credentials. + */ +export interface TokenCachePersistenceOptions { + /** + * If set to true, persistent token caching will be enabled for this credential instance. + */ + enabled: boolean; + /** + * Unique identifier for the persistent token cache. + * + * Based on this identifier, the persistence file will be located in any of the following places: + * - Darwin: '/Users/user/.IdentityService/' + * - Windows 8: 'C:\\Users\\user\\AppData\\Local\\.IdentityService\\' + * - Windows XP: 'C:\\Documents and Settings\\user\\Application Data\\Local\\.IdentityService\\' + * - Linux: '/home/user/.IdentityService/' + */ + name?: string; + /** + * If set to true, the cache will be stored without encryption if no OS level user encryption is available. + * When set to false, the PersistentTokenCache will throw an error if no OS level user encryption is available. + */ + allowUnencryptedStorage?: boolean; +} diff --git a/sdk/identity/identity/src/msal/utils.ts b/sdk/identity/identity/src/msal/utils.ts index 5e8db10a1582..ccf0a5170257 100644 --- a/sdk/identity/identity/src/msal/utils.ts +++ b/sdk/identity/identity/src/msal/utils.ts @@ -2,7 +2,11 @@ // Licensed under the MIT license. import * as msalCommon from "@azure/msal-common"; -import { AccessToken, GetTokenOptions, isNode } from "@azure/core-http"; + +import { AccessToken, GetTokenOptions } from "@azure/core-auth"; +import { isNode } from "@azure/core-http"; +import { AbortError } from "@azure/abort-controller"; + import { v4 as uuidv4 } from "uuid"; import { CredentialLogger, formatError, formatSuccess } from "../util/logging"; import { CredentialUnavailableError } from "../client/errors"; @@ -10,7 +14,6 @@ import { DefaultAuthorityHost, DefaultTenantId } from "../constants"; import { AuthenticationRecord, MsalAccountInfo, MsalResult, MsalToken } from "./types"; import { AuthenticationRequiredError } from "./errors"; import { MsalFlowOptions } from "./flows"; -import { AbortError } from "@azure/abort-controller"; /** * Latest AuthenticationRecord version diff --git a/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts b/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts index 18cccb957b03..5a7b89162aa4 100644 --- a/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/clientSecretCredential.spec.ts @@ -43,17 +43,15 @@ describe("ClientSecretCredential (internal)", function() { env.AZURE_CLIENT_SECRET ); - await credential.getToken(scope); + const { token: firstToken } = await credential.getToken(scope); assert.equal(getTokenSilentSpy.callCount, 1); assert.equal(doGetTokenSpy.callCount, 1); - await credential.getToken(scope); + const { token: secondToken } = await credential.getToken(scope); + assert.strictEqual(firstToken, secondToken); assert.equal(getTokenSilentSpy.callCount, 2); - // Even though we're providing the same default in memory persistence cache that we use for DeviceCodeCredential, - // The Client Secret flow does not return the account information from the authentication service, - // so each time getToken gets called, we will have to acquire a new token through the service. - assert.equal(doGetTokenSpy.callCount, 2); + assert.equal(doGetTokenSpy.callCount, 1); }); it("supports specifying the regional authority", async function() { diff --git a/sdk/identity/identity/test/internal/node/environmentCredential.spec.ts b/sdk/identity/identity/test/internal/node/environmentCredential.spec.ts index 80f595f64ea4..eb97542dc2b2 100644 --- a/sdk/identity/identity/test/internal/node/environmentCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/environmentCredential.spec.ts @@ -37,16 +37,14 @@ describe("EnvironmentCredential (internal)", function() { it("Authenticates silently after the initial request", async function() { const credential = new EnvironmentCredential(); - await credential.getToken(scope); + const { token: firstToken } = await credential.getToken(scope); assert.equal(getTokenSilentSpy.callCount, 1); assert.equal(doGetTokenSpy.callCount, 1); - await credential.getToken(scope); + const { token: secondToken } = await credential.getToken(scope); + assert.strictEqual(firstToken, secondToken); assert.equal(getTokenSilentSpy.callCount, 2); - // Even though we're providing the same default in memory persistence cache that we use for DeviceCodeCredential, - // The Client Credential and Client Secret flows do not return the account information from the authentication service, - // so each time getToken gets called, we will have to acquire a new token through the service. - assert.equal(doGetTokenSpy.callCount, 2); + assert.equal(doGetTokenSpy.callCount, 1); }); }); diff --git a/sdk/identity/identity/test/internal/node/managedIdentityCredential.spec.ts b/sdk/identity/identity/test/internal/node/managedIdentityCredential.spec.ts index a3ee69e3199a..4d9fdf5e5cb6 100644 --- a/sdk/identity/identity/test/internal/node/managedIdentityCredential.spec.ts +++ b/sdk/identity/identity/test/internal/node/managedIdentityCredential.spec.ts @@ -3,7 +3,10 @@ import qs from "qs"; import assert from "assert"; -import { WebResource, AccessToken, HttpHeaders, RestError } from "@azure/core-http"; + +import { AccessToken } from "@azure/core-auth"; + +import { WebResource, HttpHeaders, RestError } from "@azure/core-http"; import { ManagedIdentityCredential, AuthenticationError } from "../../../src"; import { imdsEndpoint, diff --git a/sdk/identity/identity/test/msalTestUtils.ts b/sdk/identity/identity/test/msalTestUtils.ts index 23874deda129..04d3a891df51 100644 --- a/sdk/identity/identity/test/msalTestUtils.ts +++ b/sdk/identity/identity/test/msalTestUtils.ts @@ -51,6 +51,8 @@ export function msalNodeTestSetup( recording.replace(/"access_token":"[^"]*"/g, `"access_token":"access_token"`), (recording: string): string => recording.replace(/"refresh_token":"[^"]*"/g, `"refresh_token":"refresh_token"`), + (recording: string): string => + recording.replace(/refresh_token=[^&]*/g, `refresh_token=refresh_token`), (recording: string): string => recording.replace( /client-request-id=[a-z0-9-]*/g, @@ -72,7 +74,7 @@ export function msalNodeTestSetup( recording.replace(/device_code":"[^"]*/g, `device_code":"DEVICE_CODE`), (recording: string): string => recording.replace(/device_code=[^&]*/g, `device_code=DEVICE_CODE`), - (recording: string): string => recording.replace(/"interval": *[0-9]*/g, `"interval": 1`), + (recording: string): string => recording.replace(/"interval": *[0-9]*/g, `"interval": 0`), // This last part is a JWT token that comes from the service, that has three parts joined by a dot. // Our fake id_token has the following parts encoded in base64 and joined by a dot: // - {"typ":"JWT","alg":"RS256","kid":"kid"} @@ -82,6 +84,13 @@ export function msalNodeTestSetup( recording.replace( /id_token":"[^"]*/g, `id_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6ImtpZCJ9.eyJhdWQiOiJhdWQiLCJpc3MiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyL3YyLjAiLCJpYXQiOjE2MTUzMzcxNjMsIm5iZiI6MTYxNTMzNzE2MywiZXhwIjoxNjE1MzQxMDYzLCJhaW8iOiJhaW8iLCJpZHAiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC9pZHAvIiwibmFtZSI6IkRhbmllbCBSb2Ryw61ndWV6Iiwib2lkIjoib2lkIiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZGFucm9kcmlAbWljcm9zb2Z0LmNvbSIsInJoIjoicmguIiwic3ViIjoic3ViIiwidGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIiwidXRpIjoidXRpIiwidmVyIjoiMi4wIn0=.bm9faWRlYV93aGF0c190aGlz` + ), + // client_info is base64-encoded JSON that contains information about the user and tenant IDs + // The following replaces it with some dummy JSON that uses a UID/UTID of 12345678-1234-1234-1234-123456789012 + (recording) => + recording.replace( + /client_info":"[^"]*/g, + 'client_info":"eyJ1aWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQtMTIzNC0xMjM0NTY3ODkwMTIiLCJ1dGlkIjoiMTIzNDU2NzgtMTIzNC0xMjM0LTEyMzQtMTIzNDU2Nzg5MDEyIn0K' ) ], queryParametersToSkip: [], @@ -136,7 +145,7 @@ export function testTracing(options: TestTracingOptions): () => Promise { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }; } diff --git a/sdk/identity/identity/test/public/node/authorizationCodeCredential.spec.ts b/sdk/identity/identity/test/public/node/authorizationCodeCredential.spec.ts index e75a00150489..3ba5bebf0006 100644 --- a/sdk/identity/identity/test/public/node/authorizationCodeCredential.spec.ts +++ b/sdk/identity/identity/test/public/node/authorizationCodeCredential.spec.ts @@ -129,7 +129,7 @@ describe("AuthorizationCodeCredential", function() { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); }); diff --git a/sdk/identity/identity/test/public/node/extensions.spec.ts b/sdk/identity/identity/test/public/node/extensions.spec.ts new file mode 100644 index 000000000000..493a2eca1bb5 --- /dev/null +++ b/sdk/identity/identity/test/public/node/extensions.spec.ts @@ -0,0 +1,44 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import assert, { AssertionError } from "assert"; +import { DefaultAzureCredential } from "../../../src"; +import { VisualStudioCodeCredential } from "../../../src"; + +/** + * A helper to assert that a Promise rejects. + */ +async function assertRejects(p: Promise, regexp: RegExp): Promise { + try { + await p; + } catch (e) { + if (!regexp.test(e.message)) { + throw new AssertionError({ + message: `The input did not match the regular expression ${regexp}. Input:\n\n'${e.message}'` + }); + } + return; + } + throw new AssertionError({ + message: "Expected the function body to throw." + }); +} + +describe("Extension API", function(this: Mocha.Suite) { + it("Setting persistence options throws if not initialized", function() { + assert.throws(() => { + new DefaultAzureCredential({ + tokenCachePersistenceOptions: { + enabled: true + } + }); + }, /no persistence provider.*@azure\/identity-cache-persistence/); + }); + + it("Calling getToken on VisualStudioCodeCredential throws if not initialized", async function() { + await assertRejects( + new VisualStudioCodeCredential().getToken("https://graph.microsoft.com/.default"), + /No implementation of VisualStudioCodeCredential.*@azure\/identity-vscode/ + ); + }); +}); diff --git a/sdk/identity/perf-tests/identity/package.json b/sdk/identity/perf-tests/identity/package.json index 543a21ce6093..386004f64238 100644 --- a/sdk/identity/perf-tests/identity/package.json +++ b/sdk/identity/perf-tests/identity/package.json @@ -7,7 +7,8 @@ "author": "", "license": "ISC", "dependencies": { - "@azure/identity": "2.0.0-beta.4", + "@azure/identity": "^2.0.0-beta.4", + "@azure/identity-cache-persistence": "~1.0.0-beta.1", "@azure/test-utils-perfstress": "^1.0.0", "dotenv": "^8.2.0" }, diff --git a/sdk/identity/perf-tests/identity/test/ClientSecretCredential/persistence.spec.ts b/sdk/identity/perf-tests/identity/test/ClientSecretCredential/persistence.spec.ts index dc9e2551258e..14f0112f9a6f 100644 --- a/sdk/identity/perf-tests/identity/test/ClientSecretCredential/persistence.spec.ts +++ b/sdk/identity/perf-tests/identity/test/ClientSecretCredential/persistence.spec.ts @@ -1,15 +1,13 @@ import { PerfStressTest, getEnvVar } from "@azure/test-utils-perfstress"; -import { ClientSecretCredential } from "@azure/identity"; +import { useIdentityExtension, ClientSecretCredential } from "@azure/identity"; + +import { cachePersistenceExtension } from "@azure/identity-cache-persistence"; +useIdentityExtension(cachePersistenceExtension); const scope = `https://servicebus.azure.net/.default`; /** * This test does silent authentication with persistence enabled. - * - * TODO: This test was made unusable by removing the persistence - * feature from the mainline identity package. When we add an - * extension package to reintroduce that behavior, this test - * will be refactored to support that. */ export class ClientSecretCredentialPersistenceTest extends PerfStressTest { options = {}; @@ -23,10 +21,11 @@ export class ClientSecretCredentialPersistenceTest extends PerfStressTest { // We want this credential to be initialized only if this test is executed. // Other tests should not be required to set up this credential. const credential = new ClientSecretCredential(tenantId, clientId, clientSecret, { - /* tokenCachePersistenceOptions: { + tokenCachePersistenceOptions: { + enabled: true, name: "nodeTestSilent", allowUnencryptedStorage: true - }*/ + } }); // This getToken call will cache the token. @@ -36,6 +35,6 @@ export class ClientSecretCredentialPersistenceTest extends PerfStressTest { } async runAsync(): Promise { - // await ClientSecretCredentialPersistenceTest.credential.getToken(scope); + await ClientSecretCredentialPersistenceTest.credential.getToken(scope); } } diff --git a/sdk/iot/ci.yml b/sdk/iot/ci.yml index db4abb094218..05606053d629 100644 --- a/sdk/iot/ci.yml +++ b/sdk/iot/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/iot/iot-modelsrepository/README.md b/sdk/iot/iot-modelsrepository/README.md index 38cdc2010249..6929ea69e592 100644 --- a/sdk/iot/iot-modelsrepository/README.md +++ b/sdk/iot/iot-modelsrepository/README.md @@ -2,7 +2,7 @@ This package contains an isomorphic Client Library for Azure IoT Models Repository in JavaScript. Use the Azure IoT Models Repository library for JavaScript to pull DTDL files from remote endpoints. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iot/iot-modelsrepository) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iot/iot-modelsrepository) | [Package (npm)](https://www.npmjs.com/package/@azure/iot-modelsrepository/) | Samples diff --git a/sdk/iot/iot-modelsrepository/package.json b/sdk/iot/iot-modelsrepository/package.json index 74a5e2efff4a..e1a131282d7b 100644 --- a/sdk/iot/iot-modelsrepository/package.json +++ b/sdk/iot/iot-modelsrepository/package.json @@ -60,7 +60,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/iot/iot-modelsrepository/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/iot/iot-modelsrepository/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/iot/iot-modelsrepository/samples/v1/javascript/README.md b/sdk/iot/iot-modelsrepository/samples/v1/javascript/README.md index 1b54fffa3579..025fcc369456 100644 --- a/sdk/iot/iot-modelsrepository/samples/v1/javascript/README.md +++ b/sdk/iot/iot-modelsrepository/samples/v1/javascript/README.md @@ -54,8 +54,8 @@ npx cross-env node dtmiConventionsSample.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[dtmiconventionssample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/iot/iot-modelsrepository/samples/v1/javascript/dtmiConventionsSample.js -[modelresolutionsample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/iot/iot-modelsrepository/samples/v1/javascript/modelResolutionSample.js +[dtmiconventionssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/iot/iot-modelsrepository/samples/v1/javascript/dtmiConventionsSample.js +[modelresolutionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/iot/iot-modelsrepository/samples/v1/javascript/modelResolutionSample.js [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iot/iot-modelsrepository/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iot/iot-modelsrepository/README.md diff --git a/sdk/iot/iot-modelsrepository/samples/v1/javascript/package.json b/sdk/iot/iot-modelsrepository/samples/v1/javascript/package.json index b438a832f14f..a3d83bc3e38c 100644 --- a/sdk/iot/iot-modelsrepository/samples/v1/javascript/package.json +++ b/sdk/iot/iot-modelsrepository/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iot/iot-modelsrepository", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iot/iot-modelsrepository", "dependencies": { "@azure/iot-modelsrepository": "next", "dotenv": "latest" diff --git a/sdk/iot/iot-modelsrepository/samples/v1/typescript/README.md b/sdk/iot/iot-modelsrepository/samples/v1/typescript/README.md index 3eccb04dab16..d0ec3c6dbcb7 100644 --- a/sdk/iot/iot-modelsrepository/samples/v1/typescript/README.md +++ b/sdk/iot/iot-modelsrepository/samples/v1/typescript/README.md @@ -66,9 +66,9 @@ npx cross-env node dist/dtmiConventionsSample.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[dtmiconventionssample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/iot/iot-modelsrepository/samples/v1/typescript/src/dtmiConventionsSample.ts -[modelresolutionsample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/iot/iot-modelsrepository/samples/v1/typescript/src/modelResolutionSample.ts +[dtmiconventionssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/iot/iot-modelsrepository/samples/v1/typescript/src/dtmiConventionsSample.ts +[modelresolutionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/iot/iot-modelsrepository/samples/v1/typescript/src/modelResolutionSample.ts [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iot/iot-modelsrepository/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iot/iot-modelsrepository/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/iot/iot-modelsrepository/samples/v1/typescript/package.json b/sdk/iot/iot-modelsrepository/samples/v1/typescript/package.json index 73d525a66787..163b9c00d548 100644 --- a/sdk/iot/iot-modelsrepository/samples/v1/typescript/package.json +++ b/sdk/iot/iot-modelsrepository/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iot/iot-modelsrepository", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iot/iot-modelsrepository", "dependencies": { "@azure/iot-modelsrepository": "next", "dotenv": "latest" diff --git a/sdk/iotcentral/arm-iotcentral/package.json b/sdk/iotcentral/arm-iotcentral/package.json index c60ec138547b..395353525347 100644 --- a/sdk/iotcentral/arm-iotcentral/package.json +++ b/sdk/iotcentral/arm-iotcentral/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iotcentral/arm-iotcentral", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iotcentral/arm-iotcentral", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/iothub/arm-iothub-profile-2020-09-01-hybrid/package.json b/sdk/iothub/arm-iothub-profile-2020-09-01-hybrid/package.json index 74b62fa93db0..b786b8f407a3 100644 --- a/sdk/iothub/arm-iothub-profile-2020-09-01-hybrid/package.json +++ b/sdk/iothub/arm-iothub-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iothub/arm-iothub-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iothub/arm-iothub-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/iothub/arm-iothub/package.json b/sdk/iothub/arm-iothub/package.json index 9d995774012d..7824a6ad8e67 100644 --- a/sdk/iothub/arm-iothub/package.json +++ b/sdk/iothub/arm-iothub/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/iothub/arm-iothub", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/iothub/arm-iothub", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/iotspaces/arm-iotspaces/package.json b/sdk/iotspaces/arm-iotspaces/package.json index 4c8af39a8bf2..fa3f916b50db 100644 --- a/sdk/iotspaces/arm-iotspaces/package.json +++ b/sdk/iotspaces/arm-iotspaces/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/iotspaces/arm-iotspaces", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/iotspaces/arm-iotspaces", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/keyvault/README.md b/sdk/keyvault/README.md index 8de1d801e010..3793ca496e58 100644 --- a/sdk/keyvault/README.md +++ b/sdk/keyvault/README.md @@ -17,10 +17,10 @@ A fourth package, `@azure/keyvault-admin` is also available for administrative t | NPM Package | Reference | Samples | | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | -| [@azure/keyvault-keys](https://npmjs.com/package/@azure/keyvault-keys) | [API Reference for @azure/keyvault-keys](https://docs.microsoft.com/javascript/api/@azure/keyvault-keys) | [Samples for working with keys](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys/samples) | -| [@azure/keyvault-secrets](https://npmjs.com/package/@azure/keyvault-secrets) | [API Reference for @azure/keyvault-secrets](https://docs.microsoft.com/javascript/api/@azure/keyvault-secrets) | [Samples for working with secrets](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets/samples) | -| [@azure/keyvault-certificates](https://npmjs.com/package/@azure/keyvault-certificates) | [API Reference for @azure/keyvault-certificates](https://docs.microsoft.com/javascript/api/@azure/keyvault-certificates) | [Samples for working with certificates](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates/samples) | -| [@azure/keyvault-admin](https://npmjs.com/package/@azure/keyvault-admin) | [API Reference for @azure/keyvault-admin](https://docs.microsoft.com/javascript/api/@azure/keyvault-admin) | [Samples for administrative tasks](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-admin/samples) | +| [@azure/keyvault-keys](https://npmjs.com/package/@azure/keyvault-keys) | [API Reference for @azure/keyvault-keys](https://docs.microsoft.com/javascript/api/@azure/keyvault-keys) | [Samples for working with keys](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys/samples) | +| [@azure/keyvault-secrets](https://npmjs.com/package/@azure/keyvault-secrets) | [API Reference for @azure/keyvault-secrets](https://docs.microsoft.com/javascript/api/@azure/keyvault-secrets) | [Samples for working with secrets](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets/samples) | +| [@azure/keyvault-certificates](https://npmjs.com/package/@azure/keyvault-certificates) | [API Reference for @azure/keyvault-certificates](https://docs.microsoft.com/javascript/api/@azure/keyvault-certificates) | [Samples for working with certificates](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates/samples) | +| [@azure/keyvault-admin](https://npmjs.com/package/@azure/keyvault-admin) | [API Reference for @azure/keyvault-admin](https://docs.microsoft.com/javascript/api/@azure/keyvault-admin) | [Samples for administrative tasks](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-admin/samples) | ### Features diff --git a/sdk/keyvault/arm-keyvault-profile-2019-03-01-hybrid/package.json b/sdk/keyvault/arm-keyvault-profile-2019-03-01-hybrid/package.json index e17d3649513f..687d0d755e39 100644 --- a/sdk/keyvault/arm-keyvault-profile-2019-03-01-hybrid/package.json +++ b/sdk/keyvault/arm-keyvault-profile-2019-03-01-hybrid/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/keyvault/arm-keyvault-profile-2019-03-01-hybrid", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/keyvault/arm-keyvault-profile-2019-03-01-hybrid", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/keyvault/arm-keyvault-profile-2020-09-01-hybrid/package.json b/sdk/keyvault/arm-keyvault-profile-2020-09-01-hybrid/package.json index 8105507f9035..95be678bbf1f 100644 --- a/sdk/keyvault/arm-keyvault-profile-2020-09-01-hybrid/package.json +++ b/sdk/keyvault/arm-keyvault-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/arm-keyvault-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/arm-keyvault-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/keyvault/ci.yml b/sdk/keyvault/ci.yml index e0b7575d6f61..fd39937bfaf5 100644 --- a/sdk/keyvault/ci.yml +++ b/sdk/keyvault/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/keyvault/keyvault-admin/CHANGELOG.md b/sdk/keyvault/keyvault-admin/CHANGELOG.md index 54ce9d13406c..f8152d5d14fd 100644 --- a/sdk/keyvault/keyvault-admin/CHANGELOG.md +++ b/sdk/keyvault/keyvault-admin/CHANGELOG.md @@ -58,7 +58,7 @@ This release marks the general availability of the `@azure/keyvault-admin` packa ## 4.0.0-beta.2 (2021-02-09) -- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md). +- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md). - Updated the Key Vault Admin Long Running Operation Pollers to follow a more compact and meaningful approach moving forward. - Bug fix: The logging of HTTP requests wasn't properly working - now it has been fixed and tests have been written that verify the fix. - [Breaking] Return `BackupResult` and `RestoreResult` from backup/restore long running operations which will contain additional information about the operation as well any relevant data. diff --git a/sdk/keyvault/keyvault-admin/README.md b/sdk/keyvault/keyvault-admin/README.md index 1c84c2892efa..78b5b39ec144 100644 --- a/sdk/keyvault/keyvault-admin/README.md +++ b/sdk/keyvault/keyvault-admin/README.md @@ -6,7 +6,7 @@ The package `@azure/keyvault-admin` provides support for administrative Key Vaul > Note: The Administration library only works with [Azure Key Vault Managed HSM][managedhsm] - functions targeting a Key Vault will fail. > -> Note: This package cannot be used in the browser due to Azure Key Vault service limitations, please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/master/samples/cors/ts/README.md) for guidance. +> Note: This package cannot be used in the browser due to Azure Key Vault service limitations, please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/main/samples/cors/ts/README.md) for guidance. [Source code][package-gh] | [Package (npm)][package-npm] | [API Reference Documentation][docs] | [Product documentation][docs-service] | [Samples][samples] @@ -207,8 +207,8 @@ The methods that begin long running operations return a poller that allows you t We have samples both in JavaScript and TypeScript that show the access control and backup/restore features in this package. Please follow the corresponding readmes for detailed steps to run the samples. -- [Readme for JavaScript samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-admin/samples/v4/javascript/README.md) -- [Readme for TypeScript samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-admin/samples/v4/typescript/README.md) +- [Readme for JavaScript samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-admin/samples/v4/javascript/README.md) +- [Readme for TypeScript samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-admin/samples/v4/typescript/README.md) ## Troubleshooting @@ -224,31 +224,31 @@ setLogLevel("info"); You can find more code samples through the following links: -- [KeyVault Administration Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-admin/samples/v4/javascript) -- [KeyVault Administration Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-admin/samples/v4/typescript) -- [KeyVault Administration Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-admin/test/) +- [KeyVault Administration Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-admin/samples/v4/javascript) +- [KeyVault Administration Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-admin/samples/v4/typescript) +- [KeyVault Administration Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-admin/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-admin%2FREADME.png) -[dac]: https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/identity/Azure.Identity/README.md +[dac]: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/identity/Azure.Identity/README.md [jwk]: https://tools.ietf.org/html/rfc7517 [access_control]: https://docs.microsoft.com/azure/key-vault/managed-hsm/access-control [api-rest]: https://docs.microsoft.com/rest/api/keyvault/ [azure-cli]: https://docs.microsoft.com/cli/azure -[azure-identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure-identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [azure-sub]: https://azure.microsoft.com/free/ [backup_client]: ./src/KeyVaultBackupClient.cs [best_practices]: https://docs.microsoft.com/azure/key-vault/managed-hsm/best-practices [built_in_roles]: https://docs.microsoft.com/azure/key-vault/managed-hsm/built-in-roles [code_of_conduct]: https://opensource.microsoft.com/codeofconduct/ [compiler-options]: https://www.typescriptlang.org/docs/handbook/compiler-options.html -[core-lro]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-lro +[core-lro]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/core-lro [docs-overview]: https://docs.microsoft.com/azure/key-vault/key-vault-overview [docs-service]: https://azure.microsoft.com/services/key-vault/ [docs]: https://docs.microsoft.com/javascript/api/@azure/keyvault-admin @@ -256,12 +256,12 @@ If you'd like to contribute to this library, please read the [contributing guide [dotenv]: https://www.npmjs.com/package/dotenv] [identity-npm]: https://www.npmjs.com/package/@azure/identity [keyvault_docs]: https://docs.microsoft.com/azure/key-vault/ -[logging]: https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/core/Azure.Core/samples/Diagnostics.ts.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Microsoft.Azure.KeyVault/CONTRIBUTING.md +[logging]: https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/core/Azure.Core/samples/Diagnostics.ts.com/Azure/azure-sdk-for-net/blob/master/sdk/keyvault/Microsoft.Azure.KeyVault/CONTRIBUTING.md [managedhsm]: https://docs.microsoft.com/azure/key-vault/managed-hsm/overview [npm]: https://www.npmjs.com/ -[package-gh]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-admin +[package-gh]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-admin [package-npm]: https://www.npmjs.com/package/@azure/keyvault-admin -[samples]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-admin/samples +[samples]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-admin/samples [storage-account-create-cli]: https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-cli [storage-account-create-portal]: https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-portal [storage-account-create-ps]: https://docs.microsoft.com/azure/storage/common/storage-quickstart-create-account?tabs=azure-powershell diff --git a/sdk/keyvault/keyvault-admin/package.json b/sdk/keyvault/keyvault-admin/package.json index 63f9883025a3..1bbfe7e3580d 100644 --- a/sdk/keyvault/keyvault-admin/package.json +++ b/sdk/keyvault/keyvault-admin/package.json @@ -5,7 +5,7 @@ "version": "4.1.0-beta.1", "license": "MIT", "description": "Isomorphic client library for Azure KeyVault's administrative functions.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-admin/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-admin/README.md", "repository": "github:Azure/azure-sdk-for-js", "keywords": [ "node", @@ -107,7 +107,7 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "@types/uuid": "^8.0.0", "uuid": "^8.3.0", @@ -117,7 +117,7 @@ "@azure/abort-controller": "^1.0.0", "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/keyvault-keys": "^4.2.1", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/keyvault/keyvault-admin/samples/v4/javascript/README.md b/sdk/keyvault/keyvault-admin/samples/v4/javascript/README.md index 6d33fe894aa6..67f466a188df 100644 --- a/sdk/keyvault/keyvault-admin/samples/v4/javascript/README.md +++ b/sdk/keyvault/keyvault-admin/samples/v4/javascript/README.md @@ -64,10 +64,10 @@ npx cross-env AZURE_MANAGEDHSM_URI="" CLIENT_OBJECT_ID=" Only Managed HSM instances support the KeyVault Administration client package, as such you'll need to ensure one is deployed to run these tests. To do so you'll want to pass `enableHsm` as an ARM template parameter. > @@ -12,7 +12,7 @@ You can use existing Azure resources for the live tests, or generate new ones by > New-TestResources.ps1 -ServiceDirectory 'keyvault' -ArmTemplateParameters @{ "enableHsm" = $true } > ``` -The `New-TestResources` script will ensure that the Managed HSM is activated; however, if you are creating your own Managed HSM there are additional steps required to set up the correct permissions and activate the HSM. Please see [Activate Your Managed HSM](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-admin/README.md#activate-your-managed-hsm) for more information. +The `New-TestResources` script will ensure that the Managed HSM is activated; however, if you are creating your own Managed HSM there are additional steps required to set up the correct permissions and activate the HSM. Please see [Activate Your Managed HSM](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-admin/README.md#activate-your-managed-hsm) for more information. > Managed HSMs do have an hourly cost even when not in-use. Please review the [Azure Dedicated HSM Pricing page](https://azure.microsoft.com/pricing/details/azure-dedicated-hsm/#pricing) and clean up the resources when not in use. diff --git a/sdk/keyvault/keyvault-certificates/CHANGELOG.md b/sdk/keyvault/keyvault-certificates/CHANGELOG.md index 8155259ec892..a8d2a9c879b0 100644 --- a/sdk/keyvault/keyvault-certificates/CHANGELOG.md +++ b/sdk/keyvault/keyvault-certificates/CHANGELOG.md @@ -38,7 +38,7 @@ ## 4.2.0-beta.2 (2021-02-09) -- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md). +- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md). - Updated the Key Vault Certificates Long Running Operation Pollers to follow a more compact and meaningful approach moving forward. - Bug fix: The logging of HTTP requests wasn't properly working - now it has been fixed and tests have been written that verify the fix. - [Breaking] Removed `parseKeyVaultCertificatesIdentifier` from the public API. diff --git a/sdk/keyvault/keyvault-certificates/README.md b/sdk/keyvault/keyvault-certificates/README.md index cc47c4ba3ef1..8ddd5d6dcdc0 100644 --- a/sdk/keyvault/keyvault-certificates/README.md +++ b/sdk/keyvault/keyvault-certificates/README.md @@ -14,9 +14,9 @@ Use the client library for Azure Key Vault Certificates in your Node.js applicat - Get all certificates. - Get all deleted certificates. -> Note: This package cannot be used in the browser due to Azure Key Vault service limitations, please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/master/samples/cors/ts/README.md) for guidance. +> Note: This package cannot be used in the browser due to Azure Key Vault service limitations, please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/main/samples/cors/ts/README.md) for guidance. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates) | [Package (npm)](https://www.npmjs.com/package/@azure/keyvault-certificates) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/keyvault-certificates) | [Product documentation](https://azure.microsoft.com/services/key-vault/) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples) +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates) | [Package (npm)](https://www.npmjs.com/package/@azure/keyvault-certificates) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/keyvault-certificates) | [Product documentation](https://azure.microsoft.com/services/key-vault/) | [Samples](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples) ## Getting started @@ -92,7 +92,7 @@ Use the [Azure Cloud Shell](https://shell.azure.com/bash) snippet below to creat ## Authenticating with Azure Active Directory -The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) provides more details and samples to get you started. +The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) provides more details and samples to get you started. Here's a quick example. First, import `DefaultAzureCredential` and `CertificateClient`: @@ -678,12 +678,12 @@ setLogLevel("info"); You can find more code samples through the following links: -- [KeyVault Certificates Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript) -- [KeyVault Certificates Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript) -- [KeyVault Certificates Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/test/) +- [KeyVault Certificates Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript) +- [KeyVault Certificates Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript) +- [KeyVault Certificates Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-certificates%2FREADME.png) diff --git a/sdk/keyvault/keyvault-certificates/migration-guide.md b/sdk/keyvault/keyvault-certificates/migration-guide.md index fae6752dd902..19b5fc13ed93 100644 --- a/sdk/keyvault/keyvault-certificates/migration-guide.md +++ b/sdk/keyvault/keyvault-certificates/migration-guide.md @@ -207,9 +207,9 @@ await client.purgeDeletedCertificate(deletedCertificate.name); ## Additional samples -- [Key Vault Certificates samples for JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript) +- [Key Vault Certificates samples for JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript) - [General Key Vault samples for JavaScript](https://docs.microsoft.com/samples/browse/?products=azure-key-vault&languages=javascript) -- [Key Vault Certificates samples for TypeScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript) +- [Key Vault Certificates samples for TypeScript](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript) - [General Key Vault samples for TypeScript](https://docs.microsoft.com/samples/browse/?products=azure-key-vault&languages=typescript) [kvk-npm]: https://www.npmjs.com/package/@azure/keyvault-keys @@ -217,4 +217,4 @@ await client.purgeDeletedCertificate(deletedCertificate.name); [kvc-npm]: https://www.npmjs.com/package/@azure/keyvault-certificates [ts-guidelines]: https://azure.github.io/azure-sdk/typescript_introduction.html [identity-npm]: https://www.npmjs.com/package/@azure/identity -[identity-readme-dac]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md#defaultazurecredential +[identity-readme-dac]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md#defaultazurecredential diff --git a/sdk/keyvault/keyvault-certificates/package.json b/sdk/keyvault/keyvault-certificates/package.json index 1c4d58b221b0..ac684a2f05e2 100644 --- a/sdk/keyvault/keyvault-certificates/package.json +++ b/sdk/keyvault/keyvault-certificates/package.json @@ -5,7 +5,7 @@ "version": "4.3.0-beta.1", "license": "MIT", "description": "Isomorphic client library for Azure KeyVault's certificates.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/README.md", "repository": "github:Azure/azure-sdk-for-js", "keywords": [ "node", @@ -111,14 +111,14 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/keyvault-secrets": "^4.2.0", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/keyvault/keyvault-certificates/samples/v4/javascript/README.md b/sdk/keyvault/keyvault-certificates/samples/v4/javascript/README.md index e224f37b5f09..4d1c60cb2adb 100644 --- a/sdk/keyvault/keyvault-certificates/samples/v4/javascript/README.md +++ b/sdk/keyvault/keyvault-certificates/samples/v4/javascript/README.md @@ -71,17 +71,17 @@ npx cross-env KEYVAULT_URI="" node backupAndRestore.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/backupAndRestore.js -[contacts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/contacts.js -[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/deleteAndRecover.js -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/helloWorld.js -[importcertificate]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/importCertificate.js -[issuers]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/issuers.js -[listcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/listCertificates.js -[mergecertificate]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/mergeCertificate.js -[operations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/operations.js -[purgeallcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/javascript/purgeAllCertificates.js +[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/backupAndRestore.js +[contacts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/contacts.js +[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/deleteAndRecover.js +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/helloWorld.js +[importcertificate]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/importCertificate.js +[issuers]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/issuers.js +[listcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/listCertificates.js +[mergecertificate]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/mergeCertificate.js +[operations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/operations.js +[purgeallcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/javascript/purgeAllCertificates.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/keyvault-certificates [freesub]: https://azure.microsoft.com/free/ [createinstance_azurekeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates/README.md diff --git a/sdk/keyvault/keyvault-certificates/samples/v4/javascript/package.json b/sdk/keyvault/keyvault-certificates/samples/v4/javascript/package.json index 536b4ad13c74..ff0bee378446 100644 --- a/sdk/keyvault/keyvault-certificates/samples/v4/javascript/package.json +++ b/sdk/keyvault/keyvault-certificates/samples/v4/javascript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates", "dependencies": { "@azure/keyvault-certificates": "next", "dotenv": "latest", diff --git a/sdk/keyvault/keyvault-certificates/samples/v4/typescript/README.md b/sdk/keyvault/keyvault-certificates/samples/v4/typescript/README.md index 325b24ddef4f..351774568359 100644 --- a/sdk/keyvault/keyvault-certificates/samples/v4/typescript/README.md +++ b/sdk/keyvault/keyvault-certificates/samples/v4/typescript/README.md @@ -83,18 +83,18 @@ npx cross-env KEYVAULT_URI="" node dist/backupAndRestore.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/backupAndRestore.ts -[contacts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/contacts.ts -[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/deleteAndRecover.ts -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/helloWorld.ts -[importcertificate]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/importCertificate.ts -[issuers]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/issuers.ts -[listcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/listCertificates.ts -[mergecertificate]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/mergeCertificate.ts -[operations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/operations.ts -[purgeallcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/purgeAllCertificates.ts +[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/backupAndRestore.ts +[contacts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/contacts.ts +[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/deleteAndRecover.ts +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/helloWorld.ts +[importcertificate]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/importCertificate.ts +[issuers]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/issuers.ts +[listcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/listCertificates.ts +[mergecertificate]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/mergeCertificate.ts +[operations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/operations.ts +[purgeallcertificates]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/samples/v4/typescript/src/purgeAllCertificates.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/keyvault-certificates [freesub]: https://azure.microsoft.com/free/ [createinstance_azurekeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/keyvault/keyvault-certificates/samples/v4/typescript/package.json b/sdk/keyvault/keyvault-certificates/samples/v4/typescript/package.json index 276d7d11fc2f..b8a90994a436 100644 --- a/sdk/keyvault/keyvault-certificates/samples/v4/typescript/package.json +++ b/sdk/keyvault/keyvault-certificates/samples/v4/typescript/package.json @@ -29,7 +29,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-certificates", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-certificates", "dependencies": { "@azure/keyvault-certificates": "next", "dotenv": "latest", diff --git a/sdk/keyvault/keyvault-certificates/test/README.md b/sdk/keyvault/keyvault-certificates/test/README.md index 86e0547fd655..99d59ccde586 100644 --- a/sdk/keyvault/keyvault-certificates/test/README.md +++ b/sdk/keyvault/keyvault-certificates/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/keyvault/keyvault-common/README.md b/sdk/keyvault/keyvault-common/README.md index a47b7e5dfaa9..b0cda8bac778 100644 --- a/sdk/keyvault/keyvault-common/README.md +++ b/sdk/keyvault/keyvault-common/README.md @@ -8,10 +8,10 @@ This package contains common code that needs to be shared among the other Azure The following client libraries use this package: -- [@azure/keyvault-admin](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-admin/README.md) -- [@azure/keyvault-certificates](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-certificates/README.md) -- [@azure/keyvault-keys](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/README.md) -- [@azure/keyvault-secrets](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/README.md) +- [@azure/keyvault-admin](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-admin/README.md) +- [@azure/keyvault-certificates](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-certificates/README.md) +- [@azure/keyvault-keys](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/README.md) +- [@azure/keyvault-secrets](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/README.md) ## Getting started @@ -35,6 +35,6 @@ If you run into issues while using this library, directly or indirectly, please ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-common%2FREADME.png) diff --git a/sdk/keyvault/keyvault-common/package.json b/sdk/keyvault/keyvault-common/package.json index 9c6b59f2b15c..4f7d09eb6bc9 100644 --- a/sdk/keyvault/keyvault-common/package.json +++ b/sdk/keyvault/keyvault-common/package.json @@ -58,8 +58,8 @@ }, "dependencies": { "@azure/core-http": "^1.2.0", - "tslib": "^2.2.0", - "@azure/core-tracing": "1.0.0-preview.11" + "@azure/core-tracing": "1.0.0-preview.12", + "tslib": "^2.2.0" }, "devDependencies": { "@azure/eslint-plugin-azure-sdk": "^3.0.0", diff --git a/sdk/keyvault/keyvault-common/test/utils/supportsTracing.ts b/sdk/keyvault/keyvault-common/test/utils/supportsTracing.ts index da54ac21a98c..e3b3aa41f8af 100644 --- a/sdk/keyvault/keyvault-common/test/utils/supportsTracing.ts +++ b/sdk/keyvault/keyvault-common/test/utils/supportsTracing.ts @@ -34,7 +34,7 @@ export async function supportsTracing( // Ensure top-level children are created correctly. // Testing the entire tree structure can be tricky as other packages might create their own spans. - const spanGraph = tracer.getSpanGraph(rootSpan.context().traceId); + const spanGraph = tracer.getSpanGraph(rootSpan.spanContext().traceId); const directChildren = spanGraph.roots[0].children.map((child) => child.name); // LROs might poll N times, so we'll make a unique array and compare that. assert.sameMembers(Array.from(new Set(directChildren)), children); diff --git a/sdk/keyvault/keyvault-keys/CHANGELOG.md b/sdk/keyvault/keyvault-keys/CHANGELOG.md index d0cd6f571038..51b8480a8554 100644 --- a/sdk/keyvault/keyvault-keys/CHANGELOG.md +++ b/sdk/keyvault/keyvault-keys/CHANGELOG.md @@ -60,7 +60,7 @@ ## 4.2.0-beta.3 (2021-02-09) -- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md). +- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md). - Updated the Key Vault Keys Long Running Operation Pollers to follow a more compact and meaningful approach moving forward. - Bug fix: The logging of HTTP requests wasn't properly working - now it has been fixed and tests have been written that verify the fix. - Added a constructor overload to `CryptographyClient` that takes a `JsonWebKey` and allows for local-only subset of operations. diff --git a/sdk/keyvault/keyvault-keys/README.md b/sdk/keyvault/keyvault-keys/README.md index 13eaf6b68fa2..045a8b08d009 100644 --- a/sdk/keyvault/keyvault-keys/README.md +++ b/sdk/keyvault/keyvault-keys/README.md @@ -153,7 +153,7 @@ az keyvault security-domain download --hsm-name --sd-wrapp ## Authenticating with Azure Active Directory -The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity/README.md) provides more details and samples to get you started. +The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity/README.md) provides more details and samples to get you started. Here's a quick example. First, import `DefaultAzureCredential` and `KeyClient`: @@ -841,23 +841,23 @@ setLogLevel("info"); You can find more code samples through the following links: -- [KeyVault Keys Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/javascript) -- [KeyVault Keys Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/typescript) -- [KeyVault Keys Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/test/) +- [KeyVault Keys Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/javascript) +- [KeyVault Keys Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/typescript) +- [KeyVault Keys Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. [aboutkeys]: https://docs.microsoft.com/azure/key-vault/keys/about-keys [keyvault]: https://docs.microsoft.com/azure/key-vault/key-vault-overview [managedhsm]: https://docs.microsoft.com/azure/key-vault/managed-hsm/overview -[cors]: https://github.com/Azure/azure-sdk-for-js/blob/master/samples/cors/ts/README.md -[package-gh]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys +[cors]: https://github.com/Azure/azure-sdk-for-js/blob/main/samples/cors/ts/README.md +[package-gh]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys [package-npm]: https://www.npmjs.com/package/@azure/keyvault-keys [docs]: https://docs.microsoft.com/javascript/api/@azure/keyvault-keys [docs-service]: https://azure.microsoft.com/services/key-vault/ -[samples]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples +[samples]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples [tscompileroptions]: https://www.typescriptlang.org/docs/handbook/compiler-options.html [azure-sub]: https://azure.microsoft.com/free/ [azure-cli]: https://docs.microsoft.com/cli/azure diff --git a/sdk/keyvault/keyvault-keys/migration-guide.md b/sdk/keyvault/keyvault-keys/migration-guide.md index ed535af53500..cf4848dbcfd0 100644 --- a/sdk/keyvault/keyvault-keys/migration-guide.md +++ b/sdk/keyvault/keyvault-keys/migration-guide.md @@ -249,9 +249,9 @@ console.log(operationResult.result); ## Additional samples -- [Key Vault keys samples for JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys/samples/v4/javascript) +- [Key Vault keys samples for JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys/samples/v4/javascript) - [General Key Vault samples for JavaScript](https://docs.microsoft.com/samples/browse/?products=azure-key-vault&languages=javascript) -- [Key Vault keys samples for TypeScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys/samples/v4/typescript) +- [Key Vault keys samples for TypeScript](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys/samples/v4/typescript) - [General Key Vault samples for TypeScript](https://docs.microsoft.com/samples/browse/?products=azure-key-vault&languages=typescript) [kvk-npm]: https://www.npmjs.com/package/@azure/keyvault-keys @@ -259,4 +259,4 @@ console.log(operationResult.result); [kvc-npm]: https://www.npmjs.com/package/@azure/keyvault-certificates [ts-guidelines]: https://azure.github.io/azure-sdk/typescript_introduction.html [identity-npm]: https://www.npmjs.com/package/@azure/identity -[identity-readme-dac]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md#defaultazurecredential +[identity-readme-dac]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md#defaultazurecredential diff --git a/sdk/keyvault/keyvault-keys/package.json b/sdk/keyvault/keyvault-keys/package.json index 2c721ce3210a..85cf47732d64 100644 --- a/sdk/keyvault/keyvault-keys/package.json +++ b/sdk/keyvault/keyvault-keys/package.json @@ -5,7 +5,7 @@ "version": "4.3.0-beta.1", "license": "MIT", "description": "Isomorphic client library for Azure KeyVault's keys.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/README.md", "repository": "github:Azure/azure-sdk-for-js", "keywords": [ "node", @@ -107,14 +107,14 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils": "^1.0.0", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.json b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.json index dcaadaaae913..3fc463b3d0f6 100644 --- a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.json +++ b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.json @@ -1,58 +1,58 @@ { "recordings": [ { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/create", + "method": "GET", + "url": "https://keyvault_name.vault.azure.net/keys", "query": { "api-version": "7.2" }, "requestBody": "", "status": 401, - "response": "{\"error\":{\"code\":\"Unauthorized\",\"message\":\"Request is missing a Bearer or PoP token.\"}}", + "response": "{\"error\":{\"code\":\"Unauthorized\",\"message\":\"AKV10000: Request is missing a Bearer or PoP token.\"}}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "87", + "content-length": "97", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:03 GMT", + "date": "Thu, 17 Jun 2021 22:28:57 GMT", "expires": "-1", "pragma": "no-cache", "status": "401", "strict-transport-security": "max-age=31536000;includeSubDomains", "www-authenticate": "Bearer authorization=\"https://login.windows.net/12345678-1234-1234-1234-123456789012\", resource=\"https://vault.azure.net\"", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "c0d51578-0c0e-4fea-8c2e-47b694cdae8e", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "ed067b2c-333e-42dd-a526-b1592bac0f5f", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "c3579639-4463-4be5-87af-5b73efc1bf44", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "be104998-e1d5-4d79-8c40-33eaf62c5a12", "x-powered-by": "ASP.NET" } }, { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/create", + "method": "GET", + "url": "https://keyvault_name.vault.azure.net/keys", "query": { "api-version": "7.2" }, "requestBody": "", "status": 401, - "response": "{\"error\":{\"code\":\"Unauthorized\",\"message\":\"Request is missing a Bearer or PoP token.\"}}", + "response": "{\"error\":{\"code\":\"Unauthorized\",\"message\":\"AKV10000: Request is missing a Bearer or PoP token.\"}}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "87", + "content-length": "97", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:03 GMT", + "date": "Thu, 17 Jun 2021 22:28:57 GMT", "expires": "-1", "pragma": "no-cache", "status": "401", "strict-transport-security": "max-age=31536000;includeSubDomains", "www-authenticate": "Bearer authorization=\"https://login.windows.net/12345678-1234-1234-1234-123456789012\", resource=\"https://vault.azure.net\"", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "cd0d0897-fafc-4a1d-baba-6d60657e3377", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "68fb0167-aff6-487d-aa2f-a5d86b02abc1", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "0d946851-2aad-43b1-abbd-3820985a557a", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "5738fba5-6936-4cad-a542-6b0fdaadab8d", "x-powered-by": "ASP.NET" } }, @@ -60,1150 +60,101 @@ "method": "POST", "url": "https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fvault.azure.net%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1315", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:03 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+est\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+san\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11654.16 - EUS ProdSlices", - "x-ms-request-id": "cda45f29-c2d1-4ffa-bcae-a62ba9635701" + "x-ms-ests-server": "2.1.11829.4 - SCUS ProdSlices", + "x-ms-request-id": "a867aa5c-ca07-4596-b271-331a3b58c200" } }, { "method": "POST", "url": "https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fvault.azure.net%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1315", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:03 GMT", + "date": "Thu, 17 Jun 2021 22:28:57 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+est\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+san\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11654.16 - SCUS ProdSlices", - "x-ms-request-id": "bdddb7dd-f411-4f99-a419-89977f975901" - } - }, - { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/create", - "query": { - "api-version": "7.2" - }, - "requestBody": "{\"kty\":\"RSA\"}", - "status": 200, - "response": "{\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/2a51e751a9364664b6b99e56d9a9e6a7\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"17CjCeQS5w7j0cPRWtbsXk7qacwDREJJcv-1i-ZSW8Nv7YvTYvRak7F_BlC4ykpf9XGDzL62o0jD_1z6sMz9kvAPyWRZVGBZ9vcjn4Jj_yWnIwVfktWbC0-bkrt8NqG08c4zjpx6a_WNo1WAENsv_vT_aVgK00GtWxtG1NvTZ6Z18wOqZ9voP_v6-IqWOSaQgkR7-Z74ysKYTAdo4Hidt2NZALJyjYt5TGG9zEJpHOT3KiQ6tgj9zOjDiKJgrVHeSIIvu4M-Y9L0uU0_zRigZ3SI6WHlBoXuqfGQVdn5Bgppnt84fhhZ9We5QIi4kNhvBRk5G_-entPHwO1f0LjgGQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647263,\"updated\":1619647263,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "758", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:03 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "c0d51578-0c0e-4fea-8c2e-47b694cdae8e", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "0314a6da-b304-44b5-8997-a7bbf57ba8b0", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/create", - "query": { - "api-version": "7.2" - }, - "requestBody": "{\"kty\":\"RSA\"}", - "status": 200, - "response": "{\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/5598cc80b3f447ff935cd2d739170b81\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"222WxmRX30FAas-1kMvpgIuTbG-cb_ESeM4ymftTtscpYARymQgd7taetTFB2aH4VHml2BKZtmuN72bdUWJd0ImkyrC06Ti6eV5X9lvs3DIbO7PwJzMEbHBIHFC2dl6uVeodD5d5SVYdecQL0UYyzkWgHeIrXV2f4Ka7-uYoTpjX_7bRMeDzO41ZQkZRkXNhy9FRDR3knWEewOx4OwiWukmiBhorr06GWvqhP2Hp9c3yaTio-UD3Ao_mwfhtqbj0cF68C-rYkDpFCYI5n1M4_B6-jyEGT_rfE9XdikWzxxmkz9SLiiu7TvTi2N7ZtLbrsAcFOc1IdWUnA7itwzsOyQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647264,\"updated\":1619647264,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "758", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:03 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "cd0d0897-fafc-4a1d-baba-6d60657e3377", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "959e4090-e9de-467c-8c50-73f5d8387d36", - "x-powered-by": "ASP.NET" + "x-ms-ests-server": "2.1.11829.4 - WUS2 ProdSlices", + "x-ms-request-id": "b9509a54-3fe4-47e5-ae1b-42f173a37100" } }, { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", + "method": "GET", + "url": "https://keyvault_name.vault.azure.net/keys", "query": { "api-version": "7.2" }, "requestBody": null, "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\",\"deletedDate\":1619647264,\"scheduledPurgeDate\":1620252064,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/2a51e751a9364664b6b99e56d9a9e6a7\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"17CjCeQS5w7j0cPRWtbsXk7qacwDREJJcv-1i-ZSW8Nv7YvTYvRak7F_BlC4ykpf9XGDzL62o0jD_1z6sMz9kvAPyWRZVGBZ9vcjn4Jj_yWnIwVfktWbC0-bkrt8NqG08c4zjpx6a_WNo1WAENsv_vT_aVgK00GtWxtG1NvTZ6Z18wOqZ9voP_v6-IqWOSaQgkR7-Z74ysKYTAdo4Hidt2NZALJyjYt5TGG9zEJpHOT3KiQ6tgj9zOjDiKJgrVHeSIIvu4M-Y9L0uU0_zRigZ3SI6WHlBoXuqfGQVdn5Bgppnt84fhhZ9We5QIi4kNhvBRk5G_-entPHwO1f0LjgGQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647263,\"updated\":1619647263,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", + "response": "{\"value\":[{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-1\",\"attributes\":{\"enabled\":true,\"created\":1623967959,\"updated\":1623967959,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-1\",\"attributes\":{\"enabled\":true,\"created\":1623968785,\"updated\":1623968785,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}],\"nextLink\":null}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "961", + "content-length": "585", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:04 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "pragma": "no-cache", "status": "200", "strict-transport-security": "max-age=31536000;includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "31127ed4-e56b-45dc-b4ac-38bb88cb6228", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "4411ff4f-1dbc-48ca-b3e1-b79ea639116c", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:04 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "fcf24e5e-d00c-4ce9-8148-69e4b32521d4", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "ab06c8eb-ba9e-491e-83ca-e8f2a162828c", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:04 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "1f3b44ca-2800-4e0a-904d-e455a0c4562a", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "84a4a74a-c5aa-4b4c-9943-9347357d502a", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:06 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "19143b06-539f-418f-87b4-baf8c413c38a", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "2ba25187-4fdb-4add-9d71-db6b6ad2c0e8", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:08 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "407832d0-7f85-4aca-8abc-b7d2c4514822", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "4e66945e-dd14-432b-bac0-e8ad615a2305", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:09 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "f2042e92-d89f-473f-8f94-5ad50b8d3430", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "8232c1fd-a874-4efb-a987-7eb603906eff", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:12 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "67076461-271f-40be-9d15-ec9585fb715a", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "91e55084-28ec-46d9-9542-0537b91ca186", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:14 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "bf131e35-309f-44c2-8f8d-33632711c660", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "f5a95e20-6485-44f4-bb28-7be03878feb1", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:16 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "450adb61-d8e5-4e74-8f6d-d95d7eeb67ce", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "ef66b383-5a9c-41bd-9703-83b5b164fd38", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:18 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "ba247f25-1d61-4385-9372-f6637ff276ee", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "ce6efdae-3f6a-4ad1-b478-3dfdc3a5b84d", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:20 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "c906efa5-7e38-440d-9ff1-6edae3f9b1d5", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "61b7b14c-bc62-4b35-8494-b088f9462bba", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:22 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "02ae80ad-4f44-4830-8a7d-d92ef24c7ac8", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "2d8ae957-e46d-4c70-bb8f-4a99b297fa6a", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:24 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "56b3f498-4837-4d40-932e-679cb4fca533", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "68fb0167-aff6-487d-aa2f-a5d86b02abc1", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "145b8a4e-da66-465c-a002-b2dc467ddb9d", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "a784515e-27b5-4022-bbd9-5236aedb905b", "x-powered-by": "ASP.NET" } }, { "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", + "url": "https://keyvault_name.vault.azure.net/keys", "query": { "api-version": "7.2" }, "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", + "status": 200, + "response": "{\"value\":[{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-1\",\"attributes\":{\"enabled\":true,\"created\":1623967959,\"updated\":1623967959,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-1\",\"attributes\":{\"enabled\":true,\"created\":1623968785,\"updated\":1623968785,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}],\"nextLink\":null}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "151", + "content-length": "585", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:27 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "70786cde-5e01-4fe0-ab61-e4ce6b91864a", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "24d00040-4d0f-4fa2-a6f9-d93f80584ea0", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:29 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "fd900836-1c3e-4d20-bf30-bd01223b43d7", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "6530c539-a960-46e6-8351-3c922b0c7116", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:31 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "0eaecff4-9c82-41a4-b8d8-4b50158f4058", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "6a3d0b7d-54be-4057-8af4-ff7d36027679", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:33 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "01083114-8452-4eab-8908-679c908229b5", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "f37522ee-35cc-4deb-a4a6-c1b66efd12e4", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:35 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "aa758474-3c1e-466e-a422-434d70fddd0a", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "b7ec685d-18f5-4851-b429-0b54b333a160", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:37 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "d41cd2b7-5a8b-47e7-8d10-d37e50fa584d", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "c7dc33a6-143b-470d-9b8f-2807afe5b5fe", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:39 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "66b4a33a-f41c-46f4-92b3-e003a6717309", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "c36b499e-4117-4efb-8643-748f9e1f379a", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0\",\"deletedDate\":1619647264,\"scheduledPurgeDate\":1620252064,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/2a51e751a9364664b6b99e56d9a9e6a7\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"17CjCeQS5w7j0cPRWtbsXk7qacwDREJJcv-1i-ZSW8Nv7YvTYvRak7F_BlC4ykpf9XGDzL62o0jD_1z6sMz9kvAPyWRZVGBZ9vcjn4Jj_yWnIwVfktWbC0-bkrt8NqG08c4zjpx6a_WNo1WAENsv_vT_aVgK00GtWxtG1NvTZ6Z18wOqZ9voP_v6-IqWOSaQgkR7-Z74ysKYTAdo4Hidt2NZALJyjYt5TGG9zEJpHOT3KiQ6tgj9zOjDiKJgrVHeSIIvu4M-Y9L0uU0_zRigZ3SI6WHlBoXuqfGQVdn5Bgppnt84fhhZ9We5QIi4kNhvBRk5G_-entPHwO1f0LjgGQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647263,\"updated\":1619647263,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "961", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:42 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "207626b3-d813-4866-8c37-2e767dd7bd41", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "c4b9b0b4-35e9-4c26-9374-a310ececd74f", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 204, - "response": "", - "responseHeaders": { - "cache-control": "no-cache", - "date": "Wed, 28 Apr 2021 22:01:42 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "204", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "4804cd47-d6b6-408e-bd00-ef594e707077", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "561bbb6d-8e01-4432-9663-26e1ce97be4c", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\",\"deletedDate\":1619647302,\"scheduledPurgeDate\":1620252102,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/5598cc80b3f447ff935cd2d739170b81\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"222WxmRX30FAas-1kMvpgIuTbG-cb_ESeM4ymftTtscpYARymQgd7taetTFB2aH4VHml2BKZtmuN72bdUWJd0ImkyrC06Ti6eV5X9lvs3DIbO7PwJzMEbHBIHFC2dl6uVeodD5d5SVYdecQL0UYyzkWgHeIrXV2f4Ka7-uYoTpjX_7bRMeDzO41ZQkZRkXNhy9FRDR3knWEewOx4OwiWukmiBhorr06GWvqhP2Hp9c3yaTio-UD3Ao_mwfhtqbj0cF68C-rYkDpFCYI5n1M4_B6-jyEGT_rfE9XdikWzxxmkz9SLiiu7TvTi2N7ZtLbrsAcFOc1IdWUnA7itwzsOyQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647264,\"updated\":1619647264,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "961", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:42 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "pragma": "no-cache", "status": "200", "strict-transport-security": "max-age=31536000;includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "357e84c7-19f2-48db-a2fd-678dfd4d4d71", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "69ebecc9-82c3-4e84-b803-8704fe3cbb8f", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:42 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "c092cf7d-12f0-4f6b-878e-03a6e7f47c82", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "6eb89a32-0ed7-4967-90b0-30dece334b13", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:43 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "3998abdd-3c05-4332-8f0d-adbcb119f27f", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "75faffbd-9838-4456-8166-e4f883d199dc", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:45 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "35e1377e-99f0-4713-b48c-e016a95c66b7", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "206328ee-17fb-4f5e-85f5-5133d9cd095f", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:47 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "b3b7d199-b3f0-495b-bae5-2279c7c97ac8", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "ff0c2d24-0c95-463f-9f50-7ced7c2e0313", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:49 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "eeed7b20-56ed-4b9d-bd7a-d30c94e9fd79", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "cead2980-1ab3-4399-8f8e-e67d4a659da5", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:51 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "130896bc-6347-4469-8950-7099b9f0ea00", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "47d08a2c-eb86-41cb-b93b-ca4006b96c4b", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:53 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "80382463-7501-4593-bc6b-e67539c5ef5d", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "c253da4c-1cc1-49b1-b481-8d4bf8a5420b", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:55 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "a75e0f49-9e71-4aff-ae6a-26779ce94573", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "05d3561d-03f2-4a16-9468-ab6a9ab1bfd5", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:57 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "f06a7a64-5ae1-4a1e-bb33-6e4a15306881", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "094d6e5f-a92c-46f6-9147-a3b0cc9a392e", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:01:59 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "4a5a7ea3-3eda-4eab-80df-30a80624404f", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "e82daaaa-568c-4bb4-9354-1144e3def318", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:01 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "8d6f1a53-814b-4dce-8449-bbd8991e60eb", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "b1c56830-805a-4e69-9c14-8330eb64612c", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:03 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "e5a80f93-e193-40be-9fdb-717e2e6713ab", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "a54cafe6-47e6-4a5b-b703-e6c4100cb5de", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:06 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "db074074-d649-42e0-a6b1-b4742b7bce05", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "4e633b57-12ec-4944-8995-0751f24b13a8", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "151", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:08 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "dc3ad068-79d6-4358-8d0c-f532776e6a5c", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "bf907fb4-89a2-4a12-986c-f1b49f38ac02", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1\",\"deletedDate\":1619647302,\"scheduledPurgeDate\":1620252102,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/5598cc80b3f447ff935cd2d739170b81\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"222WxmRX30FAas-1kMvpgIuTbG-cb_ESeM4ymftTtscpYARymQgd7taetTFB2aH4VHml2BKZtmuN72bdUWJd0ImkyrC06Ti6eV5X9lvs3DIbO7PwJzMEbHBIHFC2dl6uVeodD5d5SVYdecQL0UYyzkWgHeIrXV2f4Ka7-uYoTpjX_7bRMeDzO41ZQkZRkXNhy9FRDR3knWEewOx4OwiWukmiBhorr06GWvqhP2Hp9c3yaTio-UD3Ao_mwfhtqbj0cF68C-rYkDpFCYI5n1M4_B6-jyEGT_rfE9XdikWzxxmkz9SLiiu7TvTi2N7ZtLbrsAcFOc1IdWUnA7itwzsOyQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647264,\"updated\":1619647264,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "961", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:10 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "5a261f42-3244-4da3-8bd1-cdd02bf4b07f", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "a8476e86-f990-424d-b965-652d5e1e1801", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 204, - "response": "", - "responseHeaders": { - "cache-control": "no-cache", - "date": "Wed, 28 Apr 2021 22:02:10 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "204", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "1de935e9-bcce-4877-a996-8da89e0e9962", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "ed067b2c-333e-42dd-a526-b1592bac0f5f", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "6dc1066d-3fde-46ab-945b-942b72d1d16f", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "29782669-986b-484b-be52-2bc0a2882a7c", "x-powered-by": "ASP.NET" } } @@ -1212,5 +163,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "3941290142852679600642c5ff88e569" + "hash": "9c6eaed2ebe372dd12aa2b3b7d5155e9" } \ No newline at end of file diff --git a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.json b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.json index b7cb8df3054a..4138ace45287 100644 --- a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.json +++ b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.json @@ -1,30 +1,30 @@ { "recordings": [ { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/create", + "method": "GET", + "url": "https://keyvault_name.vault.azure.net/deletedkeys", "query": { "api-version": "7.2" }, "requestBody": "", "status": 401, - "response": "{\"error\":{\"code\":\"Unauthorized\",\"message\":\"Request is missing a Bearer or PoP token.\"}}", + "response": "{\"error\":{\"code\":\"Unauthorized\",\"message\":\"AKV10000: Request is missing a Bearer or PoP token.\"}}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "87", + "content-length": "97", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:10 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "pragma": "no-cache", "status": "401", "strict-transport-security": "max-age=31536000;includeSubDomains", "www-authenticate": "Bearer authorization=\"https://login.windows.net/12345678-1234-1234-1234-123456789012\", resource=\"https://vault.azure.net\"", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "c7bd4ba5-df11-4e36-9a1d-3fb3d5f831e6", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "7736f559-035b-4ca4-b0c8-ac2fa40210ff", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "95ba86af-d8a3-4ffc-ad52-76f815ca1fa8", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "d11e35f6-71da-459c-bed5-2ddb3a5fef14", "x-powered-by": "ASP.NET" } }, @@ -32,856 +32,77 @@ "method": "POST", "url": "https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token", "query": {}, - "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fvault.azure.net%2F.default", + "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fsanitized%2F", "status": 200, "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", "responseHeaders": { "cache-control": "no-store, no-cache", "content-length": "1315", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:10 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", "pragma": "no-cache", "referrer-policy": "strict-origin-when-cross-origin", - "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+est\"}]}", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+san\"}]}", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-ests-server": "2.1.11654.16 - SCUS ProdSlices", - "x-ms-request-id": "bdddb7dd-f411-4f99-a419-89976da45901" - } - }, - { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/create", - "query": { - "api-version": "7.2" - }, - "requestBody": "{\"kty\":\"RSA\"}", - "status": 200, - "response": "{\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/099f65d16ee64e11b9d659cda5c344dc\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"tlhyOCWLeGj0v5gONw5eBIxMV5ET9mYJkl_T4J2jv4D6ikKgmIF0FKwFGTn7fpO5RxYMrfEXeD8mekyvpBYhpGG1Oq6ZEZnorft-vD7tYavUyiseC0-O0-RCFczgGlMSqN6TuhQH0lv3k8kP7zmJpflklkJ7L5qM9M-8IqBeQEbf_VY4pAz3B98EDyfViVaNZXBBKUBSODvjKgdFS16h5NuCmeay9v42X5VYwPfr1JYZmvCg7Q3IcoZGKaQTBDfMmoJ915AjoDbBWPknVTlJ4Av1My6f-cRUHQZXiFgBF1fHEAg2F57-L9yEHdl4zffs7zIdTfCHXlgUTCcO9_fipQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647331,\"updated\":1619647331,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "770", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:11 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "c7bd4ba5-df11-4e36-9a1d-3fb3d5f831e6", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "5de64f54-b35d-47ec-95ee-f54fe03b5715", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "POST", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/create", - "query": { - "api-version": "7.2" - }, - "requestBody": "{\"kty\":\"RSA\"}", - "status": 200, - "response": "{\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/ae4a4d7025954fbd892bf029c273a2a1\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"uuQ9R-hMobBcWPzHZ-g5rE_GYmh7pmIwA9ltnlncwENos6oAeuudbLu_pDB80-2TbAZpsmBGmntDAcwd-uKcnH08tsu9Y2uJCGZP-B9h8HtRfOOX1yYXxYHl-bBOZx2wYK4Padf8KDpFpW6estsFfDWnnThNBe7j7nxFr5K4HmXlo5RNHYgXpJSLWw2mer7AYaJ6UqSxsTZlGVjA69iHV5VxkIA2D3GezlV8hUs3dKpG96IPCLqFrmehifdsArfyFi0bBI5VAYImTPAj65EeSyd9qx9rCt7r7XW61rcQ2-x2OCSFNMtMUAlsG25_ApmJjzVwy-KHO6W2TfdqU4z04Q\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647331,\"updated\":1619647331,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "770", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:11 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "6c517f63-01b1-4643-9aa6-7739dd37c7df", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "7eff579c-4c34-4448-8c1e-2823743f04c5", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\",\"deletedDate\":1619647331,\"scheduledPurgeDate\":1620252131,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/099f65d16ee64e11b9d659cda5c344dc\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"tlhyOCWLeGj0v5gONw5eBIxMV5ET9mYJkl_T4J2jv4D6ikKgmIF0FKwFGTn7fpO5RxYMrfEXeD8mekyvpBYhpGG1Oq6ZEZnorft-vD7tYavUyiseC0-O0-RCFczgGlMSqN6TuhQH0lv3k8kP7zmJpflklkJ7L5qM9M-8IqBeQEbf_VY4pAz3B98EDyfViVaNZXBBKUBSODvjKgdFS16h5NuCmeay9v42X5VYwPfr1JYZmvCg7Q3IcoZGKaQTBDfMmoJ915AjoDbBWPknVTlJ4Av1My6f-cRUHQZXiFgBF1fHEAg2F57-L9yEHdl4zffs7zIdTfCHXlgUTCcO9_fipQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647331,\"updated\":1619647331,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "985", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:11 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "b73f8df9-0e11-4185-9ac7-0f798fd764b4", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "46241eeb-eb00-44e9-847b-ef11e83b9c4f", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:11 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "69ee483a-d3c6-4882-bcbc-2d06a1d6276b", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "baa4eec7-df3c-4748-a160-547e286e530b", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:11 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "fa29b38b-553f-48e6-85e4-99f624a6fee3", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "1320f074-eac2-4020-bda6-6be2b7a812a8", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:13 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "3e7b2930-8c41-4581-be9f-cf1d4817bd3e", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "00afe1cf-547e-48c9-b19d-303d57f4db34", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:15 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "3dc33c0d-2b09-4f0d-9c5a-d4a6986c0bbc", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "902307e4-52e2-4b5c-b98a-c37c4a6a1c79", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:17 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "659638fd-2f9b-4912-b595-67edb68cf279", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "524d049b-38ff-4aad-b31f-945d754524cf", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:19 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "0bfeaa65-507d-4b5b-847d-6d1862ae1951", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "a1423cc1-e77d-4c6e-8cfa-9cbce38e4a6a", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:22 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "b448b28f-faba-4f08-abed-82e910e0c48b", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "7d18e02c-762d-4d8d-af5b-7cb7f36a8d71", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:24 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "65ad86ca-9567-45fe-9938-d2227b55df02", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "18f0f54d-060c-43ad-be52-680eb5ababc7", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:26 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "f606b777-0ab9-40a4-b241-5ca534b48ab8", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "1a394739-bce7-4518-b284-85afeba82e9f", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:28 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "d1abd6e9-c805-4931-a1ee-4f0a9d97c748", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "1ef6b3de-6e14-48f7-965e-9171be98c935", - "x-powered-by": "ASP.NET" + "x-ms-ests-server": "2.1.11829.4 - WUS2 ProdSlices", + "x-ms-request-id": "823a5ee1-ec9f-4230-9b62-25d78e285300" } }, { "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:30 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "564f5e2b-b7bd-43c2-9963-b1c12d8e9766", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "87e71aac-1d47-4a42-973c-51a0bcf82c06", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", + "url": "https://keyvault_name.vault.azure.net/deletedkeys", "query": { "api-version": "7.2" }, "requestBody": null, "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0\",\"deletedDate\":1619647331,\"scheduledPurgeDate\":1620252131,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/099f65d16ee64e11b9d659cda5c344dc\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"tlhyOCWLeGj0v5gONw5eBIxMV5ET9mYJkl_T4J2jv4D6ikKgmIF0FKwFGTn7fpO5RxYMrfEXeD8mekyvpBYhpGG1Oq6ZEZnorft-vD7tYavUyiseC0-O0-RCFczgGlMSqN6TuhQH0lv3k8kP7zmJpflklkJ7L5qM9M-8IqBeQEbf_VY4pAz3B98EDyfViVaNZXBBKUBSODvjKgdFS16h5NuCmeay9v42X5VYwPfr1JYZmvCg7Q3IcoZGKaQTBDfMmoJ915AjoDbBWPknVTlJ4Av1My6f-cRUHQZXiFgBF1fHEAg2F57-L9yEHdl4zffs7zIdTfCHXlgUTCcO9_fipQ\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647331,\"updated\":1619647331,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", + "response": "{\"value\":[{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1\",\"deletedDate\":1623968152,\"scheduledPurgeDate\":1624572952,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1\",\"attributes\":{\"enabled\":true,\"created\":1623968038,\"updated\":1623968038,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1\",\"deletedDate\":1623967880,\"scheduledPurgeDate\":1624572680,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1\",\"attributes\":{\"enabled\":true,\"created\":1623967755,\"updated\":1623967755,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0\",\"deletedDate\":1623967959,\"scheduledPurgeDate\":1624572759,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0\",\"attributes\":{\"enabled\":true,\"created\":1623967959,\"updated\":1623967959,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0\",\"deletedDate\":1623968786,\"scheduledPurgeDate\":1624573586,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0\",\"attributes\":{\"enabled\":true,\"created\":1623968785,\"updated\":1623968785,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}],\"nextLink\":null}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "985", + "content-length": "1953", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:32 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "pragma": "no-cache", "status": "200", "strict-transport-security": "max-age=31536000;includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "4bfb0ee0-75d7-48d0-a94a-05c91675f944", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "7736f559-035b-4ca4-b0c8-ac2fa40210ff", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "a7d0c270-2902-478f-b541-ac457a82ef27", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 204, - "response": "", - "responseHeaders": { - "cache-control": "no-cache", - "date": "Wed, 28 Apr 2021 22:02:32 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "204", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "5252ec4b-45ce-485f-a12f-a50765d3d4a4", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "efc92669-c8a8-4b89-82cc-132b2b497a51", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\",\"deletedDate\":1619647353,\"scheduledPurgeDate\":1620252153,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/ae4a4d7025954fbd892bf029c273a2a1\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"uuQ9R-hMobBcWPzHZ-g5rE_GYmh7pmIwA9ltnlncwENos6oAeuudbLu_pDB80-2TbAZpsmBGmntDAcwd-uKcnH08tsu9Y2uJCGZP-B9h8HtRfOOX1yYXxYHl-bBOZx2wYK4Padf8KDpFpW6estsFfDWnnThNBe7j7nxFr5K4HmXlo5RNHYgXpJSLWw2mer7AYaJ6UqSxsTZlGVjA69iHV5VxkIA2D3GezlV8hUs3dKpG96IPCLqFrmehifdsArfyFi0bBI5VAYImTPAj65EeSyd9qx9rCt7r7XW61rcQ2-x2OCSFNMtMUAlsG25_ApmJjzVwy-KHO6W2TfdqU4z04Q\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647331,\"updated\":1619647331,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "985", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:33 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "200", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "f7699cec-dd07-4ae7-9706-945e08048f69", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "c051414e-c53d-41e7-b7d5-943cb14406a2", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:33 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "08ef22c3-eadc-4f45-91ae-2cb39faf3b6f", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "fbdc550e-1a80-4709-9e0e-2487febb9026", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:33 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "aafc6920-a91a-4a87-808d-d6dfcfa7d1db", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "8df6d8ab-6e05-4b32-bfa2-96bbf8898edb", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "e01d43f2-6e0e-4f3a-8494-1d0a859e2005", "x-powered-by": "ASP.NET" } }, { "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:35 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "3800fab9-d8cb-4f48-911e-6c855d57ab16", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "68a0e78b-1911-4800-89f8-eedf7280c79c", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:37 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "770eff9a-3f7c-4aad-9330-de2357d80ea5", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "032cdf86-a7e0-402a-b7bc-1f99c1d48143", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:40 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "640e7f1f-995e-4bf7-b36a-d5876302dd75", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "3ecf777f-3be3-4293-8648-d5837740d3e3", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:42 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "5e981ca2-9d6d-4dc8-b228-927ca51bb60a", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "f9d7a595-d586-4d2d-9049-d454519b5634", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:44 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "ac986a56-b2a0-4119-bf27-2f1f270aadf9", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "13618779-a22a-4986-8410-70278b2aaab4", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:46 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "d3c9dbf3-497e-4f9c-a9b2-5fc70dc483e8", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "79c570e4-c926-4699-8717-b91d272b6eaf", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:48 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "be14bf76-6483-450d-897e-c8b240eb8e91", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "d6c8fd29-6f69-405e-ae35-ab2e2aba05b6", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:50 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "1202c346-9656-474c-a27f-4669a0fb6cce", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "e74c6055-b95e-402b-85b9-8533af2be974", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:52 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "1f33ba11-4e0b-40fc-9a63-3345d623043f", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "84584808-360a-41d9-97dd-dad636086de0", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 404, - "response": "{\"error\":{\"code\":\"KeyNotFound\",\"message\":\"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\"}}", - "responseHeaders": { - "cache-control": "no-cache", - "content-length": "163", - "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:54 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "404", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "6ff433b8-a22e-4d2a-adf8-6a3a553cb4b1", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "096057ea-34b0-42e2-866b-054fb7d751c5", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "GET", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", + "url": "https://keyvault_name.vault.azure.net/deletedkeys", "query": { "api-version": "7.2" }, "requestBody": null, "status": 200, - "response": "{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1\",\"deletedDate\":1619647353,\"scheduledPurgeDate\":1620252153,\"key\":{\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/ae4a4d7025954fbd892bf029c273a2a1\",\"kty\":\"RSA\",\"key_ops\":[\"encrypt\",\"decrypt\",\"sign\",\"verify\",\"wrapKey\",\"unwrapKey\"],\"n\":\"uuQ9R-hMobBcWPzHZ-g5rE_GYmh7pmIwA9ltnlncwENos6oAeuudbLu_pDB80-2TbAZpsmBGmntDAcwd-uKcnH08tsu9Y2uJCGZP-B9h8HtRfOOX1yYXxYHl-bBOZx2wYK4Padf8KDpFpW6estsFfDWnnThNBe7j7nxFr5K4HmXlo5RNHYgXpJSLWw2mer7AYaJ6UqSxsTZlGVjA69iHV5VxkIA2D3GezlV8hUs3dKpG96IPCLqFrmehifdsArfyFi0bBI5VAYImTPAj65EeSyd9qx9rCt7r7XW61rcQ2-x2OCSFNMtMUAlsG25_ApmJjzVwy-KHO6W2TfdqU4z04Q\",\"e\":\"AQAB\"},\"attributes\":{\"enabled\":true,\"created\":1619647331,\"updated\":1619647331,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}", + "response": "{\"value\":[{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1\",\"deletedDate\":1623968152,\"scheduledPurgeDate\":1624572952,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1\",\"attributes\":{\"enabled\":true,\"created\":1623968038,\"updated\":1623968038,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1\",\"deletedDate\":1623967880,\"scheduledPurgeDate\":1624572680,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1\",\"attributes\":{\"enabled\":true,\"created\":1623967755,\"updated\":1623967755,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0\",\"deletedDate\":1623967959,\"scheduledPurgeDate\":1624572759,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0\",\"attributes\":{\"enabled\":true,\"created\":1623967959,\"updated\":1623967959,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}},{\"recoveryId\":\"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0\",\"deletedDate\":1623968786,\"scheduledPurgeDate\":1624573586,\"kid\":\"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0\",\"attributes\":{\"enabled\":true,\"created\":1623968785,\"updated\":1623968785,\"recoveryLevel\":\"CustomizedRecoverable+Purgeable\",\"recoverableDays\":7}}],\"nextLink\":null}", "responseHeaders": { "cache-control": "no-cache", - "content-length": "985", + "content-length": "1953", "content-type": "application/json; charset=utf-8", - "date": "Wed, 28 Apr 2021 22:02:56 GMT", + "date": "Thu, 17 Jun 2021 22:28:58 GMT", "expires": "-1", "pragma": "no-cache", "status": "200", "strict-transport-security": "max-age=31536000;includeSubDomains", "x-content-type-options": "nosniff", - "x-ms-client-request-id": "765f26f4-7cdf-476c-919c-252ec21ccc49", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", - "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "57f4f83f-5b92-486c-a661-2aeea284e586", - "x-powered-by": "ASP.NET" - } - }, - { - "method": "DELETE", - "url": "https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1", - "query": { - "api-version": "7.2" - }, - "requestBody": null, - "status": 204, - "response": "", - "responseHeaders": { - "cache-control": "no-cache", - "date": "Wed, 28 Apr 2021 22:02:56 GMT", - "expires": "-1", - "pragma": "no-cache", - "status": "204", - "strict-transport-security": "max-age=31536000;includeSubDomains", - "x-content-type-options": "nosniff", - "x-ms-client-request-id": "fdef981f-b15e-4d77-aec4-bb1fd60fc70c", - "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;", + "x-ms-client-request-id": "d6c488d9-f0c5-4252-9d28-325ee4b403c5", + "x-ms-keyvault-network-info": "conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;", "x-ms-keyvault-region": "westus2", - "x-ms-keyvault-service-version": "1.2.265.0", - "x-ms-request-id": "e2df8ee7-e5ff-4eba-be7d-6316890fc61c", + "x-ms-keyvault-service-version": "1.9.12.0", + "x-ms-request-id": "c7cc40e2-cb52-4695-9263-810a77695fad", "x-powered-by": "ASP.NET" } } @@ -890,5 +111,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "fe0ec113d9766925d232a4e3a9c7ddb9" + "hash": "9f2d93241a593aee460253e5c0a48bca" } \ No newline at end of file diff --git a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_skip_unexpected_properties_on_the_wwwauthenticate_header.json b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_skip_unexpected_properties_on_the_wwwauthenticate_header.json index 539b108a5ea9..fabb6733b99a 100644 --- a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_skip_unexpected_properties_on_the_wwwauthenticate_header.json +++ b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_skip_unexpected_properties_on_the_wwwauthenticate_header.json @@ -4,5 +4,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "cf98903365cb28ca09595b575b7f48df" + "hash": "03b9330c9921c9f2e4bad266d38a1810" } \ No newline at end of file diff --git a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_work_for_known_shapes_of_the_wwwauthenticate_header.json b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_work_for_known_shapes_of_the_wwwauthenticate_header.json index 851cac615b51..59a72e60e3a7 100644 --- a/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_work_for_known_shapes_of_the_wwwauthenticate_header.json +++ b/sdk/keyvault/keyvault-keys/recordings/browsers/challenge_based_authentication_tests_parsewwwauthenticate_tests/recording_should_work_for_known_shapes_of_the_wwwauthenticate_header.json @@ -4,5 +4,5 @@ "uniqueName": {}, "newDate": {} }, - "hash": "188b994850775d6558e141b77cef014f" + "hash": "ef4a12d626aa4a453cd7dd1cc395049f" } \ No newline at end of file diff --git a/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.js b/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.js index f661a4708c86..b450bb32fe4f 100644 --- a/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.js +++ b/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_authentication_should_work_for_parallel_requests.js @@ -1,19 +1,19 @@ let nock = require('nock'); -module.exports.hash = "e3934ac4f2e65a6ed21b91952a328e5a"; +module.exports.hash = "3138840c62d5525d51e48591fcb982f7"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/create') + .get('/keys') .query(true) - .reply(401, {"error":{"code":"Unauthorized","message":"Request is missing a Bearer or PoP token."}}, [ + .reply(401, {"error":{"code":"Unauthorized","message":"AKV10000: Request is missing a Bearer or PoP token."}}, [ 'Cache-Control', 'no-cache', 'Pragma', 'no-cache', 'Content-Length', - '87', + '97', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -23,13 +23,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - '10e659a5-a622-4f06-b9d7-a5cbbca9b545', + 'fbd8541d-4d8f-4964-a1d0-237def9e36cf', 'x-ms-request-id', - 'a1247a71-0f5a-4312-a23c-fc7597f1a1fd', + '47032a68-c26c-4efe-b72c-3ce584437d51', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -37,19 +37,19 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:21:59 GMT' + 'Thu, 17 Jun 2021 22:28:51 GMT' ]); nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/create') + .get('/keys') .query(true) - .reply(401, {"error":{"code":"Unauthorized","message":"Request is missing a Bearer or PoP token."}}, [ + .reply(401, {"error":{"code":"Unauthorized","message":"AKV10000: Request is missing a Bearer or PoP token."}}, [ 'Cache-Control', 'no-cache', 'Pragma', 'no-cache', 'Content-Length', - '87', + '97', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -59,13 +59,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - '9f2f394c-483f-4815-8731-b24792f7d2ea', + '9495860f-384c-482d-ae6e-28a855ee4861', 'x-ms-request-id', - '9bd106ef-f920-49b9-b073-7a5a0f6f99e3', + 'abce7d6f-ee7b-492e-b4e4-177975807b0a', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -73,7 +73,7 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:21:59 GMT' + 'Thu, 17 Jun 2021 22:28:51 GMT' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) @@ -82,8 +82,6 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ 'Cache-Control', 'max-age=86400, private', - 'Content-Length', - '980', 'Content-Type', 'application/json; charset=utf-8', 'Strict-Transport-Security', @@ -97,28 +95,29 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - '8b5e5033-5fc7-428a-be78-2f1c72c45c01', + '160957e1-d225-4c45-9f25-b1f19d6a0f00', 'x-ms-ests-server', - '2.1.11654.16 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA; expires=Fri, 28-May-2021 21:22:00 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Ao1gVB6FGWJOvs35Dc7NsqQ; expires=Sat, 17-Jul-2021 22:28:52 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrCqkxdEhHvf1NtK5404MGwyzgVwPKDjCQy3gjTdNDcDQEe9UtMFlsNEfaL9XGoXGxTzOpD_cxw6RgemoHZhYnacSlAQOY5ZSKab4V6gzIbnaSypIyj6dDqxn47yPvx2xoNN2V8FzBH0c7nvfV1I7YlyZhnOLcbCFoTh4qSKaVaOMgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrRC7b662Q1R5V6LcRH2bTGvaJJhUlWEKca2OV2k9DH6E44f9NXUypTFuzubr75TCn00acGhfWudhINDVPNn7h48WCUt7xdXfB10-bReXPSTIswtP7bxqvwnK5QmA_stVTiur5mJcIpvOuF6Y_bk303mJLCi4kuuz5xMulLqUbA_YgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT' + 'Thu, 17 Jun 2021 22:28:52 GMT', + 'Content-Length', + '980' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) - .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .get('/common/discovery/instance') + .query(true) + .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ 'Cache-Control', 'max-age=86400, private', - 'Content-Length', - '1651', 'Content-Type', 'application/json; charset=utf-8', 'Strict-Transport-Security', @@ -132,25 +131,26 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - 'd398971b-bb3f-48fb-a127-957b3df64001', + '91eaa44f-2d7c-4f74-94a8-4845fccf6b00', 'x-ms-ests-server', - '2.1.11654.16 - SCUS ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA; expires=Fri, 28-May-2021 21:22:00 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=AiON2Z5V_ydHrb8RPEU9_5s; expires=Sat, 17-Jul-2021 22:28:52 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr24LxKHHoUdd9UfEvDD4XQkT0JwF61Clz9eawzcQmI7vG4iKtEA8FXfeoCglkMA8YKjwfEbMhqg07YK2kpvBlUKQfku36g_V08MDAKNLNGix7lCjE5RZO4nYpdQGKO2UhhXCQ60bhsNm5XC457riY9VWi0m7AM2HdmhRyDQQXvbogAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrztqC-5j1M9lUIMAbaIq2gT4f1H58oB-XUam_djk40eUyd713t9OjOPLTsjaLAV8HCXj4kPC2XV9D-3AqumMxdqGN3ore_BlE72wKDTgv2rwTMhfzbmQHERb6Z__9AKzF7n6wg5I-c6bM1r_fAijJsaijommGhA4S2tiQMz9mX3ggAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT' + 'Thu, 17 Jun 2021 22:28:52 GMT', + 'Content-Length', + '980' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) - .get('/common/discovery/instance') - .query(true) - .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ + .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -166,26 +166,26 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - '7041e92b-155b-472f-994c-876625cdc902', + 'c37bbbcf-7b48-4569-a1c6-fe5667604700', 'x-ms-ests-server', - '2.1.11654.16 - WUS2 ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA; expires=Fri, 28-May-2021 21:22:00 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Ao1gVB6FGWJOvs35Dc7NsqQ; expires=Sat, 17-Jul-2021 22:28:52 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrWFAZjf6-Z0zooszv-84dJ0l-ymSDbDGDwgfHujsQEA8sFWVUdkcOznSAK-8aq08rwMCW7khq6SeirpnZNaH0RXsG7o4KVPOdQc9u7IQqOdlKZ02Sv3H84UKMg9B6Z0-13B7t5HFsXnajtVSsKwLTAyeMf9_snkdD68hfbyiVWLcgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr0R5ErPBrSv9KUmg0MH7oge1ec_A0FuGjgvcPJmrdl2-O1RMuRtxCp9YVZMiX4p3Q5rdyXSLb_lpQbcvTkLQM2KUdrxH3xbLa8H88DXrW8hiuPhuOZiZviRSTY3PguDkpKDPf4hdeZgqx5FqGmbJvFH8-CN90XtsBHlHq7RvHLKogAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT', + 'Thu, 17 Jun 2021 22:28:52 GMT', 'Content-Length', - '980' + '1753' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -201,35 +201,30 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - 'cab7963a-ca27-4f30-bc5b-918a6cba5001', + 'e82e7891-eb58-40f4-a1dd-57a97f1a8100', 'x-ms-ests-server', - '2.1.11654.16 - EUS ProdSlices', + '2.1.11829.4 - EUS ProdSlices', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA; expires=Fri, 28-May-2021 21:22:00 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=AiON2Z5V_ydHrb8RPEU9_5s; expires=Sat, 17-Jul-2021 22:28:52 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr7OCgoywTeApdWaAM_wYlwMZw8iKXtIWqKCRyr6VRnr6DpWVr5sBhgTfTAf5T2134d8m4ycX8w8SehkuLSX_co9ueqHiptdkKuNYIxMYBVCH0BhDKk9X5HC7kzfLjBgwNFKb6SpDsZbXmckCQ5UE6d_ECAwMvoPTwZhAO8SmS3-ggAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevr1kyeMIAhG6c2DNS4_Diig7tvhQtisdOFEcQtqhks8f15DP2NJ1gQnN6UJFnGXE_tPPhx876xofjx1AsTa7XKFj6duJnfZahAkKZc9H_uXMdCGxwhuxbIpJQo9YqTDnVWZMsKWb4YVNalIw_FWuTXKHRsuopzWuIfvSoLg95_I1IgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT', + 'Thu, 17 Jun 2021 22:28:52 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) - .filteringRequestBody(function (body) { - return body.replace(/client-request-id=[^&]*/g, "client-request-id=client-request-id"); - }) - .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fvault.azure.net%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=client-request-id&client_secret=azure_client_secret") + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&client-request-id=dcb0332a-7673-423d-9386-511f8b2c7cc2&client_secret=azure_client_secret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', 'Pragma', 'no-cache', - 'Content-Length', - '1315', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -241,33 +236,30 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - '422bd614-376f-4bda-ad74-35cb32794201', + '271dc4c1-09b0-4f2a-a1f7-d3cbc5324700', 'x-ms-ests-server', - '2.1.11654.16 - EUS ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA4BL6UwEAAAD4yBvYDgAAAA; expires=Fri, 28-May-2021 21:22:00 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=Ao1gVB6FGWJOvs35Dc7NsqQNEFROAQAAAKTDXdgOAAAA; expires=Sat, 17-Jul-2021 22:28:52 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT' + 'Thu, 17 Jun 2021 22:28:52 GMT', + 'Content-Length', + '1315' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) - .filteringRequestBody(function (body) { - return body.replace(/client-request-id=[^&]*/g, "client-request-id=client-request-id"); - }) - .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fvault.azure.net%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=client-request-id&client_secret=azure_client_secret") + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&client-request-id=c7e22fa7-90ee-4661-ac9f-d8d94b1175c8&client_secret=azure_client_secret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', 'Pragma', 'no-cache', - 'Content-Length', - '1315', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -279,59 +271,27 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - 'a5c23f86-3c48-4fd5-9d25-a439c6f35f01', + 'bfa72bca-3bba-4ee3-a33b-e8a8bd826400', 'x-ms-ests-server', - '2.1.11654.16 - EUS ProdSlices', + '2.1.11829.4 - WUS2 ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA4BL6UwEAAAD3yBvYDgAAAA; expires=Fri, 28-May-2021 21:22:00 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=AiON2Z5V_ydHrb8RPEU9_5sNEFROAQAAAKTDXdgOAAAA; expires=Sat, 17-Jul-2021 22:28:52 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/create', {"kty":"RSA"}) - .query(true) - .reply(200, {"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/36606918bb1d49a6af8ab8335b7f3c8c","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"oHTwiHZ9AcRwEm6V80MeDJXBJ2ezVp5WLFTX30zQshSnQ25zhIV3uo0b5cDvLBUYN_2EU4fLOgyDx3MwLq-JSZt7FxUDXaMjb8CCMhcIqGORMeNIBcriIRX6dtBiF3nTosmXuaigzK5VuOxJxfrB50FoviJ8GPg4HTEnYmWHmGHVLysu3UoW-8RVO2ZTkLmMnMPhxb-Fn5sqdD2HJ4ZbE800irZIJaARQ7mAPBsWDV1XcNASDlL5TxOt2DU7Nt5v4tZzBoMaBK1mkJqamSJmaF6z4onLFO4adbXyfXe0F2m2CuYJ5hG2vtlv9sMnBdECeV2pi4NoFWc1oxchCwGeTQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644920,"updated":1619644920,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '10e659a5-a622-4f06-b9d7-a5cbbca9b545', - 'x-ms-request-id', - '42bbc385-b29e-4022-be11-bf52e892b5be', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT', + 'Thu, 17 Jun 2021 22:28:52 GMT', 'Content-Length', - '759' + '1315' ]); nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/create', {"kty":"RSA"}) + .get('/keys') .query(true) - .reply(200, {"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/5f2d292ee95242a487cfc425219d9124","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"voyWZZb4sL6v60qPCuY85WOt3GTGatXko5vLEwUvJ3sPI6hPqQhxnsiCfE9Ksg2m198ooONqEyN59KwJybUyt0dWf44WyAOaQRCmz0LhhokYG6geFSd6aXBIMxsXVqcFI-q8YjhCFAQhTdLebVJJZrx-brcdxM3KcGzb-tK1we-QpfOxEdBV7vgClaG4h9ie0ws3BGMCnU6VREAlNC6x2htMSLJEEkF656Aoco5Uiq3xXTY_az_lPYcyg6xkim24jInqBwhDkEy76I1ibHHzmNDWRfKuPGyYz6ZqLiKnP7rybHW9zjkqUw5QEA8AuSYDrxGZKqNct_LVvj4nzTtJXQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644920,"updated":1619644920,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ + .reply(200, {"value":[{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-1","attributes":{"enabled":true,"created":1623967959,"updated":1623967959,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-1","attributes":{"enabled":true,"created":1623968785,"updated":1623968785,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}],"nextLink":null}, [ 'Cache-Control', 'no-cache', 'Pragma', @@ -343,13 +303,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - '9f2f394c-483f-4815-8731-b24792f7d2ea', + '9495860f-384c-482d-ae6e-28a855ee4861', 'x-ms-request-id', - 'e0562fe7-67d5-4faf-8d97-191f6c1326ea', + '8b648788-81d5-4f11-95b8-39fc143b0bdc', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -357,15 +317,15 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT', + 'Thu, 17 Jun 2021 22:28:52 GMT', 'Content-Length', - '759' + '585' ]); nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') + .get('/keys') .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0","deletedDate":1619644921,"scheduledPurgeDate":1620249721,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/5f2d292ee95242a487cfc425219d9124","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"voyWZZb4sL6v60qPCuY85WOt3GTGatXko5vLEwUvJ3sPI6hPqQhxnsiCfE9Ksg2m198ooONqEyN59KwJybUyt0dWf44WyAOaQRCmz0LhhokYG6geFSd6aXBIMxsXVqcFI-q8YjhCFAQhTdLebVJJZrx-brcdxM3KcGzb-tK1we-QpfOxEdBV7vgClaG4h9ie0ws3BGMCnU6VREAlNC6x2htMSLJEEkF656Aoco5Uiq3xXTY_az_lPYcyg6xkim24jInqBwhDkEy76I1ibHHzmNDWRfKuPGyYz6ZqLiKnP7rybHW9zjkqUw5QEA8AuSYDrxGZKqNct_LVvj4nzTtJXQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644920,"updated":1619644920,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ + .reply(200, {"value":[{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-1","attributes":{"enabled":true,"created":1623967959,"updated":1623967959,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-1","attributes":{"enabled":true,"created":1623968785,"updated":1623968785,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}],"nextLink":null}, [ 'Cache-Control', 'no-cache', 'Pragma', @@ -377,13 +337,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - '442daa64-d930-4c58-b64e-2f9a306df967', + 'fbd8541d-4d8f-4964-a1d0-237def9e36cf', 'x-ms-request-id', - '41769ea6-5ca5-43f7-beb1-7a93552a3b76', + '3ffa1155-f729-4f52-8367-ce2700818857', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -391,611 +351,7 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT', - 'Content-Length', - '963' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', + 'Thu, 17 Jun 2021 22:28:52 GMT', 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '3151150b-8766-4fdf-b44f-a7e044ff2588', - 'x-ms-request-id', - '3efb1776-7b21-41fc-b795-81d80880c00a', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'de8384f8-9891-4cf1-9468-ac81360bd167', - 'x-ms-request-id', - 'cbc142d3-113c-4844-b787-77723df4dda7', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:00 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '8b52d3d7-f1d8-4c36-82b8-e25519b956ca', - 'x-ms-request-id', - 'f6c12798-ba6e-48d4-a001-bedc3fe81de5', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:03 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '3e0c0c87-eb5f-4ce5-95c2-3ead07af5157', - 'x-ms-request-id', - 'ee7ed6c9-cc83-4a35-b924-423524378b31', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:05 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '6e88fe93-24a9-4f23-9c0e-5580ecbf18ad', - 'x-ms-request-id', - '31fcbde6-fcb9-43c7-a411-2c2af5b2851d', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:07 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '976d0a92-ade3-4c7a-b2ba-2e8ef29fb9ce', - 'x-ms-request-id', - '1cbf230d-f345-4869-b3b5-6dcb196dea96', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:09 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '28475bc4-ff71-46f4-a096-1481d8ec2cb1', - 'x-ms-request-id', - 'a5061e04-1339-4842-9f88-ea57449063b9', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:12 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0","deletedDate":1619644921,"scheduledPurgeDate":1620249721,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0/5f2d292ee95242a487cfc425219d9124","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"voyWZZb4sL6v60qPCuY85WOt3GTGatXko5vLEwUvJ3sPI6hPqQhxnsiCfE9Ksg2m198ooONqEyN59KwJybUyt0dWf44WyAOaQRCmz0LhhokYG6geFSd6aXBIMxsXVqcFI-q8YjhCFAQhTdLebVJJZrx-brcdxM3KcGzb-tK1we-QpfOxEdBV7vgClaG4h9ie0ws3BGMCnU6VREAlNC6x2htMSLJEEkF656Aoco5Uiq3xXTY_az_lPYcyg6xkim24jInqBwhDkEy76I1ibHHzmNDWRfKuPGyYz6ZqLiKnP7rybHW9zjkqUw5QEA8AuSYDrxGZKqNct_LVvj4nzTtJXQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644920,"updated":1619644920,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '75cfb79a-1644-42d6-aa87-fd9e7eba5930', - 'x-ms-request-id', - 'a6a96fff-c898-4310-b455-03f5907aa114', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:14 GMT', - 'Content-Length', - '963' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--0') - .query(true) - .reply(204, "", [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '90d1c0f6-e102-4af1-95c9-247639713d92', - 'x-ms-request-id', - '84f7ecbc-d19a-455a-afa1-fb9f9706b3e2', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:14 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1","deletedDate":1619644934,"scheduledPurgeDate":1620249734,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/36606918bb1d49a6af8ab8335b7f3c8c","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"oHTwiHZ9AcRwEm6V80MeDJXBJ2ezVp5WLFTX30zQshSnQ25zhIV3uo0b5cDvLBUYN_2EU4fLOgyDx3MwLq-JSZt7FxUDXaMjb8CCMhcIqGORMeNIBcriIRX6dtBiF3nTosmXuaigzK5VuOxJxfrB50FoviJ8GPg4HTEnYmWHmGHVLysu3UoW-8RVO2ZTkLmMnMPhxb-Fn5sqdD2HJ4ZbE800irZIJaARQ7mAPBsWDV1XcNASDlL5TxOt2DU7Nt5v4tZzBoMaBK1mkJqamSJmaF6z4onLFO4adbXyfXe0F2m2CuYJ5hG2vtlv9sMnBdECeV2pi4NoFWc1oxchCwGeTQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644920,"updated":1619644920,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '542c04d4-f45b-4b76-a232-1ac569a49b5e', - 'x-ms-request-id', - '5085bf1b-2170-4d03-b0c7-ff6598d804ec', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:14 GMT', - 'Content-Length', - '963' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '9bf070db-b3f8-4204-a7bd-82f78029bd9e', - 'x-ms-request-id', - '1f6d923d-810b-4573-aa02-5cf9014488c5', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:14 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '5180401d-4217-4210-a619-dcfefb229c86', - 'x-ms-request-id', - '98fce25e-6733-4dc5-8d77-26eb23387d5f', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:14 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '79b44d6c-1d41-4e9d-ba77-2acc92dfabad', - 'x-ms-request-id', - '8a736778-337f-449c-a7b2-0d691a50ac42', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:16 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'bc76453b-5846-41bf-a43b-d3a905a558e4', - 'x-ms-request-id', - 'e18205aa-d7c8-4f80-91a8-a6ecf3aa0976', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:19 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'c71876a6-9e8f-415a-81af-e46ba5c0fdaa', - 'x-ms-request-id', - '0cf9bc86-0027-43df-acfa-c6138a460ca0', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:20 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '152', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'f5317334-460e-4e83-947c-908ec52f2313', - 'x-ms-request-id', - '4e3f76c2-c374-4e89-88d7-493973b3a79f', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:22 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1","deletedDate":1619644934,"scheduledPurgeDate":1620249734,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1/36606918bb1d49a6af8ab8335b7f3c8c","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"oHTwiHZ9AcRwEm6V80MeDJXBJ2ezVp5WLFTX30zQshSnQ25zhIV3uo0b5cDvLBUYN_2EU4fLOgyDx3MwLq-JSZt7FxUDXaMjb8CCMhcIqGORMeNIBcriIRX6dtBiF3nTosmXuaigzK5VuOxJxfrB50FoviJ8GPg4HTEnYmWHmGHVLysu3UoW-8RVO2ZTkLmMnMPhxb-Fn5sqdD2HJ4ZbE800irZIJaARQ7mAPBsWDV1XcNASDlL5TxOt2DU7Nt5v4tZzBoMaBK1mkJqamSJmaF6z4onLFO4adbXyfXe0F2m2CuYJ5hG2vtlv9sMnBdECeV2pi4NoFWc1oxchCwGeTQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644920,"updated":1619644920,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'd8b47d1e-4968-4263-9714-451e9a30775d', - 'x-ms-request-id', - '51df215f-a88c-4a8d-aefe-08a7b7e2baa8', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:25 GMT', - 'Content-Length', - '963' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests--1') - .query(true) - .reply(204, "", [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '626e97b0-dd49-490f-8ce2-8db3dd7f969e', - 'x-ms-request-id', - 'b171962d-824b-4014-a519-664a3bd3e57c', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:25 GMT' + '585' ]); diff --git a/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.js b/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.js index 5cf1421b5c72..8dc3c88f2511 100644 --- a/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.js +++ b/sdk/keyvault/keyvault-keys/recordings/node/challenge_based_authentication_tests/recording_once_authenticated_new_requests_should_not_authenticate_again.js @@ -1,19 +1,19 @@ let nock = require('nock'); -module.exports.hash = "48ebd398ae9a388f2fc207b93dce0aaf"; +module.exports.hash = "5e42e75e0ca126095658671dd4970a60"; module.exports.testInfo = {"uniqueName":{},"newDate":{}} nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/create') + .get('/deletedkeys') .query(true) - .reply(401, {"error":{"code":"Unauthorized","message":"Request is missing a Bearer or PoP token."}}, [ + .reply(401, {"error":{"code":"Unauthorized","message":"AKV10000: Request is missing a Bearer or PoP token."}}, [ 'Cache-Control', 'no-cache', 'Pragma', 'no-cache', 'Content-Length', - '87', + '97', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -23,13 +23,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - 'f804f9bf-d476-497a-8275-0120370a910e', + '273c6f9b-eaa2-4ff0-8d3e-9d1ae8387dc2', 'x-ms-request-id', - 'ab514680-9277-480e-93f2-a098899052f8', + '9560ab58-7e5d-45bc-b3f8-92fd688b4946', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -37,7 +37,7 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:22:25 GMT' + 'Thu, 17 Jun 2021 22:28:52 GMT' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) @@ -46,8 +46,6 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) .reply(200, {"tenant_discovery_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration","api-version":"1.1","metadata":[{"preferred_network":"login.microsoftonline.com","preferred_cache":"login.windows.net","aliases":["login.microsoftonline.com","login.windows.net","login.microsoft.com","sts.windows.net"]},{"preferred_network":"login.partner.microsoftonline.cn","preferred_cache":"login.partner.microsoftonline.cn","aliases":["login.partner.microsoftonline.cn","login.chinacloudapi.cn"]},{"preferred_network":"login.microsoftonline.de","preferred_cache":"login.microsoftonline.de","aliases":["login.microsoftonline.de"]},{"preferred_network":"login.microsoftonline.us","preferred_cache":"login.microsoftonline.us","aliases":["login.microsoftonline.us","login.usgovcloudapi.net"]},{"preferred_network":"login-us.microsoftonline.com","preferred_cache":"login-us.microsoftonline.com","aliases":["login-us.microsoftonline.com"]}]}, [ 'Cache-Control', 'max-age=86400, private', - 'Content-Length', - '980', 'Content-Type', 'application/json; charset=utf-8', 'Strict-Transport-Security', @@ -61,24 +59,26 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - '422bd614-376f-4bda-ad74-35cb7f7d4201', + '08cc0894-c3ac-41f4-863c-469f5fdd0800', 'x-ms-ests-server', - '2.1.11654.16 - EUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA4BL6UwEAAAD3yBvYDgAAAA; expires=Fri, 28-May-2021 21:22:25 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=AiON2Z5V_ydHrb8RPEU9_5sNEFROAQAAAKTDXdgOAAAA; expires=Sat, 17-Jul-2021 22:28:53 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7Wevrw8Kc0x-6EBM5E9kBPlqkWxHDrKRLFYjymsHn7DF1GwldluUw2_poT8EWHaWbtxGuf-KlAqXAmVBAMjA87kaZPI0ZEyQGI1dIl6mvk267Nj7VUdYGWVSvu7OaQ1mqQJLiuq2hYnlNV4A_gDiPK4Xo18EarksX58N9xeQH9-xl03cgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrBID13mA4BFn_vG1WRddieZVyUtyjVT3AJeKHjvJUrHDcux1-5KNbKJxQJP3nwvk1jJ4eYaIOybdfaziyMWTRprWmZTxKfNTJQexG89CIpznSZcVwTHRnM_XUyGOj0hInjAThUVtMXaBMchP7aIA--BgVZ0vpboPyYr8QBoiDOMcgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:25 GMT' + 'Thu, 17 Jun 2021 22:28:52 GMT', + 'Content-Length', + '980' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) .get('/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration') - .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ + .reply(200, {"token_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token","token_endpoint_auth_methods_supported":["client_secret_post","private_key_jwt","client_secret_basic"],"jwks_uri":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/discovery/v2.0/keys","response_modes_supported":["query","fragment","form_post"],"subject_types_supported":["pairwise"],"id_token_signing_alg_values_supported":["RS256"],"response_types_supported":["code","id_token","code id_token","id_token token"],"scopes_supported":["openid","profile","email","offline_access"],"issuer":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0","request_uri_parameter_supported":false,"userinfo_endpoint":"https://graph.microsoft.com/oidc/userinfo","authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/authorize","device_authorization_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/devicecode","http_logout_supported":true,"frontchannel_logout_supported":true,"end_session_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/oauth2/v2.0/logout","claims_supported":["sub","iss","cloud_instance_name","cloud_instance_host_name","cloud_graph_host_name","msgraph_host","aud","exp","iat","auth_time","acr","nonce","preferred_username","name","tid","ver","at_hash","c_hash","email"],"kerberos_endpoint":"https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/kerberos","tenant_region_scope":"WW","cloud_instance_name":"microsoftonline.com","cloud_graph_host_name":"graph.windows.net","msgraph_host":"graph.microsoft.com","rbac_url":"https://pas.windows.net"}, [ 'Cache-Control', 'max-age=86400, private', 'Content-Type', @@ -94,28 +94,25 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - '3aa6bb8b-6bcb-414d-bd57-37833dfd5801', + '2e823231-c5db-469e-afc7-e58d26de6f00', 'x-ms-ests-server', - '2.1.11654.16 - SCUS ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA4BL6UwEAAAD3yBvYDgAAAA; expires=Fri, 28-May-2021 21:22:25 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=AiON2Z5V_ydHrb8RPEU9_5sNEFROAQAAAKTDXdgOAAAA; expires=Sat, 17-Jul-2021 22:28:53 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', - 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrLhXAnc1OTgqZ39ewDp3sgO32aHT8gk1i2Tsoq5RY6HcE7rbrIuqMqrCEy_jdWeu_tNZCQbH5Ff_XrQnwwy_f8D4VgH8GgU-q_vqOfIcFWcZqorivIqgdUvGzT_9uxJr2SGndU4wEePW_UNEODO271mwjWSp8aSZfHqTs50M7j48gAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', + 'esctx=AQABAAAAAAD--DLA3VO7QrddgJg7WevrpNd_6G74SrCJiVuZiYCO4fECvHHEifjdn5-JyT0SdhYOx24HLIEgB9-QR4NXyxYDUEB0WsfLeYqPJvndM42JA36iXRI2fzdInevzdHV4ECJDwYnGlVbREYiuY4vhUijmhBXlJcB509yrVodrD0EiNwijHjvR_Kco-tvsXrEs-fkgAA; domain=.login.microsoftonline.com; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:25 GMT', + 'Thu, 17 Jun 2021 22:28:53 GMT', 'Content-Length', - '1651' + '1753' ]); nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) - .filteringRequestBody(function (body) { - return body.replace(/client-request-id=[^&]*/g, "client-request-id=client-request-id"); - }) - .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fvault.azure.net%2F.default%20openid%20profile%20offline_access&grant_type=client_credentials&client-request-id=client-request-id&client_secret=azure_client_secret") + .post('/12345678-1234-1234-1234-123456789012/oauth2/v2.0/token', "client_id=azure_client_id&scope=https%3A%2F%2Fsanitized%2F&grant_type=client_credentials&client-request-id=88f2bc92-c8d8-4ac3-857f-1d687d5515a5&client_secret=azure_client_secret") .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ 'Cache-Control', 'no-store, no-cache', @@ -134,303 +131,29 @@ nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) 'P3P', 'CP="DSP CUR OTPi IND OTRi ONL FIN"', 'x-ms-request-id', - '78ca8339-4e14-4418-b2c8-9ef284f4d001', + 'c37bbbcf-7b48-4569-a1c6-fe5694604700', 'x-ms-ests-server', - '2.1.11654.16 - WUS2 ProdSlices', + '2.1.11829.4 - NCUS ProdSlices', 'x-ms-clitelem', '1,0,0,,', 'Set-Cookie', - 'fpc=Au5BirxN9hhJvoEMGUBOFo6nSoKIBQAAAO_IG9gOAAAA4BL6UwIAAAD3yBvYDgAAAA; expires=Fri, 28-May-2021 21:22:26 GMT; path=/; secure; HttpOnly; SameSite=None', + 'fpc=AiON2Z5V_ydHrb8RPEU9_5sNEFROAgAAAKTDXdgOAAAA; expires=Sat, 17-Jul-2021 22:28:53 GMT; path=/; secure; HttpOnly; SameSite=None', 'Set-Cookie', 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', 'Set-Cookie', 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', 'Date', - 'Wed, 28 Apr 2021 21:22:25 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/create', {"kty":"RSA"}) - .query(true) - .reply(200, {"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/91124a0eaae54b849622867e7de65549","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rEqPnf7HEk-5pTdqm5k1eLvWefhCT_slvRpFTege5awlDWaJcP5DioeMKqr4Gix8g9rhWD767TEN2ToN5dWx77XuG_u5Y2yMVxE-2vuK0LH45LPN3goMDBh3EUJOhHDnuLWymhcFOxsjU9Z0yy7ZRgM1bYpk0SIToaXfGrPtzZXoRHP5SREluoHIhSkWiclER0YYw47lkXozi-sPdxrhJJbhfADMFbzDRFhfYoCTXWSCtuyf8mXvifMdduS5dlSnsXnTInsagIDw824GfztqRgKIC6HEloA0850XNmGkSDNqhWQnQgTe8UVBTGhN7FJtC9jD14OnvSsvl4HQKwEKOQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644946,"updated":1619644946,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'f804f9bf-d476-497a-8275-0120370a910e', - 'x-ms-request-id', - 'ee093f5e-6db8-4cfd-b568-2433c1804f95', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:26 GMT', - 'Content-Length', - '769' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .post('/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/create', {"kty":"RSA"}) - .query(true) - .reply(200, {"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/e8302fbcbda34bd7b8495b7f02e33e44","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rWWkfHiEkyhhPbynXI9loV6Ge0lT3hUEd2nu_lHGgLsPzrhSI0rv_g8cnQP86zB_qkurfioTNRI9VdaS0TnnziXnCIlm1OF06hFedtWHbOEXrGyvrCRZ57uYwhdR_uI-H4UyGzb28kXReuQMlnkxpfNx4iC3ZYuDGAN4OUxW6hy5D5b9KWT2vDfGsf6GvRogNJL1B_5ki4tGlbX-_ts2Bb68j6R5B9yWyXMg0hl8MhNWSkopQe42t7GPW5pi-BJSgWp9PvICqtjjC0uggtoAHo3PurddXNgjvjrj5Py-6T_i70eVxtlUO9EoWLinq0rdsD2xeijKPKYmgCtYOIzMbQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644946,"updated":1619644946,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '176f73f1-ee18-4a1f-8353-f4eae81d60b1', - 'x-ms-request-id', - 'b01df8fd-6260-449a-b779-b6c28e1be8a6', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:26 GMT', - 'Content-Length', - '769' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0","deletedDate":1619644946,"scheduledPurgeDate":1620249746,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/91124a0eaae54b849622867e7de65549","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rEqPnf7HEk-5pTdqm5k1eLvWefhCT_slvRpFTege5awlDWaJcP5DioeMKqr4Gix8g9rhWD767TEN2ToN5dWx77XuG_u5Y2yMVxE-2vuK0LH45LPN3goMDBh3EUJOhHDnuLWymhcFOxsjU9Z0yy7ZRgM1bYpk0SIToaXfGrPtzZXoRHP5SREluoHIhSkWiclER0YYw47lkXozi-sPdxrhJJbhfADMFbzDRFhfYoCTXWSCtuyf8mXvifMdduS5dlSnsXnTInsagIDw824GfztqRgKIC6HEloA0850XNmGkSDNqhWQnQgTe8UVBTGhN7FJtC9jD14OnvSsvl4HQKwEKOQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644946,"updated":1619644946,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'f502d32d-d1f3-4004-aaef-030db944615e', - 'x-ms-request-id', - '56714b05-f23c-4152-9b7c-28a57d5e2b4f', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:26 GMT', - 'Content-Length', - '983' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '13088fac-3024-4d0a-9ea9-54fdd48faa72', - 'x-ms-request-id', - '721d5f03-16e2-4f6c-b51c-c0c7a70f6e93', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:26 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '28a4da57-dae0-47e8-a095-6d4f979b46f6', - 'x-ms-request-id', - '8c5fde09-07c8-45ba-b780-95f2007c5ed8', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:27 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'e7796036-28a0-48f0-8bac-8305fb22efea', - 'x-ms-request-id', - '3af7d5cb-e5d0-4415-9aa5-ccd5c6f6e493', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:28 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '82628345-b0c2-48c7-8e6c-6122c90bf526', - 'x-ms-request-id', - '1a4cea02-a857-4846-90c9-a624f35525a1', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:31 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '4e4dd564-8f5d-4dd2-9c40-0d979c0409ec', - 'x-ms-request-id', - '4e2e6f53-afdc-4c00-aa06-a3e270a6f26e', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:33 GMT' + 'Thu, 17 Jun 2021 22:28:52 GMT' ]); nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') + .get('/deletedkeys') .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ + .reply(200, {"value":[{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1","deletedDate":1623968152,"scheduledPurgeDate":1624572952,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1","attributes":{"enabled":true,"created":1623968038,"updated":1623968038,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1","deletedDate":1623967880,"scheduledPurgeDate":1624572680,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1","attributes":{"enabled":true,"created":1623967755,"updated":1623967755,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0","deletedDate":1623967959,"scheduledPurgeDate":1624572759,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0","attributes":{"enabled":true,"created":1623967959,"updated":1623967959,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0","deletedDate":1623968786,"scheduledPurgeDate":1624573586,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0","attributes":{"enabled":true,"created":1623968785,"updated":1623968785,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}],"nextLink":null}, [ 'Cache-Control', 'no-cache', 'Pragma', 'no-cache', - 'Content-Length', - '162', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -438,13 +161,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - '87629bb0-1b3c-496c-ac98-e96f1433956d', + '273c6f9b-eaa2-4ff0-8d3e-9d1ae8387dc2', 'x-ms-request-id', - '4db3475c-d402-44ea-a5d2-7f9f1805ae99', + '8aedcbb1-1c73-40b4-b752-37ea38d64603', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -452,53 +175,19 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:22:35 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', + 'Thu, 17 Jun 2021 22:28:53 GMT', 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '43513063-9844-4acd-b7a1-bf332f90f241', - 'x-ms-request-id', - '70de7756-6a08-4fc4-b9d9-c2d1572959b6', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:37 GMT' + '1953' ]); nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') + .get('/deletedkeys') .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ + .reply(200, {"value":[{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1","deletedDate":1623968152,"scheduledPurgeDate":1624572952,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-018489891015560644-1","attributes":{"enabled":true,"created":1623968038,"updated":1623968038,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1","deletedDate":1623967880,"scheduledPurgeDate":1624572680,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-24685237550245565-1","attributes":{"enabled":true,"created":1623967755,"updated":1623967755,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0","deletedDate":1623967959,"scheduledPurgeDate":1624572759,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Authenticationshouldworkforparallelrequests-304369368630208-0","attributes":{"enabled":true,"created":1623967959,"updated":1623967959,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}},{"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0","deletedDate":1623968786,"scheduledPurgeDate":1624573586,"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain-9173446555051745-0","attributes":{"enabled":true,"created":1623968785,"updated":1623968785,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}],"nextLink":null}, [ 'Cache-Control', 'no-cache', 'Pragma', 'no-cache', - 'Content-Length', - '162', 'Content-Type', 'application/json; charset=utf-8', 'Expires', @@ -506,13 +195,13 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'x-ms-keyvault-region', 'westus2', 'x-ms-client-request-id', - 'c46c91c8-a024-43b7-a5eb-f84d33db8508', + '293d9435-4354-4a3f-a460-fc0aef94a510', 'x-ms-request-id', - 'b37949ae-832a-4708-ba25-e3053f8de2c6', + '12230913-d2c2-478b-8f05-ed2d2dc37a78', 'x-ms-keyvault-service-version', - '1.2.265.0', + '1.9.12.0', 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', + 'conn_type=Ipv4;addr=50.35.231.105;act_addr_fam=InterNetwork;', 'X-Powered-By', 'ASP.NET', 'Strict-Transport-Security', @@ -520,371 +209,7 @@ nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) 'X-Content-Type-Options', 'nosniff', 'Date', - 'Wed, 28 Apr 2021 21:22:39 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', + 'Thu, 17 Jun 2021 22:28:52 GMT', 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '53b583aa-323c-4fb5-a10e-2d11ddcb984e', - 'x-ms-request-id', - '19703ae8-f0d9-47a2-9ceb-5eff50f5af1b', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:41 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0","deletedDate":1619644946,"scheduledPurgeDate":1620249746,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0/91124a0eaae54b849622867e7de65549","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rEqPnf7HEk-5pTdqm5k1eLvWefhCT_slvRpFTege5awlDWaJcP5DioeMKqr4Gix8g9rhWD767TEN2ToN5dWx77XuG_u5Y2yMVxE-2vuK0LH45LPN3goMDBh3EUJOhHDnuLWymhcFOxsjU9Z0yy7ZRgM1bYpk0SIToaXfGrPtzZXoRHP5SREluoHIhSkWiclER0YYw47lkXozi-sPdxrhJJbhfADMFbzDRFhfYoCTXWSCtuyf8mXvifMdduS5dlSnsXnTInsagIDw824GfztqRgKIC6HEloA0850XNmGkSDNqhWQnQgTe8UVBTGhN7FJtC9jD14OnvSsvl4HQKwEKOQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644946,"updated":1619644946,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '421cb305-0815-4b90-91cc-c8c9e096daae', - 'x-ms-request-id', - '8ac3c5ad-31cb-4824-870a-2f423ba39323', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:43 GMT', - 'Content-Length', - '983' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--0') - .query(true) - .reply(204, "", [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '8075bf37-9960-4290-9b1d-6373b244912a', - 'x-ms-request-id', - 'f02b09a4-bc3a-4b89-8c2c-045253b26519', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:44 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1","deletedDate":1619644964,"scheduledPurgeDate":1620249764,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/e8302fbcbda34bd7b8495b7f02e33e44","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rWWkfHiEkyhhPbynXI9loV6Ge0lT3hUEd2nu_lHGgLsPzrhSI0rv_g8cnQP86zB_qkurfioTNRI9VdaS0TnnziXnCIlm1OF06hFedtWHbOEXrGyvrCRZ57uYwhdR_uI-H4UyGzb28kXReuQMlnkxpfNx4iC3ZYuDGAN4OUxW6hy5D5b9KWT2vDfGsf6GvRogNJL1B_5ki4tGlbX-_ts2Bb68j6R5B9yWyXMg0hl8MhNWSkopQe42t7GPW5pi-BJSgWp9PvICqtjjC0uggtoAHo3PurddXNgjvjrj5Py-6T_i70eVxtlUO9EoWLinq0rdsD2xeijKPKYmgCtYOIzMbQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644946,"updated":1619644946,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '3a90aa46-519f-4aef-b0a0-81fe81a10d71', - 'x-ms-request-id', - '71851b11-58d7-41e6-a1f9-ba6efd32797b', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:44 GMT', - 'Content-Length', - '983' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'f77a3ea2-9762-4c93-9183-21964b890736', - 'x-ms-request-id', - '0424b778-fc67-4a08-b396-5de396c0b833', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:44 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'af9c442e-31f5-4e2f-8ca1-0877e2112fb4', - 'x-ms-request-id', - '98775794-bc17-4848-a293-ae0725e3dccc', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:44 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '88293bcc-dab3-4467-9b89-45a1de76eb54', - 'x-ms-request-id', - '60976f5c-c86e-4a4e-ab39-e7ff67dcdf84', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:46 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '0659b4a5-31e7-4217-b623-437b5bff219b', - 'x-ms-request-id', - '3dfd3756-40da-4fc8-9912-e17b07101bb1', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:48 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(404, {"error":{"code":"KeyNotFound","message":"Deleted Key not found: challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1"}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Length', - '162', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'ac50c6ba-00c7-457f-8923-9d9f441db6f7', - 'x-ms-request-id', - 'a423ad08-bd81-4d6e-8893-7f99f989af86', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:50 GMT' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .get('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(200, {"recoveryId":"https://keyvault_name.vault.azure.net/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1","deletedDate":1619644964,"scheduledPurgeDate":1620249764,"key":{"kid":"https://keyvault_name.vault.azure.net/keys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1/e8302fbcbda34bd7b8495b7f02e33e44","kty":"RSA","key_ops":["encrypt","decrypt","sign","verify","wrapKey","unwrapKey"],"n":"rWWkfHiEkyhhPbynXI9loV6Ge0lT3hUEd2nu_lHGgLsPzrhSI0rv_g8cnQP86zB_qkurfioTNRI9VdaS0TnnziXnCIlm1OF06hFedtWHbOEXrGyvrCRZ57uYwhdR_uI-H4UyGzb28kXReuQMlnkxpfNx4iC3ZYuDGAN4OUxW6hy5D5b9KWT2vDfGsf6GvRogNJL1B_5ki4tGlbX-_ts2Bb68j6R5B9yWyXMg0hl8MhNWSkopQe42t7GPW5pi-BJSgWp9PvICqtjjC0uggtoAHo3PurddXNgjvjrj5Py-6T_i70eVxtlUO9EoWLinq0rdsD2xeijKPKYmgCtYOIzMbQ","e":"AQAB"},"attributes":{"enabled":true,"created":1619644946,"updated":1619644946,"recoveryLevel":"CustomizedRecoverable+Purgeable","recoverableDays":7}}, [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Content-Type', - 'application/json; charset=utf-8', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - '0245c842-a36d-4529-a6dc-5c277a68ef1e', - 'x-ms-request-id', - '513b1041-e802-4685-8a18-e85b3202032f', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:52 GMT', - 'Content-Length', - '983' -]); - -nock('https://keyvault_name.vault.azure.net:443', {"encodedQueryParams":true}) - .delete('/deletedkeys/challengeAuthKeyName-Onceauthenticatednewrequestsshouldnotauthenticateagain--1') - .query(true) - .reply(204, "", [ - 'Cache-Control', - 'no-cache', - 'Pragma', - 'no-cache', - 'Expires', - '-1', - 'x-ms-keyvault-region', - 'westus2', - 'x-ms-client-request-id', - 'aef19dd9-eead-4742-bb3f-847aea7bb2b5', - 'x-ms-request-id', - 'f6e04a5f-c942-4691-b868-ee03df174cd2', - 'x-ms-keyvault-service-version', - '1.2.265.0', - 'x-ms-keyvault-network-info', - 'conn_type=Ipv4;addr=72.68.182.20;act_addr_fam=InterNetwork;', - 'X-Powered-By', - 'ASP.NET', - 'Strict-Transport-Security', - 'max-age=31536000;includeSubDomains', - 'X-Content-Type-Options', - 'nosniff', - 'Date', - 'Wed, 28 Apr 2021 21:22:52 GMT' + '1953' ]); diff --git a/sdk/keyvault/keyvault-keys/samples/v4/javascript/README.md b/sdk/keyvault/keyvault-keys/samples/v4/javascript/README.md index c3f34ce8d790..501633feef9b 100644 --- a/sdk/keyvault/keyvault-keys/samples/v4/javascript/README.md +++ b/sdk/keyvault/keyvault-keys/samples/v4/javascript/README.md @@ -64,10 +64,10 @@ npx cross-env KEYVAULT_URI="" node cryptography.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[cryptography]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/javascript/cryptography.js -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/javascript/helloWorld.js -[purgeallkeys]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/javascript/purgeAllKeys.js +[cryptography]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/javascript/cryptography.js +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/javascript/helloWorld.js +[purgeallkeys]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/javascript/purgeAllKeys.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/keyvault-keys [freesub]: https://azure.microsoft.com/free/ [createinstance_azurekeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys/README.md diff --git a/sdk/keyvault/keyvault-keys/samples/v4/javascript/package.json b/sdk/keyvault/keyvault-keys/samples/v4/javascript/package.json index 86f237d3ca32..2945671298a2 100644 --- a/sdk/keyvault/keyvault-keys/samples/v4/javascript/package.json +++ b/sdk/keyvault/keyvault-keys/samples/v4/javascript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys", "dependencies": { "@azure/keyvault-keys": "next", "dotenv": "latest", diff --git a/sdk/keyvault/keyvault-keys/samples/v4/typescript/README.md b/sdk/keyvault/keyvault-keys/samples/v4/typescript/README.md index ccf49d6455ca..0e4ad28995c9 100644 --- a/sdk/keyvault/keyvault-keys/samples/v4/typescript/README.md +++ b/sdk/keyvault/keyvault-keys/samples/v4/typescript/README.md @@ -76,11 +76,11 @@ npx cross-env KEYVAULT_URI="" node dist/cryptography.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[cryptography]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/typescript/src/cryptography.ts -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/typescript/src/helloWorld.ts -[purgeallkeys]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-keys/samples/v4/typescript/src/purgeAllKeys.ts +[cryptography]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/typescript/src/cryptography.ts +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/typescript/src/helloWorld.ts +[purgeallkeys]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-keys/samples/v4/typescript/src/purgeAllKeys.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/keyvault-keys [freesub]: https://azure.microsoft.com/free/ [createinstance_azurekeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/keyvault/keyvault-keys/samples/v4/typescript/package.json b/sdk/keyvault/keyvault-keys/samples/v4/typescript/package.json index 3781ffc9552e..263b039d8a4d 100644 --- a/sdk/keyvault/keyvault-keys/samples/v4/typescript/package.json +++ b/sdk/keyvault/keyvault-keys/samples/v4/typescript/package.json @@ -29,7 +29,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-keys", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-keys", "dependencies": { "@azure/keyvault-keys": "next", "dotenv": "latest", diff --git a/sdk/keyvault/keyvault-keys/test/README.md b/sdk/keyvault/keyvault-keys/test/README.md index ec48b2c1dde9..2f5e3b8a9b17 100644 --- a/sdk/keyvault/keyvault-keys/test/README.md +++ b/sdk/keyvault/keyvault-keys/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/test-resources.json) that already has all of the the necessary configurations. > Some tests require an Azure Managed HSM to run in live mode, as such you'll need to ensure one is deployed to run these tests. To do so you'll want to pass `enableHsm` as an ARM template parameter. > @@ -12,7 +12,7 @@ You can use existing Azure resources for the live tests, or generate new ones by > New-TestResources.ps1 -ServiceDirectory 'keyvault' -ArmTemplateParameters @{ "enableHsm" = $true } > ``` -The `New-TestResources` script will ensure that the Managed HSM is activated; however, if you are creating your own Managed HSM there are additional steps required to set up the correct permissions and activate the HSM. Please see [Activate Your Managed HSM](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-admin/README.md#activate-your-managed-hsm) for more information. +The `New-TestResources` script will ensure that the Managed HSM is activated; however, if you are creating your own Managed HSM there are additional steps required to set up the correct permissions and activate the HSM. Please see [Activate Your Managed HSM](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-admin/README.md#activate-your-managed-hsm) for more information. > Managed HSMs do have an hourly cost even when not in-use. Please review the [Azure Dedicated HSM Pricing page](https://azure.microsoft.com/pricing/details/azure-dedicated-hsm/#pricing) and clean up the resources when not in use. diff --git a/sdk/keyvault/keyvault-keys/test/internal/challengeBasedAuthenticationPolicy.spec.ts b/sdk/keyvault/keyvault-keys/test/internal/challengeBasedAuthenticationPolicy.spec.ts index 732e5194b4b1..01ffdb8a7642 100644 --- a/sdk/keyvault/keyvault-keys/test/internal/challengeBasedAuthenticationPolicy.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/internal/challengeBasedAuthenticationPolicy.spec.ts @@ -54,13 +54,13 @@ describe("Challenge based authentication tests", () => { const spyEqualTo = sandbox.spy(AuthenticationChallenge.prototype, "equalTo"); const promises = keyNames.map((name) => { - const promise = client.createKey(name, "RSA"); + const promise = client.listPropertiesOfKeys().next(); return { promise, name }; }); for (const promise of promises) { await promise.promise; - await testClient.flushKey(promise.name); + // await testClient.flushKey(promise.name); } // Even though we had parallel requests, only one authentication should have happened. @@ -84,17 +84,8 @@ describe("Challenge based authentication tests", () => { const sandbox = createSandbox(); const spy = sandbox.spy(AuthenticationChallengeCache.prototype, "setCachedChallenge"); - // Now we run what would be a normal use of the client. - // Here we will create two keys, then flush them. - // testClient.flushKey deletes, then purges the keys. - const keyName = testClient.formatName(`${keyPrefix}-${this!.test!.title}-${keySuffix}`); - const keyNames = [`${keyName}-0`, `${keyName}-1`]; - for (const name of keyNames) { - await client.createKey(name, "RSA"); - } - for (const name of keyNames) { - await testClient.flushKey(name); - } + await client.listDeletedKeys().next(); + await client.listDeletedKeys().next(); // The challenge should have been written to the cache exactly ONCE. assert.equal(spy.getCalls().length, 1); diff --git a/sdk/keyvault/keyvault-keys/test/public/recoverBackupRestore.spec.ts b/sdk/keyvault/keyvault-keys/test/public/recoverBackupRestore.spec.ts index c8fe52f8c421..ab1c34a17a80 100644 --- a/sdk/keyvault/keyvault-keys/test/public/recoverBackupRestore.spec.ts +++ b/sdk/keyvault/keyvault-keys/test/public/recoverBackupRestore.spec.ts @@ -118,7 +118,10 @@ describe("Keys client - restore keys and recover backups", () => { // This test implementation of a restore poller only applies for backups that have been recently deleted. // Backups might not be ready to be restored in an unknown amount of time. // If this is useful to you, please open an issue at: https://github.com/Azure/azure-sdk-for-js/issues - const restorePoller = await testClient.beginRestoreKeyBackup(backup as Uint8Array); + const restorePoller = await testClient.beginRestoreKeyBackup( + backup as Uint8Array, + testPollerProperties + ); const restoredKey = await restorePoller.pollUntilDone(); assert.equal(restoredKey.name, keyName); diff --git a/sdk/keyvault/keyvault-secrets/CHANGELOG.md b/sdk/keyvault/keyvault-secrets/CHANGELOG.md index 0ab7c396372a..7a9d7523978c 100644 --- a/sdk/keyvault/keyvault-secrets/CHANGELOG.md +++ b/sdk/keyvault/keyvault-secrets/CHANGELOG.md @@ -43,7 +43,7 @@ ## 4.2.0-beta.2 (2021-02-09) -- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/Bundling.md). +- [Breaking] Removed `dist-browser` from the published package. To bundle the Azure SDK libraries for the browsers, please read our bundling guide: [link](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Bundling.md). - Updated the Key Vault Secrets Long Running Operation Pollers to follow a more compact and meaningful approach moving forward. - Bug fix: The logging of HTTP requests wasn't properly working - now it has been fixed and tests have been written that verify the fix. diff --git a/sdk/keyvault/keyvault-secrets/README.md b/sdk/keyvault/keyvault-secrets/README.md index 672f3fa9d994..2d2f356e3d82 100644 --- a/sdk/keyvault/keyvault-secrets/README.md +++ b/sdk/keyvault/keyvault-secrets/README.md @@ -17,9 +17,9 @@ Use the client library for Azure Key Vault Secrets in your Node.js application t - Get all secrets. - Get all deleted secrets. -> Note: This package cannot be used in the browser due to Azure Key Vault service limitations, please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/master/samples/cors/ts/README.md) for guidance. +> Note: This package cannot be used in the browser due to Azure Key Vault service limitations, please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/main/samples/cors/ts/README.md) for guidance. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets) | [Package (npm)](https://www.npmjs.com/package/@azure/keyvault-secrets) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/keyvault-secrets) | [Product documentation](https://azure.microsoft.com/services/key-vault/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets/samples) +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets) | [Package (npm)](https://www.npmjs.com/package/@azure/keyvault-secrets) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/keyvault-secrets) | [Product documentation](https://azure.microsoft.com/services/key-vault/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets/samples) ## Getting started @@ -112,7 +112,7 @@ Use the [Azure Cloud Shell](https://shell.azure.com/bash) snippet below to creat ## Authenticating with Azure Active Directory -The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) provides more details and samples to get you started. +The Key Vault service relies on Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. The [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) provides more details and samples to get you started. Here's a quick example. First, import `DefaultAzureCredential` and `SecretClient`: @@ -520,12 +520,12 @@ setLogLevel("info"); You can find more code samples through the following links: -- [KeyVault Secrets Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript) -- [KeyVault Secrets Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript) -- [KeyVault Secrets Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/test/) +- [KeyVault Secrets Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript) +- [KeyVault Secrets Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript) +- [KeyVault Secrets Test Cases](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-secrets%2FREADME.png) diff --git a/sdk/keyvault/keyvault-secrets/migration-guide.md b/sdk/keyvault/keyvault-secrets/migration-guide.md index 45cc9ccfd349..7e3a226e34f7 100644 --- a/sdk/keyvault/keyvault-secrets/migration-guide.md +++ b/sdk/keyvault/keyvault-secrets/migration-guide.md @@ -188,9 +188,9 @@ await client.purgeDeletedSecret(deletedSecret.name); ## Additional samples -- [Key Vault Secrets samples for JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript) +- [Key Vault Secrets samples for JavaScript](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript) - [General Key Vault samples for JavaScript](https://docs.microsoft.com/samples/browse/?products=azure-key-vault&languages=javascript) -- [Key Vault Secrets samples for TypeScript](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript) +- [Key Vault Secrets samples for TypeScript](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript) - [General Key Vault samples for TypeScript](https://docs.microsoft.com/samples/browse/?products=azure-key-vault&languages=typescript) [kvk-npm]: https://www.npmjs.com/package/@azure/keyvault-keys @@ -198,4 +198,4 @@ await client.purgeDeletedSecret(deletedSecret.name); [kvc-npm]: https://www.npmjs.com/package/@azure/keyvault-certificates [ts-guidelines]: https://azure.github.io/azure-sdk/typescript_introduction.html [identity-npm]: https://www.npmjs.com/package/@azure/identity -[identity-readme-DAC]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md#defaultazurecredential +[identity-readme-DAC]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md#defaultazurecredential diff --git a/sdk/keyvault/keyvault-secrets/package.json b/sdk/keyvault/keyvault-secrets/package.json index a8723357d535..240a9f8db14b 100644 --- a/sdk/keyvault/keyvault-secrets/package.json +++ b/sdk/keyvault/keyvault-secrets/package.json @@ -5,7 +5,7 @@ "version": "4.3.0-beta.1", "license": "MIT", "description": "Isomorphic client library for Azure KeyVault's secrets.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/README.md", "repository": "github:Azure/azure-sdk-for-js", "keywords": [ "node", @@ -107,14 +107,14 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", "@rollup/plugin-commonjs": "11.0.2", diff --git a/sdk/keyvault/keyvault-secrets/samples/v4/javascript/README.md b/sdk/keyvault/keyvault-secrets/samples/v4/javascript/README.md index 1f8887d3ca11..2a8b38b5c05b 100644 --- a/sdk/keyvault/keyvault-secrets/samples/v4/javascript/README.md +++ b/sdk/keyvault/keyvault-secrets/samples/v4/javascript/README.md @@ -66,12 +66,12 @@ npx cross-env KEYVAULT_URI="" node backupAndRestore.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript/backupAndRestore.js -[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript/deleteAndRecover.js -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript/helloWorld.js -[listoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript/listOperations.js -[purgeallsecrets]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/javascript/purgeAllSecrets.js +[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript/backupAndRestore.js +[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript/deleteAndRecover.js +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript/helloWorld.js +[listoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript/listOperations.js +[purgeallsecrets]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/javascript/purgeAllSecrets.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/keyvault-secrets [freesub]: https://azure.microsoft.com/free/ [createinstance_azurekeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets/README.md diff --git a/sdk/keyvault/keyvault-secrets/samples/v4/javascript/package.json b/sdk/keyvault/keyvault-secrets/samples/v4/javascript/package.json index 7d259fae2e36..6ac836e94bee 100644 --- a/sdk/keyvault/keyvault-secrets/samples/v4/javascript/package.json +++ b/sdk/keyvault/keyvault-secrets/samples/v4/javascript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets", "dependencies": { "@azure/keyvault-secrets": "latest", "dotenv": "latest", diff --git a/sdk/keyvault/keyvault-secrets/samples/v4/typescript/README.md b/sdk/keyvault/keyvault-secrets/samples/v4/typescript/README.md index 61300cdbf1df..539f96af94c4 100644 --- a/sdk/keyvault/keyvault-secrets/samples/v4/typescript/README.md +++ b/sdk/keyvault/keyvault-secrets/samples/v4/typescript/README.md @@ -78,13 +78,13 @@ npx cross-env KEYVAULT_URI="" node dist/backupAndRestore.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/backupAndRestore.ts -[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/deleteAndRecover.ts -[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/helloWorld.ts -[listoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/listOperations.ts -[purgeallsecrets]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/purgeAllSecrets.ts +[backupandrestore]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/backupAndRestore.ts +[deleteandrecover]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/deleteAndRecover.ts +[helloworld]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/helloWorld.ts +[listoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/listOperations.ts +[purgeallsecrets]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/keyvault-secrets/samples/v4/typescript/src/purgeAllSecrets.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/keyvault-secrets [freesub]: https://azure.microsoft.com/free/ [createinstance_azurekeyvault]: https://docs.microsoft.com/azure/key-vault/quick-create-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/keyvault/keyvault-secrets/samples/v4/typescript/package.json b/sdk/keyvault/keyvault-secrets/samples/v4/typescript/package.json index 7feca5e6924d..5bdd0cfb97fc 100644 --- a/sdk/keyvault/keyvault-secrets/samples/v4/typescript/package.json +++ b/sdk/keyvault/keyvault-secrets/samples/v4/typescript/package.json @@ -29,7 +29,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/keyvault/keyvault-secrets", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/keyvault/keyvault-secrets", "dependencies": { "@azure/keyvault-secrets": "latest", "dotenv": "latest", diff --git a/sdk/keyvault/keyvault-secrets/test/README.md b/sdk/keyvault/keyvault-secrets/test/README.md index a3bcdc133829..eeea71c3bdd4 100644 --- a/sdk/keyvault/keyvault-secrets/test/README.md +++ b/sdk/keyvault/keyvault-secrets/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/keyvault/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/keyvault/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/keyvault/perf-tests/keyvault-certificates/package.json b/sdk/keyvault/perf-tests/keyvault-certificates/package.json index fe6cc5060969..3a63316a7f56 100644 --- a/sdk/keyvault/perf-tests/keyvault-certificates/package.json +++ b/sdk/keyvault/perf-tests/keyvault-certificates/package.json @@ -9,7 +9,7 @@ "dependencies": { "@azure/test-utils-perfstress": "^1.0.0", "dotenv": "^8.2.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "uuid": "^8.3.0", "@azure/keyvault-certificates": "^4.2.0" }, diff --git a/sdk/keyvault/perf-tests/keyvault-keys/package.json b/sdk/keyvault/perf-tests/keyvault-keys/package.json index 3f571a013c95..8305fc0b75b3 100644 --- a/sdk/keyvault/perf-tests/keyvault-keys/package.json +++ b/sdk/keyvault/perf-tests/keyvault-keys/package.json @@ -10,7 +10,7 @@ "@azure/test-utils-perfstress": "^1.0.0", "@azure/keyvault-keys": "^4.2.1", "dotenv": "^8.2.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "uuid": "^8.3.0" }, "devDependencies": { diff --git a/sdk/keyvault/perf-tests/keyvault-secrets/package.json b/sdk/keyvault/perf-tests/keyvault-secrets/package.json index 91a83e2035f0..987956e39065 100644 --- a/sdk/keyvault/perf-tests/keyvault-secrets/package.json +++ b/sdk/keyvault/perf-tests/keyvault-secrets/package.json @@ -9,7 +9,7 @@ "dependencies": { "@azure/test-utils-perfstress": "^1.0.0", "dotenv": "^8.2.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "uuid": "^8.3.0", "@azure/keyvault-secrets": "^4.2.0" }, diff --git a/sdk/keyvault/test-resources-post.ps1 b/sdk/keyvault/test-resources-post.ps1 index 9f48a247365b..f6de5833bed8 100644 --- a/sdk/keyvault/test-resources-post.ps1 +++ b/sdk/keyvault/test-resources-post.ps1 @@ -107,11 +107,9 @@ az keyvault security-domain download --hsm-name $hsmName --security-domain-file Log "Security domain downloaded to '$sdPath'; Managed HSM is now active at '$hsmUrl'" -# Force a sleep to wait for Managed HSM activation to propagate through Cosmos replication. Issue tracked in AzDo. -Log "Sleeping for 60 seconds to allow activation to propagate..." -Start-Sleep -Seconds 60 +$testApplicationOid = $DeploymentOutputs["CLIENT_OBJECT_ID"] Log "Creating additional required role assignments for resource access." -New-AzKeyVaultRoleAssignment -HsmName $hsmName -RoleDefinitionName "Managed HSM Crypto Officer" -ObjectID $DeploymentOutputs["CLIENT_OBJECT_ID"] -New-AzKeyVaultRoleAssignment -HsmName $hsmName -RoleDefinitionName "Managed HSM Crypto User" -ObjectID $DeploymentOutputs["CLIENT_OBJECT_ID"] -Log "Done." +New-AzKeyVaultRoleAssignment -HsmName $hsmName -RoleDefinitionName "Managed HSM Crypto Officer" -ObjectID $testApplicationOid +New-AzKeyVaultRoleAssignment -HsmName $hsmName -RoleDefinitionName "Managed HSM Crypto User" -ObjectID $testApplicationOid +Log "Role assignments created for '$testApplicationOid'" diff --git a/sdk/keyvault/test-resources.json b/sdk/keyvault/test-resources.json index 0b0fda99d1ee..f366f446f965 100644 --- a/sdk/keyvault/test-resources.json +++ b/sdk/keyvault/test-resources.json @@ -173,6 +173,8 @@ "name": "Standard_B1" }, "properties": { + "publicNetworkAccess": "Enabled", + "networkAcls": "[variables('networkAcls')]", "tenantId": "[parameters('tenantId')]", "initialAdminObjectIds": ["[parameters('testApplicationOid')]"], "enablePurgeProtection": false, diff --git a/sdk/kubernetesconfiguration/arm-kubernetesconfiguration/package.json b/sdk/kubernetesconfiguration/arm-kubernetesconfiguration/package.json index 9622186900f6..cd2e2545f9ca 100644 --- a/sdk/kubernetesconfiguration/arm-kubernetesconfiguration/package.json +++ b/sdk/kubernetesconfiguration/arm-kubernetesconfiguration/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/kubernetesconfiguration/arm-kubernetesconfiguration", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/kubernetesconfiguration/arm-kubernetesconfiguration", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/kusto/arm-kusto/package.json b/sdk/kusto/arm-kusto/package.json index 1eef0eb6fb97..5418efffbbc6 100644 --- a/sdk/kusto/arm-kusto/package.json +++ b/sdk/kusto/arm-kusto/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/kusto/arm-kusto", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/kusto/arm-kusto", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/labservices/arm-labservices/package.json b/sdk/labservices/arm-labservices/package.json index 5ad34162ddf0..9ee0301ddad0 100644 --- a/sdk/labservices/arm-labservices/package.json +++ b/sdk/labservices/arm-labservices/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/labservices/arm-labservices", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/labservices/arm-labservices", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/links/arm-links/package.json b/sdk/links/arm-links/package.json index ce26a8012752..c75839f25ffd 100644 --- a/sdk/links/arm-links/package.json +++ b/sdk/links/arm-links/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/links/arm-links", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/links/arm-links", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/locks/arm-locks-profile-2020-09-01-hybrid/package.json b/sdk/locks/arm-locks-profile-2020-09-01-hybrid/package.json index 154e3fb5d54c..54633bf79bed 100644 --- a/sdk/locks/arm-locks-profile-2020-09-01-hybrid/package.json +++ b/sdk/locks/arm-locks-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/locks/arm-locks-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/locks/arm-locks-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/locks/arm-locks-profile-hybrid-2019-03-01/package.json b/sdk/locks/arm-locks-profile-hybrid-2019-03-01/package.json index 79ef27c45bb9..91a8d1492e1e 100644 --- a/sdk/locks/arm-locks-profile-hybrid-2019-03-01/package.json +++ b/sdk/locks/arm-locks-profile-hybrid-2019-03-01/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/locks/arm-locks-profile-hybrid-2019-03-01", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/locks/arm-locks-profile-hybrid-2019-03-01", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/locks/arm-locks/LICENSE.txt b/sdk/locks/arm-locks/LICENSE.txt index b73b4a1293c3..2d3163745319 100644 --- a/sdk/locks/arm-locks/LICENSE.txt +++ b/sdk/locks/arm-locks/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2019 Microsoft +Copyright (c) 2021 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/sdk/locks/arm-locks/README.md b/sdk/locks/arm-locks/README.md index 3d40a1ffb0ee..41c37e538a08 100644 --- a/sdk/locks/arm-locks/README.md +++ b/sdk/locks/arm-locks/README.md @@ -1,89 +1,97 @@ ## Azure ManagementLockClient SDK for JavaScript -This package contains an isomorphic SDK for ManagementLockClient. +This package contains an isomorphic SDK (runs both in node.js and in browsers) for ManagementLockClient. ### Currently supported environments -- Node.js version 6.x.x or higher -- Browser JavaScript +- [LTS versions of Node.js](https://nodejs.org/about/releases/) +- Latest versions of Safari, Chrome, Edge and Firefox. -### How to Install +### Prerequisites +You must have an [Azure subscription](https://azure.microsoft.com/free/). + +### How to install + +To use this SDK in your project, you will need to install two packages. +- `@azure/arm-locks` that contains the client. +- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. + +Install both packages using the below command: ```bash -npm install @azure/arm-locks +npm install --save @azure/arm-locks @azure/identity ``` +> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. +If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. ### How to use -#### nodejs - Authentication, client creation and list authorizationOperations as an example written in TypeScript. +- If you are writing a client side browser application, + - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. + - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. +- If you are writing a server side application, + - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) + - Complete the set up steps required by the credential if any. + - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. -##### Install @azure/ms-rest-nodeauth - -```bash -npm install @azure/ms-rest-nodeauth -``` +In the below samples, we pass the credential and the Azure subscription id to instantiate the client. +Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. +#### nodejs - Authentication, client creation, and list authorizationOperations as an example written in JavaScript. ##### Sample code -```typescript -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; -import { ManagementLockClient, ManagementLockModels, ManagementLockMappers } from "@azure/arm-locks"; +```javascript +const { DefaultAzureCredential } = require("@azure/identity"); +const { ManagementLockClient } = require("@azure/arm-locks"); const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; -msRestNodeAuth.interactiveLogin().then((creds) => { - const client = new ManagementLockClient(creds, subscriptionId); - client.authorizationOperations.list().then((result) => { - console.log("The result is:"); - console.log(result); - }); +// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples +// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. +const creds = new DefaultAzureCredential(); +const client = new ManagementLockClient(creds, subscriptionId); +client.authorizationOperations.list().then((result) => { + console.log("The result is:"); + console.log(result); }).catch((err) => { + console.log("An error occurred:"); console.error(err); }); ``` -#### browser - Authentication, client creation and list authorizationOperations as an example written in JavaScript. +#### browser - Authentication, client creation, and list authorizationOperations as an example written in JavaScript. -##### Install @azure/ms-rest-browserauth - -```bash -npm install @azure/ms-rest-browserauth -``` +In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. + - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. + - Note down the client Id from the previous step and use it in the browser sample below. ##### Sample code -See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. - - index.html + ```html @azure/arm-locks sample - - + @@ -95,4 +103,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Flocks%2Farm-locks%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/locks/arm-locks/README.png) diff --git a/sdk/locks/arm-locks/package.json b/sdk/locks/arm-locks/package.json index ed0bb0c2316e..e696f0154baf 100644 --- a/sdk/locks/arm-locks/package.json +++ b/sdk/locks/arm-locks/package.json @@ -4,9 +4,10 @@ "description": "ManagementLockClient Library with typescript type definitions for node.js and browser.", "version": "1.1.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.3.2", - "@azure/ms-rest-js": "^1.8.1", - "tslib": "^1.9.3" + "@azure/ms-rest-azure-js": "^2.1.0", + "@azure/ms-rest-js": "^2.2.0", + "@azure/core-auth": "^1.1.4", + "tslib": "^1.10.0" }, "keywords": [ "node", @@ -20,11 +21,11 @@ "module": "./esm/managementLockClient.js", "types": "./esm/managementLockClient.d.ts", "devDependencies": { - "typescript": "^3.1.1", - "rollup": "^0.66.2", - "rollup-plugin-node-resolve": "^3.4.0", + "typescript": "^3.6.0", + "rollup": "^1.18.0", + "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-sourcemaps": "^0.4.2", - "uglify-js": "^3.4.9" + "uglify-js": "^3.6.0" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/locks/arm-locks", "repository": { diff --git a/sdk/locks/arm-locks/rollup.config.js b/sdk/locks/arm-locks/rollup.config.js index ad258f7a3de7..634feec9bd0f 100644 --- a/sdk/locks/arm-locks/rollup.config.js +++ b/sdk/locks/arm-locks/rollup.config.js @@ -21,15 +21,15 @@ const config = { "@azure/ms-rest-azure-js": "msRestAzure" }, banner: `/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */` }, plugins: [ - nodeResolve({ module: true }), + nodeResolve({ mainFields: ['module', 'main'] }), sourcemaps() ] }; diff --git a/sdk/locks/arm-locks/src/managementLockClient.ts b/sdk/locks/arm-locks/src/managementLockClient.ts index 8f3ee196f5d8..2430543d465e 100644 --- a/sdk/locks/arm-locks/src/managementLockClient.ts +++ b/sdk/locks/arm-locks/src/managementLockClient.ts @@ -1,7 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is @@ -9,6 +8,7 @@ */ import * as msRest from "@azure/ms-rest-js"; +import { TokenCredential } from "@azure/core-auth"; import * as Models from "./models"; import * as Mappers from "./models/mappers"; import * as operations from "./operations"; @@ -22,11 +22,16 @@ class ManagementLockClient extends ManagementLockClientContext { /** * Initializes a new instance of the ManagementLockClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ManagementLockClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ManagementLockClientOptions) { super(credentials, subscriptionId, options); this.authorizationOperations = new operations.AuthorizationOperations(this); this.managementLocks = new operations.ManagementLocks(this); diff --git a/sdk/locks/arm-locks/src/managementLockClientContext.ts b/sdk/locks/arm-locks/src/managementLockClientContext.ts index 1614234fb5b2..d6576f107fc3 100644 --- a/sdk/locks/arm-locks/src/managementLockClientContext.ts +++ b/sdk/locks/arm-locks/src/managementLockClientContext.ts @@ -1,7 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is @@ -11,22 +10,28 @@ import * as Models from "./models"; import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; +import { TokenCredential } from "@azure/core-auth"; const packageName = "@azure/arm-locks"; const packageVersion = "1.1.0"; export class ManagementLockClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials; + credentials: msRest.ServiceClientCredentials | TokenCredential; subscriptionId: string; apiVersion?: string; /** * Initializes a new instance of the ManagementLockClient class. - * @param credentials Credentials needed for the client to connect to Azure. + * @param credentials Credentials needed for the client to connect to Azure. Credentials + * implementing the TokenCredential interface from the @azure/identity package are recommended. For + * more information about these credentials, see + * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the + * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and + * @azure/ms-rest-browserauth are also supported. * @param subscriptionId The ID of the target subscription. * @param [options] The parameter options */ - constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.ManagementLockClientOptions) { + constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.ManagementLockClientOptions) { if (credentials == undefined) { throw new Error('\'credentials\' cannot be null.'); } @@ -37,7 +42,7 @@ export class ManagementLockClientContext extends msRestAzure.AzureServiceClient if (!options) { options = {}; } - if(!options.userAgent) { + if (!options.userAgent) { const defaultUserAgent = msRestAzure.getDefaultUserAgentValue(); options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`; } @@ -52,10 +57,10 @@ export class ManagementLockClientContext extends msRestAzure.AzureServiceClient this.credentials = credentials; this.subscriptionId = subscriptionId; - if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) { + if (options.acceptLanguage !== null && options.acceptLanguage !== undefined) { this.acceptLanguage = options.acceptLanguage; } - if(options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) { + if (options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) { this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout; } } diff --git a/sdk/locks/arm-locks/src/models/authorizationOperationsMappers.ts b/sdk/locks/arm-locks/src/models/authorizationOperationsMappers.ts index 689688180be7..938d3e665a23 100644 --- a/sdk/locks/arm-locks/src/models/authorizationOperationsMappers.ts +++ b/sdk/locks/arm-locks/src/models/authorizationOperationsMappers.ts @@ -1,6 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. diff --git a/sdk/locks/arm-locks/src/models/index.ts b/sdk/locks/arm-locks/src/models/index.ts index cb1a27b7a18b..416c69793916 100644 --- a/sdk/locks/arm-locks/src/models/index.ts +++ b/sdk/locks/arm-locks/src/models/index.ts @@ -1,6 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. @@ -129,6 +129,46 @@ export interface ManagementLocksListByScopeOptionalParams extends msRest.Request filter?: string; } +/** + * Optional Parameters. + */ +export interface ManagementLocksListAtResourceGroupLevelNextOptionalParams extends msRest.RequestOptionsBase { + /** + * The filter to apply on the operation. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface ManagementLocksListAtResourceLevelNextOptionalParams extends msRest.RequestOptionsBase { + /** + * The filter to apply on the operation. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface ManagementLocksListAtSubscriptionLevelNextOptionalParams extends msRest.RequestOptionsBase { + /** + * The filter to apply on the operation. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface ManagementLocksListByScopeNextOptionalParams extends msRest.RequestOptionsBase { + /** + * The filter to apply on the operation. + */ + filter?: string; +} + /** * An interface representing ManagementLockClientOptions. */ diff --git a/sdk/locks/arm-locks/src/models/managementLocksMappers.ts b/sdk/locks/arm-locks/src/models/managementLocksMappers.ts index 829964b3158a..ca0b95dc96f3 100644 --- a/sdk/locks/arm-locks/src/models/managementLocksMappers.ts +++ b/sdk/locks/arm-locks/src/models/managementLocksMappers.ts @@ -1,6 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. diff --git a/sdk/locks/arm-locks/src/models/mappers.ts b/sdk/locks/arm-locks/src/models/mappers.ts index 6a0539a576e5..b4a81ecd3b4e 100644 --- a/sdk/locks/arm-locks/src/models/mappers.ts +++ b/sdk/locks/arm-locks/src/models/mappers.ts @@ -1,6 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. diff --git a/sdk/locks/arm-locks/src/models/parameters.ts b/sdk/locks/arm-locks/src/models/parameters.ts index fe8e8e08a3b1..df9eaad06d05 100644 --- a/sdk/locks/arm-locks/src/models/parameters.ts +++ b/sdk/locks/arm-locks/src/models/parameters.ts @@ -1,7 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is diff --git a/sdk/locks/arm-locks/src/operations/authorizationOperations.ts b/sdk/locks/arm-locks/src/operations/authorizationOperations.ts index 29d0a0621e3b..fa837ad33dba 100644 --- a/sdk/locks/arm-locks/src/operations/authorizationOperations.ts +++ b/sdk/locks/arm-locks/src/operations/authorizationOperations.ts @@ -1,7 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is @@ -108,6 +107,9 @@ const listNextOperationSpec: msRest.OperationSpec = { urlParameters: [ Parameters.nextPageLink ], + queryParameters: [ + Parameters.apiVersion + ], headerParameters: [ Parameters.acceptLanguage ], diff --git a/sdk/locks/arm-locks/src/operations/index.ts b/sdk/locks/arm-locks/src/operations/index.ts index 83933898775f..7c3e495d3386 100644 --- a/sdk/locks/arm-locks/src/operations/index.ts +++ b/sdk/locks/arm-locks/src/operations/index.ts @@ -1,7 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is diff --git a/sdk/locks/arm-locks/src/operations/managementLocks.ts b/sdk/locks/arm-locks/src/operations/managementLocks.ts index d6f3a7b68d01..894eda1a1ff1 100644 --- a/sdk/locks/arm-locks/src/operations/managementLocks.ts +++ b/sdk/locks/arm-locks/src/operations/managementLocks.ts @@ -1,7 +1,6 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is @@ -656,7 +655,7 @@ export class ManagementLocks { * @param [options] The optional parameters * @returns Promise */ - listAtResourceGroupLevelNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + listAtResourceGroupLevelNext(nextPageLink: string, options?: Models.ManagementLocksListAtResourceGroupLevelNextOptionalParams): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback @@ -667,8 +666,8 @@ export class ManagementLocks { * @param options The optional parameters * @param callback The callback */ - listAtResourceGroupLevelNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listAtResourceGroupLevelNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + listAtResourceGroupLevelNext(nextPageLink: string, options: Models.ManagementLocksListAtResourceGroupLevelNextOptionalParams, callback: msRest.ServiceCallback): void; + listAtResourceGroupLevelNext(nextPageLink: string, options?: Models.ManagementLocksListAtResourceGroupLevelNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, @@ -684,7 +683,7 @@ export class ManagementLocks { * @param [options] The optional parameters * @returns Promise */ - listAtResourceLevelNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + listAtResourceLevelNext(nextPageLink: string, options?: Models.ManagementLocksListAtResourceLevelNextOptionalParams): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback @@ -695,8 +694,8 @@ export class ManagementLocks { * @param options The optional parameters * @param callback The callback */ - listAtResourceLevelNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listAtResourceLevelNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + listAtResourceLevelNext(nextPageLink: string, options: Models.ManagementLocksListAtResourceLevelNextOptionalParams, callback: msRest.ServiceCallback): void; + listAtResourceLevelNext(nextPageLink: string, options?: Models.ManagementLocksListAtResourceLevelNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, @@ -712,7 +711,7 @@ export class ManagementLocks { * @param [options] The optional parameters * @returns Promise */ - listAtSubscriptionLevelNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + listAtSubscriptionLevelNext(nextPageLink: string, options?: Models.ManagementLocksListAtSubscriptionLevelNextOptionalParams): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback @@ -723,8 +722,8 @@ export class ManagementLocks { * @param options The optional parameters * @param callback The callback */ - listAtSubscriptionLevelNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listAtSubscriptionLevelNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + listAtSubscriptionLevelNext(nextPageLink: string, options: Models.ManagementLocksListAtSubscriptionLevelNextOptionalParams, callback: msRest.ServiceCallback): void; + listAtSubscriptionLevelNext(nextPageLink: string, options?: Models.ManagementLocksListAtSubscriptionLevelNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, @@ -740,7 +739,7 @@ export class ManagementLocks { * @param [options] The optional parameters * @returns Promise */ - listByScopeNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + listByScopeNext(nextPageLink: string, options?: Models.ManagementLocksListByScopeNextOptionalParams): Promise; /** * @param nextPageLink The NextLink from the previous successful call to List operation. * @param callback The callback @@ -751,8 +750,8 @@ export class ManagementLocks { * @param options The optional parameters * @param callback The callback */ - listByScopeNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByScopeNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + listByScopeNext(nextPageLink: string, options: Models.ManagementLocksListByScopeNextOptionalParams, callback: msRest.ServiceCallback): void; + listByScopeNext(nextPageLink: string, options?: Models.ManagementLocksListByScopeNextOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { nextPageLink, @@ -1216,6 +1215,10 @@ const listAtResourceGroupLevelNextOperationSpec: msRest.OperationSpec = { urlParameters: [ Parameters.nextPageLink ], + queryParameters: [ + Parameters.filter, + Parameters.apiVersion + ], headerParameters: [ Parameters.acceptLanguage ], @@ -1237,6 +1240,10 @@ const listAtResourceLevelNextOperationSpec: msRest.OperationSpec = { urlParameters: [ Parameters.nextPageLink ], + queryParameters: [ + Parameters.filter, + Parameters.apiVersion + ], headerParameters: [ Parameters.acceptLanguage ], @@ -1258,6 +1265,10 @@ const listAtSubscriptionLevelNextOperationSpec: msRest.OperationSpec = { urlParameters: [ Parameters.nextPageLink ], + queryParameters: [ + Parameters.filter, + Parameters.apiVersion + ], headerParameters: [ Parameters.acceptLanguage ], @@ -1279,6 +1290,10 @@ const listByScopeNextOperationSpec: msRest.OperationSpec = { urlParameters: [ Parameters.nextPageLink ], + queryParameters: [ + Parameters.filter, + Parameters.apiVersion + ], headerParameters: [ Parameters.acceptLanguage ], diff --git a/sdk/locks/arm-locks/tsconfig.json b/sdk/locks/arm-locks/tsconfig.json index 87bbf5b5fa49..422b584abd5e 100644 --- a/sdk/locks/arm-locks/tsconfig.json +++ b/sdk/locks/arm-locks/tsconfig.json @@ -9,7 +9,7 @@ "esModuleInterop": true, "allowSyntheticDefaultImports": true, "forceConsistentCasingInFileNames": true, - "lib": ["es6"], + "lib": ["es6", "dom"], "declaration": true, "outDir": "./esm", "importHelpers": true diff --git a/sdk/logic/arm-logic/package.json b/sdk/logic/arm-logic/package.json index 8da898503007..d562943fe641 100644 --- a/sdk/logic/arm-logic/package.json +++ b/sdk/logic/arm-logic/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/logic/arm-logic", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/logic/arm-logic", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/machinelearning/arm-commitmentplans/package.json b/sdk/machinelearning/arm-commitmentplans/package.json index 0c24bc45a9b7..f278f292273b 100644 --- a/sdk/machinelearning/arm-commitmentplans/package.json +++ b/sdk/machinelearning/arm-commitmentplans/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/machinelearning/arm-commitmentplans", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/machinelearning/arm-commitmentplans", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/machinelearning/arm-webservices/package.json b/sdk/machinelearning/arm-webservices/package.json index 4f948ea91060..1f105ed79474 100644 --- a/sdk/machinelearning/arm-webservices/package.json +++ b/sdk/machinelearning/arm-webservices/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/webservices/arm-webservices", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/webservices/arm-webservices", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/machinelearning/arm-workspaces/package.json b/sdk/machinelearning/arm-workspaces/package.json index 92f211c73fbf..ed27d7b1f584 100644 --- a/sdk/machinelearning/arm-workspaces/package.json +++ b/sdk/machinelearning/arm-workspaces/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/machinelearning/arm-workspaces", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/machinelearning/arm-workspaces", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/machinelearningcompute/arm-machinelearningcompute/package.json b/sdk/machinelearningcompute/arm-machinelearningcompute/package.json index cfed4491bda9..bf49b90c74d0 100644 --- a/sdk/machinelearningcompute/arm-machinelearningcompute/package.json +++ b/sdk/machinelearningcompute/arm-machinelearningcompute/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/machinelearningcompute/arm-machinelearningcompute", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/machinelearningcompute/arm-machinelearningcompute", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/machinelearningexperimentation/arm-machinelearningexperimentation/package.json b/sdk/machinelearningexperimentation/arm-machinelearningexperimentation/package.json index a1b7ea9a5b82..9b6aed6ca161 100644 --- a/sdk/machinelearningexperimentation/arm-machinelearningexperimentation/package.json +++ b/sdk/machinelearningexperimentation/arm-machinelearningexperimentation/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/machinelearningexperimentation/arm-machinelearningexperimentation", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/machinelearningexperimentation/arm-machinelearningexperimentation", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/machinelearningservices/arm-machinelearningservices/package.json b/sdk/machinelearningservices/arm-machinelearningservices/package.json index f03b28bd1607..6c9a22e7b32c 100644 --- a/sdk/machinelearningservices/arm-machinelearningservices/package.json +++ b/sdk/machinelearningservices/arm-machinelearningservices/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/machinelearningservices/arm-machinelearningservices", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/machinelearningservices/arm-machinelearningservices", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/managedapplications/arm-managedapplications/package.json b/sdk/managedapplications/arm-managedapplications/package.json index 6c4deac44c4b..79861c572083 100644 --- a/sdk/managedapplications/arm-managedapplications/package.json +++ b/sdk/managedapplications/arm-managedapplications/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/managedapplications/arm-managedapplications", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/managedapplications/arm-managedapplications", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/managementgroups/arm-managementgroups/package.json b/sdk/managementgroups/arm-managementgroups/package.json index db929a6019a5..be3d9ef7c625 100644 --- a/sdk/managementgroups/arm-managementgroups/package.json +++ b/sdk/managementgroups/arm-managementgroups/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/managementgroups/arm-managementgroups", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/managementgroups/arm-managementgroups", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/managementpartner/arm-managementpartner/package.json b/sdk/managementpartner/arm-managementpartner/package.json index 493851144d7d..6c2b42a7f552 100644 --- a/sdk/managementpartner/arm-managementpartner/package.json +++ b/sdk/managementpartner/arm-managementpartner/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/managementpartner/arm-managementpartner", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/managementpartner/arm-managementpartner", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/maps/arm-maps/package.json b/sdk/maps/arm-maps/package.json index 9ce88097918d..dad087f10ae7 100644 --- a/sdk/maps/arm-maps/package.json +++ b/sdk/maps/arm-maps/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/maps/arm-maps", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/maps/arm-maps", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/mariadb/arm-mariadb/package.json b/sdk/mariadb/arm-mariadb/package.json index d9d6d2e1e6d0..c7d9bf80cc17 100644 --- a/sdk/mariadb/arm-mariadb/package.json +++ b/sdk/mariadb/arm-mariadb/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mariadb/arm-mariadb", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mariadb/arm-mariadb", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/marketplaceordering/arm-marketplaceordering/package.json b/sdk/marketplaceordering/arm-marketplaceordering/package.json index 78ee6256591a..9a6cb2c9ae33 100644 --- a/sdk/marketplaceordering/arm-marketplaceordering/package.json +++ b/sdk/marketplaceordering/arm-marketplaceordering/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/marketplaceordering/arm-marketplaceordering", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/marketplaceordering/arm-marketplaceordering", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/mediaservices/arm-mediaservices/package.json b/sdk/mediaservices/arm-mediaservices/package.json index 66e388a7a886..ee22ec05d8f3 100644 --- a/sdk/mediaservices/arm-mediaservices/package.json +++ b/sdk/mediaservices/arm-mediaservices/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mediaservices/arm-mediaservices", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mediaservices/arm-mediaservices", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/metricsadvisor/ai-metrics-advisor/README.md b/sdk/metricsadvisor/ai-metrics-advisor/README.md index 43a96889cb84..fffbc886fb05 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/README.md +++ b/sdk/metricsadvisor/ai-metrics-advisor/README.md @@ -7,11 +7,11 @@ Metrics Advisor is a part of Azure Cognitive Services that uses AI perform data - Configure and fine-tune the anomaly detection model used on your data - Diagnose anomalies and help with root cause analysis. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/) | [Package (NPM)](https://www.npmjs.com/package/@azure/ai-metrics-advisor) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/ai-metrics-advisor) | [Product documentation](https://docs.microsoft.com/azure/cognitive-services/metrics-advisor/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor/samples) ## Getting started @@ -483,17 +483,17 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test \ +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test \ the code. ## Related projects @@ -506,7 +506,7 @@ the code. [azure_sub]: https://azure.microsoft.com/free/ [cognitive_resource]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [register_aad_app]: https://docs.microsoft.com/azure/cognitive-services/authentication#assign-a-role-to-a-service-principal -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [metrics_advisor_glossary]: https://docs.microsoft.com/azure/cognitive-services/metrics-advisor/glossary diff --git a/sdk/metricsadvisor/ai-metrics-advisor/package.json b/sdk/metricsadvisor/ai-metrics-advisor/package.json index 38b45d85e88b..4d36a57cb3b8 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/package.json +++ b/sdk/metricsadvisor/ai-metrics-advisor/package.json @@ -20,7 +20,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" @@ -85,7 +85,7 @@ "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, diff --git a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/README.md b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/README.md index 712b9f1bc96d..560ead8c0bd8 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/README.md +++ b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/README.md @@ -67,18 +67,18 @@ npx cross-env METRICS_ADVISOR_ENDPOINT="" METRICS_ADVI Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[quickstart]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/quickstart.js -[datafeed]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/dataFeed.js -[datasourcecredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/dataSourceCredential.js -[detectionconfig]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/detectionConfig.js -[incidentsandalerts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/incidentsAndAlerts.js -[ingestionstatus]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/ingestionStatus.js -[alertingconfig]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/alertingConfig.js -[hooks]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/hooks.js -[metricfeedback]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/metricFeedback.js -[metricqueries]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/metricQueries.js -[seriesdata]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/seriesData.js +[quickstart]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/quickstart.js +[datafeed]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/dataFeed.js +[datasourcecredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/dataSourceCredential.js +[detectionconfig]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/detectionConfig.js +[incidentsandalerts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/incidentsAndAlerts.js +[ingestionstatus]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/ingestionStatus.js +[alertingconfig]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/alertingConfig.js +[hooks]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/hooks.js +[metricfeedback]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/metricFeedback.js +[metricqueries]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/metricQueries.js +[seriesdata]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/seriesData.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/ai-metrics-advisor/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesaccount]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor/README.md diff --git a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/package.json b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/package.json index f1604dcfc47d..b41b4664df8d 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/package.json +++ b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor", "dependencies": { "@azure/ai-metrics-advisor": "next", "dotenv": "latest" diff --git a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/README.md b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/README.md index 24e68a99f54e..135c067d2ad5 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/README.md +++ b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/README.md @@ -79,19 +79,19 @@ npx cross-env METRICS_ADVISOR_ENDPOINT="" METRICS_ADVI Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[quickstart]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/quickstart.ts -[datafeed]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/dataFeed.ts -[datasourcecredential]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/dataSourceCredential.ts -[detectionconfig]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/detectionConfig.ts -[incidentsandalerts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/incidentsAndAlerts.ts -[ingestionstatus]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/ingestionStatus.ts -[alertingconfig]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/alertingConfig.ts -[hooks]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/hooks.ts -[metricfeedback]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/metricFeedback.ts -[metricqueries]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/metricQueries.ts -[seriesdata]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/seriesData.ts +[quickstart]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/quickstart.ts +[datafeed]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/dataFeed.ts +[datasourcecredential]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/dataSourceCredential.ts +[detectionconfig]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/detectionConfig.ts +[incidentsandalerts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/incidentsAndAlerts.ts +[ingestionstatus]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/ingestionStatus.ts +[alertingconfig]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/alertingConfig.ts +[hooks]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/hooks.ts +[metricfeedback]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/metricFeedback.ts +[metricqueries]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/metricQueries.ts +[seriesdata]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/src/seriesData.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/ai-metrics-advisor/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesaccount]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/package.json b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/package.json index 84f08b6a568d..4e4e27d3cece 100644 --- a/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/package.json +++ b/sdk/metricsadvisor/ai-metrics-advisor/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/metricsadvisor/ai-metrics-advisor", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/metricsadvisor/ai-metrics-advisor", "dependencies": { "@azure/ai-metrics-advisor": "next", "dotenv": "latest" diff --git a/sdk/metricsadvisor/ci.yml b/sdk/metricsadvisor/ci.yml index 53ce10f9028d..b5a908f13fa6 100644 --- a/sdk/metricsadvisor/ci.yml +++ b/sdk/metricsadvisor/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/migrate/arm-migrate/package.json b/sdk/migrate/arm-migrate/package.json index 49b113f1bd65..252b6205c733 100644 --- a/sdk/migrate/arm-migrate/package.json +++ b/sdk/migrate/arm-migrate/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/migrate/arm-migrate", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/migrate/arm-migrate", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/mixedreality/arm-mixedreality/package.json b/sdk/mixedreality/arm-mixedreality/package.json index 32279b745bbb..55fb6fa9e4e9 100644 --- a/sdk/mixedreality/arm-mixedreality/package.json +++ b/sdk/mixedreality/arm-mixedreality/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/arm-mixedreality", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/arm-mixedreality", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/mixedreality/ci.yml b/sdk/mixedreality/ci.yml index ab5b6a4cbadb..9f3a61d98a9a 100644 --- a/sdk/mixedreality/ci.yml +++ b/sdk/mixedreality/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/mixedreality/mixedreality-authentication/README.md b/sdk/mixedreality/mixedreality-authentication/README.md index a0e6a7bc79f7..efc2668f3a60 100644 --- a/sdk/mixedreality/mixedreality-authentication/README.md +++ b/sdk/mixedreality/mixedreality-authentication/README.md @@ -4,10 +4,10 @@ Mixed Reality services, like Azure Spatial Anchors, Azure Remote Rendering, and token service (STS) for authentication. This package supports exchanging Mixed Reality account credentials for an access token from the STS that can be used to access Mixed Reality services. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/mixedreality/mixedreality-authentication/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/mixedreality/mixedreality-authentication/) | [Package (NPM)](https://www.npmjs.com/package/@azure/mixedreality-authentication) | [API reference documentation](https://aka.ms/azsdk/js/mixedreality-authentication/docs) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/mixedreality-authentication/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/mixedreality-authentication/samples) ![Mixed Reality service authentication diagram](https://docs.microsoft.com/azure/spatial-anchors/concepts/media/spatial-anchors-authentication-overview.png) @@ -169,12 +169,12 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/mixedreality-authentication/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/mixedreality-authentication/samples) directory for detailed examples on how to use this library. ## Contributing @@ -192,7 +192,7 @@ For more information see the [Code of Conduct FAQ](https://opensource.microsoft. contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. If you'd like to contribute to this library, please read the -[contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to +[contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -202,8 +202,8 @@ build and test the code. [azure_cli]: https://docs.microsoft.com/cli/azure [azure_sub]: https://azure.microsoft.com/free/ [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [register_aad_app]: https://docs.microsoft.com/azure/spatial-anchors/concepts/authentication -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%mixedreality%2Fmixedreality-authentication%2FREADME.png) diff --git a/sdk/mixedreality/mixedreality-authentication/package.json b/sdk/mixedreality/mixedreality-authentication/package.json index e18b2e80aa70..16264899cbf3 100644 --- a/sdk/mixedreality/mixedreality-authentication/package.json +++ b/sdk/mixedreality/mixedreality-authentication/package.json @@ -63,13 +63,13 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/mixedreality/mixedreality-authentication/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/mixedreality/mixedreality-authentication/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, diff --git a/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/README.md b/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/README.md index 118218c15612..5a46d70d4816 100644 --- a/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/README.md +++ b/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/README.md @@ -63,10 +63,10 @@ npx cross-env MIXEDREALITY_ACCOUNT_DOMAIN="" MIXEDR Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[gettoken]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/getToken.js +[gettoken]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/getToken.js [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azureobjectanchorsaccount]: https://docs.microsoft.com/azure/object-anchors/quickstarts/get-started-model-conversion#create-an-object-anchors-account [createinstance_azureremoterenderingaccount]: https://docs.microsoft.com/azure/remote-rendering/quickstarts/convert-model#azure-setup [createinstance_azurespatialanchorsaccount]: https://docs.microsoft.com/azure/spatial-anchors/quickstarts/get-started-hololens?tabs=azure-portal#create-a-spatial-anchors-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/mixedreality-authentication/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/mixedreality-authentication/README.md diff --git a/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/package.json b/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/package.json index 3c650a0eeee6..94d306a779e4 100644 --- a/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/package.json +++ b/sdk/mixedreality/mixedreality-authentication/samples/v1/javascript/package.json @@ -22,7 +22,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/mixedreality-authentication", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/mixedreality-authentication", "dependencies": { "@azure/mixedreality-authentication": "next", "dotenv": "latest", diff --git a/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/README.md b/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/README.md index f50decc252cb..35945536cfad 100644 --- a/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/README.md +++ b/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/README.md @@ -75,11 +75,11 @@ npx cross-env MIXEDREALITY_ACCOUNT_DOMAIN="" MIXEDR Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[gettoken]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/src/getToken.ts +[gettoken]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/src/getToken.ts [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azureobjectanchorsaccount]: https://docs.microsoft.com/azure/object-anchors/quickstarts/get-started-model-conversion#create-an-object-anchors-account [createinstance_azureremoterenderingaccount]: https://docs.microsoft.com/azure/remote-rendering/quickstarts/convert-model#azure-setup [createinstance_azurespatialanchorsaccount]: https://docs.microsoft.com/azure/spatial-anchors/quickstarts/get-started-hololens?tabs=azure-portal#create-a-spatial-anchors-resource -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/mixedreality-authentication/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/mixedreality-authentication/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/package.json b/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/package.json index e49ce83e4470..e0ead17f9494 100644 --- a/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/package.json +++ b/sdk/mixedreality/mixedreality-authentication/samples/v1/typescript/package.json @@ -26,7 +26,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mixedreality/mixedreality-authentication", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mixedreality/mixedreality-authentication", "dependencies": { "@azure/mixedreality-authentication": "next", "dotenv": "latest", diff --git a/sdk/monitor/arm-monitor-profile-2019-03-01-hybrid/package.json b/sdk/monitor/arm-monitor-profile-2019-03-01-hybrid/package.json index c4c7ea68e45c..d274ca5e8069 100644 --- a/sdk/monitor/arm-monitor-profile-2019-03-01-hybrid/package.json +++ b/sdk/monitor/arm-monitor-profile-2019-03-01-hybrid/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/monitor/arm-monitor-profile-2019-03-01-hybrid", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/monitor/arm-monitor-profile-2019-03-01-hybrid", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/monitor/arm-monitor-profile-2020-09-01-hybrid/package.json b/sdk/monitor/arm-monitor-profile-2020-09-01-hybrid/package.json index 0f1d8e0edfbb..d9354f56c467 100644 --- a/sdk/monitor/arm-monitor-profile-2020-09-01-hybrid/package.json +++ b/sdk/monitor/arm-monitor-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/arm-monitor-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/arm-monitor-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/monitor/arm-monitor/package.json b/sdk/monitor/arm-monitor/package.json index 3a0e43d61f12..2b40038fbd88 100644 --- a/sdk/monitor/arm-monitor/package.json +++ b/sdk/monitor/arm-monitor/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/arm-monitor", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/arm-monitor", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/monitor/ci.yml b/sdk/monitor/ci.yml index 22d494566119..568cb7b5a231 100644 --- a/sdk/monitor/ci.yml +++ b/sdk/monitor/ci.yml @@ -4,7 +4,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -15,7 +14,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/monitor/monitor-opentelemetry-exporter/README.md b/sdk/monitor/monitor-opentelemetry-exporter/README.md index b96fd0634a14..e030b57c45dc 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/README.md +++ b/sdk/monitor/monitor-opentelemetry-exporter/README.md @@ -60,7 +60,7 @@ Coming Soon ## Examples -For complete samples of a few champion scenarios, see the [`samples/`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-opentelemetry-exporter/samples/) folder. +For complete samples of a few champion scenarios, see the [`samples/`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-opentelemetry-exporter/samples/) folder. ## Key concepts @@ -96,6 +96,6 @@ If you cannot your library in the registry, feel free to suggest a new plugin re ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/monitor/monitor-opentelemetry-exporter/README.png) diff --git a/sdk/monitor/monitor-opentelemetry-exporter/package.json b/sdk/monitor/monitor-opentelemetry-exporter/package.json index 283952e4a438..963cd51d8e87 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/package.json +++ b/sdk/monitor/monitor-opentelemetry-exporter/package.json @@ -24,6 +24,7 @@ "test:browser": "npm run unit-test:browser", "unit-test:browser": "echo skipped", "unit-test:node": "nyc mocha -r esm --require ts-node/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 1200000 --full-trace \"test/unit/**/*.test.ts\"", + "unit-test:node:debug": "nyc mocha --inspect-brk -r esm --require ts-node/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 1200000 --full-trace \"test/unit/**/*.test.ts\"", "unit-test:node:no-timeout": "echo skipped", "unit-test": "npm run unit-test:node && npm run unit-test:browser", "functional-test": "nyc mocha -r esm --require ts-node/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 1200000 --full-trace \"test/functional/**/*.test.ts\"", @@ -50,7 +51,7 @@ "LICENSE" ], "license": "MIT", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-opentelemetry-exporter/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-opentelemetry-exporter/", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/README.md b/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/README.md index 12ca4435951b..1841a2f45a5b 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/README.md +++ b/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/README.md @@ -1,6 +1,6 @@ # Getting started with samples -Code cloned from [azure-sdk-for-js/storage-blob/samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples). +Code cloned from [azure-sdk-for-js/storage-blob/samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples). ## `@azure/monitor-opentelemetry-exporter` @@ -18,7 +18,7 @@ In order for auto-instrumentation to take effect, `tracing` must be imported **b ### Authenticating with Azure Active Directory -If you have [registered an application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) with an Azure Active Directory tenant, you can [assign it to an RBAC role](https://docs.microsoft.com/azure/storage/common/storage-auth-aad) in your Azure Storage account. This enables you to use the Azure.Identity library to authenticate with Azure Storage as shown in the [azureAdAuth.ts sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts). +If you have [registered an application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) with an Azure Active Directory tenant, you can [assign it to an RBAC role](https://docs.microsoft.com/azure/storage/common/storage-auth-aad) in your Azure Storage account. This enables you to use the Azure.Identity library to authenticate with Azure Storage as shown in the [azureAdAuth.ts sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts). ## JavaScript sample diff --git a/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/javascript/README.md b/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/javascript/README.md index 2950f36bf73c..f592db7aa39c 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/javascript/README.md +++ b/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/javascript/README.md @@ -42,8 +42,8 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node bas Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/basic.js +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/basic.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-blob [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/README.md diff --git a/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/typescript/README.md b/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/typescript/README.md index 1f1ea0aad87c..dfe091aa40df 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/typescript/README.md +++ b/sdk/monitor/monitor-opentelemetry-exporter/samples/@azure/storage-blob/typescript/README.md @@ -54,9 +54,9 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node dis Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/basic.ts +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/basic.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-blob [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts b/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts index 027d745da46b..e7fbd1d564e9 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/src/export/trace.ts @@ -80,6 +80,7 @@ export class AzureMonitorTraceExporter implements SpanExporter { try { const { result, statusCode } = await this._sender.send(envelopes); + this._numConsecutiveRedirects = 0; if (statusCode === 200) { // Success -- @todo: start retry timer if (!this._retryTimer) { @@ -121,12 +122,26 @@ export class AzureMonitorTraceExporter implements SpanExporter { } } catch (error) { const restError = error as RestError; - if (restError.statusCode && restError.statusCode === 308) { + if ( + restError.statusCode && + (restError.statusCode === 307 || // Temporary redirect + restError.statusCode === 308) + ) { // Permanent redirect - if (restError.response && restError.response.headers) { - let location = restError.response.headers.get("location"); - this._handleRedirect(location); - return await this._persist(envelopes); + this._numConsecutiveRedirects++; + // To prevent circular redirects + if (this._numConsecutiveRedirects < 10) { + if (restError.response && restError.response.headers) { + let location = restError.response.headers.get("location"); + if (location) { + // Update sender URL + this._sender.handlePermanentRedirect(location); + // Send to redirect endpoint as HTTPs library doesn't handle redirect automatically + return this.exportEnvelopes(envelopes); + } + } + } else { + return { code: ExportResultCode.FAILED, error: new Error("Circular redirect") }; } } else if (restError.statusCode && isRetriable(restError.statusCode)) { return await this._persist(envelopes); @@ -188,14 +203,4 @@ export class AzureMonitorTraceExporter implements SpanExporter { } return false; } - - private _handleRedirect(location: string | undefined) { - if (location) { - this._numConsecutiveRedirects++; - // To prevent circular redirects - if (this._numConsecutiveRedirects < 10) { - this._sender.handlePermanentRedirect(location); - } - } - } } diff --git a/sdk/monitor/monitor-opentelemetry-exporter/test/unit/export/trace.test.ts b/sdk/monitor/monitor-opentelemetry-exporter/test/unit/export/trace.test.ts index 2e5938a037f8..ee9293616d2f 100644 --- a/sdk/monitor/monitor-opentelemetry-exporter/test/unit/export/trace.test.ts +++ b/sdk/monitor/monitor-opentelemetry-exporter/test/unit/export/trace.test.ts @@ -10,7 +10,7 @@ import { partialBreezeResponse, successfulBreezeResponse } from "../breezeTestUtils"; -import { FileSystemPersist } from "../../../src/platform"; +import { FileSystemPersist, HttpSender } from "../../../src/platform"; import { TelemetryItem as Envelope } from "../../../src/generated"; import nock from "nock"; @@ -150,9 +150,8 @@ describe("#AzureMonitorBaseExporter", () => { assert.strictEqual(exporter["_retryTimer"], "foo"); }); - it("should handle redirects in Azure Monitor", async () => { + it("should handle permanent redirects in Azure Monitor", async () => { const exporter = new TestExporter(); - let redirectHost = "https://ukwest-0.in.applicationinsights.azure.com"; let redirectLocation = redirectHost + "/v2/track"; // Redirect endpoint @@ -163,17 +162,81 @@ describe("#AzureMonitorBaseExporter", () => { scope.reply(308, {}, { location: redirectLocation }); let result = await exporter.exportEnvelopesPrivate([envelope]); - // Redirect triggered so telemetry must be persisted + let persistedEnvelopes = (await exporter["_persister"].shift()) as Envelope[]; + assert.strictEqual(persistedEnvelopes, null); assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual( + (exporter["_sender"])["_appInsightsClient"]["host"], + redirectHost + ); + }); + + it("should handle temporary redirects in Azure Monitor", async () => { + const exporter = new TestExporter(); + let redirectHost = "https://ukwest-0.in.applicationinsights.azure.com"; + let redirectLocation = redirectHost + "/v2/track"; + // Redirect endpoint + const redirectScope = nock(redirectHost).post("/v2/track", () => { + return true; + }); + redirectScope.reply(200, JSON.stringify(successfulBreezeResponse(1))); + scope.reply(307, {}, { location: redirectLocation }); + + let result = await exporter.exportEnvelopesPrivate([envelope]); let persistedEnvelopes = (await exporter["_persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes?.length, 1); - assert.deepStrictEqual(persistedEnvelopes[0], toObject(envelope)); - assert.strictEqual(exporter["_numConsecutiveRedirects"], 1); - // After redirect return 200 + assert.strictEqual(persistedEnvelopes, null); + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual( + (exporter["_sender"])["_appInsightsClient"]["host"], + redirectHost + ); + }); + + it("should use redirect URL for following requests", async () => { + const exporter = new TestExporter(); + let redirectHost = "https://ukwest-0.in.applicationinsights.azure.com"; + let redirectLocation = redirectHost + "/v2/track"; + // Redirect endpoint + const redirectScope = nock(redirectHost).post("/v2/track", () => { + return true; + }); + redirectScope.twice().reply(200, JSON.stringify(successfulBreezeResponse(1))); + scope.reply(307, {}, { location: redirectLocation }); + let result = await exporter.exportEnvelopesPrivate([envelope]); + assert.strictEqual(result.code, ExportResultCode.SUCCESS); + assert.strictEqual( + (exporter["_sender"])["_appInsightsClient"]["host"], + redirectHost + ); result = await exporter.exportEnvelopesPrivate([envelope]); assert.strictEqual(result.code, ExportResultCode.SUCCESS); - persistedEnvelopes = (await exporter["_persister"].shift()) as Envelope[]; - assert.strictEqual(persistedEnvelopes, null); + assert.strictEqual( + (exporter["_sender"])["_appInsightsClient"]["host"], + redirectHost + ); + }); + + it("should stop redirecting when circular redirect is triggered", async () => { + const exporter = new TestExporter(); + let redirectHost = "https://ukwest-0.in.applicationinsights.azure.com"; + let redirectLocation = redirectHost + "/v2/track"; + // Redirect endpoint + const redirectScope = nock(redirectHost).post("/v2/track", () => { + return true; + }); + // Circle redirect + scope + .reply(307, JSON.stringify(successfulBreezeResponse(1)), { location: redirectLocation }) + .persist(); + redirectScope + .reply(307, JSON.stringify(successfulBreezeResponse(1)), { + location: DEFAULT_BREEZE_ENDPOINT + }) + .persist(); + + let result = await exporter.exportEnvelopesPrivate([envelope]); + assert.strictEqual(result.code, ExportResultCode.FAILED); + assert.strictEqual(result.error?.message, "Circular redirect"); }); }); }); diff --git a/sdk/monitor/monitor-query/README.md b/sdk/monitor/monitor-query/README.md index 842b27449167..869c8c2bf9ca 100644 --- a/sdk/monitor/monitor-query/README.md +++ b/sdk/monitor/monitor-query/README.md @@ -7,7 +7,7 @@ Use the client library for Azure Monitor to: - Query logs using the [Kusto query language][kusto_query_language] - Query metrics -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/) | [Package (NPM)](https://www.npmjs.com/package/@azure/monitor-query) | [API reference documentation][msdocs_apiref]| [Product documentation][azure_monitor_product_documentation] @@ -47,7 +47,7 @@ Authentication via service principal is done by: - Setting appropriate RBAC rules on your Azure Monitor resource. More information on Azure Monitor roles can be found [here][azure_monitor_roles]. -Using [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md#defaultazurecredential) +Using [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md#defaultazurecredential) ```javascript const { DefaultAzureCredential } = require("@azure/identity"); @@ -60,7 +60,7 @@ const logsQueryClient = new LogsQueryClient(credential); const metricsQueryClient = new MetricsQueryClient(credential); ``` -More information about `@azure/identity` can be found [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) +More information about `@azure/identity` can be found [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) ## Key concepts @@ -123,7 +123,7 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps @@ -133,11 +133,11 @@ The following samples show you the various ways you can query your Log Analytics - [`logsQueryBatchSample.ts`][samples_logquerybatch_ts] - Run multiple queries, simultaneously, with a batch in a Monitor workspace - [`metricsQuerySample.ts`][samples_metricsquery_ts] - Query metrics in a Monitor workspace -More in-depth examples can be found in the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-query/samples/v1/) folder on GitHub. +More in-depth examples can be found in the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-query/samples/v1/) folder on GitHub. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. This module's tests are a mixture of live and unit tests, which require you to have an Azure Monitor instance. To execute the tests you'll need to run: @@ -148,7 +148,7 @@ This module's tests are a mixture of live and unit tests, which require you to h 5. Open the `.env` file in an editor and fill in the values. 6. `npm run test`. -View our [tests](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/test) +View our [tests](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/test) folder for more details. ## Related projects @@ -169,7 +169,7 @@ folder for more details. [msdocs_metrics_client]: https://docs.microsoft.com/javascript/api/@azure/monitor-query/metricsqueryclient [msdocs_logs_client]: https://docs.microsoft.com/javascript/api/@azure/monitor-query/logsqueryclient [msdocs_apiref]: https://docs.microsoft.com/javascript/api/@azure/monitor-query -[samples]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-query/samples -[samples_logsquery_ts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQuery.ts -[samples_logquerybatch_ts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQueryBatch.ts -[samples_metricsquery_ts]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/typescript/src/metricsQuery.ts +[samples]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-query/samples +[samples_logsquery_ts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQuery.ts +[samples_logquerybatch_ts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQueryBatch.ts +[samples_metricsquery_ts]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/typescript/src/metricsQuery.ts diff --git a/sdk/monitor/monitor-query/package.json b/sdk/monitor/monitor-query/package.json index 0ce7dc6d3388..3eb2ae18fb37 100644 --- a/sdk/monitor/monitor-query/package.json +++ b/sdk/monitor/monitor-query/package.json @@ -94,13 +94,13 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/README.md", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, @@ -111,8 +111,8 @@ "@azure/monitor-opentelemetry-exporter": "1.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", - "@opentelemetry/api": "1.0.0-rc.0", - "@opentelemetry/node": "~0.19.0", + "@opentelemetry/api": "0.21.0", + "@opentelemetry/node": "0.21.0", "@opentelemetry/tracing": "^0.18.2", "@types/chai-as-promised": "^7.1.0", "@types/chai": "^4.1.6", diff --git a/sdk/monitor/monitor-query/samples/v1/javascript/README.md b/sdk/monitor/monitor-query/samples/v1/javascript/README.md index 9910075df3e9..4376abe4f892 100644 --- a/sdk/monitor/monitor-query/samples/v1/javascript/README.md +++ b/sdk/monitor/monitor-query/samples/v1/javascript/README.md @@ -48,10 +48,10 @@ npx cross-env MONITOR_WORKSPACE_ID="" node logsQuery.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[logsquery]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/javascript/logsQuery.js -[logsquerybatch]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/javascript/logsQueryBatch.js -[metricsquery]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/javascript/metricsQuery.js +[logsquery]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/javascript/logsQuery.js +[logsquerybatch]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/javascript/logsQueryBatch.js +[metricsquery]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/javascript/metricsQuery.js [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azuremonitor]: https://docs.microsoft.com/azure/azure-monitor/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-query/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-query/README.md diff --git a/sdk/monitor/monitor-query/samples/v1/javascript/package.json b/sdk/monitor/monitor-query/samples/v1/javascript/package.json index 8df0474602c5..f39d84df49d7 100644 --- a/sdk/monitor/monitor-query/samples/v1/javascript/package.json +++ b/sdk/monitor/monitor-query/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-query", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-query", "dependencies": { "@azure/monitor-query": "next", "dotenv": "latest", diff --git a/sdk/monitor/monitor-query/samples/v1/typescript/README.md b/sdk/monitor/monitor-query/samples/v1/typescript/README.md index 3f4964a0a0f7..db60cfcfe41a 100644 --- a/sdk/monitor/monitor-query/samples/v1/typescript/README.md +++ b/sdk/monitor/monitor-query/samples/v1/typescript/README.md @@ -60,11 +60,11 @@ npx cross-env MONITOR_WORKSPACE_ID="" node dist/logsQuery. Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[logsquery]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQuery.ts -[logsquerybatch]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQueryBatch.ts -[metricsquery]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/monitor/monitor-query/samples/v1/typescript/src/metricsQuery.ts +[logsquery]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQuery.ts +[logsquerybatch]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/typescript/src/logsQueryBatch.ts +[metricsquery]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/monitor/monitor-query/samples/v1/typescript/src/metricsQuery.ts [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azuremonitor]: https://docs.microsoft.com/azure/azure-monitor/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-query/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-query/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/monitor/monitor-query/samples/v1/typescript/package.json b/sdk/monitor/monitor-query/samples/v1/typescript/package.json index 20f2bf774734..0689a42f9ed6 100644 --- a/sdk/monitor/monitor-query/samples/v1/typescript/package.json +++ b/sdk/monitor/monitor-query/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/monitor/monitor-query", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/monitor/monitor-query", "dependencies": { "@azure/monitor-query": "next", "dotenv": "latest", diff --git a/sdk/msi/arm-msi/package.json b/sdk/msi/arm-msi/package.json index bce966dc1ae2..fde1b3ef62bb 100644 --- a/sdk/msi/arm-msi/package.json +++ b/sdk/msi/arm-msi/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/msi/arm-msi", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/msi/arm-msi", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/mysql/arm-mysql/package.json b/sdk/mysql/arm-mysql/package.json index 287210f79af1..002baef71cd0 100644 --- a/sdk/mysql/arm-mysql/package.json +++ b/sdk/mysql/arm-mysql/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/mysql/arm-mysql", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/mysql/arm-mysql", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/netapp/arm-netapp/package.json b/sdk/netapp/arm-netapp/package.json index 107f1138714f..2bd722c709bc 100644 --- a/sdk/netapp/arm-netapp/package.json +++ b/sdk/netapp/arm-netapp/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/netapp/arm-netapp", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/netapp/arm-netapp", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/network/arm-network-profile-2019-03-01-hybrid/package.json b/sdk/network/arm-network-profile-2019-03-01-hybrid/package.json index 477aad097aef..f3f77e93ae7d 100644 --- a/sdk/network/arm-network-profile-2019-03-01-hybrid/package.json +++ b/sdk/network/arm-network-profile-2019-03-01-hybrid/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/network/arm-network-profile-2019-03-01-hybrid", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/network/arm-network-profile-2019-03-01-hybrid", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/network/arm-network-profile-2020-09-01-hybrid/package.json b/sdk/network/arm-network-profile-2020-09-01-hybrid/package.json index ce75797a9253..ed79a4aceedc 100644 --- a/sdk/network/arm-network-profile-2020-09-01-hybrid/package.json +++ b/sdk/network/arm-network-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/network/arm-network-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/network/arm-network-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/network/arm-network/package.json b/sdk/network/arm-network/package.json index ab9ff38328b7..27144ec92901 100644 --- a/sdk/network/arm-network/package.json +++ b/sdk/network/arm-network/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/network/arm-network", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/network/arm-network", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/notificationhubs/arm-notificationhubs/package.json b/sdk/notificationhubs/arm-notificationhubs/package.json index 0f0f7f1f7148..0f31c8842534 100644 --- a/sdk/notificationhubs/arm-notificationhubs/package.json +++ b/sdk/notificationhubs/arm-notificationhubs/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/notificationhubs/arm-notificationhubs", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/notificationhubs/arm-notificationhubs", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/operationalinsights/arm-operationalinsights/package.json b/sdk/operationalinsights/arm-operationalinsights/package.json index 066b3cd6ee8c..c1c039dcd080 100644 --- a/sdk/operationalinsights/arm-operationalinsights/package.json +++ b/sdk/operationalinsights/arm-operationalinsights/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/operationalinsights/arm-operationalinsights", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/operationalinsights/arm-operationalinsights", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/operationalinsights/loganalytics/package.json b/sdk/operationalinsights/loganalytics/package.json index 835261ff989e..56547dae1efe 100644 --- a/sdk/operationalinsights/loganalytics/package.json +++ b/sdk/operationalinsights/loganalytics/package.json @@ -24,7 +24,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/operationalinsights/loganalytics", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/operationalinsights/loganalytics", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/operationsmanagement/arm-operations/package.json b/sdk/operationsmanagement/arm-operations/package.json index 3ca223cc6b60..56e114a52dd6 100644 --- a/sdk/operationsmanagement/arm-operations/package.json +++ b/sdk/operationsmanagement/arm-operations/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/operationsmanagement/arm-operations", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/operationsmanagement/arm-operations", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/peering/arm-peering/package.json b/sdk/peering/arm-peering/package.json index d0ceacd60a82..c7c2b7e47341 100644 --- a/sdk/peering/arm-peering/package.json +++ b/sdk/peering/arm-peering/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/peering/arm-peering", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/peering/arm-peering", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/policy/arm-policy-profile-2020-09-01-hybrid/package.json b/sdk/policy/arm-policy-profile-2020-09-01-hybrid/package.json index 483a78f33d59..fe686de1fc7b 100644 --- a/sdk/policy/arm-policy-profile-2020-09-01-hybrid/package.json +++ b/sdk/policy/arm-policy-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/policy/arm-policy-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/policy/arm-policy-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/policy/arm-policy-profile-hybrid-2019-03-01/package.json b/sdk/policy/arm-policy-profile-hybrid-2019-03-01/package.json index 355349448855..712ae64221a3 100644 --- a/sdk/policy/arm-policy-profile-hybrid-2019-03-01/package.json +++ b/sdk/policy/arm-policy-profile-hybrid-2019-03-01/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/policy/arm-policy-profile-hybrid-2019-03-01", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/policy/arm-policy-profile-hybrid-2019-03-01", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/policy/arm-policy/package.json b/sdk/policy/arm-policy/package.json index 6cecbe858827..e6934d947760 100644 --- a/sdk/policy/arm-policy/package.json +++ b/sdk/policy/arm-policy/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/policy/arm-policy", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/policy/arm-policy", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/policyinsights/arm-policyinsights/package.json b/sdk/policyinsights/arm-policyinsights/package.json index e45de3ffd1ca..2d1a254b3b14 100644 --- a/sdk/policyinsights/arm-policyinsights/package.json +++ b/sdk/policyinsights/arm-policyinsights/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/policyinsights/arm-policyinsights", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/policyinsights/arm-policyinsights", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/postgresql/arm-postgresql-flexible/package.json b/sdk/postgresql/arm-postgresql-flexible/package.json index 68183b512288..fb1da03042de 100644 --- a/sdk/postgresql/arm-postgresql-flexible/package.json +++ b/sdk/postgresql/arm-postgresql-flexible/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/postgresql/arm-postgresql-flexible", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/postgresql/arm-postgresql-flexible", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/postgresql/arm-postgresql/package.json b/sdk/postgresql/arm-postgresql/package.json index f0583e8fb064..985360d5fddb 100644 --- a/sdk/postgresql/arm-postgresql/package.json +++ b/sdk/postgresql/arm-postgresql/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/postgresql/arm-postgresql", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/postgresql/arm-postgresql", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/powerbidedicated/arm-powerbidedicated/package.json b/sdk/powerbidedicated/arm-powerbidedicated/package.json index 86138442b394..e9e3e8b3365b 100644 --- a/sdk/powerbidedicated/arm-powerbidedicated/package.json +++ b/sdk/powerbidedicated/arm-powerbidedicated/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/powerbidedicated/arm-powerbidedicated", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/powerbidedicated/arm-powerbidedicated", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/powerbiembedded/arm-powerbiembedded/package.json b/sdk/powerbiembedded/arm-powerbiembedded/package.json index 56a597006190..e4ca4e96d3d9 100644 --- a/sdk/powerbiembedded/arm-powerbiembedded/package.json +++ b/sdk/powerbiembedded/arm-powerbiembedded/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/powerbiembedded/arm-powerbiembedded", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/powerbiembedded/arm-powerbiembedded", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/privatedns/arm-privatedns/package.json b/sdk/privatedns/arm-privatedns/package.json index ecd71e56cd4a..ce01d91428f5 100644 --- a/sdk/privatedns/arm-privatedns/package.json +++ b/sdk/privatedns/arm-privatedns/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/privatedns/arm-privatedns", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/privatedns/arm-privatedns", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/purview/ci.yml b/sdk/purview/ci.yml index c0ad965a9300..c52253c0a1f0 100644 --- a/sdk/purview/ci.yml +++ b/sdk/purview/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/purview/purview-catalog-rest/README.md b/sdk/purview/purview-catalog-rest/README.md index d737ee7be341..9c5a040e4d77 100644 --- a/sdk/purview/purview-catalog-rest/README.md +++ b/sdk/purview/purview-catalog-rest/README.md @@ -103,13 +103,13 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -118,14 +118,14 @@ If you'd like to contribute to this library, please read the [contributing guide ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fpurview%2Fpurview-catalog-rest%2FREADME.png) [catalog_product_documentation]: https://azure.microsoft.com/services/purview/ -[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/rest-clients.md -[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-catalog-rest +[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md +[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-catalog-rest [catalog_npm]: https://www.npmjs.com/org/azure-rest [catalog_ref_docs]: https://azure.github.io/azure-sdk-for-js [azure_subscription]: https://azure.microsoft.com/free/ [purview_resource]: https://docs.microsoft.com/azure/purview/create-catalog-portal [authenticate_with_token]: https://docs.microsoft.com/azure/cognitive-services/authentication?tabs=powershell#authenticate-with-an-authentication-token -[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#credentials +[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#credentials [azure_identity_npm]: https://www.npmjs.com/package/@azure/identity [enable_aad]: https://docs.microsoft.com/azure/purview/create-catalog-portal#add-a-security-principal-to-a-data-plane-role -[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential diff --git a/sdk/purview/purview-catalog-rest/package.json b/sdk/purview/purview-catalog-rest/package.json index 683ab37dc26c..b52fe0d6c388 100644 --- a/sdk/purview/purview-catalog-rest/package.json +++ b/sdk/purview/purview-catalog-rest/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/purview-catalog-rest.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-catalog/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-catalog/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/purview/purview-catalog-rest/samples/v1/javascript/README.md b/sdk/purview/purview-catalog-rest/samples/v1/javascript/README.md index 296e282e5cea..c777ab99ed27 100644 --- a/sdk/purview/purview-catalog-rest/samples/v1/javascript/README.md +++ b/sdk/purview/purview-catalog-rest/samples/v1/javascript/README.md @@ -56,8 +56,8 @@ npx cross-env ENDPOINT="" node typedefs.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[typedefs]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/purview/purview-catalog-rest/samples/v1/javascript/typedefs.js +[typedefs]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/purview/purview-catalog-rest/samples/v1/javascript/typedefs.js [apiref]: https://docs.microsoft.com/azure/purview/tutorial-using-rest-apis [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesinstance]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-catalog-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-catalog-rest/README.md diff --git a/sdk/purview/purview-catalog-rest/samples/v1/javascript/package.json b/sdk/purview/purview-catalog-rest/samples/v1/javascript/package.json index 817b18813863..3000bc50d32f 100644 --- a/sdk/purview/purview-catalog-rest/samples/v1/javascript/package.json +++ b/sdk/purview/purview-catalog-rest/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-catalog-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-catalog-rest", "dependencies": { "@azure-rest/purview-catalog": "next", "dotenv": "latest", diff --git a/sdk/purview/purview-catalog-rest/samples/v1/typescript/README.md b/sdk/purview/purview-catalog-rest/samples/v1/typescript/README.md index 5c8633b0b5df..77a345c07bad 100644 --- a/sdk/purview/purview-catalog-rest/samples/v1/typescript/README.md +++ b/sdk/purview/purview-catalog-rest/samples/v1/typescript/README.md @@ -68,9 +68,9 @@ npx cross-env ENDPOINT="" node dist/typedefs.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[typedefs]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/purview/purview-catalog-rest/samples/v1/typescript/src/typedefs.ts +[typedefs]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/purview/purview-catalog-rest/samples/v1/typescript/src/typedefs.ts [apiref]: https://docs.microsoft.com/azure/purview/tutorial-using-rest-apis [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesinstance]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-catalog-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-catalog-rest/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/purview/purview-catalog-rest/samples/v1/typescript/package.json b/sdk/purview/purview-catalog-rest/samples/v1/typescript/package.json index 7c74c94a51ab..593e4f1127da 100644 --- a/sdk/purview/purview-catalog-rest/samples/v1/typescript/package.json +++ b/sdk/purview/purview-catalog-rest/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-catalog-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-catalog-rest", "dependencies": { "@azure-rest/purview-catalog": "next", "dotenv": "latest", diff --git a/sdk/purview/purview-scanning-rest/README.md b/sdk/purview/purview-scanning-rest/README.md index 0268f46d556c..50b99ea78dd4 100644 --- a/sdk/purview/purview-scanning-rest/README.md +++ b/sdk/purview/purview-scanning-rest/README.md @@ -108,13 +108,13 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -125,14 +125,14 @@ If you'd like to contribute to this library, please read the [contributing guide [scanning_product_documentation]: https://azure.microsoft.com/services/purview/ -[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/rest-clients.md -[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest +[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md +[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-scanning-rest [scanning_npm]: https://www.npmjs.com/package/@azure-rest/purview-scanning [scanning_ref_docs]: https://azure.github.io/azure-sdk-for-js [azure_subscription]: https://azure.microsoft.com/free/ [purview_resource]: https://docs.microsoft.com/azure/purview/create-catalog-portal [authenticate_with_token]: https://docs.microsoft.com/azure/cognitive-services/authentication?tabs=powershell#authenticate-with-an-authentication-token -[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#credentials +[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#credentials [azure_identity_npm]: https://www.npmjs.com/package/@azure/identity [enable_aad]: https://docs.microsoft.com/azure/purview/create-catalog-portal#add-a-security-principal-to-a-data-plane-role -[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential diff --git a/sdk/purview/purview-scanning-rest/package.json b/sdk/purview/purview-scanning-rest/package.json index a3a1204454f1..1373d967f220 100644 --- a/sdk/purview/purview-scanning-rest/package.json +++ b/sdk/purview/purview-scanning-rest/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/purview-scanning-rest.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-scanning-rest/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md b/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md index 83364ce82287..f21edaff2083 100644 --- a/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md +++ b/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md @@ -56,8 +56,8 @@ npx cross-env ENDPOINT="" node listDatasources.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[listdatasources]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/purview/purview-scanning-rest/samples/v1/javascript/listDatasources.js +[listdatasources]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/purview/purview-scanning-rest/samples/v1/javascript/listDatasources.js [apiref]: https://docs.microsoft.com/azure/purview/tutorial-scan-data [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesinstance]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-scanning-rest/README.md diff --git a/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json b/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json index 94c57837c700..bdd5a3482f43 100644 --- a/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json +++ b/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-scanning-rest", "dependencies": { "@azure-rest/purview-scanning": "next", "dotenv": "latest", diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md b/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md index fed907050b7b..66b74d52b10c 100644 --- a/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md @@ -68,9 +68,9 @@ npx cross-env ENDPOINT="" node dist/listDatasources.js Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[listdatasources]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/purview/purview-scanning-rest/samples/v1/typescript/src/listDatasources.ts +[listdatasources]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/purview/purview-scanning-rest/samples/v1/typescript/src/listDatasources.ts [apiref]: https://docs.microsoft.com/azure/purview/tutorial-scan-data [freesub]: https://azure.microsoft.com/free/ [createinstance_azurecognitiveservicesinstance]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-scanning-rest/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json b/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json index d7269dba567f..4f720b415273 100644 --- a/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json @@ -28,7 +28,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/purview/purview-scanning-rest", "dependencies": { "@azure-rest/purview-scanning": "next", "dotenv": "latest", diff --git a/sdk/quantum/ci.yml b/sdk/quantum/ci.yml index 8dce14ba9543..2586f92bc7ab 100644 --- a/sdk/quantum/ci.yml +++ b/sdk/quantum/ci.yml @@ -4,7 +4,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -16,7 +15,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/quantum/quantum-jobs/README.md b/sdk/quantum/quantum-jobs/README.md index 4dff2fbedf80..1af8f14b5586 100644 --- a/sdk/quantum/quantum-jobs/README.md +++ b/sdk/quantum/quantum-jobs/README.md @@ -7,7 +7,7 @@ Azure Quantum is a Microsoft Azure service that you can use to run quantum compu - Create, enumerate, and cancel quantum jobs - Enumerate provider status and quotas - [Source code][source] | [API reference documentation](https://docs.microsoft.com/qsharp/api/) | [Product documentation](https://docs.microsoft.com/azure/quantum/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/quantum/quantum-jobs/samples) + [Source code][source] | [API reference documentation](https://docs.microsoft.com/qsharp/api/) | [Product documentation](https://docs.microsoft.com/azure/quantum/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/quantum/quantum-jobs/samples) ## Getting started @@ -29,9 +29,9 @@ npm install @azure/quantum-jobs ### Authenticate the client -To authenticate with the service, you can use [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential) from the `@azure/identity` library. This will try different authentication mechanisms based on the environment (e.g. Environment Variables, ManagedIdentity, CachedTokens) and finally, it will fallback to InteractiveBrowserCredential. +To authenticate with the service, you can use [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential) from the `@azure/identity` library. This will try different authentication mechanisms based on the environment (e.g. Environment Variables, ManagedIdentity, CachedTokens) and finally, it will fallback to InteractiveBrowserCredential. -The client also allows the user to override the above behavior by passing their own implementations of the [TokenCredential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-auth/src/tokenCredential.ts). +The client also allows the user to override the above behavior by passing their own implementations of the [TokenCredential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-auth/src/tokenCredential.ts). `TokenCredential` is the default Authentication mechanism used by Azure SDKs. @@ -195,12 +195,12 @@ All Quantum Jobs service operations will throw a RequestFailedException on failu -[source]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/quantum/quantum-jobs/src +[source]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/quantum/quantum-jobs/src [resource-groups]: https://docs.microsoft.com/azure/azure-resource-manager/management/manage-resource-groups-portal [workspaces]: https://docs.microsoft.com/azure/quantum/how-to-create-quantum-workspaces-with-the-azure-portal [location]: https://azure.microsoft.com/global-infrastructure/services/?products=quantum [blob-storage]: https://docs.microsoft.com/azure/storage/blobs/storage-blobs-introduction -[contributing]: https://github.com/Azure/azure-sdk-for-js/tree/master/CONTRIBUTING.md +[contributing]: https://github.com/Azure/azure-sdk-for-js/tree/main/CONTRIBUTING.md [subscriptions]: https://ms.portal.azure.com/#blade/Microsoft_Azure_Billing/SubscriptionsBlade [credentials]: https://docs.microsoft.com/javascript/api/overview/azure/identity-readme?view=azure-node-latest#credentials [style-guide-msft]: https://docs.microsoft.com/style-guide/capitalization diff --git a/sdk/quantum/quantum-jobs/package.json b/sdk/quantum/quantum-jobs/package.json index 058bdcabc8e2..0b7a2689a2b9 100644 --- a/sdk/quantum/quantum-jobs/package.json +++ b/sdk/quantum/quantum-jobs/package.json @@ -59,14 +59,14 @@ "isomorphic" ], "repository": "github:Azure/azure-sdk-for-js", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/quantum/quantum-jobs/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/quantum/quantum-jobs/", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "dependencies": { "@azure/core-paging": "^1.1.1", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "devDependencies": { diff --git a/sdk/recoveryservices/arm-recoveryservices/package.json b/sdk/recoveryservices/arm-recoveryservices/package.json index 8d646e7d6255..20376606d69b 100644 --- a/sdk/recoveryservices/arm-recoveryservices/package.json +++ b/sdk/recoveryservices/arm-recoveryservices/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/recoveryservices/arm-recoveryservices", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/recoveryservices/arm-recoveryservices", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json index 1cb10942f505..b31758dbafb6 100644 --- a/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json +++ b/sdk/recoveryservicesbackup/arm-recoveryservicesbackup/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/recoveryservicesbackup/arm-recoveryservicesbackup", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/recoveryservicesbackup/arm-recoveryservicesbackup", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json index 2b7af5044dfc..1376d42c7006 100644 --- a/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json +++ b/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/recoveryservicessiterecovery/arm-recoveryservices-siterecovery", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/redis/arm-rediscache/package.json b/sdk/redis/arm-rediscache/package.json index 5f56a181672c..1938144a46ee 100644 --- a/sdk/redis/arm-rediscache/package.json +++ b/sdk/redis/arm-rediscache/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/redis/arm-rediscache", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/redis/arm-rediscache", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/redisenterprise/arm-redisenterprisecache/package.json b/sdk/redisenterprise/arm-redisenterprisecache/package.json index 1afee7ef532c..016c6da09bcf 100644 --- a/sdk/redisenterprise/arm-redisenterprisecache/package.json +++ b/sdk/redisenterprise/arm-redisenterprisecache/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/redisenterprise/arm-redisenterprisecache", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/redisenterprise/arm-redisenterprisecache", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/relay/arm-relay/package.json b/sdk/relay/arm-relay/package.json index 87be03979c14..22d8588356f6 100644 --- a/sdk/relay/arm-relay/package.json +++ b/sdk/relay/arm-relay/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/relay/arm-relay", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/relay/arm-relay", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/reservations/arm-reservations/package.json b/sdk/reservations/arm-reservations/package.json index d2615bab247a..3ed3ffb6d440 100644 --- a/sdk/reservations/arm-reservations/package.json +++ b/sdk/reservations/arm-reservations/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/reservations/arm-reservations", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/reservations/arm-reservations", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/resourcegraph/arm-resourcegraph/package.json b/sdk/resourcegraph/arm-resourcegraph/package.json index 6f27b2e61b0f..df62daefb40e 100644 --- a/sdk/resourcegraph/arm-resourcegraph/package.json +++ b/sdk/resourcegraph/arm-resourcegraph/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/resourcegraph/arm-resourcegraph", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/resourcegraph/arm-resourcegraph", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/resourcehealth/arm-resourcehealth/package.json b/sdk/resourcehealth/arm-resourcehealth/package.json index 3055a2704230..c8c350f2f591 100644 --- a/sdk/resourcehealth/arm-resourcehealth/package.json +++ b/sdk/resourcehealth/arm-resourcehealth/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/resourcehealth/arm-resourcehealth", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/resourcehealth/arm-resourcehealth", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/resourcemover/arm-resourcemover/package.json b/sdk/resourcemover/arm-resourcemover/package.json index be331843adb6..08acdd8be900 100644 --- a/sdk/resourcemover/arm-resourcemover/package.json +++ b/sdk/resourcemover/arm-resourcemover/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/resourcemover/arm-resourcemover", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/resourcemover/arm-resourcemover", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/resources/arm-resources-profile-2020-09-01-hybrid/package.json b/sdk/resources/arm-resources-profile-2020-09-01-hybrid/package.json index eb6816fe6f18..11a1d2d24f63 100644 --- a/sdk/resources/arm-resources-profile-2020-09-01-hybrid/package.json +++ b/sdk/resources/arm-resources-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/resources/arm-resources-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/resources/arm-resources-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/resources/arm-resources-profile-hybrid-2019-03-01/package.json b/sdk/resources/arm-resources-profile-hybrid-2019-03-01/package.json index c8daaa0301ac..a114ebb9b805 100644 --- a/sdk/resources/arm-resources-profile-hybrid-2019-03-01/package.json +++ b/sdk/resources/arm-resources-profile-hybrid-2019-03-01/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/resources/arm-resources-profile-hybrid-2019-03-01", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/resources/arm-resources-profile-hybrid-2019-03-01", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/resources/arm-resources/package.json b/sdk/resources/arm-resources/package.json index 64d0180a29d7..65ef4026fa64 100644 --- a/sdk/resources/arm-resources/package.json +++ b/sdk/resources/arm-resources/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/resources/arm-resources", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/resources/arm-resources", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/schemaregistry/README.md b/sdk/schemaregistry/README.md index 9baaf92f256f..ab0963630aee 100644 --- a/sdk/schemaregistry/README.md +++ b/sdk/schemaregistry/README.md @@ -2,5 +2,5 @@ We have two client libraries for Azure Schema Registry -- `@azure/schema-registry` - The Schema Registry client for storing and retrieving schemas. You can find more info over [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry). -- `@azure/schema-registry-avro` - The Avro-based serializer that leverages Schema Registry. You can find more info over [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry-avro). +- `@azure/schema-registry` - The Schema Registry client for storing and retrieving schemas. You can find more info over [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry). +- `@azure/schema-registry-avro` - The Avro-based serializer that leverages Schema Registry. You can find more info over [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry-avro). diff --git a/sdk/schemaregistry/ci.yml b/sdk/schemaregistry/ci.yml index 3d0c05dd96ac..62fbdc8ddfbd 100644 --- a/sdk/schemaregistry/ci.yml +++ b/sdk/schemaregistry/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* @@ -31,4 +29,4 @@ extends: - name: azure-schema-registry safeName: azureschemaregistry - name: azure-schema-registry-avro - safeName: azureschemaregistryavro \ No newline at end of file + safeName: azureschemaregistryavro diff --git a/sdk/schemaregistry/schema-registry-avro/README.md b/sdk/schemaregistry/schema-registry-avro/README.md index a68b56bba2f6..6c9f1616d841 100644 --- a/sdk/schemaregistry/schema-registry-avro/README.md +++ b/sdk/schemaregistry/schema-registry-avro/README.md @@ -5,10 +5,10 @@ providing schema storage, versioning, and management. This package provides an Avro serializer capable of serializing and deserializing payloads containing Schema Registry schema identifiers and Avro-encoded data. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro) | [Package (npm)](https://www.npmjs.com/package/@azure/schema-registry-avro) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/schema-registry-avro) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro/samples) ## Getting started @@ -107,7 +107,7 @@ setLogLevel("info"); ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro/samples) directory for detailed examples on how to use this library. ## Contributing @@ -130,7 +130,7 @@ FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact questions or comments. If you'd like to contribute to this library, please read the [contributing -guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to +guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -142,6 +142,6 @@ learn more about how to build and test the code. [azure_cli]: https://docs.microsoft.com/cli/azure [azure_sub]: https://azure.microsoft.com/free/ [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [cognitive_auth]: https://docs.microsoft.com/azure/cognitive-services/authentication -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential diff --git a/sdk/schemaregistry/schema-registry-avro/package.json b/sdk/schemaregistry/schema-registry-avro/package.json index 238dee9a1dae..9af885ff40b1 100644 --- a/sdk/schemaregistry/schema-registry-avro/package.json +++ b/sdk/schemaregistry/schema-registry-avro/package.json @@ -55,7 +55,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry-avro/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry-avro/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "//sampleConfiguration": { @@ -72,7 +72,7 @@ "dependencies": { "@azure/schema-registry": "1.0.0-beta.2", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "avsc": "^5.5.1", "tslib": "^2.2.0", @@ -82,7 +82,7 @@ "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", "@rollup/plugin-commonjs": "11.0.2", diff --git a/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/README.md b/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/README.md index ffafb5132b31..9b23afc6d5dd 100644 --- a/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/README.md +++ b/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/README.md @@ -46,8 +46,8 @@ npx cross-env SCHEMA_REGISTRY_ENDPOINT="" SCHEMA_REGIS Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[schemaregistryavrosample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/schemaRegistryAvroSample.js +[schemaregistryavrosample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/schemaRegistryAvroSample.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/schema-registry-avro [freesub]: https://azure.microsoft.com/free/ [createinstance_azureschemaregistryresource]: https://aka.ms/schemaregistry -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro/README.md diff --git a/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/package.json b/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/package.json index cd6ee54ec632..788d166355a3 100644 --- a/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/package.json +++ b/sdk/schemaregistry/schema-registry-avro/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro", "dependencies": { "@azure/schema-registry-avro": "next", "dotenv": "latest", diff --git a/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/README.md b/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/README.md index a0ff4408df11..ca750e13faa3 100644 --- a/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/README.md +++ b/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/README.md @@ -58,9 +58,9 @@ npx cross-env SCHEMA_REGISTRY_ENDPOINT="" SCHEMA_REGIS Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[schemaregistryavrosample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/src/schemaRegistryAvroSample.ts +[schemaregistryavrosample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/src/schemaRegistryAvroSample.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/schema-registry-avro [freesub]: https://azure.microsoft.com/free/ [createinstance_azureschemaregistryresource]: https://aka.ms/schemaregistry -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/package.json b/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/package.json index 019817269518..d012f24da7dd 100644 --- a/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/package.json +++ b/sdk/schemaregistry/schema-registry-avro/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry-avro", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry-avro", "dependencies": { "@azure/schema-registry-avro": "next", "dotenv": "latest", diff --git a/sdk/schemaregistry/schema-registry/README.md b/sdk/schemaregistry/schema-registry/README.md index 17d6a4f908f2..b36e71f28969 100644 --- a/sdk/schemaregistry/schema-registry/README.md +++ b/sdk/schemaregistry/schema-registry/README.md @@ -5,10 +5,10 @@ providing schema storage, versioning, and management. The registry is leveraged by serializers to reduce payload size while describing payload structure with schema identifiers rather than full schemas. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry) | [Package (npm)](https://www.npmjs.com/package/@azure/schema-registry) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/schema-registry) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry/samples) ## Getting started @@ -140,7 +140,7 @@ setLogLevel("info"); ## Next steps Please take a look at the -[samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry/samples) +[samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry/samples) directory for detailed examples on how to use this library. ## Contributing @@ -163,7 +163,7 @@ FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact questions or comments. If you'd like to contribute to this library, please read the [contributing -guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to +guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -175,6 +175,6 @@ learn more about how to build and test the code. [azure_cli]: https://docs.microsoft.com/cli/azure [azure_sub]: https://azure.microsoft.com/free/ [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [cognitive_auth]: https://docs.microsoft.com/azure/cognitive-services/authentication -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential diff --git a/sdk/schemaregistry/schema-registry/package.json b/sdk/schemaregistry/schema-registry/package.json index 2fed535c1bdf..94f6de6c819a 100644 --- a/sdk/schemaregistry/schema-registry/package.json +++ b/sdk/schemaregistry/schema-registry/package.json @@ -82,19 +82,19 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", "@rollup/plugin-commonjs": "11.0.2", diff --git a/sdk/schemaregistry/schema-registry/samples/v1/javascript/README.md b/sdk/schemaregistry/schema-registry/samples/v1/javascript/README.md index be01978ed0cb..2a670e90fb23 100644 --- a/sdk/schemaregistry/schema-registry/samples/v1/javascript/README.md +++ b/sdk/schemaregistry/schema-registry/samples/v1/javascript/README.md @@ -46,8 +46,8 @@ npx cross-env SCHEMA_REGISTRY_ENDPOINT="" SCHEMA_REGIS Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[schemaregistrysample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry/samples/v1/javascript/schemaRegistrySample.js +[schemaregistrysample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry/samples/v1/javascript/schemaRegistrySample.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/schema-registry [freesub]: https://azure.microsoft.com/free/ [createinstance_azureschemaregistryresource]: https://aka.ms/schemaregistry -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry/README.md diff --git a/sdk/schemaregistry/schema-registry/samples/v1/javascript/package.json b/sdk/schemaregistry/schema-registry/samples/v1/javascript/package.json index 239a016ce0b3..6163c9c32831 100644 --- a/sdk/schemaregistry/schema-registry/samples/v1/javascript/package.json +++ b/sdk/schemaregistry/schema-registry/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry", "dependencies": { "@azure/schema-registry": "next", "dotenv": "latest", diff --git a/sdk/schemaregistry/schema-registry/samples/v1/typescript/README.md b/sdk/schemaregistry/schema-registry/samples/v1/typescript/README.md index ee9569881c12..d7fa6723eaa7 100644 --- a/sdk/schemaregistry/schema-registry/samples/v1/typescript/README.md +++ b/sdk/schemaregistry/schema-registry/samples/v1/typescript/README.md @@ -58,9 +58,9 @@ npx cross-env SCHEMA_REGISTRY_ENDPOINT="" SCHEMA_REGIS Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[schemaregistrysample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/schemaregistry/schema-registry/samples/v1/typescript/src/schemaRegistrySample.ts +[schemaregistrysample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/schemaregistry/schema-registry/samples/v1/typescript/src/schemaRegistrySample.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/schema-registry [freesub]: https://azure.microsoft.com/free/ [createinstance_azureschemaregistryresource]: https://aka.ms/schemaregistry -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/schemaregistry/schema-registry/samples/v1/typescript/package.json b/sdk/schemaregistry/schema-registry/samples/v1/typescript/package.json index ed16226fb10b..baba062943da 100644 --- a/sdk/schemaregistry/schema-registry/samples/v1/typescript/package.json +++ b/sdk/schemaregistry/schema-registry/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/schemaregistry/schema-registry", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/schemaregistry/schema-registry", "dependencies": { "@azure/schema-registry": "next", "dotenv": "latest", diff --git a/sdk/search/arm-search/package.json b/sdk/search/arm-search/package.json index cb293c644348..e805e27ce74a 100644 --- a/sdk/search/arm-search/package.json +++ b/sdk/search/arm-search/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/search/arm-search", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/search/arm-search", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/search/ci.yml b/sdk/search/ci.yml index a569b2bfcdd3..5c75a3a715ca 100644 --- a/sdk/search/ci.yml +++ b/sdk/search/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/search/perf-tests/search-documents/package.json b/sdk/search/perf-tests/search-documents/package.json index d6db87c3f885..ecb8b07a7f43 100644 --- a/sdk/search/perf-tests/search-documents/package.json +++ b/sdk/search/perf-tests/search-documents/package.json @@ -7,7 +7,7 @@ "author": "", "license": "ISC", "dependencies": { - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/search-documents": "11.3.0-beta.1", "@azure/test-utils-perfstress": "^1.0.0", "dotenv": "^8.2.0" diff --git a/sdk/search/search-documents/README.md b/sdk/search/search-documents/README.md index 4914666e32a7..6c3cd90e6e66 100644 --- a/sdk/search/search-documents/README.md +++ b/sdk/search/search-documents/README.md @@ -19,12 +19,12 @@ Use the @azure/search-documents client library to: - Create and manage analyzers for advanced text analysis or multi-lingual content. - Optimize results through scoring profiles to factor in business logic or freshness. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/search/search-documents/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/search/search-documents/) | [Package (NPM)](https://www.npmjs.com/package/@azure/search-documents) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/search-documents) | [REST API documentation](https://docs.microsoft.com/rest/api/searchservice/) | [Product documentation](https://docs.microsoft.com/azure/search/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples) ## Getting started @@ -124,7 +124,7 @@ Typically you will only wish to [show a subset of search results](https://docs.m ## Examples -The following examples demonstrate the basics - please [check out our samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples) for much more. +The following examples demonstrate the basics - please [check out our samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples) for much more. * [Creating an index](#create-an-index) * [Retrieving a specific document from your index](#retrieve-a-specific-document-from-an-index) @@ -404,16 +404,16 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -* [Go further with search-documents and our samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples) +* [Go further with search-documents and our samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples) * [Watch a demo or deep dive video](https://azure.microsoft.com/resources/videos/index/?services=search) * [Read more about the Azure Cognitive Search service](https://docs.microsoft.com/azure/search/search-what-is-azure-search) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit [cla.microsoft.com][cla]. diff --git a/sdk/search/search-documents/package.json b/sdk/search/search-documents/package.json index 9998db0e4613..8776dc4b41d5 100644 --- a/sdk/search/search-documents/package.json +++ b/sdk/search/search-documents/package.json @@ -72,13 +72,13 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/", "sideEffects": false, "dependencies": { "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0", "events": "^3.0.0" diff --git a/sdk/search/search-documents/samples/javascript/README.md b/sdk/search/search-documents/samples/javascript/README.md index 3744a0d50015..8759e21fb677 100644 --- a/sdk/search/search-documents/samples/javascript/README.md +++ b/sdk/search/search-documents/samples/javascript/README.md @@ -86,48 +86,48 @@ npx cross-env SEARCH_API_ENDPOINT="" SEARCH_API_KEY="" node r Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[readonly]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/readonlyQuery.js +[readonly]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/readonlyQuery.js [apiref]: https://aka.ms/azsdk/js/search/docs [search_resource]: https://docs.microsoft.com/azure/search/search-create-service-portal [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/README.md -[createDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/createDataSourceConnection.js -[createOrUpdateDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/createOrUpdateDataSourceConnection.js -[deleteDataSourceConnectionByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/deleteDataSourceConnectionByName.js -[deleteDataSourceConnectionByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/deleteDataSourceConnectionByObject.js -[getDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/getDataSourceConnection.js -[listDataSourceConnectionNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/listDataSourceConnectionNames.js -[listDataSourceConnections]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/listDataSourceConnections.js -[createIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/createIndexer.js -[createOrUpdateIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/createOrUpdateIndexer.js -[deleteIndexerByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/deleteIndexerByName.js -[deleteIndexerByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/deleteIndexerByObject.js -[getIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/getIndexer.js -[getIndexerStatus]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/getIndexerStatus.js -[listIndexerNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/listIndexerNames.js -[listIndexers]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/listIndexers.js -[resetIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/resetIndexer.js -[runIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexers/runIndexer.js -[analyzeText]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/analyzeText.js -[createIndex]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/createIndex.js -[createOrUpdateIndex]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/createOrUpdateIndex.js -[deleteIndexByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/deleteIndexByName.js -[deleteIndexByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/deleteIndexByObject.js -[getIndex]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/getIndex.js -[getIndexStatistics]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/getIndexStatistics.js -[listIndexes]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/listIndexes.js -[listIndexNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/indexes/listIndexNames.js -[createOrUpdateSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/createOrUpdateSkillset.js -[createSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/createSkillset.js -[deleteSkillsetByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/deleteSkillsetByName.js -[deleteSkillsetByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/deleteSkillsetByObject.js -[getSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/getSkillset.js -[listSkillsets]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/listSkillsets.js -[listSkillsetsNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/skillSets/listSkillsetsNames.js -[createOrUpdateSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/createOrUpdateSynonymMap.js -[createSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/createSynonymMap.js -[deleteSynonymMapByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/deleteSynonymMapByName.js -[deleteSynonymMapByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/deleteSynonymMapByObject.js -[getSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/getSynonymMap.js -[listSynonymMapNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/listSynonymMapNames.js -[listSynonymMaps]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/javascript/src/synonymMaps/listSynonymMaps.js +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/README.md +[createDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/createDataSourceConnection.js +[createOrUpdateDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/createOrUpdateDataSourceConnection.js +[deleteDataSourceConnectionByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/deleteDataSourceConnectionByName.js +[deleteDataSourceConnectionByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/deleteDataSourceConnectionByObject.js +[getDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/getDataSourceConnection.js +[listDataSourceConnectionNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/listDataSourceConnectionNames.js +[listDataSourceConnections]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/dataSourceConnections/listDataSourceConnections.js +[createIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/createIndexer.js +[createOrUpdateIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/createOrUpdateIndexer.js +[deleteIndexerByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/deleteIndexerByName.js +[deleteIndexerByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/deleteIndexerByObject.js +[getIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/getIndexer.js +[getIndexerStatus]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/getIndexerStatus.js +[listIndexerNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/listIndexerNames.js +[listIndexers]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/listIndexers.js +[resetIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/resetIndexer.js +[runIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexers/runIndexer.js +[analyzeText]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/analyzeText.js +[createIndex]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/createIndex.js +[createOrUpdateIndex]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/createOrUpdateIndex.js +[deleteIndexByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/deleteIndexByName.js +[deleteIndexByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/deleteIndexByObject.js +[getIndex]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/getIndex.js +[getIndexStatistics]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/getIndexStatistics.js +[listIndexes]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/listIndexes.js +[listIndexNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/indexes/listIndexNames.js +[createOrUpdateSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/createOrUpdateSkillset.js +[createSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/createSkillset.js +[deleteSkillsetByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/deleteSkillsetByName.js +[deleteSkillsetByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/deleteSkillsetByObject.js +[getSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/getSkillset.js +[listSkillsets]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/listSkillsets.js +[listSkillsetsNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/skillSets/listSkillsetsNames.js +[createOrUpdateSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/createOrUpdateSynonymMap.js +[createSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/createSynonymMap.js +[deleteSynonymMapByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/deleteSynonymMapByName.js +[deleteSynonymMapByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/deleteSynonymMapByObject.js +[getSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/getSynonymMap.js +[listSynonymMapNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/listSynonymMapNames.js +[listSynonymMaps]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/javascript/src/synonymMaps/listSynonymMaps.js diff --git a/sdk/search/search-documents/samples/javascript/package.json b/sdk/search/search-documents/samples/javascript/package.json index 74b3e5c2270c..df8201557344 100644 --- a/sdk/search/search-documents/samples/javascript/package.json +++ b/sdk/search/search-documents/samples/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents", "sideEffects": false, "dependencies": { "@azure/search-documents": "latest", diff --git a/sdk/search/search-documents/samples/typescript/README.md b/sdk/search/search-documents/samples/typescript/README.md index e95214384b46..29b51f4b19e5 100644 --- a/sdk/search/search-documents/samples/typescript/README.md +++ b/sdk/search/search-documents/samples/typescript/README.md @@ -98,49 +98,49 @@ npx cross-env SEARCH_API_ENDPOINT="" SEARCH_API_KEY="" node d Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[readonly]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/readonlyQuery.ts +[readonly]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/readonlyQuery.ts [apiref]: https://aka.ms/azsdk/js/search/docs [search_resource]: https://docs.microsoft.com/azure/search/search-create-service-portal [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/README.md [typescript]: https://www.typescriptlang.org/docs/home.html -[createDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/createDataSourceConnection.ts -[createOrUpdateDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/createOrUpdateDataSourceConnection.ts -[deleteDataSourceConnectionByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/deleteDataSourceConnectionByName.ts -[deleteDataSourceConnectionByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/deleteDataSourceConnectionByObject.ts -[getDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/getDataSourceConnection.ts -[listDataSourceConnectionNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/listDataSourceConnectionNames.ts -[listDataSourceConnections]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/listDataSourceConnections.ts -[createIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/createIndexer.ts -[createOrUpdateIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/createOrUpdateIndexer.ts -[deleteIndexerByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/deleteIndexerByName.ts -[deleteIndexerByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/deleteIndexerByObject.ts -[getIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/getIndexer.ts -[getIndexerStatus]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/getIndexerStatus.ts -[listIndexerNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/listIndexerNames.ts -[listIndexers]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/listIndexers.ts -[resetIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/resetIndexer.ts -[runIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexers/runIndexer.ts -[analyzeText]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/analyzeText.ts -[createIndex]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/createIndex.ts -[createOrUpdateIndex]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/createOrUpdateIndex.ts -[deleteIndexByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/deleteIndexByName.ts -[deleteIndexByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/deleteIndexByObject.ts -[getIndex]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/getIndex.ts -[getIndexStatistics]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/getIndexStatistics.ts -[listIndexes]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/listIndexes.ts -[listIndexNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/indexes/listIndexNames.ts -[createOrUpdateSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/createOrUpdateSkillset.ts -[createSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/createSkillset.ts -[deleteSkillsetByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/deleteSkillsetByName.ts -[deleteSkillsetByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/deleteSkillsetByObject.ts -[getSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/getSkillset.ts -[listSkillsets]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/listSkillsets.ts -[listSkillsetsNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/skillSets/listSkillsetsNames.ts -[createOrUpdateSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/createOrUpdateSynonymMap.ts -[createSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/createSynonymMap.ts -[deleteSynonymMapByName]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/deleteSynonymMapByName.ts -[deleteSynonymMapByObject]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/deleteSynonymMapByObject.ts -[getSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/getSynonymMap.ts -[listSynonymMapNames]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/listSynonymMapNames.ts -[listSynonymMaps]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents/samples/typescript/src/synonymMaps/listSynonymMaps.ts +[createDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/createDataSourceConnection.ts +[createOrUpdateDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/createOrUpdateDataSourceConnection.ts +[deleteDataSourceConnectionByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/deleteDataSourceConnectionByName.ts +[deleteDataSourceConnectionByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/deleteDataSourceConnectionByObject.ts +[getDataSourceConnection]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/getDataSourceConnection.ts +[listDataSourceConnectionNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/listDataSourceConnectionNames.ts +[listDataSourceConnections]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/dataSourceConnections/listDataSourceConnections.ts +[createIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/createIndexer.ts +[createOrUpdateIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/createOrUpdateIndexer.ts +[deleteIndexerByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/deleteIndexerByName.ts +[deleteIndexerByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/deleteIndexerByObject.ts +[getIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/getIndexer.ts +[getIndexerStatus]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/getIndexerStatus.ts +[listIndexerNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/listIndexerNames.ts +[listIndexers]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/listIndexers.ts +[resetIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/resetIndexer.ts +[runIndexer]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexers/runIndexer.ts +[analyzeText]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/analyzeText.ts +[createIndex]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/createIndex.ts +[createOrUpdateIndex]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/createOrUpdateIndex.ts +[deleteIndexByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/deleteIndexByName.ts +[deleteIndexByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/deleteIndexByObject.ts +[getIndex]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/getIndex.ts +[getIndexStatistics]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/getIndexStatistics.ts +[listIndexes]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/listIndexes.ts +[listIndexNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/indexes/listIndexNames.ts +[createOrUpdateSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/createOrUpdateSkillset.ts +[createSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/createSkillset.ts +[deleteSkillsetByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/deleteSkillsetByName.ts +[deleteSkillsetByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/deleteSkillsetByObject.ts +[getSkillset]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/getSkillset.ts +[listSkillsets]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/listSkillsets.ts +[listSkillsetsNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/skillSets/listSkillsetsNames.ts +[createOrUpdateSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/createOrUpdateSynonymMap.ts +[createSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/createSynonymMap.ts +[deleteSynonymMapByName]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/deleteSynonymMapByName.ts +[deleteSynonymMapByObject]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/deleteSynonymMapByObject.ts +[getSynonymMap]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/getSynonymMap.ts +[listSynonymMapNames]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/listSynonymMapNames.ts +[listSynonymMaps]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents/samples/typescript/src/synonymMaps/listSynonymMaps.ts diff --git a/sdk/search/search-documents/samples/typescript/package.json b/sdk/search/search-documents/samples/typescript/package.json index b23a2dcf38e3..8f1d5358a31d 100644 --- a/sdk/search/search-documents/samples/typescript/package.json +++ b/sdk/search/search-documents/samples/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search-documents", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search-documents", "sideEffects": false, "dependencies": { "@azure/search-documents": "latest", diff --git a/sdk/search/search-documents/test/README.md b/sdk/search/search-documents/test/README.md index 4f436651d390..b9d063c8d05e 100644 --- a/sdk/search/search-documents/test/README.md +++ b/sdk/search/search-documents/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -The Azure Cognitive Search client does not have any recorded tests and so, all the tests require an Azure Cognitive Search account to be set up beforehand. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/search/test-resources.json) that already has all of the the necessary configurations. +The Azure Cognitive Search client does not have any recorded tests and so, all the tests require an Azure Cognitive Search account to be set up beforehand. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/search/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/security/arm-security/package.json b/sdk/security/arm-security/package.json index a34f4122d6f7..ab9cfc26388f 100644 --- a/sdk/security/arm-security/package.json +++ b/sdk/security/arm-security/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/security/arm-security", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/service-map/arm-servicemap/package.json b/sdk/service-map/arm-servicemap/package.json index 395461461703..0fd1d7250ed8 100644 --- a/sdk/service-map/arm-servicemap/package.json +++ b/sdk/service-map/arm-servicemap/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/service-map/arm-servicemap", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/service-map/arm-servicemap", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/servicebus/README.md b/sdk/servicebus/README.md index ff9f43952a26..d504eb244b3f 100644 --- a/sdk/servicebus/README.md +++ b/sdk/servicebus/README.md @@ -17,6 +17,6 @@ This also allows to manage your Azure Service Bus resources like queues, topics, | NPM Package | Reference | Samples | | ------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | -| [@azure/service-bus](https://npmjs.com/package/@azure/service-bus) | [API Reference for @azure/service-bus](https://docs.microsoft.com/javascript/api/@azure/service-bus) | [Samples for sending & receiving messages](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples) | +| [@azure/service-bus](https://npmjs.com/package/@azure/service-bus) | [API Reference for @azure/service-bus](https://docs.microsoft.com/javascript/api/@azure/service-bus) | [Samples for sending & receiving messages](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples) | ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Feventhub%2FREADME.png) diff --git a/sdk/servicebus/arm-servicebus/package.json b/sdk/servicebus/arm-servicebus/package.json index aac2b3edee78..4a3e56681e22 100644 --- a/sdk/servicebus/arm-servicebus/package.json +++ b/sdk/servicebus/arm-servicebus/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/arm-servicebus", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/arm-servicebus", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/servicebus/ci.yml b/sdk/servicebus/ci.yml index 502591daa645..ea5a900c607a 100644 --- a/sdk/servicebus/ci.yml +++ b/sdk/servicebus/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/servicebus/service-bus/CHANGELOG.md b/sdk/servicebus/service-bus/CHANGELOG.md index 9e5edcc68322..fb594535d709 100644 --- a/sdk/servicebus/service-bus/CHANGELOG.md +++ b/sdk/servicebus/service-bus/CHANGELOG.md @@ -108,12 +108,12 @@ - This release marks the general availability of the `@azure/service-bus` package. - If you are using version 1.1.10 or lower and want to migrate to the latest version - of this package please look at our [migration guide to move from Service Bus V1 to Service Bus V7](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/migrationguide.md) + of this package please look at our [migration guide to move from Service Bus V1 to Service Bus V7](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/migrationguide.md) ### Breaking changes **Note:** The following breaking changes are with respect to version `7.0.0-preview.8`. -If migrating from version 1.1.10 or lower, look at our [migration guide to move from Service Bus V1 to Service Bus V7](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/migrationguide.md). +If migrating from version 1.1.10 or lower, look at our [migration guide to move from Service Bus V1 to Service Bus V7](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/migrationguide.md). - The `ServiceBusError.reason` field has been renamed `ServiceBusError.code`. The `code` field can be used to differentiate what caused a `ServiceBusError` to be thrown. @@ -135,7 +135,7 @@ If migrating from version 1.1.10 or lower, look at our [migration guide to move - A helper method `parseServiceBusConnectionString` has been added which validates and parses a given connection string for Azure Service Bus. You can use this to extract the namespace and entityPath details from the connection string. [PR 11949](https://github.com/Azure/azure-sdk-for-js/pull/11949) - All methods that take an array as input are updated to ensure they gracefully do a no-op rather than throw errors. For example: `receiveDeferredMessages()`, `scheduleMessages()` and `cancelScheduledMessages()`. -- Tracing, using [@azure/core-tracing](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/core/core-tracing/README.md), has been added for sending and receiving of messages. +- Tracing, using [@azure/core-tracing](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-tracing/README.md), has been added for sending and receiving of messages. [PR 11651](https://github.com/Azure/azure-sdk-for-js/pull/11651) and [PR 11810](https://github.com/Azure/azure-sdk-for-js/pull/11810) @@ -288,7 +288,7 @@ If migrating from version 1.1.10 or lower, look at our [migration guide to move - Added Async iterable iterators with pagination support for all the listing methods like `getQueues()`, `getTopics()`, `getQueuesRuntimeInfo()`, etc. and renamed them to use the `list` verb. [PR 9951](https://github.com/Azure/azure-sdk-for-js/pull/9951) [PR 10223](https://github.com/Azure/azure-sdk-for-js/pull/10223) - - Please refer to the examples in the `samples` folder - [listingEntities](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/listingEntities.ts) + - Please refer to the examples in the `samples` folder - [listingEntities](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/listingEntities.ts) - `receiveMessages()`'s optional `maxWaitTimeInMs` parameter now controls how long to wait for the _first_ message, rather than how long to wait for an entire set of messages. This change allows for a faster return of messages to your application. @@ -516,7 +516,7 @@ If migrating from version 1.1.10 or lower, look at our [migration guide to move ## 1.0.0-preview.3 (2019-04-24) -- Proxy support added. Please refer to the [useProxy](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/useProxy.js) +- Proxy support added. Please refer to the [useProxy](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/useProxy.js) sample to see how you can use Websockets to run this library with a proxy server - Standardized error messages on errors thrown on parameter validations - We now have API reference docs published for this library. Checkout our README which has been updated with the relevant API reference links. @@ -565,7 +565,7 @@ meant to do. - Fixed [Bug 1098](https://github.com/Azure/azure-sdk-for-js/issues/1098) where precision was lost on the messageId when a number is passed. - A network connection lost error is now treated as retryable error. A new error with name `ConnectionLostError` - is introduced for this scenario which you can see if you enable the [logs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus#enable-logs). + is introduced for this scenario which you can see if you enable the [logs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus#enable-logs). - When recovering from an error that caused the underlying AMQP connection to get disconnected, [rhea](https://github.com/amqp/rhea/issues/205) reconnects all the older AMQP links on the connection resulting in the below 2 errors in the logs. We now clear rhea's internal map to avoid such reconnections. diff --git a/sdk/servicebus/service-bus/README.md b/sdk/servicebus/service-bus/README.md index b4ba53e555cc..8f68bf1aae76 100644 --- a/sdk/servicebus/service-bus/README.md +++ b/sdk/servicebus/service-bus/README.md @@ -10,11 +10,11 @@ Use the client library `@azure/service-bus` in your application to Resources for `@azure/service-bus` version 7: -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus) | [Package (npm)](https://www.npmjs.com/package/@azure/service-bus) | [API Reference Documentation][apiref] | [Product documentation](https://azure.microsoft.com/services/service-bus/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples) **NOTE**: If you are using version 1.1.10 or lower and want to migrate to the latest version of this package please look at our [migration guide to move from Service Bus V1 to Service Bus V7][migrationguide] @@ -121,7 +121,7 @@ The following sections provide code snippets that cover some of the common tasks - [Send messages using Sessions](#send-messages-using-sessions) - [Receive messages from Sessions](#receive-messages-from-sessions) - [Manage resources of a service bus namespace](#manage-resources-of-a-service-bus-namespace) -- [Additional samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples) +- [Additional samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples) ### Send messages @@ -268,8 +268,8 @@ for (const message of messages) { Full samples demonstrating dead letter queues more thoroughly: -- [Using receiver.deadLetterMessage() to explicitly send messages to the dead letter sub-queue](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/movingMessagesToDLQ.ts) -- [Receiving messages from the dead letter sub-queue](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/processMessageFromDLQ.ts) +- [Using receiver.deadLetterMessage() to explicitly send messages to the dead letter sub-queue](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/movingMessagesToDLQ.ts) +- [Receiving messages from the dead letter sub-queue](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/processMessageFromDLQ.ts) ### Send messages using Sessions @@ -358,7 +358,7 @@ console.log("Number of messages in the queue = ", queueRuntimeProperties.totalMe await serviceBusAdministrationClient.deleteQueue(queueName); ``` -- Sample for reference - [administrationClient.ts](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/administrationClient.ts) +- Sample for reference - [administrationClient.ts](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/administrationClient.ts) ## Troubleshooting @@ -414,19 +414,19 @@ export DEBUG=azure:service-bus:error,azure:core-amqp:error,rhea-promise:error,rh ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples) +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples) directory for detailed examples on how to use this library to send and receive messages to/from [Service Bus Queues, Topics and Subscriptions](https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messaging-overview). ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fservicebus%2Fservice-bus%2FREADME.png) [apiref]: https://docs.microsoft.com/javascript/api/@azure/service-bus/ -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [sbclient]: https://docs.microsoft.com/javascript/api/@azure/service-bus/servicebusclient [sbclient_constructor]: https://docs.microsoft.com/javascript/api/@azure/service-bus/servicebusclient#ServiceBusClient_string__ServiceBusClientOptions_ [sbclient_tokencred_overload]: https://docs.microsoft.com/javascript/api/@azure/service-bus/servicebusclient#ServiceBusClient_string__TokenCredential__ServiceBusClientOptions_ @@ -444,7 +444,7 @@ If you'd like to contribute to this library, please read the [contributing guide [receiver_deadletter]: https://docs.microsoft.com/javascript/api/@azure/service-bus/servicebusreceiver#deadLetterMessage_ServiceBusReceivedMessage__DeadLetterOptions____key__string___any_ [receiver_defer]: https://docs.microsoft.com/javascript/api/@azure/service-bus/servicebusreceiver#deferMessage_ServiceBusReceivedMessage___key__string___any_ [sessionreceiver]: https://docs.microsoft.com/javascript/api/@azure/service-bus/servicebussessionreceiver -[migrationguide]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/migrationguide.md +[migrationguide]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/migrationguide.md [docsms_messagesessions]: https://docs.microsoft.com/azure/service-bus-messaging/message-sessions [docsms_messagesessions_fifo]: https://docs.microsoft.com/azure/service-bus-messaging/message-sessions#first-in-first-out-fifo-pattern [queue_concept]: https://docs.microsoft.com/azure/service-bus-messaging/service-bus-messaging-overview#queues diff --git a/sdk/servicebus/service-bus/migrationguide.md b/sdk/servicebus/service-bus/migrationguide.md index b97096744d24..eb91aab9c669 100644 --- a/sdk/servicebus/service-bus/migrationguide.md +++ b/sdk/servicebus/service-bus/migrationguide.md @@ -2,7 +2,7 @@ This guide is intended to assist in the migration from version 1 of the Service Bus client library `@azure/service-bus` to version 7 of the same library. It will focus on side-by-side comparisons for similar operations between the two packages. -Familiarity with the version 1 of the `@azure/service-bus` library is assumed. For those new to the Service Bus client library for JavaScript, please refer to the [README](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/README.md) and [Service Bus samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples) for the `@azure/service-bus` library rather than this guide. +Familiarity with the version 1 of the `@azure/service-bus` library is assumed. For those new to the Service Bus client library for JavaScript, please refer to the [README](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/README.md) and [Service Bus samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples) for the `@azure/service-bus` library rather than this guide. ## Table of contents @@ -46,7 +46,7 @@ We have a variety of new features in the version 7 of the Service Bus library. - Ability to configure the retry policy used by the operations on the client, sender and receivers. - Ability to cancel async operations on the client, sender and receivers and the management operations using the abort signal from `@azure/abort-controller`. - Authentication with AAD credentials using `@azure/identity`. - Refer to the [Changelog.md](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/CHANGELOG.md) for more new features, changes and bug fixes. + Refer to the [Changelog.md](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/CHANGELOG.md) for more new features, changes and bug fixes. ### Performance Improvements @@ -265,4 +265,4 @@ Additionally, since a message cannot be settled if the receiver that was used to ## Additional samples -More examples can be found at [Samples for @azure/service-bus](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/samples/) +More examples can be found at [Samples for @azure/service-bus](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/samples/) diff --git a/sdk/servicebus/service-bus/package.json b/sdk/servicebus/service-bus/package.json index 3b30d1215237..10b452e79098 100644 --- a/sdk/servicebus/service-bus/package.json +++ b/sdk/servicebus/service-bus/package.json @@ -5,7 +5,7 @@ "version": "7.2.1", "license": "MIT", "description": "Azure Service Bus SDK for JavaScript", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/", "repository": "github:Azure/azure-sdk-for-js", "keywords": [ "azure", @@ -60,7 +60,7 @@ "extract-api": "tsc -p . && api-extractor run --local", "format": "prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"samples/**/*.{ts,js}\" \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"", "integration-test:browser": "karma start --single-run", - "integration-test:node": "nyc mocha -r esm --require source-map-support/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 120000 --full-trace \"dist-esm/test/internal/**/*.spec.js\" \"dist-esm/test/public/**/*.spec.js\"", + "integration-test:node": "nyc mocha -r esm --require source-map-support/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 1200000 --full-trace \"dist-esm/test/internal/**/*.spec.js\" \"dist-esm/test/public/**/*.spec.js\"", "integration-test": "npm run integration-test:node && npm run integration-test:browser", "lint:fix": "eslint package.json api-extractor.json src test --ext .ts --fix --fix-type [problem,suggestion]", "lint": "eslint package.json api-extractor.json src test --ext .ts -f html -o service-bus-lintReport.html || exit 0", @@ -71,7 +71,7 @@ "test:node": "npm run clean && npm run build:test:node && npm run integration-test:node", "test": "npm run test:node && npm run test:browser", "unit-test:browser": "echo skipped", - "unit-test:node": "mocha -r esm -r ts-node/register --require source-map-support/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 120000 --full-trace \"test/internal/unit/*.spec.ts\" \"test/internal/node/*.spec.ts\"", + "unit-test:node": "mocha -r esm -r ts-node/register --require source-map-support/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 1200000 --full-trace \"test/internal/unit/*.spec.ts\" \"test/internal/node/*.spec.ts\"", "unit-test": "npm run unit-test:node && npm run unit-test:browser", "docs": "typedoc --excludePrivate --excludeNotExported --excludeExternals --stripInternal --mode file --out ./dist/docs ./src" }, @@ -114,7 +114,7 @@ "@azure/core-amqp": "^3.0.0", "@azure/core-asynciterator-polyfill": "^1.0.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/core-paging": "^1.1.1", "@azure/core-auth": "^1.3.0", "@azure/logger": "^1.0.0", @@ -131,7 +131,7 @@ "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-perfstress": "^1.0.0", "@microsoft/api-extractor": "7.7.11", "@rollup/plugin-commonjs": "11.0.2", diff --git a/sdk/servicebus/service-bus/samples/v7/javascript/README.md b/sdk/servicebus/service-bus/samples/v7/javascript/README.md index c9d6c7806e8e..9d880d2f2c39 100644 --- a/sdk/servicebus/service-bus/samples/v7/javascript/README.md +++ b/sdk/servicebus/service-bus/samples/v7/javascript/README.md @@ -70,22 +70,22 @@ npx cross-env SERVICEBUS_CONNECTION_STRING="" QUEU Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[sendmessages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/sendMessages.js -[receivemessagesloop]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/receiveMessagesLoop.js -[receivemessagesstreaming]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/receiveMessagesStreaming.js -[usingaadauth]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/usingAadAuth.js -[browsemessages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/browseMessages.js -[session]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/session.js -[scheduledmessages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/scheduledMessages.js -[useproxy]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/useProxy.js -[advanced_administrationclient]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/administrationClient.js -[advanced_sessionroundrobin]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/sessionRoundRobin.js -[advanced_deferral]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/deferral.js -[advanced_listingentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/listingEntities.js -[advanced_sessionstate]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/sessionState.js -[advanced_movingmessagestodlq]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/movingMessagesToDLQ.js -[advanced_processmessagefromdlq]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/javascript/advanced/processMessageFromDLQ.js +[sendmessages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/sendMessages.js +[receivemessagesloop]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/receiveMessagesLoop.js +[receivemessagesstreaming]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/receiveMessagesStreaming.js +[usingaadauth]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/usingAadAuth.js +[browsemessages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/browseMessages.js +[session]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/session.js +[scheduledmessages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/scheduledMessages.js +[useproxy]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/useProxy.js +[advanced_administrationclient]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/administrationClient.js +[advanced_sessionroundrobin]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/sessionRoundRobin.js +[advanced_deferral]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/deferral.js +[advanced_listingentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/listingEntities.js +[advanced_sessionstate]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/sessionState.js +[advanced_movingmessagestodlq]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/movingMessagesToDLQ.js +[advanced_processmessagefromdlq]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/javascript/advanced/processMessageFromDLQ.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/service-bus [freesub]: https://azure.microsoft.com/free/ [createinstance_azureservicebus]: https://docs.microsoft.com/azure/service-bus-messaging -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/README.md diff --git a/sdk/servicebus/service-bus/samples/v7/javascript/package.json b/sdk/servicebus/service-bus/samples/v7/javascript/package.json index d0910e483ab3..c7e47dc07251 100644 --- a/sdk/servicebus/service-bus/samples/v7/javascript/package.json +++ b/sdk/servicebus/service-bus/samples/v7/javascript/package.json @@ -23,7 +23,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus", "dependencies": { "@azure/service-bus": "next", "dotenv": "latest", diff --git a/sdk/servicebus/service-bus/samples/v7/typescript/README.md b/sdk/servicebus/service-bus/samples/v7/typescript/README.md index a02cc9b326c0..42c04adeaa3e 100644 --- a/sdk/servicebus/service-bus/samples/v7/typescript/README.md +++ b/sdk/servicebus/service-bus/samples/v7/typescript/README.md @@ -82,23 +82,23 @@ npx cross-env SERVICEBUS_CONNECTION_STRING="" QUEU Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[sendmessages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/sendMessages.ts -[receivemessagesloop]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/receiveMessagesLoop.ts -[receivemessagesstreaming]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/receiveMessagesStreaming.ts -[usingaadauth]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/usingAadAuth.ts -[browsemessages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/browseMessages.ts -[session]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/session.ts -[scheduledmessages]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/scheduledMessages.ts -[useproxy]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/useProxy.ts -[advanced_administrationclient]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/administrationClient.ts -[advanced_sessionroundrobin]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/sessionRoundRobin.ts -[advanced_deferral]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/deferral.ts -[advanced_listingentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/listingEntities.ts -[advanced_sessionstate]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/sessionState.ts -[advanced_movingmessagestodlq]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/movingMessagesToDLQ.ts -[advanced_processmessagefromdlq]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/processMessageFromDLQ.ts +[sendmessages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/sendMessages.ts +[receivemessagesloop]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/receiveMessagesLoop.ts +[receivemessagesstreaming]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/receiveMessagesStreaming.ts +[usingaadauth]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/usingAadAuth.ts +[browsemessages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/browseMessages.ts +[session]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/session.ts +[scheduledmessages]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/scheduledMessages.ts +[useproxy]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/useProxy.ts +[advanced_administrationclient]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/administrationClient.ts +[advanced_sessionroundrobin]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/sessionRoundRobin.ts +[advanced_deferral]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/deferral.ts +[advanced_listingentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/listingEntities.ts +[advanced_sessionstate]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/sessionState.ts +[advanced_movingmessagestodlq]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/movingMessagesToDLQ.ts +[advanced_processmessagefromdlq]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/service-bus/samples/v7/typescript/src/advanced/processMessageFromDLQ.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/service-bus [freesub]: https://azure.microsoft.com/free/ [createinstance_azureservicebus]: https://docs.microsoft.com/azure/service-bus-messaging -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/servicebus/service-bus/samples/v7/typescript/package.json b/sdk/servicebus/service-bus/samples/v7/typescript/package.json index 63502849957b..f47c2ae96670 100644 --- a/sdk/servicebus/service-bus/samples/v7/typescript/package.json +++ b/sdk/servicebus/service-bus/samples/v7/typescript/package.json @@ -27,7 +27,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicebus/service-bus", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicebus/service-bus", "dependencies": { "@azure/service-bus": "next", "dotenv": "latest", diff --git a/sdk/servicebus/service-bus/src/core/batchingReceiver.ts b/sdk/servicebus/service-bus/src/core/batchingReceiver.ts index 0e9ade3842ec..b298f4b4cbc2 100644 --- a/sdk/servicebus/service-bus/src/core/batchingReceiver.ts +++ b/sdk/servicebus/service-bus/src/core/batchingReceiver.ts @@ -281,7 +281,7 @@ export class BatchingReceiverLite { if (receiver == null) { // (was somehow closed in between the init() and the return) - return []; + throw new ServiceBusError("Link closed before receiving messages.", "GeneralError"); } const messages = await new Promise((resolve, reject) => diff --git a/sdk/servicebus/service-bus/src/diagnostics/tracing.ts b/sdk/servicebus/service-bus/src/diagnostics/tracing.ts index 426a8bd1afde..c0e015f4041f 100644 --- a/sdk/servicebus/service-bus/src/diagnostics/tracing.ts +++ b/sdk/servicebus/service-bus/src/diagnostics/tracing.ts @@ -130,7 +130,7 @@ export function instrumentMessage( }; } - const traceParent = getTraceParentHeader(messageSpan.context()); + const traceParent = getTraceParentHeader(messageSpan.spanContext()); if (traceParent) { // create a copy so the original isn't modified @@ -145,7 +145,7 @@ export function instrumentMessage( return { message, - spanContext: messageSpan.context() + spanContext: messageSpan.spanContext() }; } finally { messageSpan.end(); @@ -237,5 +237,5 @@ function isSpan(possibleSpan: Span | SpanContext | undefined): possibleSpan is S } const x = possibleSpan as Span; - return typeof x.context === "function"; + return typeof x.spanContext === "function"; } diff --git a/sdk/servicebus/service-bus/test/README.md b/sdk/servicebus/service-bus/test/README.md index 2fec9e5ea2b6..0238e416f0d0 100644 --- a/sdk/servicebus/service-bus/test/README.md +++ b/sdk/servicebus/service-bus/test/README.md @@ -1,10 +1,10 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). ## Azure resources -The Azure Azure Service Bus client does not have any recorded tests and so, all the tests require an Azure Service Bus namespace to be set up beforehand. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/test-resources.json) that already has all of the the necessary configurations. +The Azure Azure Service Bus client does not have any recorded tests and so, all the tests require an Azure Service Bus namespace to be set up beforehand. You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/servicebus/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts b/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts index 811d2853f12a..a9e958cd6e10 100644 --- a/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/backupMessageSettlement.spec.ts @@ -19,6 +19,7 @@ import { ServiceBusMessageImpl, ServiceBusReceivedMessage } from "../../src/serviceBusMessage"; +import { disableCommonLoggers, enableCommonLoggers, testLogger } from "./utils/misc"; const should = chai.should(); chai.use(chaiAsPromised); @@ -256,10 +257,17 @@ describe("Message settlement After Receiver is Closed - Through ManagementLink", const testMessages = entityNames.usesSessions ? TestMessage.getSessionSample() : TestMessage.getSample(); + + testLogger.info(`sending (and receiving) initial message`); + const msg = await sendReceiveMsg(testMessages); + testLogger.info(`Done sending initial messages`); + const msgDeliveryLink = (msg as ServiceBusMessageImpl).delivery.link.name; + testLogger.info(`About to close the underlying link.`); + if (entityNames.usesSessions) { await (receiver as ServiceBusReceiverImpl)["_context"].messageSessions[ msgDeliveryLink @@ -270,10 +278,18 @@ describe("Message settlement After Receiver is Closed - Through ManagementLink", ].close(); } + testLogger.info( + `Underlying link should be closed: ${receiver.isClosed}. This will force us to use the management link to settle. Will now attempt to dead letter.` + ); + let errorWasThrown = false; try { await receiver.deadLetterMessage(msg); + + testLogger.info(`Message has been dead lettered`); } catch (err) { + testLogger.error(`Exception thrown`, err); + should.equal( err.message, `Failed to ${DispositionType.deadletter} the message as the AMQP link with which the message was received is no longer alive.`, @@ -288,6 +304,9 @@ describe("Message settlement After Receiver is Closed - Through ManagementLink", should.equal(errorWasThrown, false, "Error was thrown for sessions without session-id"); } + testLogger.info( + `Creating a peek lock dead letter receiver and attempting to receive the dead lettered message` + ); receiver = await serviceBusClient.test.createPeekLockReceiver(entityNames); if (!entityNames.usesSessions) { @@ -310,22 +329,30 @@ describe("Message settlement After Receiver is Closed - Through ManagementLink", "MessageId is different than expected" ); + testLogger.info(`Attempting to complete the message: ${deadLetterMsgsBatch[0].messageId}`); await receiver.completeMessage(deadLetterMsgsBatch[0]); - await testPeekMsgsLength(deadLetterReceiver, 0); } else { const messageBatch = await receiver.receiveMessages(1); - await receiver.completeMessage(messageBatch[0]); + testLogger.info(`Attempting to complete the message: ${messageBatch[0].messageId}`); + await receiver.completeMessage(messageBatch[0]); await testPeekMsgsLength(receiver, 0); } + + testLogger.info(`Done testing dead letter`); } it( noSessionTestClientType + ": deadLetter() moves message to deadletter queue", async function(): Promise { - await beforeEachTest(noSessionTestClientType); - await testDeadletter(); + enableCommonLoggers(); + try { + await beforeEachTest(noSessionTestClientType); + await testDeadletter(); + } finally { + disableCommonLoggers(); + } } ); diff --git a/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts b/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts index 60c72f14c7d5..a5ee9c1fa6bc 100644 --- a/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/batchReceiver.spec.ts @@ -18,14 +18,15 @@ import { getRandomTestClientTypeWithSessions } from "../public/utils/testutils2"; import { AbortController } from "@azure/abort-controller"; -import { Receiver, ReceiverEvents } from "rhea-promise"; +import { Receiver } from "rhea-promise"; import { ServiceBusSessionReceiver, ServiceBusSessionReceiverImpl } from "../../src/receivers/sessionReceiver"; -import { ConnectionContext } from "../../src/connectionContext"; import { LinkEntity } from "../../src/core/linkEntity"; -import { StandardAbortMessage } from "@azure/core-amqp"; +import { Constants, StandardAbortMessage } from "@azure/core-amqp"; +import { BatchingReceiver } from "../../src/core/batchingReceiver"; +import { disableCommonLoggers, enableCommonLoggers, testLogger } from "./utils/misc"; const should = chai.should(); chai.use(chaiAsPromised); @@ -807,37 +808,15 @@ describe("Batching Receiver", () => { }); describe("Batch Receiver - disconnects", () => { - function simulateDisconnectDuringDrain( - receiverContext: ConnectionContext, - batchingReceiver: LinkEntity | undefined, - didRequestDrainResolver: Function - ) { - if (!batchingReceiver || !batchingReceiver.isOpen()) { - throw new Error(`batchingReceiver is not open or passed undefined.`); - } - // We want to simulate a disconnect once the batching receiver is draining. - // We can detect when the receiver enters a draining state when `addCredit` is - // called while didRequestDrainResolver is called to resolve the promise. - const addCredit = batchingReceiver["link"]!.addCredit; - batchingReceiver["link"]!.addCredit = function(credits) { - // This makes sure the receiveMessages doesn't end because of draining before the disconnect is triggered - // Meaning.. the "resolving the messages" can only happen through the onDetached triggered by disconnect - batchingReceiver["link"]!.removeAllListeners(ReceiverEvents.receiverDrained); - addCredit.call(this, credits); - if (batchingReceiver["link"]!.drain) { - didRequestDrainResolver(); - // Simulate a disconnect being called with a non-retryable error. - receiverContext.connection["_connection"].idle(); - } - }; - } - - describe(noSessionTestClientType + ": Batch Receiver - disconnects", function(): void { + describe("Batch Receiver - disconnects (non-session)", function(): void { before(() => { + enableCommonLoggers(); + console.log(`Entity type: ${noSessionTestClientType}`); serviceBusClient = createServiceBusClientForTests(); }); after(() => { + disableCommonLoggers(); return serviceBusClient.test.after(); }); @@ -890,37 +869,81 @@ describe("Batching Receiver", () => { void > { // Create the sender and receiver. + + testLogger.info("Before the test"); + await beforeEachTest(noSessionTestClientType, "receiveAndDelete"); // The first time `receiveMessages` is called the receiver link is created. // The `receiver_drained` handler is only added after the link is created, // which is a non-blocking task. - await receiver.receiveMessages(1, { maxWaitTimeInMs: 1000 }); - const receiverContext = (receiver as ServiceBusReceiverImpl)["_context"]; + + testLogger.info( + "Receiving a single message to warm up receiver (there isn't one, so this should just time out)" + ); + + await receiver.receiveMessages(1); + + testLogger.info("After receiving our non-existent warmup message"); + const batchingReceiver = (receiver as ServiceBusReceiverImpl)["_batchingReceiver"]; + testLogger.info("Sending first message"); + // Send a message so we have something to receive. await sender.sendMessages(TestMessage.getSample()); - const didRequestDrain = new Promise((resolve) => { - simulateDisconnectDuringDrain(receiverContext, batchingReceiver, resolve); - }); + const { onDetachedCalledPromise } = causeDisconnectDuringDrain(batchingReceiver); + + testLogger.info("Receiving first message + 9 more (forces a drain to happen)"); // Purposefully request more messages than what's available // so that the receiver will have to drain. - const messages1 = await receiver.receiveMessages(10, { maxWaitTimeInMs: 1000 }); + const messages1 = await receiver.receiveMessages(10); + + testLogger.info( + `Receiving done, got ${messages1.length} messages, now waiting for detach event since we forced a .idle()` + ); + + const result = await Promise.all([ + onDetachedCalledPromise, + delay( + Constants.defaultOperationTimeoutInMs * 1.5, + undefined, + undefined, + "ondetachednevercalled" + ) + ]); + + if (typeof result === "string" && result === "ondetachednevercalled") { + assert.fail("ondetached was never called for the receiver"); + } - await didRequestDrain; messages1.length.should.equal(1, "Unexpected number of messages received."); // Make sure that a 2nd receiveMessages call still works // by sending and receiving a single message again. - await sender.sendMessages(TestMessage.getSample()); + const sampleMessage = TestMessage.getSample(); + + testLogger.info( + "Sending another sample message for our 'receiver after interrupted batch receiver' receiver" + ); + + await sender.sendMessages(sampleMessage); + + testLogger.info("Message sent, now attempting to receive"); // wait for the 2nd message to be received. - const messages2 = await receiver.receiveMessages(1, { maxWaitTimeInMs: 5000 }); + // NOTE: we've forced the connection to restart at this point - it's quite possible to get errors + // while we attempt to receive, so we need to handle that. + const messages2 = await receiver.receiveMessages(1); - messages2.length.should.equal(1, "Unexpected number of messages received."); + testLogger.info("Messages received: ${messages2.length}"); + + assert.deepEqual( + messages2!.map((msg) => msg.body), + [sampleMessage.body] + ); }); it("throws an error if drain is in progress (peekLock)", async function(): Promise { @@ -931,34 +954,34 @@ describe("Batching Receiver", () => { // The `receiver_drained` handler is only added after the link is created, // which is a non-blocking task. await receiver.receiveMessages(1, { maxWaitTimeInMs: 1000 }); - const receiverContext = (receiver as ServiceBusReceiverImpl)["_context"]; const batchingReceiver = (receiver as ServiceBusReceiverImpl)["_batchingReceiver"]; // Send a message so we have something to receive. await sender.sendMessages(TestMessage.getSample()); - const didRequestDrain = new Promise((resolve) => { - simulateDisconnectDuringDrain(receiverContext, batchingReceiver, resolve); - }); + const { onDetachedCalledPromise } = causeDisconnectDuringDrain(batchingReceiver); // Purposefully request more messages than what's available // so that the receiver will have to drain. const testFailureMessage = "Test failure"; try { - await receiver.receiveMessages(10, { maxWaitTimeInMs: 1000 }); + await receiver.receiveMessages(10); throw new Error(testFailureMessage); } catch (err) { - err.message && err.message.should.not.equal(testFailureMessage); + assert.deepNestedInclude(err, { + name: "Error", + message: "Test: fake connection failure" + }); } - await didRequestDrain; + await onDetachedCalledPromise; // Make sure that a 2nd receiveMessages call still works // by sending and receiving a single message again. await sender.sendMessages(TestMessage.getSample()); // wait for the 2nd message to be received. - const messages = await receiver.receiveMessages(1, { maxWaitTimeInMs: 5000 }); + const messages = await receiver.receiveMessages(1); messages.length.should.equal(1, "Unexpected number of messages received."); }); @@ -1045,11 +1068,15 @@ describe("Batching Receiver", () => { }); }); - describe(withSessionTestClientType + ": Batch Receiver - disconnects", function(): void { + describe("Session Batch Receiver - disconnects (sessions)", function(): void { let serviceBusClient: ServiceBusClientForTests; let sender: ServiceBusSender; let receiver: ServiceBusSessionReceiver; + before(() => { + console.log(`Entity type: ${withSessionTestClientType}`); + }); + async function beforeEachTest( receiveMode: "peekLock" | "receiveAndDelete" = "peekLock" ): Promise { @@ -1136,21 +1163,19 @@ describe("Batching Receiver", () => { "Unexpected number of received messages(before disconnect)." ); - const receiverContext = (receiver as ServiceBusSessionReceiverImpl)["_context"]; const batchingReceiver = (receiver as ServiceBusSessionReceiverImpl)["_messageSession"]; // Send a message so we have something to receive. await sender.sendMessages(TestMessage.getSessionSample()); - const didRequestDrain = new Promise((resolve) => { - simulateDisconnectDuringDrain(receiverContext, batchingReceiver, resolve); - }); + const { onDetachedCalledPromise } = causeDisconnectDuringDrain(batchingReceiver); // Purposefully request more messages than what's available // so that the receiver will have to drain. const messages2 = await receiver.receiveMessages(10); - await didRequestDrain; + await onDetachedCalledPromise; + messages2.length.should.equal( 1, "Unexpected number of messages received(during disconnect)." @@ -1196,29 +1221,29 @@ describe("Batching Receiver", () => { "Unexpected number of received messages(before disconnect)." ); - const receiverContext = (receiver as ServiceBusSessionReceiverImpl)["_context"]; const batchingReceiver = (receiver as ServiceBusSessionReceiverImpl)["_messageSession"]; // Send a message so we have something to receive. await sender.sendMessages(TestMessage.getSessionSample()); - const didRequestDrain = new Promise((resolve) => { - simulateDisconnectDuringDrain(receiverContext, batchingReceiver, resolve); - }); + const { onDetachedCalledPromise: drainRequestedPromise } = causeDisconnectDuringDrain( + batchingReceiver + ); // Purposefully request more messages than what's available // so that the receiver will have to drain. const testFailureMessage = "Test failure"; try { - await receiver.receiveMessages(10, { maxWaitTimeInMs: 5000 }); + await receiver.receiveMessages(10); throw new Error(testFailureMessage); } catch (err) { - err.message && - err.code.should.equal("SessionLockLost") && - err.message.should.not.equal(testFailureMessage); + assert.deepNestedInclude(err, { + name: "Error", + message: "Test: fake connection failure" + }); } - await didRequestDrain; + await drainRequestedPromise; }); it("returns messages if receive in progress (receiveAndDelete)", async function(): Promise< @@ -1318,14 +1343,70 @@ describe("Batching Receiver", () => { // so that the receiver will have to drain. const testFailureMessage = "Test failure"; try { - await receiver.receiveMessages(10, { maxWaitTimeInMs: 5000 }); + await receiver.receiveMessages(10); throw new Error(testFailureMessage); } catch (err) { - err.message && - err.code.should.equal("SessionLockLost") && - err.message.should.not.equal(testFailureMessage); + assert.deepNestedInclude(err, { + name: "ServiceBusError", + code: "SessionLockLost" + }); } }); }); }); }); + +/** + * Sets `batchingReceiver` so it's next drain call will result in the connection recycling prior to the + * drain completing. The primary use is just to make sure that when we terminate a receiveMessages() call + * early due to a disconnect (and interrupt the drain) that the link is restored and can be used + * again afterwards. + * + * The `onDetachedCalledPromise` property in the return object allows you to await until the batching + * receiver has actually been detached. + * + * @param batchingReceiver A batching receiver (minimal interface compatible with sessions and non-sessions) + * @returns an object with `onDetachedCalledPromise` that resolves when onDetached has completed + * for the batching receiver. + */ +function causeDisconnectDuringDrain( + batchingReceiver: (Pick & LinkEntity) | undefined +): { onDetachedCalledPromise: Promise } { + let resolveOnDetachedCallPromise: () => void; + + let onDetachedCalledPromise = new Promise((resolve) => { + resolveOnDetachedCallPromise = resolve; + }); + + if (!batchingReceiver || !batchingReceiver.isOpen()) { + throw new Error(`batchingReceiver is not open or passed undefined.`); + } + + const link = batchingReceiver["link"]; + + if (link == null) { + throw new Error("No active link for batching receiver"); + } + + const origAddCredit = link.addCredit; + + // We want to simulate a disconnect once the batching receiver is draining. + // We can detect when the receiver enters a draining state when `addCredit` is + // called while didRequestDrainResolver is called to resolve the promise. + const addCreditThatImmediatelyDetaches = function(credits: number): void { + origAddCredit.call(link, credits); + + if (link.drain && credits === 1) { + // initiate the detach now (prior to any possibilty of the 'drain' call being scheduled) + batchingReceiver + .onDetached(new Error("Test: fake connection failure")) + .then(() => resolveOnDetachedCallPromise()); + } + }; + + link["addCredit"] = addCreditThatImmediatelyDetaches; + + return { + onDetachedCalledPromise + }; +} diff --git a/sdk/servicebus/service-bus/test/internal/operationOptionsForATOM.spec.ts b/sdk/servicebus/service-bus/test/internal/operationOptionsForATOM.spec.ts index bfaa9b730ad9..6cc7f94c00fc 100644 --- a/sdk/servicebus/service-bus/test/internal/operationOptionsForATOM.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/operationOptionsForATOM.spec.ts @@ -277,7 +277,7 @@ describe("Operation Options", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); }); diff --git a/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts b/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts index 1b2467a97266..6bf5b22250fa 100644 --- a/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/serviceBusClient.spec.ts @@ -5,6 +5,7 @@ import { EnvironmentCredential } from "@azure/identity"; import chai from "chai"; import chaiAsPromised from "chai-as-promised"; import * as dotenv from "dotenv"; +import { Constants as CoreAmqpConstants } from "@azure/core-amqp"; import Long from "long"; import { isServiceBusError, @@ -294,7 +295,11 @@ describe("ServiceBusClient live tests", () => { }); should.equal( - await checkWithTimeout(() => errorWasThrown === true, 10, 3000), + await checkWithTimeout( + () => errorWasThrown === true, + 1000, + CoreAmqpConstants.defaultOperationTimeoutInMs * 2 // arbitrary, just don't want it to be too short. + ), true, "Error thrown flag must be true" ); diff --git a/sdk/servicebus/service-bus/test/internal/tracing.spec.ts b/sdk/servicebus/service-bus/test/internal/tracing.spec.ts index 407591b59cf2..ef6d64e08351 100644 --- a/sdk/servicebus/service-bus/test/internal/tracing.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/tracing.spec.ts @@ -12,14 +12,12 @@ import { function legacyOptionsUsingSpanContext(rootSpan: TestSpan): Pick { return { - // @ts-ignore Using the deprecated field for testing - parentSpan: rootSpan.context() + parentSpan: rootSpan.spanContext() }; } function legacyOptionsUsingSpan(rootSpan: TestSpan): Pick { return { - // @ts-ignore Using the deprecated field for testing parentSpan: rootSpan }; } @@ -109,7 +107,7 @@ function modernOptionsWithAccidentalParentSpanSet(rootSpan: TestSpan): TryAddOpt ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -160,7 +158,7 @@ function modernOptionsWithAccidentalParentSpanSet(rootSpan: TestSpan): TryAddOpt ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -209,7 +207,7 @@ function modernOptionsWithAccidentalParentSpanSet(rootSpan: TestSpan): TryAddOpt ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); @@ -268,7 +266,7 @@ function modernOptionsWithAccidentalParentSpanSet(rootSpan: TestSpan): TryAddOpt ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); const knownSendSpans = tracer @@ -336,7 +334,7 @@ function modernOptionsWithAccidentalParentSpanSet(rootSpan: TestSpan): TryAddOpt ] }; - tracer.getSpanGraph(rootSpan.context().traceId).should.eql(expectedGraph); + tracer.getSpanGraph(rootSpan.spanContext().traceId).should.eql(expectedGraph); tracer.getActiveSpans().length.should.equal(0, "All spans should have had end called."); resetTracer(); }); diff --git a/sdk/servicebus/service-bus/test/internal/unit/messageSpan.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/messageSpan.spec.ts index 4fba79abba7b..5fcfa822c0c9 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/messageSpan.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/messageSpan.spec.ts @@ -23,8 +23,8 @@ describe("#createMessageSpan()", () => { const { span } = createMessageSpan({}, "entity path", "host address"); should.exist(span); - should.exist(span.context().spanId); - should.exist(span.context().traceId); + should.exist(span.spanContext().spanId); + should.exist(span.spanContext().traceId); should.equal((span as any).name, "Azure.ServiceBus.message"); assert.deepStrictEqual((span as any).attributes, { diff --git a/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts index 0e10d6bf7ada..f8b3080d9bdf 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/receiver.spec.ts @@ -21,6 +21,7 @@ import { AbortSignalLike } from "@azure/abort-controller"; import { ServiceBusSessionReceiverImpl } from "../../../src/receivers/sessionReceiver"; import { MessageSession } from "../../../src/session/messageSession"; import sinon from "sinon"; +import { assertThrows } from "../../public/utils/testUtils"; describe("Receiver unit tests", () => { describe("init() and close() interactions", () => { @@ -43,9 +44,11 @@ describe("Receiver unit tests", () => { }; // make an init() happen internally. - const emptyArrayOfMessages = await batchingReceiver.receive(1, 1, 1, {}); - - assert.isEmpty(emptyArrayOfMessages); + await assertThrows(() => batchingReceiver.receive(1, 1, 1, {}), { + name: "ServiceBusError", + code: "GeneralError", + message: "Link closed before receiving messages." + }); assert.isTrue(initWasCalled); }); diff --git a/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts b/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts index d28efafcc5c4..290622a7ecff 100644 --- a/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts +++ b/sdk/servicebus/service-bus/test/internal/unit/tracing.spec.ts @@ -311,7 +311,7 @@ describe("Tracing tests", () => { }; it("basic span properties are set", async () => { - const fakeParentSpanContext = new NoOpSpan().context(); + const fakeParentSpanContext = new NoOpSpan().spanContext(); createProcessingSpan([], receiverProperties, connectionConfig, { tracingOptions: { @@ -377,7 +377,7 @@ describe("Tracing tests", () => { assert.notEqual(message, originalMessage, "Instrumenting a message should copy it"); assert.ok(tracer.spanOptions, "A span should be created when we instrumented the messsage"); - const spanContextFromSender = tracer.span?.context(); + const spanContextFromSender = tracer.span?.spanContext(); assert.ok(spanContextFromSender); tracer.clearTracingData(); diff --git a/sdk/servicebus/service-bus/test/internal/utils/misc.ts b/sdk/servicebus/service-bus/test/internal/utils/misc.ts index 06b52e521046..41cea80aeda0 100644 --- a/sdk/servicebus/service-bus/test/internal/utils/misc.ts +++ b/sdk/servicebus/service-bus/test/internal/utils/misc.ts @@ -1,6 +1,7 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. +import { createClientLogger, setLogLevel } from "@azure/logger"; import { Delivery, ServiceBusReceivedMessage } from "../../../src"; import { ServiceBusMessageImpl } from "../../../src/serviceBusMessage"; @@ -17,3 +18,13 @@ export function getDeliveryProperty(message: ServiceBusReceivedMessage): Deliver "Received message does not contain a .delivery member - not a ServiceBusMessageImpl instance." ); } + +export const testLogger = createClientLogger("test"); + +export function enableCommonLoggers() { + setLogLevel("verbose"); +} + +export function disableCommonLoggers() { + setLogLevel(); +} diff --git a/sdk/servicefabric/arm-servicefabric/package.json b/sdk/servicefabric/arm-servicefabric/package.json index 3cef1816bbd8..09e9088903be 100644 --- a/sdk/servicefabric/arm-servicefabric/package.json +++ b/sdk/servicefabric/arm-servicefabric/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicefabric/arm-servicefabric", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicefabric/arm-servicefabric", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/servicefabric/servicefabric/package.json b/sdk/servicefabric/servicefabric/package.json index 6ddf0c65d1f1..dc3b40415908 100644 --- a/sdk/servicefabric/servicefabric/package.json +++ b/sdk/servicefabric/servicefabric/package.json @@ -25,7 +25,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/servicefabric/servicefabric", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/servicefabric/servicefabric", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/servicefabricmesh/arm-servicefabricmesh/package.json b/sdk/servicefabricmesh/arm-servicefabricmesh/package.json index a1e1597a74a2..fdd1e11017b6 100644 --- a/sdk/servicefabricmesh/arm-servicefabricmesh/package.json +++ b/sdk/servicefabricmesh/arm-servicefabricmesh/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/servicefabricmesh/arm-servicefabricmesh", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/servicefabricmesh/arm-servicefabricmesh", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/signalr/arm-signalr/package.json b/sdk/signalr/arm-signalr/package.json index 639818d22aa3..d6e619813daa 100644 --- a/sdk/signalr/arm-signalr/package.json +++ b/sdk/signalr/arm-signalr/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/signalr/arm-signalr", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/signalr/arm-signalr", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/sql/arm-sql/package.json b/sdk/sql/arm-sql/package.json index 551393f55986..22a5b5c69fa3 100644 --- a/sdk/sql/arm-sql/package.json +++ b/sdk/sql/arm-sql/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/sql/arm-sql", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/sql/arm-sql", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/sqlvirtualmachine/arm-sqlvirtualmachine/package.json b/sdk/sqlvirtualmachine/arm-sqlvirtualmachine/package.json index 63c86fdde2bc..d398e0f6d994 100644 --- a/sdk/sqlvirtualmachine/arm-sqlvirtualmachine/package.json +++ b/sdk/sqlvirtualmachine/arm-sqlvirtualmachine/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/sqlvirtualmachine/arm-sqlvirtualmachine", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/sqlvirtualmachine/arm-sqlvirtualmachine", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/storage/CONTRIBUTING.md b/sdk/storage/CONTRIBUTING.md index 766c1220a008..6f27ac4910d7 100644 --- a/sdk/storage/CONTRIBUTING.md +++ b/sdk/storage/CONTRIBUTING.md @@ -57,7 +57,7 @@ The environment variable **TEST_MODE** controls how the tests are running. - Else If TEST_MODE = "playback" (or if the TEST_MODE is not set or set to an invalid value), - Existing recordings are played back as responses to the HTTP requests in the tests -Please refer to the [guidelines on Record and Playback](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/recorder/GUIDELINES.md) for more details. +Please refer to the [guidelines on Record and Playback](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/recorder/GUIDELINES.md) for more details. ### Emulator Tests @@ -156,7 +156,7 @@ npm run test `npm run test` would run the the tests in both node and the browser. -**Link** - [Guidelines for record and playback - `@azure/test-utils-recorder`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/recorder/GUIDELINES.md) +**Link** - [Guidelines for record and playback - `@azure/test-utils-recorder`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/recorder/GUIDELINES.md) ## Pull Requests diff --git a/sdk/storage/README.md b/sdk/storage/README.md index 66c005ceaf1c..28ee3fd4ecca 100644 --- a/sdk/storage/README.md +++ b/sdk/storage/README.md @@ -4,10 +4,10 @@ Azure Storage is a Microsoft-managed service providing cloud storage that is hig This project provides client libraries in JavaScript that makes it easy to consume Microsoft Azure Storage service. -- [Source Code - Blob](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob) -- [Source Code - File Data Lake](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake) -- [Source Code - File Share](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share) -- [Source Code - Queue](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue) +- [Source Code - Blob](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob) +- [Source Code - File Data Lake](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake) +- [Source Code - File Share](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share) +- [Source Code - Queue](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue) - [Product documentation](https://docs.microsoft.com/azure/storage) - @azure/storage-blob [Package (npm)](https://www.npmjs.com/package/@azure/storage-blob) - @azure/storage-file-datalake [Package (npm)](https://www.npmjs.com/package/@azure/storage-file-datalake) @@ -59,17 +59,17 @@ The Azure Storage client libraries for JavaScript provides low-level and high-le Please check out examples for each libraries -- [Blob Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples) -- [Blob Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/test/) -- [Data Lake Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/samples) -- [Data Lake Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/test) -- [File Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples) -- [File Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/test) -- [Queue Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples) -- [Queue Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/test) +- [Blob Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples) +- [Blob Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/test/) +- [Data Lake Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/samples) +- [Data Lake Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/test) +- [File Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples) +- [File Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/test) +- [Queue Storage Examples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples) +- [Queue Storage Examples - Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/test) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2FREADME.png) diff --git a/sdk/storage/arm-storage-profile-2020-09-01-hybrid/package.json b/sdk/storage/arm-storage-profile-2020-09-01-hybrid/package.json index b145fbce8319..a01053038129 100644 --- a/sdk/storage/arm-storage-profile-2020-09-01-hybrid/package.json +++ b/sdk/storage/arm-storage-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/arm-storage-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/arm-storage-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/storage/arm-storage/package.json b/sdk/storage/arm-storage/package.json index a3ff8a8d9330..f1ec9c4fe09c 100644 --- a/sdk/storage/arm-storage/package.json +++ b/sdk/storage/arm-storage/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/arm-storage", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/arm-storage", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/storage/ci.yml b/sdk/storage/ci.yml index 6ac0be5e31de..26fcffae56be 100644 --- a/sdk/storage/ci.yml +++ b/sdk/storage/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/storage/storage-blob-changefeed/README.md b/sdk/storage/storage-blob-changefeed/README.md index 027ec45e58a4..25185386971b 100644 --- a/sdk/storage/storage-blob-changefeed/README.md +++ b/sdk/storage/storage-blob-changefeed/README.md @@ -11,11 +11,11 @@ Use the client libraries in this package to: - Reading change feed events, all or within a time range - Resuming reading events from a saved position -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed) | [Package (npm)](https://www.npmjs.com/package/@azure/storage-blob-changefeed/) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/storage-blob-changefeed) | [Product documentation](https://docs.microsoft.com/azure/storage/blobs/storage-blob-change-feed) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples) | +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples) | ## Getting started @@ -31,7 +31,7 @@ npm install @azure/storage-blob-changefeed ### Authenticate the client -This library uses an authenticated `BlobServiceClient` to initialize. Refer to [storage-blob](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob#authenticate-the-client) for how to authenticate a `BlobServiceClient`. +This library uses an authenticated `BlobServiceClient` to initialize. Refer to [storage-blob](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob#authenticate-the-client) for how to authenticate a `BlobServiceClient`. ### Compatibility @@ -53,7 +53,7 @@ This library offers a client you can use to fetch the change events. ### Initialize the change feed client -The `BlobChangeFeedClient` requires almost the same parameters as `BlobServiceClient` to initialize. Refer to [storage-blob](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob#create-the-blob-service-client) for how to create the blob service client. Here is an example using `StorageSharedKeyCredential`. +The `BlobChangeFeedClient` requires almost the same parameters as `BlobServiceClient` to initialize. Refer to [storage-blob](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob#create-the-blob-service-client) for how to create the blob service client. Here is an example using `StorageSharedKeyCredential`. ```javascript const { StorageSharedKeyCredential } = require("@azure/storage-blob"); @@ -155,14 +155,14 @@ setLogLevel("info"); More code samples: -- [Blob Storage Change Feed Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/javascript) -- [Blob Storage Change Feed Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/typescript) -- [Blob Storage Change Feed Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/test/) +- [Blob Storage Change Feed Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/javascript) +- [Blob Storage Change Feed Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/typescript) +- [Blob Storage Change Feed Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. -Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. +Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-blob-changefeed%2FREADME.png) diff --git a/sdk/storage/storage-blob-changefeed/package.json b/sdk/storage/storage-blob-changefeed/package.json index cc9291c04629..f38f05596497 100644 --- a/sdk/storage/storage-blob-changefeed/package.json +++ b/sdk/storage/storage-blob-changefeed/package.json @@ -83,7 +83,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob-changefeed/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob-changefeed/", "sideEffects": false, "//metadata": { "constantPaths": [ @@ -99,7 +99,7 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" diff --git a/sdk/storage/storage-blob-changefeed/samples/README.md b/sdk/storage/storage-blob-changefeed/samples/README.md index 6cf37f3af92e..ae606213eef6 100644 --- a/sdk/storage/storage-blob-changefeed/samples/README.md +++ b/sdk/storage/storage-blob-changefeed/samples/README.md @@ -23,7 +23,7 @@ npm install @azure/storage-blob-changefeed ### Authenticating with Azure Active Directory -If you have [registered an application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) with an Azure Active Directory tenant, you can [assign it to an RBAC role](https://docs.microsoft.com/azure/storage/common/storage-auth-aad) in your Azure Storage account. This enables you to use the Azure.Identity library to authenticate with Azure Storage as shown in the [azureAdAuth.ts sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts). +If you have [registered an application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) with an Azure Active Directory tenant, you can [assign it to an RBAC role](https://docs.microsoft.com/azure/storage/common/storage-auth-aad) in your Azure Storage account. This enables you to use the Azure.Identity library to authenticate with Azure Storage as shown in the [azureAdAuth.ts sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts). ## JavaScript sample @@ -58,9 +58,9 @@ ts-node sample.ts - Iterate through the entire Change Feed between a start and end date [basic.js][basic.js], [basic.ts][basic.ts] - Resuming a previous iteration of a Change Feed using the continuation token [resume.js][resume.js], [resume.ts][resume.ts] -[basic.js]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/javascript/basic.js -[resume.js]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/javascript/resume.js -[basic.ts]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/typescript/src/basic.ts -[resume.ts]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/typescript/src/resume.ts +[basic.js]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/javascript/basic.js +[resume.js]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/javascript/resume.js +[basic.ts]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/typescript/src/basic.ts +[resume.ts]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/typescript/src/resume.ts ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-blob-changefeed%2Fsamples%2FREADME.png) diff --git a/sdk/storage/storage-blob-changefeed/samples/javascript/README.md b/sdk/storage/storage-blob-changefeed/samples/javascript/README.md index 19ada53099e1..53e08c852bd9 100644 --- a/sdk/storage/storage-blob-changefeed/samples/javascript/README.md +++ b/sdk/storage/storage-blob-changefeed/samples/javascript/README.md @@ -51,8 +51,8 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node bas Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/javascript/basic.js -[resume]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/javascript/resume.js +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/javascript/basic.js +[resume]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/javascript/resume.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-blob-changefeed [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ diff --git a/sdk/storage/storage-blob-changefeed/samples/typescript/README.md b/sdk/storage/storage-blob-changefeed/samples/typescript/README.md index 4a9dad7419a8..38d4e7e10b88 100644 --- a/sdk/storage/storage-blob-changefeed/samples/typescript/README.md +++ b/sdk/storage/storage-blob-changefeed/samples/typescript/README.md @@ -63,8 +63,8 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node dis Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/typescript/src/basic.ts -[resume]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob-changefeed/samples/typescript/src/resume.ts +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/typescript/src/basic.ts +[resume]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob-changefeed/samples/typescript/src/resume.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-blob-changefeed [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ diff --git a/sdk/storage/storage-blob/README.md b/sdk/storage/storage-blob/README.md index 843b7d7ea551..b6fcf181208e 100644 --- a/sdk/storage/storage-blob/README.md +++ b/sdk/storage/storage-blob/README.md @@ -12,11 +12,11 @@ Use the client libraries in this package to: - Create/Read/List/Update/Delete Page Blobs - Create/Read/List/Update/Delete Append Blobs -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob) | [Package (npm)](https://www.npmjs.com/package/@azure/storage-blob/) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/storage-blob) | [Product documentation](https://docs.microsoft.com/azure/storage/blobs/storage-blobs-overview) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples) | +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples) | [Azure Storage Blob REST APIs](https://docs.microsoft.com/rest/api/storageservices/blob-service-rest-api) ## Getting started @@ -41,7 +41,7 @@ Azure Storage supports several ways to authenticate. In order to interact with t #### Azure Active Directory -The Azure Blob Storage service supports the use of Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. Please see the [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) for more details and samples to get you started. +The Azure Blob Storage service supports the use of Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. Please see the [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) for more details and samples to get you started. ### Compatibility @@ -181,7 +181,7 @@ const blobServiceClient = new BlobServiceClient( ); ``` -See the [Azure AD Auth sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/javascript/azureAdAuth.js) for a complete example using this method. +See the [Azure AD Auth sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/javascript/azureAdAuth.js) for a complete example using this method. [Note - Above steps are only for Node.js] @@ -341,7 +341,7 @@ async function main() { main(); ``` -For a complete sample on iterating containers please see [samples/src/iterators-containers.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/iterators-containers.ts). +For a complete sample on iterating containers please see [samples/src/iterators-containers.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/typescript/src/iterators-containers.ts). ### Create a blob by uploading data @@ -403,7 +403,7 @@ async function main() { main(); ``` -For a complete sample on iterating blobs please see [samples/src/iterators-blobs.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/iterators-blobs.ts). +For a complete sample on iterating blobs please see [samples/src/iterators-blobs.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/typescript/src/iterators-blobs.ts). ### Download a blob and convert it to a string (Node.js) @@ -492,7 +492,7 @@ async function main() { main(); ``` -A complete example of basic scenarios is at [samples/src/basic.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/basic.ts). +A complete example of basic scenarios is at [samples/src/basic.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/typescript/src/basic.ts). ## Troubleshooting @@ -508,14 +508,14 @@ setLogLevel("info"); More code samples: -- [Blob Storage Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript) -- [Blob Storage Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript) -- [Blob Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/test/) +- [Blob Storage Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript) +- [Blob Storage Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript) +- [Blob Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. -Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. +Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-blob%2FREADME.png) diff --git a/sdk/storage/storage-blob/package.json b/sdk/storage/storage-blob/package.json index 31f3d5d4eee3..d37bf39348e7 100644 --- a/sdk/storage/storage-blob/package.json +++ b/sdk/storage/storage-blob/package.json @@ -91,7 +91,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/", "sideEffects": false, "//metadata": { "constantPaths": [ @@ -130,7 +130,7 @@ "@azure/core-http": "^1.2.0", "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" @@ -139,7 +139,7 @@ "@azure/core-rest-pipeline": "^1.0.3", "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@azure/test-utils-perfstress": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/storage/storage-blob/samples/README.md b/sdk/storage/storage-blob/samples/README.md index d6bbcea2ca5c..5f8250bc70b4 100644 --- a/sdk/storage/storage-blob/samples/README.md +++ b/sdk/storage/storage-blob/samples/README.md @@ -23,7 +23,7 @@ npm install @azure/storage-blob ### Authenticating with Azure Active Directory -If you have [registered an application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) with an Azure Active Directory tenant, you can [assign it to an RBAC role](https://docs.microsoft.com/azure/storage/common/storage-auth-aad) in your Azure Storage account. This enables you to use the Azure.Identity library to authenticate with Azure Storage as shown in the [azureAdAuth.ts sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts). +If you have [registered an application](https://docs.microsoft.com/azure/active-directory/develop/quickstart-register-app) with an Azure Active Directory tenant, you can [assign it to an RBAC role](https://docs.microsoft.com/azure/storage/common/storage-auth-aad) in your Azure Storage account. This enables you to use the Azure.Identity library to authenticate with Azure Storage as shown in the [azureAdAuth.ts sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts). ## Javascript sample diff --git a/sdk/storage/storage-blob/samples/javascript/README.md b/sdk/storage/storage-blob/samples/javascript/README.md index b57652f39b30..036cea636bfc 100644 --- a/sdk/storage/storage-blob/samples/javascript/README.md +++ b/sdk/storage/storage-blob/samples/javascript/README.md @@ -66,22 +66,22 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node bas Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/advanced.js -[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/anonymousCred.js -[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/azureAdAuth.js -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/basic.js -[customizedclientheaders]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/customizedClientHeaders.js -[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/customPipeline.js -[errorsandresponses]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/errorsAndResponses.js -[iterators-blobs-hierarchy]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/iterators-blobs-hierarchy.js -[iterators-blobs]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/iterators-blobs.js -[iterators-containers]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/iterators-containers.js -[iterators-without-await]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/iterators-without-await.js -[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/proxyAuth.js -[readingsnapshot]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/readingSnapshot.js -[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/sharedKeyCred.js -[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/javascript/withConnString.js +[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/advanced.js +[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/anonymousCred.js +[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/azureAdAuth.js +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/basic.js +[customizedclientheaders]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/customizedClientHeaders.js +[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/customPipeline.js +[errorsandresponses]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/errorsAndResponses.js +[iterators-blobs-hierarchy]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/iterators-blobs-hierarchy.js +[iterators-blobs]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/iterators-blobs.js +[iterators-containers]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/iterators-containers.js +[iterators-without-await]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/iterators-without-await.js +[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/proxyAuth.js +[readingsnapshot]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/readingSnapshot.js +[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/sharedKeyCred.js +[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/javascript/withConnString.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-blob [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/README.md diff --git a/sdk/storage/storage-blob/samples/typescript/README.md b/sdk/storage/storage-blob/samples/typescript/README.md index 3d4dbb152022..d7f129ee2f7a 100644 --- a/sdk/storage/storage-blob/samples/typescript/README.md +++ b/sdk/storage/storage-blob/samples/typescript/README.md @@ -78,23 +78,23 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node dis Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/advanced.ts -[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/anonymousCred.ts -[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/basic.ts -[customizedclientheaders]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/customizedClientHeaders.ts -[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/customPipeline.ts -[errorsandresponses]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/errorsAndResponses.ts -[iterators-blobs-hierarchy]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/iterators-blobs-hierarchy.ts -[iterators-blobs]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/iterators-blobs.ts -[iterators-containers]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/iterators-containers.ts -[iterators-without-await]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/iterators-without-await.ts -[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/proxyAuth.ts -[readingsnapshot]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/readingSnapshot.ts -[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/sharedKeyCred.ts -[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/samples/typescript/src/withConnString.ts +[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/advanced.ts +[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/anonymousCred.ts +[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/azureAdAuth.ts +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/basic.ts +[customizedclientheaders]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/customizedClientHeaders.ts +[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/customPipeline.ts +[errorsandresponses]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/errorsAndResponses.ts +[iterators-blobs-hierarchy]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/iterators-blobs-hierarchy.ts +[iterators-blobs]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/iterators-blobs.ts +[iterators-containers]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/iterators-containers.ts +[iterators-without-await]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/iterators-without-await.ts +[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/proxyAuth.ts +[readingsnapshot]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/readingSnapshot.ts +[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/sharedKeyCred.ts +[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/samples/typescript/src/withConnString.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-blob [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-blob/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-blob/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/storage/storage-blob/test/README.md b/sdk/storage/storage-blob/test/README.md index a0a038dafcec..17be1db0989c 100644 --- a/sdk/storage/storage-blob/test/README.md +++ b/sdk/storage/storage-blob/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/storage/storage-blob/test/blobclient.spec.ts b/sdk/storage/storage-blob/test/blobclient.spec.ts index 5eef4e45d1ee..8073aa4a9464 100644 --- a/sdk/storage/storage-blob/test/blobclient.spec.ts +++ b/sdk/storage/storage-blob/test/blobclient.spec.ts @@ -742,7 +742,7 @@ describe("BlobClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); diff --git a/sdk/storage/storage-blob/test/containerclient.spec.ts b/sdk/storage/storage-blob/test/containerclient.spec.ts index eb39b22d5e5d..98a7d0b77ca9 100644 --- a/sdk/storage/storage-blob/test/containerclient.spec.ts +++ b/sdk/storage/storage-blob/test/containerclient.spec.ts @@ -734,7 +734,7 @@ describe("ContainerClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); await containerClient.deleteBlob(blobName); diff --git a/sdk/storage/storage-datalake/README.md b/sdk/storage/storage-datalake/README.md index de8de1dce380..1167c504c5f4 100644 --- a/sdk/storage/storage-datalake/README.md +++ b/sdk/storage/storage-datalake/README.md @@ -95,9 +95,9 @@ setLogLevel("info"); ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. -Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. +Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. ## Related projects diff --git a/sdk/storage/storage-datalake/package.json b/sdk/storage/storage-datalake/package.json index 3bec9f15eded..77ded73c86f2 100644 --- a/sdk/storage/storage-datalake/package.json +++ b/sdk/storage/storage-datalake/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-datalake", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-datalake", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/storage/storage-file-datalake/README.md b/sdk/storage/storage-file-datalake/README.md index f5b37e3d3faf..b4e23c66022e 100644 --- a/sdk/storage/storage-file-datalake/README.md +++ b/sdk/storage/storage-file-datalake/README.md @@ -9,11 +9,11 @@ Use the client libraries in this package to: - Create/List/Delete File Systems - Create/Read/List/Update/Delete Paths, Directories and Files -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake) | [Package (npm)](https://www.npmjs.com/package/@azure/storage-file-datalake) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/storage-file-datalake) | [Product documentation](https://docs.microsoft.com/azure/storage/blobs/data-lake-storage-introduction?toc=%2fazure%2fstorage%2fblobs%2ftoc.json) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/samples) | +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/samples) | [Azure Storage Data Lake REST APIs](https://docs.microsoft.com/rest/api/storageservices/data-lake-storage-gen2) ## Getting started @@ -38,7 +38,7 @@ Azure Storage supports several ways to authenticate. In order to interact with t #### Azure Active Directory -The Azure Data Lake Storage service supports the use of Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. Please see the [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) for more details and samples to get you started. +The Azure Data Lake Storage service supports the use of Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. Please see the [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) for more details and samples to get you started. ### Compatibility @@ -204,7 +204,7 @@ const datalakeServiceClient = new DataLakeServiceClient( ); ``` -See the [Azure AD Auth sample](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-blob/samples/javascript/azureAdAuth.js) for a complete example using this method. +See the [Azure AD Auth sample](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/samples/javascript/azureAdAuth.js) for a complete example using this method. [Note - Above steps are only for Node.js] @@ -562,12 +562,12 @@ setLogLevel("info"); More code samples: -- [DataLake Storage Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/samples/javascript) -- [DataLake Storage Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/samples/typescript) -- [DataLake Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/test/) +- [DataLake Storage Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/samples/javascript) +- [DataLake Storage Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/samples/typescript) +- [DataLake Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/test/) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-blob%2FREADME.png) diff --git a/sdk/storage/storage-file-datalake/package.json b/sdk/storage/storage-file-datalake/package.json index 703c1a771be5..2ec07e79261c 100644 --- a/sdk/storage/storage-file-datalake/package.json +++ b/sdk/storage/storage-file-datalake/package.json @@ -88,7 +88,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-file-datalake/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-file-datalake/", "//metadata": { "constantPaths": [ { @@ -109,7 +109,7 @@ "@azure/abort-controller": "^1.0.0", "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "@azure/storage-blob": "^12.6.0-beta.1", "events": "^3.0.0", @@ -118,7 +118,7 @@ "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@azure/test-utils-perfstress": "^1.0.0", "@microsoft/api-extractor": "7.7.11", diff --git a/sdk/storage/storage-file-datalake/samples/javascript/README.md b/sdk/storage/storage-file-datalake/samples/javascript/README.md index 13b2c8627459..585eadde4fbd 100644 --- a/sdk/storage/storage-file-datalake/samples/javascript/README.md +++ b/sdk/storage/storage-file-datalake/samples/javascript/README.md @@ -50,7 +50,7 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node bas Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/samples/javascript/basic.js +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/samples/javascript/basic.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-file-datalake [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ diff --git a/sdk/storage/storage-file-datalake/samples/typescript/README.md b/sdk/storage/storage-file-datalake/samples/typescript/README.md index a4e79d1d8e57..8eb1ab20cb09 100644 --- a/sdk/storage/storage-file-datalake/samples/typescript/README.md +++ b/sdk/storage/storage-file-datalake/samples/typescript/README.md @@ -62,7 +62,7 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node dis Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-datalake/samples/typescript/src/basic.ts +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-datalake/samples/typescript/src/basic.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-file-datalake [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ diff --git a/sdk/storage/storage-file-datalake/test/README.md b/sdk/storage/storage-file-datalake/test/README.md index ce0c681f7329..cd469cc9bee3 100644 --- a/sdk/storage/storage-file-datalake/test/README.md +++ b/sdk/storage/storage-file-datalake/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts b/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts index a52e438c1d77..8766f77ee19e 100644 --- a/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/filesystemclient.spec.ts @@ -102,7 +102,7 @@ describe("DataLakeFileSystemClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); diff --git a/sdk/storage/storage-file-datalake/test/pathclient.spec.ts b/sdk/storage/storage-file-datalake/test/pathclient.spec.ts index cf91b91e8b24..5eed11bf2e17 100644 --- a/sdk/storage/storage-file-datalake/test/pathclient.spec.ts +++ b/sdk/storage/storage-file-datalake/test/pathclient.spec.ts @@ -192,7 +192,7 @@ describe("DataLakePathClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); diff --git a/sdk/storage/storage-file-share/CHANGELOG.md b/sdk/storage/storage-file-share/CHANGELOG.md index eb55c0ec376d..46d0d1dd8698 100644 --- a/sdk/storage/storage-file-share/CHANGELOG.md +++ b/sdk/storage/storage-file-share/CHANGELOG.md @@ -200,7 +200,7 @@ - Added `DirectoryClient.listHandlesSegment()` and `FileClient.listHandlesSegment()` to returns a list of open handles on a directory or a file. - Added `DirectoryClient.forceCloseHandlesSegment()`, `FileClient.forceCloseHandlesSegment()`, `DirectoryClient.forceCloseHandle()` and `FileClient.forceCloseHandle()` to close handles. - Pass through `options.abortSignal` to the optional `abortSignal` attribute in option bags instead of using `AbortSignal.none` as the default value when `options.abortSignal` is not specified. -- Basic HTTP proxy authentication support is added. Proxy settings can be passed in the options while creating a new client. Example - [typescript/src/proxyAuth.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-file-share/samples/typescript/src/proxyAuth.ts) +- Basic HTTP proxy authentication support is added. Proxy settings can be passed in the options while creating a new client. Example - [typescript/src/proxyAuth.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-file-share/samples/typescript/src/proxyAuth.ts) - Connection strings for explicit storage endpoints are supported. - [Configure Azure Storage connection strings](https://docs.microsoft.com/azure/storage/common/storage-configure-connection-string#create-a-connection-string-for-an-explicit-storage-endpoint) ## 12.0.0-preview.2 (2019-08-01) diff --git a/sdk/storage/storage-file-share/README.md b/sdk/storage/storage-file-share/README.md index 8dd7d98efe92..ffa8022732f8 100644 --- a/sdk/storage/storage-file-share/README.md +++ b/sdk/storage/storage-file-share/README.md @@ -15,11 +15,11 @@ Use the client libraries in this package to: > It has been renamed to `@azure/storage-file-share` to better align with the upcoming new package > for Azure Storage Files DataLake and provide a consistent set of APIs for working with files on Azure. -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share) | [Package (npm)](https://www.npmjs.com/package/@azure/storage-file-share/) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/storage-file-share) | [Product documentation](https://docs.microsoft.com/azure/storage/files/storage-files-introduction) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples) | +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples) | [Azure Storage File REST APIs](https://docs.microsoft.com/rest/api/storageservices/file-service-rest-api) ## Getting started @@ -377,7 +377,7 @@ async function main() { main(); ``` -For a complete sample on iterating please see [samples/typescript/src/iterators-files-and-directories.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-file-share/samples/typescript/src/iterators-files-and-directories.ts). +For a complete sample on iterating please see [samples/typescript/src/iterators-files-and-directories.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-file-share/samples/typescript/src/iterators-files-and-directories.ts). ### Download a file and convert it to a string (Node.js) @@ -470,7 +470,7 @@ async function blobToString(blob) { main(); ``` -A complete example of basic scenarios is at [samples/typescript/src/basic.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-file-share/samples/typescript/src/basic.ts). +A complete example of basic scenarios is at [samples/typescript/src/basic.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-file-share/samples/typescript/src/basic.ts). ## Troubleshooting @@ -486,14 +486,14 @@ setLogLevel("info"); More code samples -- [File Share Storage Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript) -- [File Share Storage Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript) -- [File Share Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/test) +- [File Share Storage Samples (JavaScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript) +- [File Share Storage Samples (TypeScript)](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript) +- [File Share Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/test) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. -Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. +Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-file-share%2FREADME.png) diff --git a/sdk/storage/storage-file-share/package.json b/sdk/storage/storage-file-share/package.json index cbdc6fa91154..ffdd5c71ca1c 100644 --- a/sdk/storage/storage-file-share/package.json +++ b/sdk/storage/storage-file-share/package.json @@ -84,7 +84,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-file-share/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-file-share/", "sideEffects": false, "//metadata": { "constantPaths": [ @@ -117,7 +117,7 @@ "@azure/abort-controller": "^1.0.0", "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "events": "^3.0.0", "tslib": "^2.2.0" diff --git a/sdk/storage/storage-file-share/samples/javascript/README.md b/sdk/storage/storage-file-share/samples/javascript/README.md index 89a8b2a9c38d..034ad71b44db 100644 --- a/sdk/storage/storage-file-share/samples/javascript/README.md +++ b/sdk/storage/storage-file-share/samples/javascript/README.md @@ -61,17 +61,17 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node bas Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/basic.js -[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/proxyAuth.js -[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/withConnString.js -[iterators-files-and-directories]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/iterators-files-and-directories.js -[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/sharedKeyCred.js -[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/anonymousCred.js -[iterators-handles]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/iterators-handles.js -[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/customPipeline.js -[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/advanced.js -[iterators-shares]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/javascript/iterators-shares.js +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/basic.js +[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/proxyAuth.js +[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/withConnString.js +[iterators-files-and-directories]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/iterators-files-and-directories.js +[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/sharedKeyCred.js +[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/anonymousCred.js +[iterators-handles]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/iterators-handles.js +[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/customPipeline.js +[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/advanced.js +[iterators-shares]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/javascript/iterators-shares.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-file-share [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/README.md diff --git a/sdk/storage/storage-file-share/samples/typescript/README.md b/sdk/storage/storage-file-share/samples/typescript/README.md index 8663bc9c120f..8f7f6cd1a89d 100644 --- a/sdk/storage/storage-file-share/samples/typescript/README.md +++ b/sdk/storage/storage-file-share/samples/typescript/README.md @@ -73,18 +73,18 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node dis Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/basic.ts -[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/proxyAuth.ts -[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/withConnString.ts -[iterators-files-and-directories]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/iterators-files-and-directories.ts -[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/sharedKeyCred.ts -[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/anonymousCred.ts -[iterators-handles]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/iterators-handles.ts -[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/customPipeline.ts -[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/advanced.ts -[iterators-shares]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/samples/typescript/src/iterators-shares.ts +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/basic.ts +[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/proxyAuth.ts +[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/withConnString.ts +[iterators-files-and-directories]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/iterators-files-and-directories.ts +[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/sharedKeyCred.ts +[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/anonymousCred.ts +[iterators-handles]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/iterators-handles.ts +[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/customPipeline.ts +[advanced]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/advanced.ts +[iterators-shares]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/samples/typescript/src/iterators-shares.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-file-share [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-file-share/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-file-share/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/storage/storage-file-share/test/README.md b/sdk/storage/storage-file-share/test/README.md index d3020429ae3f..edc876c4a90d 100644 --- a/sdk/storage/storage-file-share/test/README.md +++ b/sdk/storage/storage-file-share/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to build it by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building), then follow the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/test-resources.json) that already has all of the the necessary configurations. The Azure resource that is used by the tests in this project is: diff --git a/sdk/storage/storage-file-share/test/directoryclient.spec.ts b/sdk/storage/storage-file-share/test/directoryclient.spec.ts index be34c5638c60..a3939b58af98 100644 --- a/sdk/storage/storage-file-share/test/directoryclient.spec.ts +++ b/sdk/storage/storage-file-share/test/directoryclient.spec.ts @@ -794,7 +794,7 @@ describe("DirectoryClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); diff --git a/sdk/storage/storage-file-share/test/fileclient.spec.ts b/sdk/storage/storage-file-share/test/fileclient.spec.ts index a653cf8d0209..5c931c4e4053 100644 --- a/sdk/storage/storage-file-share/test/fileclient.spec.ts +++ b/sdk/storage/storage-file-share/test/fileclient.spec.ts @@ -872,7 +872,7 @@ describe("FileClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); }); diff --git a/sdk/storage/storage-internal-avro/package.json b/sdk/storage/storage-internal-avro/package.json index 069253c0df2a..41b1c9c53615 100644 --- a/sdk/storage/storage-internal-avro/package.json +++ b/sdk/storage/storage-internal-avro/package.json @@ -7,7 +7,7 @@ "description": "internal avro parser", "license": "MIT", "repository": "github:Azure/azure-sdk-for-js", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-internal-avro/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-internal-avro/", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, diff --git a/sdk/storage/storage-queue/CHANGELOG.md b/sdk/storage/storage-queue/CHANGELOG.md index c9e80295d270..293a7db28e7f 100644 --- a/sdk/storage/storage-queue/CHANGELOG.md +++ b/sdk/storage/storage-queue/CHANGELOG.md @@ -160,7 +160,7 @@ - Updated HTTP client from axios to node-fetch in Node.js runtime. - A new option `keepAliveOptions` added to parameter of `newPipeline()` which controls keep-alive configurations. Keep-alive is enabled by default. - Pass through `options.abortSignal` to the optional `abortSignal` attribute in option bags instead of using `AbortSignal.none` as the default value when `options.abortSignal` is not specified. -- Basic HTTP proxy authentication support is added. Proxy settings can be passed in the options while creating a new client. Example - [typescript/proxyAuth.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-queue/samples/typescript/src/proxyAuth.ts) +- Basic HTTP proxy authentication support is added. Proxy settings can be passed in the options while creating a new client. Example - [typescript/proxyAuth.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-queue/samples/typescript/src/proxyAuth.ts) - Connection strings for explicit storage endpoints are supported. - [Configure Azure Storage connection strings](https://docs.microsoft.com/azure/storage/common/storage-configure-connection-string#create-a-connection-string-for-an-explicit-storage-endpoint) ## 10.3.0 (2019-09-09) diff --git a/sdk/storage/storage-queue/README.md b/sdk/storage/storage-queue/README.md index 8d6b85ab7304..1894ce456bba 100644 --- a/sdk/storage/storage-queue/README.md +++ b/sdk/storage/storage-queue/README.md @@ -10,11 +10,11 @@ Use the client libraries in this package to: - Create/List/Delete Queues - Send/Receive/Peek/Clear/Update/Delete Queue Messages -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue) | +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue) | [Package (npm)](https://www.npmjs.com/package/@azure/storage-queue) | [API Reference Documentation](https://docs.microsoft.com/javascript/api/@azure/storage-queue) | [Product documentation](https://docs.microsoft.com/azure/storage/queues/storage-queues-introduction) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples) | +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples) | [Azure Storage Queue REST APIs](https://docs.microsoft.com/rest/api/storageservices/queue-service-rest-api) ## Getting started @@ -39,7 +39,7 @@ Azure Storage supports several ways to authenticate. In order to interact with t #### Azure Active Directory -The Azure Queue Storage service supports the use of Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. Please see the [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity/README.md) for more details and samples to get you started. +The Azure Queue Storage service supports the use of Azure Active Directory to authenticate requests to its APIs. The [`@azure/identity`](https://www.npmjs.com/package/@azure/identity) package provides a variety of credential types that your application can use to do this. Please see the [README for `@azure/identity`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity/README.md) for more details and samples to get you started. ### Compatibility @@ -259,7 +259,7 @@ async function main() { main(); ``` -For a complete sample on iterating queues please see [samples/typescript/iterators.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-queue/samples/typescript/src/iterators.ts). +For a complete sample on iterating queues please see [samples/typescript/iterators.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-queue/samples/typescript/src/iterators.ts). ### Create a new queue @@ -417,7 +417,7 @@ async function main() { main(); ``` -A complete example of basic scenarios is at [samples/basic.ts](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-queue/samples/typescript/src/basic.ts). +A complete example of basic scenarios is at [samples/basic.ts](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-queue/samples/typescript/src/basic.ts). ## Troubleshooting @@ -433,13 +433,13 @@ setLogLevel("info"); More code samples -- [Queue Storage Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples) -- [Queue Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/test) +- [Queue Storage Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples) +- [Queue Storage Test Cases](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/test) ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. -Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. +Also refer to [Storage specific guide](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/CONTRIBUTING.md) for additional information on setting up the test environment for storage libraries. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-queue%2FREADME.png) diff --git a/sdk/storage/storage-queue/package.json b/sdk/storage/storage-queue/package.json index 78ac382493b3..bf1361417121 100644 --- a/sdk/storage/storage-queue/package.json +++ b/sdk/storage/storage-queue/package.json @@ -80,7 +80,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/storage-queue/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-queue/", "sideEffects": false, "//metadata": { "constantPaths": [ @@ -112,14 +112,14 @@ "@azure/abort-controller": "^1.0.0", "@azure/core-http": "^1.2.0", "@azure/core-paging": "^1.1.1", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, "devDependencies": { "@azure/dev-tool": "^1.0.0", "@azure/eslint-plugin-azure-sdk": "^3.0.0", - "@azure/identity": "2.0.0-beta.3", + "@azure/identity": "2.0.0-beta.4", "@azure/test-utils-recorder": "^1.0.0", "@microsoft/api-extractor": "7.7.11", "@rollup/plugin-commonjs": "11.0.2", diff --git a/sdk/storage/storage-queue/samples/javascript/README.md b/sdk/storage/storage-queue/samples/javascript/README.md index 57046bc373b8..7cd54404315b 100644 --- a/sdk/storage/storage-queue/samples/javascript/README.md +++ b/sdk/storage/storage-queue/samples/javascript/README.md @@ -59,15 +59,15 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node bas Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/anonymousCred.js -[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/azureAdAuth.js -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/basic.js -[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/customPipeline.js -[iterators]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/iterators.js -[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/proxyAuth.js -[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/sharedKeyCred.js -[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/javascript/withConnString.js +[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/anonymousCred.js +[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/azureAdAuth.js +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/basic.js +[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/customPipeline.js +[iterators]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/iterators.js +[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/proxyAuth.js +[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/sharedKeyCred.js +[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/javascript/withConnString.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-queue [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/README.md diff --git a/sdk/storage/storage-queue/samples/typescript/README.md b/sdk/storage/storage-queue/samples/typescript/README.md index 9107a5c4b234..9fa63fb33b32 100644 --- a/sdk/storage/storage-queue/samples/typescript/README.md +++ b/sdk/storage/storage-queue/samples/typescript/README.md @@ -71,16 +71,16 @@ npx cross-env ACCOUNT_NAME="" ACCOUNT_KEY="" node dis Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/anonymousCred.ts -[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/azureAdAuth.ts -[basic]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/basic.ts -[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/customPipeline.ts -[iterators]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/iterators.ts -[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/proxyAuth.ts -[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/sharedKeyCred.ts -[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/samples/typescript/src/withConnString.ts +[anonymouscred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/anonymousCred.ts +[azureadauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/azureAdAuth.ts +[basic]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/basic.ts +[custompipeline]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/customPipeline.ts +[iterators]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/iterators.ts +[proxyauth]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/proxyAuth.ts +[sharedkeycred]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/sharedKeyCred.ts +[withconnstring]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/samples/typescript/src/withConnString.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/storage-queue [azstorage]: https://docs.microsoft.com/azure/storage/common/storage-account-overview [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storage/storage-queue/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storage/storage-queue/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/storage/storage-queue/test/README.md b/sdk/storage/storage-queue/test/README.md index 84b2c43a9dfe..de05aa193552 100644 --- a/sdk/storage/storage-queue/test/README.md +++ b/sdk/storage/storage-queue/test/README.md @@ -1,8 +1,8 @@ # Testing -To test this project, make sure to first build it properly by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#building). Once the project is correctly built, you will be able to run the tests by following the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md#testing). +To test this project, make sure to first build it properly by following our [building instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#building). Once the project is correctly built, you will be able to run the tests by following the [testing instructions](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md#testing). -You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/master/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/test-resources.json) that already has all of the the necessary configurations. +You can use existing Azure resources for the live tests, or generate new ones by using our [New-TestResources.ps1](https://github.com/Azure/azure-sdk-for-js/blob/main/eng/common/TestResources/New-TestResources.ps1) script, which will use an [ARM template](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/test-resources.json) that already has all of the the necessary configurations. The Azure resources that are used by the tests in this project are: diff --git a/sdk/storage/storage-queue/test/queueclient.spec.ts b/sdk/storage/storage-queue/test/queueclient.spec.ts index 12dd47ffbfa2..4b832f67d6bc 100644 --- a/sdk/storage/storage-queue/test/queueclient.spec.ts +++ b/sdk/storage/storage-queue/test/queueclient.spec.ts @@ -232,7 +232,7 @@ describe("QueueClient", () => { ] }; - assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.context().traceId), expectedGraph); + assert.deepStrictEqual(tracer.getSpanGraph(rootSpan.spanContext().traceId), expectedGraph); assert.strictEqual(tracer.getActiveSpans().length, 0, "All spans should have had end called"); }); }); diff --git a/sdk/storage/test-resources-post.ps1 b/sdk/storage/test-resources-post.ps1 index 3e61bc86c32d..d838305fec31 100644 --- a/sdk/storage/test-resources-post.ps1 +++ b/sdk/storage/test-resources-post.ps1 @@ -5,8 +5,8 @@ # There are no documented approaches to specifying CORS rules using ARM, this is a workaround until # support for setting CORS rules is added to ARM for Queues -# It is invoked by the https://github.com/Azure/azure-sdk-for-js/blob/master/eng/New-TestResources.ps1 -# script after the ARM template, defined in https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/test-resources.json, +# It is invoked by the https://github.com/Azure/azure-sdk-for-js/blob/main/eng/New-TestResources.ps1 +# script after the ARM template, defined in https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/test-resources.json, # is finished being deployed. The ARM template is responsible for creating the Storage accounts needed for live tests. param ( diff --git a/sdk/storagecache/arm-storagecache/package.json b/sdk/storagecache/arm-storagecache/package.json index af392a8d60bd..be9abbe053c5 100644 --- a/sdk/storagecache/arm-storagecache/package.json +++ b/sdk/storagecache/arm-storagecache/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storagecache/arm-storagecache", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storagecache/arm-storagecache", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/storageimportexport/arm-storageimportexport/package.json b/sdk/storageimportexport/arm-storageimportexport/package.json index 9fb220f65205..9a79781b78a0 100644 --- a/sdk/storageimportexport/arm-storageimportexport/package.json +++ b/sdk/storageimportexport/arm-storageimportexport/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/storageimportexport/arm-storageimportexport", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/storageimportexport/arm-storageimportexport", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/storagesync/arm-storagesync/package.json b/sdk/storagesync/arm-storagesync/package.json index cb4eb848217f..29b8ef52098c 100644 --- a/sdk/storagesync/arm-storagesync/package.json +++ b/sdk/storagesync/arm-storagesync/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/storagesync/arm-storagesync", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/storagesync/arm-storagesync", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/storsimple1200series/arm-storsimple1200series/package.json b/sdk/storsimple1200series/arm-storsimple1200series/package.json index 5ceebf14fd7e..9a197dea0fdb 100644 --- a/sdk/storsimple1200series/arm-storsimple1200series/package.json +++ b/sdk/storsimple1200series/arm-storsimple1200series/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/storsimple1200series/arm-storsimple1200series", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/storsimple1200series/arm-storsimple1200series", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/storsimple8000series/arm-storsimple8000series/package.json b/sdk/storsimple8000series/arm-storsimple8000series/package.json index 155092690260..192caba6625a 100644 --- a/sdk/storsimple8000series/arm-storsimple8000series/package.json +++ b/sdk/storsimple8000series/arm-storsimple8000series/package.json @@ -25,7 +25,7 @@ "rollup-plugin-node-resolve": "^3.4.0", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/storsimple8000series/arm-storsimple8000series", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/storsimple8000series/arm-storsimple8000series", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/streamanalytics/arm-streamanalytics/package.json b/sdk/streamanalytics/arm-streamanalytics/package.json index 9b18bf9ef96f..e5246c121745 100644 --- a/sdk/streamanalytics/arm-streamanalytics/package.json +++ b/sdk/streamanalytics/arm-streamanalytics/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/streamanalytics/arm-streamanalytics", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/streamanalytics/arm-streamanalytics", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/subscription/arm-subscriptions-profile-2020-09-01-hybrid/package.json b/sdk/subscription/arm-subscriptions-profile-2020-09-01-hybrid/package.json index a299d61947e5..7b5d90e547fa 100644 --- a/sdk/subscription/arm-subscriptions-profile-2020-09-01-hybrid/package.json +++ b/sdk/subscription/arm-subscriptions-profile-2020-09-01-hybrid/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/subscription/arm-subscriptions-profile-2020-09-01-hybrid", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/subscription/arm-subscriptions-profile-2020-09-01-hybrid", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/subscription/arm-subscriptions-profile-hybrid-2019-03-01/package.json b/sdk/subscription/arm-subscriptions-profile-hybrid-2019-03-01/package.json index 32f921d1d79b..41779db9b83e 100644 --- a/sdk/subscription/arm-subscriptions-profile-hybrid-2019-03-01/package.json +++ b/sdk/subscription/arm-subscriptions-profile-hybrid-2019-03-01/package.json @@ -27,7 +27,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.4.9" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/subscription/arm-subscriptions-profile-hybrid-2019-03-01", + "homepage": "https://github.com/azure/azure-sdk-for-js/tree/main/sdk/subscription/arm-subscriptions-profile-hybrid-2019-03-01", "repository": { "type": "git", "url": "https://github.com/azure/azure-sdk-for-js.git" diff --git a/sdk/subscription/arm-subscriptions/package.json b/sdk/subscription/arm-subscriptions/package.json index 1bb5ce9e8ab0..6f56ecd0b90b 100644 --- a/sdk/subscription/arm-subscriptions/package.json +++ b/sdk/subscription/arm-subscriptions/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/subscription/arm-subscriptions", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/subscription/arm-subscriptions", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/support/arm-support/package.json b/sdk/support/arm-support/package.json index bf509c08ccf9..275ea5195a21 100644 --- a/sdk/support/arm-support/package.json +++ b/sdk/support/arm-support/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/support/arm-support", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/support/arm-support", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/synapse/arm-synapse/package.json b/sdk/synapse/arm-synapse/package.json index 110cec07f695..c01cf1d6f7d6 100644 --- a/sdk/synapse/arm-synapse/package.json +++ b/sdk/synapse/arm-synapse/package.json @@ -26,7 +26,7 @@ "rollup-plugin-sourcemaps": "^0.4.2", "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/synapse/arm-synapse", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/synapse/arm-synapse", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" diff --git a/sdk/synapse/ci.yml b/sdk/synapse/ci.yml index 811eee23edb9..c4af921a75d3 100644 --- a/sdk/synapse/ci.yml +++ b/sdk/synapse/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/synapse/synapse-access-control/README.md b/sdk/synapse/synapse-access-control/README.md index 62bd89368482..340d4f9ec4e2 100644 --- a/sdk/synapse/synapse-access-control/README.md +++ b/sdk/synapse/synapse-access-control/README.md @@ -59,6 +59,6 @@ In the future, you'll find additional code samples here. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-keys%2FREADME.png) diff --git a/sdk/synapse/synapse-access-control/package.json b/sdk/synapse/synapse-access-control/package.json index 347a6a332851..ecf62550ebab 100644 --- a/sdk/synapse/synapse-access-control/package.json +++ b/sdk/synapse/synapse-access-control/package.json @@ -2,14 +2,14 @@ "name": "@azure/synapse-access-control", "author": "Microsoft Corporation", "description": "A generated SDK for AccessControlClient.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/synapse/synapse-access-control/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/synapse/synapse-access-control/README.md", "repository": "github:Azure/azure-sdk-for-js", "sdk-type": "client", "version": "1.0.0-beta.3", "dependencies": { "@azure/core-paging": "^1.1.1", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "keywords": [ diff --git a/sdk/synapse/synapse-artifacts/README.md b/sdk/synapse/synapse-artifacts/README.md index 1301c7c4ceea..bfd18efa8d1e 100644 --- a/sdk/synapse/synapse-artifacts/README.md +++ b/sdk/synapse/synapse-artifacts/README.md @@ -56,6 +56,6 @@ In the future, you'll find additional code samples here. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-keys%2FREADME.png) diff --git a/sdk/synapse/synapse-artifacts/package.json b/sdk/synapse/synapse-artifacts/package.json index af7c3154358d..693265ec8586 100644 --- a/sdk/synapse/synapse-artifacts/package.json +++ b/sdk/synapse/synapse-artifacts/package.json @@ -4,13 +4,13 @@ "description": "A generated SDK for ArtifactsClient.", "sdk-type": "client", "version": "1.0.0-beta.5", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/synapse/synapse-artifacts/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/synapse/synapse-artifacts/README.md", "repository": "github:Azure/azure-sdk-for-js", "dependencies": { "@azure/core-lro": "^1.0.2", "@azure/core-paging": "^1.1.1", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "browser": { diff --git a/sdk/synapse/synapse-managed-private-endpoints/README.md b/sdk/synapse/synapse-managed-private-endpoints/README.md index a20661b376ab..ed1907e29f01 100644 --- a/sdk/synapse/synapse-managed-private-endpoints/README.md +++ b/sdk/synapse/synapse-managed-private-endpoints/README.md @@ -59,6 +59,6 @@ In the future, you'll find additional code samples here. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-keys%2FREADME.png) diff --git a/sdk/synapse/synapse-managed-private-endpoints/package.json b/sdk/synapse/synapse-managed-private-endpoints/package.json index b83800fd94da..46a878a73a49 100644 --- a/sdk/synapse/synapse-managed-private-endpoints/package.json +++ b/sdk/synapse/synapse-managed-private-endpoints/package.json @@ -2,14 +2,14 @@ "name": "@azure/synapse-managed-private-endpoints", "author": "Microsoft Corporation", "description": "A generated SDK for ManagedPrivateEndpointsClient.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/synapse/synapse-managed-private-endpoints/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/synapse/synapse-managed-private-endpoints/README.md", "repository": "github:Azure/azure-sdk-for-js", "sdk-type": "client", "version": "1.0.0-beta.3", "dependencies": { "@azure/core-paging": "^1.1.1", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "keywords": [ diff --git a/sdk/synapse/synapse-monitoring/README.md b/sdk/synapse/synapse-monitoring/README.md index 6a3b8cc78e54..4d4fa2785896 100644 --- a/sdk/synapse/synapse-monitoring/README.md +++ b/sdk/synapse/synapse-monitoring/README.md @@ -54,6 +54,6 @@ In the future, you'll find additional code samples here. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-keys%2FREADME.png) diff --git a/sdk/synapse/synapse-monitoring/package.json b/sdk/synapse/synapse-monitoring/package.json index 0a77bb4c4c52..9697352edb89 100644 --- a/sdk/synapse/synapse-monitoring/package.json +++ b/sdk/synapse/synapse-monitoring/package.json @@ -2,13 +2,13 @@ "name": "@azure/synapse-monitoring", "author": "Microsoft Corporation", "description": "A generated SDK for MonitoringClient.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/synapse/synapse-monitoring/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/synapse/synapse-monitoring/README.md", "repository": "github:Azure/azure-sdk-for-js", "sdk-type": "client", "version": "1.0.0-beta.3", "dependencies": { "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "keywords": [ diff --git a/sdk/synapse/synapse-spark/README.md b/sdk/synapse/synapse-spark/README.md index 7a9ff208802d..6c3ccf8fafb9 100644 --- a/sdk/synapse/synapse-spark/README.md +++ b/sdk/synapse/synapse-spark/README.md @@ -56,6 +56,6 @@ In the future, you'll find additional code samples here. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fkeyvault%2Fkeyvault-keys%2FREADME.png) diff --git a/sdk/synapse/synapse-spark/package.json b/sdk/synapse/synapse-spark/package.json index d490a5a2db28..bce069089528 100644 --- a/sdk/synapse/synapse-spark/package.json +++ b/sdk/synapse/synapse-spark/package.json @@ -2,13 +2,13 @@ "name": "@azure/synapse-spark", "author": "Microsoft Corporation", "description": "A generated SDK for SparkClient.", - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/synapse/synapse-spark/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/synapse/synapse-spark/README.md", "repository": "github:Azure/azure-sdk-for-js", "sdk-type": "client", "version": "1.0.0-beta.3", "dependencies": { "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "tslib": "^2.2.0" }, "keywords": [ diff --git a/sdk/tables/ci.yml b/sdk/tables/ci.yml index f2f10d87bed4..28b352d0b5e7 100644 --- a/sdk/tables/ci.yml +++ b/sdk/tables/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/tables/data-tables/CHANGELOG.md b/sdk/tables/data-tables/CHANGELOG.md index 7575d814afa7..21bbf91a67e3 100644 --- a/sdk/tables/data-tables/CHANGELOG.md +++ b/sdk/tables/data-tables/CHANGELOG.md @@ -51,7 +51,7 @@ ### Breaking Changes -- Move generated client to use @azure/core-rest-pipeline. For more information about Core V2 read [here](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core#core-v1-and-core-v2). [#12548](https://github.com/Azure/azure-sdk-for-js/pull/12548). +- Move generated client to use @azure/core-rest-pipeline. For more information about Core V2 read [here](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core#core-v1-and-core-v2). [#12548](https://github.com/Azure/azure-sdk-for-js/pull/12548). - With this change, the response types no longer contain the raw response `_response`. To access the raw response, an `onResponse` callback has to be passed in the request options bag. ```typescript let createResult: FullOperationResponse | undefined; diff --git a/sdk/tables/data-tables/README.md b/sdk/tables/data-tables/README.md index ae746a903ee8..3d6e53634f2f 100644 --- a/sdk/tables/data-tables/README.md +++ b/sdk/tables/data-tables/README.md @@ -16,7 +16,7 @@ Azure Cosmos DB provides a Table API for applications that are written for Azure - Automatic secondary indexing. - The Azure Tables client library can seamlessly target either Azure table storage or Azure Cosmos DB table service endpoints with no code changes. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/) | [Package (NPM)](https://www.npmjs.com/package/@azure/data-tables) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/data-tables) | [Product documentation](https://docs.microsoft.com/azure/storage/tables/table-storage-overview/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/tables/data-tables/samples) +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/) | [Package (NPM)](https://www.npmjs.com/package/@azure/data-tables) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/data-tables) | [Product documentation](https://docs.microsoft.com/azure/storage/tables/table-storage-overview/) | [Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/tables/data-tables/samples) ## Getting started @@ -344,6 +344,6 @@ This project has adopted the [Microsoft Open Source Code of Conduct](https://ope For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/tables/README.png) diff --git a/sdk/tables/data-tables/package.json b/sdk/tables/data-tables/package.json index 418fd8bc66d9..2e360e93587c 100644 --- a/sdk/tables/data-tables/package.json +++ b/sdk/tables/data-tables/package.json @@ -72,7 +72,7 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { diff --git a/sdk/tables/data-tables/samples/v12/javascript/README.md b/sdk/tables/data-tables/samples/v12/javascript/README.md index f8c7aae141be..df2441908a4c 100644 --- a/sdk/tables/data-tables/samples/v12/javascript/README.md +++ b/sdk/tables/data-tables/samples/v12/javascript/README.md @@ -66,18 +66,18 @@ npx cross-env TABLES_URL="" ACCOUNT_NAME="" ACCOUNT_KE Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[workingwithint64]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/workingWithInt64.js -[workingwithbigint]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/workingWithBigInt.js -[transactionwithhelper]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/transactionWithHelper.js -[transactionoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/transactionOperations.js -[queryentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/queryEntities.js -[createanddeleteentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/createAndDeleteEntities.js -[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/authenticationMethods.js -[createanddeletetable]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/createAndDeleteTable.js -[updateandupsertentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/updateAndUpsertEntities.js -[generatetablesas]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/generateTableSAS.js -[querytables]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/javascript/queryTables.js +[workingwithint64]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/workingWithInt64.js +[workingwithbigint]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/workingWithBigInt.js +[transactionwithhelper]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/transactionWithHelper.js +[transactionoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/transactionOperations.js +[queryentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/queryEntities.js +[createanddeleteentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/createAndDeleteEntities.js +[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/authenticationMethods.js +[createanddeletetable]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/createAndDeleteTable.js +[updateandupsertentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/updateAndUpsertEntities.js +[generatetablesas]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/generateTableSAS.js +[querytables]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/javascript/queryTables.js [apiref]: https://docs.microsoft.com/javascript/api/@azure/data-tables [freesub]: https://azure.microsoft.com/free/ [createinstance_azurestorageinstance]: https://docs.microsoft.com/azure/storage/tables/table-storage-quickstart-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/tables/data-tables/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/tables/data-tables/README.md diff --git a/sdk/tables/data-tables/samples/v12/javascript/package.json b/sdk/tables/data-tables/samples/v12/javascript/package.json index 7dc57a371916..af8d98bcd2d5 100644 --- a/sdk/tables/data-tables/samples/v12/javascript/package.json +++ b/sdk/tables/data-tables/samples/v12/javascript/package.json @@ -20,7 +20,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/tables/data-tables", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/tables/data-tables", "dependencies": { "@azure/data-tables": "next", "dotenv": "latest", diff --git a/sdk/tables/data-tables/samples/v12/typescript/README.md b/sdk/tables/data-tables/samples/v12/typescript/README.md index 1aa6181486d1..795d571b20b8 100644 --- a/sdk/tables/data-tables/samples/v12/typescript/README.md +++ b/sdk/tables/data-tables/samples/v12/typescript/README.md @@ -78,19 +78,19 @@ npx cross-env TABLES_URL="" ACCOUNT_NAME="" ACCOUNT_KE Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[workingwithint64]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/workingWithInt64.ts -[workingwithbigint]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/workingWithBigInt.ts -[transactionwithhelper]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/transactionWithHelper.ts -[transactionoperations]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/transactionOperations.ts -[queryentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/queryEntities.ts -[createanddeleteentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/createAndDeleteEntities.ts -[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/authenticationMethods.ts -[createanddeletetable]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/createAndDeleteTable.ts -[updateandupsertentities]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/updateAndUpsertEntities.ts -[generatetablesas]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/generateTableSAS.ts -[querytables]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/data-tables/samples/v12/typescript/src/queryTables.ts +[workingwithint64]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/workingWithInt64.ts +[workingwithbigint]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/workingWithBigInt.ts +[transactionwithhelper]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/transactionWithHelper.ts +[transactionoperations]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/transactionOperations.ts +[queryentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/queryEntities.ts +[createanddeleteentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/createAndDeleteEntities.ts +[authenticationmethods]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/authenticationMethods.ts +[createanddeletetable]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/createAndDeleteTable.ts +[updateandupsertentities]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/updateAndUpsertEntities.ts +[generatetablesas]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/generateTableSAS.ts +[querytables]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/data-tables/samples/v12/typescript/src/queryTables.ts [apiref]: https://docs.microsoft.com/javascript/api/@azure/data-tables [freesub]: https://azure.microsoft.com/free/ [createinstance_azurestorageinstance]: https://docs.microsoft.com/azure/storage/tables/table-storage-quickstart-portal -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/tables/data-tables/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/tables/data-tables/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/tables/data-tables/samples/v12/typescript/package.json b/sdk/tables/data-tables/samples/v12/typescript/package.json index 12a5ff128f01..33022c141778 100644 --- a/sdk/tables/data-tables/samples/v12/typescript/package.json +++ b/sdk/tables/data-tables/samples/v12/typescript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/tables/data-tables", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/tables/data-tables", "dependencies": { "@azure/data-tables": "next", "dotenv": "latest", diff --git a/sdk/tables/test-resources-post.ps1 b/sdk/tables/test-resources-post.ps1 index c4d042cdae42..6108ae34feed 100644 --- a/sdk/tables/test-resources-post.ps1 +++ b/sdk/tables/test-resources-post.ps1 @@ -5,8 +5,8 @@ # There are no documented approaches to specifying CORS rules using ARM, this is a workaround until # support for setting CORS rules is added to ARM for Tables -# It is invoked by the https://github.com/Azure/azure-sdk-for-js/blob/master/eng/New-TestResources.ps1 -# script after the ARM template, defined in https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/tables/test-resources.json, +# It is invoked by the https://github.com/Azure/azure-sdk-for-js/blob/main/eng/New-TestResources.ps1 +# script after the ARM template, defined in https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/tables/test-resources.json, # is finished being deployed. The ARM template is responsible for creating the Storage accounts needed for live tests. param ( @@ -35,4 +35,4 @@ $corsRules = (@{ Set-AzStorageCORSRule -ServiceType 'Table' -CorsRules $corsRules -Context $context -Write-Verbose "CORS rule set for $storageAccountName" \ No newline at end of file +Write-Verbose "CORS rule set for $storageAccountName" diff --git a/sdk/template/ci.yml b/sdk/template/ci.yml index f33c10cf6c04..aab1e47402c0 100644 --- a/sdk/template/ci.yml +++ b/sdk/template/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/template/template/README-EXAMPLE.md b/sdk/template/template/README-EXAMPLE.md index 7bb6a81204d0..1a4874aee846 100644 --- a/sdk/template/template/README-EXAMPLE.md +++ b/sdk/template/template/README-EXAMPLE.md @@ -10,11 +10,11 @@ Use the client library for App Configuration to: - Tag keys with labels - Replay settings from any point in time -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/) | [Package (NPM)](https://www.npmjs.com/package/@azure/app-configuration) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/app-configuration) | [Product documentation](https://docs.microsoft.com/azure/azure-app-configuration/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples) ## Getting started @@ -51,7 +51,7 @@ Authentication via service principal is done by: - Setting appropriate RBAC rules on your AppConfiguration resource. More information on App Configuration roles can be found [here](https://docs.microsoft.com/azure/azure-app-configuration/concept-enable-rbac#azure-built-in-roles-for-azure-app-configuration). -Using [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md#defaultazurecredential) +Using [DefaultAzureCredential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md#defaultazurecredential) ```javascript const azureIdentity = require("@azure/identity"); @@ -64,7 +64,7 @@ const client = new appConfig.AppConfigurationClient( ); ``` -More information about `@azure/identity` can be found [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/README.md) +More information about `@azure/identity` can be found [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/README.md) #### Authenticating with a connection string @@ -155,18 +155,18 @@ run().catch((err) => console.log("ERROR:", err)); The following samples show you the various ways you can interact with App Configuration: -- [`helloworld.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworld.ts) - Get, set, and delete configuration values. -- [`helloworldWithLabels.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworldWithLabels.ts) - Use labels to add additional dimensions to your settings for scenarios like beta vs production. -- [`optimisticConcurrencyViaEtag.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/optimisticConcurrencyViaEtag.ts) - Set values using etags to prevent accidental overwrites. -- [`setReadOnlySample.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/setReadOnlySample.ts) - Marking settings as read-only to prevent modification. -- [`getSettingOnlyIfChanged.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/getSettingOnlyIfChanged.ts) - Get a setting only if it changed from the last time you got it. -- [`listRevisions.ts`](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listRevisions.ts) - List the revisions of a key, allowing you to see previous values and when they were set. +- [`helloworld.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworld.ts) - Get, set, and delete configuration values. +- [`helloworldWithLabels.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/helloworldWithLabels.ts) - Use labels to add additional dimensions to your settings for scenarios like beta vs production. +- [`optimisticConcurrencyViaEtag.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/optimisticConcurrencyViaEtag.ts) - Set values using etags to prevent accidental overwrites. +- [`setReadOnlySample.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/setReadOnlySample.ts) - Marking settings as read-only to prevent modification. +- [`getSettingOnlyIfChanged.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/getSettingOnlyIfChanged.ts) - Get a setting only if it changed from the last time you got it. +- [`listRevisions.ts`](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/typescript/src/listRevisions.ts) - List the revisions of a key, allowing you to see previous values and when they were set. -More in-depth examples can be found in the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/appconfiguration/app-configuration/samples/v1/) folder on GitHub. +More in-depth examples can be found in the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration/samples/v1/) folder on GitHub. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. This module's tests are a mixture of live and unit tests, which require you to have an Azure App Configuration instance. To execute the tests you'll need to run: @@ -177,7 +177,7 @@ This module's tests are a mixture of live and unit tests, which require you to h 4. `cd sdk\appconfiguration\app-configuration` 5. `npm run test`. -View our [tests](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/appconfiguration/app-configuration/test) +View our [tests](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/appconfiguration/app-configuration/test) folder for more details. ## Related projects diff --git a/sdk/template/template/README.md b/sdk/template/template/README.md index 8fe59d7f1f84..1eac9887bbf8 100644 --- a/sdk/template/template/README.md +++ b/sdk/template/template/README.md @@ -36,7 +36,7 @@ To use this client library in the browser, first you need to use a bundler. For NOTE: if your service supports CORS natively please provide instructions for enabling CORS at the service level (similar to the sample below), otherwise replace this section with guidance such as: -Due to Azure template service CORS limitation this library cannot be used to make direct calls to the template service from a browser. Please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/master/samples/cors/ts/README.md) for guidance. +Due to Azure template service CORS limitation this library cannot be used to make direct calls to the template service from a browser. Please refer to [this document](https://github.com/Azure/azure-sdk-for-js/blob/main/samples/cors/ts/README.md) for guidance. --> @@ -84,15 +84,15 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template/samples) directory for detailed examples that demonstrate how to use the client libraries. +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template/samples) directory for detailed examples that demonstrate how to use the client libraries. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects diff --git a/sdk/template/template/package.json b/sdk/template/template/package.json index 68bbc136a6bc..88305b1fb0fd 100644 --- a/sdk/template/template/package.json +++ b/sdk/template/template/package.json @@ -77,13 +77,13 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/template/template/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/template/template/README.md", "sideEffects": false, "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", "dependencies": { "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0" }, diff --git a/sdk/template/template/samples/v1/javascript/README.md b/sdk/template/template/samples/v1/javascript/README.md index 0f60f04b60b6..e74a2090abb4 100644 --- a/sdk/template/template/samples/v1/javascript/README.md +++ b/sdk/template/template/samples/v1/javascript/README.md @@ -46,8 +46,8 @@ npx cross-env APPCONFIG_ENDPOINT="" APPCONFIG_TEST_SETTING_K Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[getconfigurationsetting]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/template/template/samples/v1/javascript/getConfigurationSetting.js +[getconfigurationsetting]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/template/template/samples/v1/javascript/getConfigurationSetting.js [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azureappconfiguration]: https://docs.microsoft.com/azure/azure-app-configuration/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template/README.md diff --git a/sdk/template/template/samples/v1/javascript/package.json b/sdk/template/template/samples/v1/javascript/package.json index af74504a330e..ff3086827330 100644 --- a/sdk/template/template/samples/v1/javascript/package.json +++ b/sdk/template/template/samples/v1/javascript/package.json @@ -21,7 +21,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template", "dependencies": { "@azure/template": "next", "dotenv": "latest", diff --git a/sdk/template/template/samples/v1/typescript/README.md b/sdk/template/template/samples/v1/typescript/README.md index 7e55511d4435..4196762d83fb 100644 --- a/sdk/template/template/samples/v1/typescript/README.md +++ b/sdk/template/template/samples/v1/typescript/README.md @@ -58,9 +58,9 @@ npx cross-env APPCONFIG_ENDPOINT="" APPCONFIG_TEST_SETTING_K Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. -[getconfigurationsetting]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/template/template/samples/v1/typescript/src/getConfigurationSetting.ts +[getconfigurationsetting]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/template/template/samples/v1/typescript/src/getConfigurationSetting.ts [apiref]: https://docs.microsoft.com/javascript/api/ [freesub]: https://azure.microsoft.com/free/ [createinstance_azureappconfiguration]: https://docs.microsoft.com/azure/azure-app-configuration/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/template/template/samples/v1/typescript/package.json b/sdk/template/template/samples/v1/typescript/package.json index 839bf6a27859..3f3bc41854cf 100644 --- a/sdk/template/template/samples/v1/typescript/package.json +++ b/sdk/template/template/samples/v1/typescript/package.json @@ -25,7 +25,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template", "dependencies": { "@azure/template": "next", "dotenv": "latest", diff --git a/sdk/test-utils/ci.yml b/sdk/test-utils/ci.yml index 9ae5dacb0242..54e4c7bb67bb 100644 --- a/sdk/test-utils/ci.yml +++ b/sdk/test-utils/ci.yml @@ -3,7 +3,6 @@ trigger: branches: include: - - master - main - release/* - hotfix/* @@ -14,7 +13,6 @@ trigger: pr: branches: include: - - master - main - feature/* - release/* diff --git a/sdk/test-utils/perfstress/GettingStarted.md b/sdk/test-utils/perfstress/GettingStarted.md index dce2ca77e74e..6f3092783bfe 100644 --- a/sdk/test-utils/perfstress/GettingStarted.md +++ b/sdk/test-utils/perfstress/GettingStarted.md @@ -109,7 +109,7 @@ To add perf tests for the `sdk//` package, follow the step "private": true, ``` - _Note: Track-1 packages will not be managed by `rush`, instead `npm` will be used to manage/run the track-1 tests, you can copy the readme such as the [storage-blob-perf-tests-track-1-readme](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/storage/perf-tests/storage-blob-track-1/README.md) for instructions._ + _Note: Track-1 packages will not be managed by `rush`, instead `npm` will be used to manage/run the track-1 tests, you can copy the readme such as the [storage-blob-perf-tests-track-1-readme](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/perf-tests/storage-blob-track-1/README.md) for instructions._ Make sure to add the "setup" step in package.json. diff --git a/sdk/test-utils/perfstress/README.md b/sdk/test-utils/perfstress/README.md index 4ac08da8ae01..388807085d51 100644 --- a/sdk/test-utils/perfstress/README.md +++ b/sdk/test-utils/perfstress/README.md @@ -18,7 +18,7 @@ Link to the wiki - [Writing-Performance-Tests](https://github.com/Azure/azure-sd ## Examples -Check the [test folder](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/perfstress/test/). +Check the [test folder](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/perfstress/test/). ## Troubleshooting @@ -26,12 +26,12 @@ TODO ## Next steps -Check the [source](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/perfstress/src/) folder and the [test folder](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/perfstress/test/). +Check the [source](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/perfstress/src/) folder and the [test folder](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/perfstress/test/). Also check the PerfStress EPIC, here: https://github.com/Azure/azure-sdk-for-js/issues/8057 ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Ftest-utils%2Fperfstress%2FREADME.png) diff --git a/sdk/test-utils/perfstress/package.json b/sdk/test-utils/perfstress/package.json index 8a226e062288..df285d1bf629 100644 --- a/sdk/test-utils/perfstress/package.json +++ b/sdk/test-utils/perfstress/package.json @@ -56,7 +56,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/test-utils/perfstress/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/test-utils/perfstress/README.md", "sideEffects": false, "private": true, "dependencies": { diff --git a/sdk/test-utils/recorder/GUIDELINES.md b/sdk/test-utils/recorder/GUIDELINES.md index 5e27916e9307..6826238bb19a 100644 --- a/sdk/test-utils/recorder/GUIDELINES.md +++ b/sdk/test-utils/recorder/GUIDELINES.md @@ -23,7 +23,7 @@ Add `@azure/test-utils-recorder` as a devDependency of your sdk. ## Adding a new test/test-suite -- `recorder` package assumes that the tests in the sdk are leveraging [mocha](https://mochajs.org/) and [rollup](https://rollupjs.org/guide/en/) (and [karma](https://karma-runner.github.io/latest/index.html) test runner for browser tests) as suggested by the [template](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template) package in the repo. +- `recorder` package assumes that the tests in the sdk are leveraging [mocha](https://mochajs.org/) and [rollup](https://rollupjs.org/guide/en/) (and [karma](https://karma-runner.github.io/latest/index.html) test runner for browser tests) as suggested by the [template](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template) package in the repo. - `record` from `@azure/test-utils-recorder` package should be imported in the test files. diff --git a/sdk/test-utils/recorder/README.md b/sdk/test-utils/recorder/README.md index 479a07fab6c5..62a6c1531e2b 100644 --- a/sdk/test-utils/recorder/README.md +++ b/sdk/test-utils/recorder/README.md @@ -151,7 +151,7 @@ The common recorder provides the following public methods and properties: This package assumes that the tests in the sdk are leveraging [mocha](https://mochajs.org/) and [rollup](https://rollupjs.org/guide/en/) (and [karma](https://karma-runner.github.io/latest/index.html) test runner - for browser tests) as suggested by the [template](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/template/template) + for browser tests) as suggested by the [template](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/template/template) package in the repo. It also returns an object with a method `stop()`, which will allow you to control when you want the recorder to stop re-routing your http requests. @@ -292,7 +292,7 @@ config.set({ For a more detailed and opinionated approach, please check out the following section of our guidelines: -[Setting up karma.conf.js file in the SDK](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/recorder/GUIDELINES.md#setting-up-karmaconfjs-file-in-the-sdk). +[Setting up karma.conf.js file in the SDK](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/recorder/GUIDELINES.md#setting-up-karmaconfjs-file-in-the-sdk). ## Examples @@ -423,7 +423,7 @@ which will skip the test in node or browser runtimes based on the `{runtime}` argument. If the `{runtime}` is undefined, the test will be skipped in both the node and browser runtimes. This method has no effect if the TEST_MODE environment variable is neither "record" nor "playback". You can read more -about this feature [here](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/recorder/GUIDELINES.md#skipping-a-test). +about this feature [here](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/recorder/GUIDELINES.md#skipping-a-test). ### Securing sensitive data @@ -546,6 +546,6 @@ search link: ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Ftest-utils%2Frecorder%2FREADME.png) diff --git a/sdk/test-utils/recorder/package.json b/sdk/test-utils/recorder/package.json index 19a93ad9bc6a..e61b9f111421 100644 --- a/sdk/test-utils/recorder/package.json +++ b/sdk/test-utils/recorder/package.json @@ -59,12 +59,12 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/test-utils/recorder/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/test-utils/recorder/", "sideEffects": false, "private": true, "dependencies": { "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "fs-extra": "^8.1.0", "nise": "^4.0.3", "nock": "^12.0.3", diff --git a/sdk/test-utils/test-utils/README.md b/sdk/test-utils/test-utils/README.md index 134d90841507..83a4d557f2c2 100644 --- a/sdk/test-utils/test-utils/README.md +++ b/sdk/test-utils/test-utils/README.md @@ -245,10 +245,10 @@ handle it as soon as we find the time. ## Next steps -Check out the [source folder](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/test-utils/src/) and the [test folder](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/test-utils/test-utils/test/). +Check out the [source folder](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/test-utils/src/) and the [test folder](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/test-utils/test-utils/test/). ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Ftest-utils%2Fmulti-version%2FREADME.png) diff --git a/sdk/test-utils/test-utils/package.json b/sdk/test-utils/test-utils/package.json index b616ae5e7c11..56b3aa749cf7 100644 --- a/sdk/test-utils/test-utils/package.json +++ b/sdk/test-utils/test-utils/package.json @@ -52,7 +52,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/test-utils/test-utils/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/test-utils/test-utils/README.md", "sideEffects": false, "private": true, "dependencies": { diff --git a/sdk/textanalytics/ai-text-analytics/README.md b/sdk/textanalytics/ai-text-analytics/README.md index fb4b89bae943..88ae43f0f630 100644 --- a/sdk/textanalytics/ai-text-analytics/README.md +++ b/sdk/textanalytics/ai-text-analytics/README.md @@ -21,11 +21,11 @@ Use the client library to: - Identify and categorize entities in your text as people, places, organizations, date/time, quantities, percentages, currencies, healthcare specific, and more. - Perform multiple of the above tasks at once. -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/textanalytics/ai-text-analytics/) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/textanalytics/ai-text-analytics/) | [Package (NPM)](https://www.npmjs.com/package/@azure/ai-text-analytics) | [API reference documentation](https://docs.microsoft.com/javascript/api/@azure/ai-text-analytics) | [Product documentation](https://docs.microsoft.com/azure/cognitive-services/text-analytics/) | -[Samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/textanalytics/ai-text-analytics/samples) +[Samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/textanalytics/ai-text-analytics/samples) ## Getting started @@ -515,15 +515,15 @@ import { setLogLevel } from "@azure/logger"; setLogLevel("info"); ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps -Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/textanalytics/ai-text-analytics/samples) directory for detailed examples on how to use this library. +Please take a look at the [samples](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/textanalytics/ai-text-analytics/samples) directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects @@ -535,9 +535,9 @@ If you'd like to contribute to this library, please read the [contributing guide [azure_sub]: https://azure.microsoft.com/free/ [cognitive_resource]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account [azure_portal]: https://portal.azure.com -[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity [cognitive_auth]: https://docs.microsoft.com/azure/cognitive-services/authentication [register_aad_app]: https://docs.microsoft.com/azure/cognitive-services/authentication#assign-a-role-to-a-service-principal -[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential [data_limits]: https://docs.microsoft.com/azure/cognitive-services/text-analytics/overview#data-limits -[analyze_sentiment_opinion_mining_sample]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/textanalytics/ai-text-analytics/samples/v5/typescript/src/analyzeSentimentWithOpinionMining.ts +[analyze_sentiment_opinion_mining_sample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/textanalytics/ai-text-analytics/samples/v5/typescript/src/analyzeSentimentWithOpinionMining.ts diff --git a/sdk/textanalytics/ai-text-analytics/package.json b/sdk/textanalytics/ai-text-analytics/package.json index 814f914642a2..eea2ced8bc95 100644 --- a/sdk/textanalytics/ai-text-analytics/package.json +++ b/sdk/textanalytics/ai-text-analytics/package.json @@ -16,7 +16,7 @@ "main": "./dist/index.js", "module": "./dist-esm/src/index.js", "types": "./types/ai-text-analytics.d.ts", - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/textanalytics/ai-text-analytics/README.md", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/textanalytics/ai-text-analytics/README.md", "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" diff --git a/sdk/textanalytics/ai-text-analytics/samples/v5/javascript/README.md b/sdk/textanalytics/ai-text-analytics/samples/v5/javascript/README.md index 243a069e62bb..6c901691d495 100644 --- a/sdk/textanalytics/ai-text-analytics/samples/v5/javascript/README.md +++ b/sdk/textanalytics/ai-text-analytics/samples/v5/javascript/README.md @@ -67,18 +67,18 @@ npx cross-env ENDPOINT="" TEXT_ANALYTICS_API_KEY="=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search/", "sideEffects": false, "dependencies": { "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0", "jsonwebtoken": "^8.5.1", diff --git a/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/README.md b/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/README.md index 67f26dea1b4f..941a80769a59 100644 --- a/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/README.md +++ b/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/README.md @@ -49,6 +49,6 @@ Alternatively, run a single sample with the correct environment variables set (s npx cross-env node server.js ``` -[server]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/server.js +[server]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/server.js [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub-express/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub-express/README.md diff --git a/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/package.json b/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/package.json index 62a3d9f7709e..c7003a47c385 100644 --- a/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/package.json +++ b/sdk/web-pubsub/web-pubsub-express/samples/v1/javascript/package.json @@ -20,7 +20,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub-express", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub-express", "dependencies": { "@azure/web-pubsub-express": "next", "dotenv": "latest" diff --git a/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/README.md b/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/README.md index 7c0460a7859c..6206c4416b8e 100644 --- a/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/README.md +++ b/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/README.md @@ -61,7 +61,7 @@ Alternatively, run a single sample with the correct environment variables set (s npx cross-env node dist/server.js ``` -[server]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/src/server.ts +[server]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/src/server.ts [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub-express/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub-express/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/package.json b/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/package.json index 73d915f70f19..4ebfc6eed7c7 100644 --- a/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/package.json +++ b/sdk/web-pubsub/web-pubsub-express/samples/v1/typescript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub-express", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub-express", "dependencies": { "@azure/web-pubsub-express": "next", "dotenv": "latest" diff --git a/sdk/web-pubsub/web-pubsub/README.md b/sdk/web-pubsub/web-pubsub/README.md index 82a5ab348920..30b329111d07 100644 --- a/sdk/web-pubsub/web-pubsub/README.md +++ b/sdk/web-pubsub/web-pubsub/README.md @@ -25,7 +25,7 @@ Use the library to: - Close connections - Grant/revoke/check permissions for an existing connection -[Source code](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub) | +[Source code](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub) | [Package (NPM)](https://www.npmjs.com/package/@azure/web-pubsub) | [API reference documentation](https://aka.ms/awps/sdk/js) | [Product documentation](https://aka.ms/awps/doc) | @@ -130,7 +130,7 @@ You can set the following environment variable to get the debug logs when using export AZURE_LOG_LEVEL=verbose ``` -For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). ## Next steps @@ -140,11 +140,11 @@ directory for detailed examples on how to use this library. ## Contributing -If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. ## Related projects - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) [azure_sub]: https://azure.microsoft.com/free/ -[samples_ref]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub/samples +[samples_ref]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub/samples diff --git a/sdk/web-pubsub/web-pubsub/package.json b/sdk/web-pubsub/web-pubsub/package.json index 338da45c1d1f..55e9fd92d07d 100644 --- a/sdk/web-pubsub/web-pubsub/package.json +++ b/sdk/web-pubsub/web-pubsub/package.json @@ -57,12 +57,12 @@ "engines": { "node": ">=8.0.0" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/search/search/", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/search/search/", "sideEffects": false, "dependencies": { "@azure/core-auth": "^1.3.0", "@azure/core-http": "^1.2.0", - "@azure/core-tracing": "1.0.0-preview.11", + "@azure/core-tracing": "1.0.0-preview.12", "@azure/logger": "^1.0.0", "tslib": "^2.2.0", "jsonwebtoken": "^8.5.1" diff --git a/sdk/web-pubsub/web-pubsub/samples/v1/javascript/README.md b/sdk/web-pubsub/web-pubsub/samples/v1/javascript/README.md index 28e7dd82d801..538651801e3a 100644 --- a/sdk/web-pubsub/web-pubsub/samples/v1/javascript/README.md +++ b/sdk/web-pubsub/web-pubsub/samples/v1/javascript/README.md @@ -51,8 +51,8 @@ Alternatively, run a single sample with the correct environment variables set (s npx cross-env WPS_CONNECTION_STRING="" node broadcasting.js ``` -[broadcasting]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub/samples/v1/javascript/broadcasting.js -[directmessage]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub/samples/v1/javascript/directMessage.js -[managinggroups]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub/samples/v1/javascript/managingGroups.js +[broadcasting]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub/samples/v1/javascript/broadcasting.js +[directmessage]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub/samples/v1/javascript/directMessage.js +[managinggroups]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub/samples/v1/javascript/managingGroups.js [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub/README.md diff --git a/sdk/web-pubsub/web-pubsub/samples/v1/javascript/package.json b/sdk/web-pubsub/web-pubsub/samples/v1/javascript/package.json index c5b83b530066..27c8fa3ed048 100644 --- a/sdk/web-pubsub/web-pubsub/samples/v1/javascript/package.json +++ b/sdk/web-pubsub/web-pubsub/samples/v1/javascript/package.json @@ -20,7 +20,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub", "dependencies": { "@azure/web-pubsub": "next", "dotenv": "latest" diff --git a/sdk/web-pubsub/web-pubsub/samples/v1/typescript/README.md b/sdk/web-pubsub/web-pubsub/samples/v1/typescript/README.md index 15a6a7ec3315..316aa3b738bf 100644 --- a/sdk/web-pubsub/web-pubsub/samples/v1/typescript/README.md +++ b/sdk/web-pubsub/web-pubsub/samples/v1/typescript/README.md @@ -63,9 +63,9 @@ Alternatively, run a single sample with the correct environment variables set (s npx cross-env WPS_CONNECTION_STRING="" node dist/broadcasting.js ``` -[broadcasting]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub/samples/v1/typescript/src/broadcasting.ts -[directmessage]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub/samples/v1/typescript/src/directMessage.ts -[managinggroups]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/web-pubsub/web-pubsub/samples/v1/typescript/src/managingGroups.ts +[broadcasting]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub/samples/v1/typescript/src/broadcasting.ts +[directmessage]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub/samples/v1/typescript/src/directMessage.ts +[managinggroups]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/web-pubsub/web-pubsub/samples/v1/typescript/src/managingGroups.ts [freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub/README.md +[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub/README.md [typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/web-pubsub/web-pubsub/samples/v1/typescript/package.json b/sdk/web-pubsub/web-pubsub/samples/v1/typescript/package.json index f4767947c4e1..27324ebbf8ff 100644 --- a/sdk/web-pubsub/web-pubsub/samples/v1/typescript/package.json +++ b/sdk/web-pubsub/web-pubsub/samples/v1/typescript/package.json @@ -24,7 +24,7 @@ "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/web-pubsub/web-pubsub", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/web-pubsub/web-pubsub", "dependencies": { "@azure/web-pubsub": "next", "dotenv": "latest"