Skip to content

Commit 9033cab

Browse files
authored
Merge pull request #251178 from MicrosoftDocs/repo_sync_working_branch
Confirm merge from repo_sync_working_branch to main to sync with https://github.com/MicrosoftDocs/azure-docs (branch main)
2 parents 63452e3 + 584607a commit 9033cab

File tree

7 files changed

+113
-60
lines changed

7 files changed

+113
-60
lines changed

articles/active-directory/hybrid/connect/how-to-connect-adconnectivitytools.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ The ADConnectivity tool is a PowerShell module that is used in one of the follow
2121
- During installation, when a network connectivity problem prevents the successful validation of the Active Directory credentials.
2222
- Post installation by a user who calls the functions from a PowerShell session.
2323

24-
The tool is located in: **C:\Program Files\Microsoft Azure Active Directory Connect\Tools\ ADConnectivityTool.psm1**
24+
The tool is located in: **C:\Program Files\Microsoft Azure Active Directory Connect\Tools\ADConnectivityTool.psm1**.
2525

2626
## ADConnectivityTool during installation
2727

articles/active-directory/hybrid/connect/how-to-connect-modify-group-writeback.md

Lines changed: 51 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -32,50 +32,54 @@ If the original version of group writeback is already enabled and in use in your
3232

3333
To configure directory settings to disable automatic writeback of newly created Microsoft 365 groups, use one of these methods:
3434

35-
- PowerShell: Use the [Microsoft Graph PowerShell SDK](/powershell/microsoftgraph/installation?view=graph-powershell-1.0&preserve-view=true). For example:
35+
- PowerShell: Use the [Microsoft Graph Beta PowerShell SDK](/powershell/microsoftgraph/installation?view=graph-powershell-1.0&preserve-view=true). For example:
3636

3737
```PowerShell
38-
# Import Module
39-
Import-Module Microsoft.Graph.Identity.DirectoryManagement
40-
41-
#Connect to MgGraph with necessary scope and select the Beta API Version
42-
Connect-MgGraph -Scopes Directory.ReadWrite.All
43-
Select-MgProfile -Name beta
44-
45-
# Verify if "Group.Unified" directory settings exist
46-
$DirectorySetting = Get-MgDirectorySetting | Where-Object {$_.DisplayName -eq "Group.Unified"}
47-
48-
# If "Group.Unified" directory settings exist, update the value for new unified group writeback default
49-
if ($DirectorySetting) {
50-
$DirectorySetting.Values | ForEach-Object {
51-
if ($_.Name -eq "NewUnifiedGroupWritebackDefault") {
52-
$_.Value = "false"
53-
}
54-
}
55-
Update-MgDirectorySetting -DirectorySettingId $DirectorySetting.Id -BodyParameter $DirectorySetting
56-
}
57-
else
58-
{
59-
# In case the directory setting doesn't exist, create a new "Group.Unified" directory setting
60-
# Import "Group.Unified" template values to a hashtable
61-
$Template = Get-MgDirectorySettingTemplate | Where-Object {$_.DisplayName -eq "Group.Unified"}
62-
$TemplateValues = @{}
63-
$Template.Values | ForEach-Object {
64-
$TemplateValues.Add($_.Name, $_.DefaultValue)
38+
# Import Module
39+
Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement
40+
41+
#Connect to MgGraph with necessary scope
42+
Connect-MgGraph -Scopes Directory.ReadWrite.All
43+
44+
45+
# Verify if "Group.Unified" directory settings exist
46+
$DirectorySetting = Get-MgBetaDirectorySetting| Where-Object {$_.DisplayName -eq "Group.Unified"}
47+
48+
# If "Group.Unified" directory settings exist, update the value for new unified group writeback default
49+
if ($DirectorySetting)
50+
{
51+
$params = @{
52+
Values = @(
53+
@{
54+
Name = "NewUnifiedGroupWritebackDefault"
55+
Value = $false
56+
}
57+
)
58+
}
59+
Update-MgBetaDirectorySetting -DirectorySettingId $DirectorySetting.Id -BodyParameter $params
6560
}
66-
67-
# Update the value for new unified group writeback default
68-
$TemplateValues["NewUnifiedGroupWritebackDefault"] = "false"
61+
else
62+
{
63+
# In case the directory setting doesn't exist, create a new "Group.Unified" directory setting
64+
# Import "Group.Unified" template values to a hashtable
65+
$Template = Get-MgBetaDirectorySettingTemplate | Where-Object {$_.DisplayName -eq "Group.Unified"}
66+
$TemplateValues = @{}
67+
$Template.Values | ForEach-Object {
68+
$TemplateValues.Add($_.Name, $_.DefaultValue)
69+
}
6970
70-
# Create a directory setting using the Template values hashtable including the updated value
71-
$params = @{}
72-
$params.Add("TemplateId", $Template.Id)
73-
$params.Add("Values", @())
74-
$TemplateValues.Keys | ForEach-Object {
75-
$params.Values += @(@{Name = $_; Value = $TemplateValues[$_]})
71+
# Update the value for new unified group writeback default
72+
$TemplateValues["NewUnifiedGroupWritebackDefault"] = $false
73+
74+
# Create a directory setting using the Template values hashtable including the updated value
75+
$params = @{}
76+
$params.Add("TemplateId", $Template.Id)
77+
$params.Add("Values", @())
78+
$TemplateValues.Keys | ForEach-Object {
79+
$params.Values += @(@{Name = $_; Value = $TemplateValues[$_]})
80+
}
81+
New-MgBetaDirectorySetting -BodyParameter $params
7682
}
77-
New-MgDirectorySetting -BodyParameter $params
78-
}
7983
```
8084

8185
> [!NOTE]
@@ -88,23 +92,22 @@ To configure directory settings to disable automatic writeback of newly created
8892
To disable writeback of all Microsoft 365 groups that were created before these modifications, use one of the following methods:
8993

9094
- Portal: Use the [Microsoft Entra admin portal](../../enterprise-users/groups-write-back-portal.md).
91-
- PowerShell: Use the [Microsoft Graph PowerShell SDK](/powershell/microsoftgraph/installation?view=graph-powershell-1.0&preserve-view=true). For example:
95+
- PowerShell: Use the [Microsoft Graph Beta PowerShell SDK](/powershell/microsoftgraph/installation?view=graph-powershell-1.0&preserve-view=true). For example:
9296

9397
```PowerShell
9498
#Import-module
95-
Import-module Microsoft.Graph
96-
97-
#Connect to MgGraph with necessary scope and select the Beta API Version
99+
Import-Module Microsoft.Graph.Beta
100+
101+
#Connect to MgGraph with necessary scope
98102
Connect-MgGraph -Scopes Group.ReadWrite.All
99-
Select-MgProfile -Name beta
100-
103+
101104
#List all Microsoft 365 Groups
102-
$Groups = Get-MgGroup -All | Where-Object {$_.GroupTypes -like "*unified*"}
103-
105+
$Groups = Get-MgBetaGroup -All | Where-Object {$_.GroupTypes -like "*unified*"}
106+
104107
#Disable Microsoft 365 Groups
105108
Foreach ($group in $Groups)
106109
{
107-
Update-MgGroup -GroupId $group.id -WritebackConfiguration @{isEnabled=$false}
110+
Update-MgBetaGroup -GroupId $group.id -WritebackConfiguration @{isEnabled=$false}
108111
}
109112
```
110113

articles/aks/intro-kubernetes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ To secure your AKS clusters, see [Integrate Azure AD with AKS][aks-aad].
5353

5454
Container Insights has native integration with AKS, like collecting critical metrics and logs, alerting on identified issues, and providing visualization with workbooks or integration with Grafana. It can also collect Prometheus metrics and send them to [Azure Monitor managed service for Prometheus][azure-monitor-managed-prometheus], and all together deliver end-to-end observability.
5555

56-
Logs from the AKS control plane components are collected separately in Azure as resource logs and sent to different locations, such as [Azure Monitor Logs][azure-monitor-logs]. For more information, see [Collect control plane logs][monitor-aks.md#collect-control-plane-logs].
56+
Logs from the AKS control plane components are collected separately in Azure as resource logs and sent to different locations, such as [Azure Monitor Logs][azure-monitor-logs]. For more information, see [Resource logs](monitor-aks-reference.md#resource-logs).
5757

5858
## Clusters and nodes
5959

articles/automation/whats-new.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -123,13 +123,13 @@ Users can now restore an Automation account deleted within 30 days. Read [here](
123123

124124
**Type:** New feature
125125

126-
New scripts are added to the Azure Automation [GitHub repository](https://github.com/azureautomation) to address one of Azure Automation's key scenarios of VM management based on Azure Monitor alert. For more information, see [Trigger runbook from Azure alert](./automation-create-alert-triggered-runbook.md#common-azure-vm-management-operations).
126+
New scripts are added to the Azure Automation [GitHub organisation](https://github.com/azureautomation) to address one of Azure Automation's key scenarios of VM management based on Azure Monitor alert. For more information, see [Trigger runbook from Azure alert](./automation-create-alert-triggered-runbook.md#common-azure-vm-management-operations).
127127

128-
- Stop-Azure-VM-On-Alert
129-
- Restart-Azure-VM-On-Alert
130-
- Delete-Azure-VM-On-Alert
131-
- ScaleDown-Azure-VM-On-Alert
132-
- ScaleUp-Azure-VM-On-Alert
128+
- [Stop-Azure-VM-On-Alert](https://github.com/azureautomation/Stop-Azure-VM-On-Alert)
129+
- [Restart-Azure-VM-On-Alert](https://github.com/azureautomation/Restart-Azure-VM-On-Alert)
130+
- [Delete-Azure-VM-On-Alert](https://github.com/azureautomation/Delete-Azure-VM-On-Alert)
131+
- [ScaleDown-Azure-VM-On-Alert](https://github.com/azureautomation/ScaleDown-Azure-VM-On-Alert)
132+
- [ScaleUp-Azure-VM-On-Alert](https://github.com/azureautomation/ScaleUp-Azure-VM-On-Alert)
133133

134134
## November 2021
135135

@@ -241,4 +241,4 @@ Azure Automation now supports [system-assigned managed identities](./automation-
241241

242242
## Next steps
243243

244-
If you'd like to contribute to Azure Automation documentation, see our [contributor guide](/contribute/).
244+
If you'd like to contribute to Azure Automation documentation, see our [contributor guide](/contribute/).

articles/communication-services/concepts/call-automation/call-automation.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,11 @@ Whether your application has answered a one-to-one or group call, or placed an o
111111
**Cancel media operations**
112112
Based on business logic your application may need to cancel ongoing and queued media operations. Depending on the media operation canceled and the ones in queue, you'll receive a webhook event indicating that the action has been canceled.
113113

114+
### Query scenarios
115+
116+
**List participants**
117+
Returns a list of all the participants in a call. Recording and transcription bots are omitted from this list.
118+
114119
## Events
115120

116121
The following table outlines the current events emitted by Azure Communication Services. The following two tables describe the events emitted by Event Grid and from the Call Automation as webhook events.

articles/service-fabric/service-fabric-work-with-reliable-collections.md

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -213,10 +213,53 @@ Internally, Reliable Collections serialize your objects using .NET's DataContrac
213213
Furthermore, service code is upgraded one upgrade domain at a time. So, during an upgrade, you have two different versions of your service code running simultaneously. You must avoid having the new version of your service code use the new schema as old versions of your service code might not be able to handle the new schema. When possible, you should design each version of your service to be forward compatible by one version. Specifically, this means that V1 of your service code should be able to ignore any schema elements it does not explicitly handle. However, it must be able to save any data it doesn't explicitly know about and write it back out when updating a dictionary key or value.
214214

215215
> [!WARNING]
216-
> While you can modify the schema of a key, you must ensure that your key's hash code and equals algorithms are stable. If you change how either of these algorithms operate, you will not be able to look up the key within the reliable dictionary ever again.
216+
> While you can modify the schema of a key, you must ensure that your key's equality and comparison algorithms are stable.
217+
> Behavior of reliable collections after a change in either of these algorithms is undefined and may lead to data corruption, loss and
218+
> service crashes.
217219
> .NET Strings can be used as a key but use the string itself as the key--do not use the result of String.GetHashCode as the key.
218220
219-
Alternatively, you can perform what is typically referred to as a two upgrade. With a two-phase upgrade, you upgrade your service from V1 to V2: V2 contains the code that knows how to deal with the new schema change but this code doesn't execute. When the V2 code reads V1 data, it operates on it and writes V1 data. Then, after the upgrade is complete across all upgrade domains, you can somehow signal to the running V2 instances that the upgrade is complete. (One way to signal this is to roll out a configuration upgrade; this is what makes this a two-phase upgrade.) Now, the V2 instances can read V1 data, convert it to V2 data, operate on it, and write it out as V2 data. When other instances read V2 data, they do not need to convert it, they just operate on it, and write out V2 data.
221+
Alternatively, you can perform a multi-phase upgrade.
222+
1. Upgrade service to a new version that
223+
- has both the original V1, and the new V2 version of the data contracts included in the service code package;
224+
- registers custom V2 [state serializers](/azure/service-fabric/service-fabric-reliable-services-reliable-collections-serialization#custom-serialization), if needed;
225+
- performs all operations on the original, V1 collection using the V1 data contracts.
226+
2. Upgrade service to a new version that
227+
- [creates a new, V2 collection](/dotnet/api/microsoft.servicefabric.data.ireliablestatemanager.getoraddasync);
228+
- performs each add, update and delete operation on first V1 and then V2 collections in a single transaction;
229+
- performs read operations on the V1 collection only.
230+
3. Copy all data from the V1 collection to the V2 collection.
231+
- This can be done in a background process by the service version deployed in step 2.
232+
- [Retreieve all keys](/dotnet/api/microsoft.servicefabric.data.collections.ireliabledictionary2-2.createkeyenumerableasync)
233+
from the V1 collection. Enumeration is performed with the
234+
[IsolationLevel.Snapshot](/dotnet/api/microsoft.servicefabric.data.beta.isolationlevel)
235+
by default to avoid locking the collection for the duration of the operation.
236+
- For each key, use a separate transaction to
237+
- [TryGetValueAsync](/dotnet/api/microsoft.servicefabric.data.collections.ireliabledictionary-2.trygetvalueasync)
238+
from the V1 collection.
239+
- If the value has already been removed from the V1 collection since the copy process started,
240+
the key should be skipped and not resurected in the V2 collection.
241+
- [TryAddAsync](/dotnet/api/microsoft.servicefabric.data.collections.ireliabledictionary.tryaddasync)
242+
the value to the V2 collection.
243+
- If the value has already been added to the V2 collection since the copy process started,
244+
the key should be skipped.
245+
- The transaction should be committed only if the `TryAddAsync` returns `true`.
246+
- Value access APIs use the [IsolationLevel.ReadRepeatable](/dotnet/api/microsoft.servicefabric.data.beta.isolationlevel)
247+
by default and rely on locking to guarantee that the values aren't modified by another caller until the transaction is committed or aborted.
248+
4. Upgrade service to a new version that
249+
- performs read operations on the V2 collection only;
250+
- still performs each add, update and delete operation on first V1 and then V2 collections to maintain the option of rolling back to V1.
251+
5. Comprehensively test the service and confirm it is working as expected.
252+
- If you missed any value access operation that wasn't updated to work on both V1 and V2 collection, you may notice missing data.
253+
- If any data is missing roll back to Step 1, remove the V2 collection and repeat the process.
254+
6. Upgrade service to a new version that
255+
- performs all operations on the V2 collection only;
256+
- going back to V1 is no longer possible with a service rollback and would require rolling forward with reversed steps 2-4.
257+
7. Upgrade service a new version that
258+
- [removes the V1 collection](/dotnet/api/microsoft.servicefabric.data.ireliablestatemanager.removeasync).
259+
8. Wait for log truncation.
260+
- By default, this happens every 50MB of writes (adds, updates, and removes) to reliable collections.
261+
9. Upgrade service to a new version that
262+
- no longer has the V1 data contracts included in the service code package.
220263

221264
## Next steps
222265
To learn about creating forward compatible data contracts, see [Forward-Compatible Data Contracts](/dotnet/framework/wcf/feature-details/forward-compatible-data-contracts)
@@ -226,3 +269,5 @@ To learn best practices on versioning data contracts, see [Data Contract Version
226269
To learn how to implement version tolerant data contracts, see [Version-Tolerant Serialization Callbacks](/dotnet/framework/wcf/feature-details/version-tolerant-serialization-callbacks)
227270

228271
To learn how to provide a data structure that can interoperate across multiple versions, see [IExtensibleDataObject](/dotnet/api/system.runtime.serialization.iextensibledataobject)
272+
273+
To learn how to configure reliable collections, see [Replicator Configuration](/azure/service-fabric/service-fabric-reliable-services-configuration#replicator-configuration)

includes/app-provisioning-sql.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ If you are connecting to a new database or one that is empty and has no users, t
373373

374374
|Property|Value|
375375
|-----|-----|
376-
|Tenant URL| `https://localhost:8585/ecma2host_SQL/scim`|
376+
|Tenant URL| `https://localhost:8585/ecma2host_{connectorName}/scim`|
377377

378378
5. Enter the **Secret Token** value that you defined when you created the connector.
379379
>[!NOTE]

0 commit comments

Comments
 (0)