-
Notifications
You must be signed in to change notification settings - Fork 5.8k
Expand file tree
/
Copy pathInstanceFailoverGroup.tsp
More file actions
126 lines (115 loc) · 4.09 KB
/
Copy pathInstanceFailoverGroup.tsp
File metadata and controls
126 lines (115 loc) · 4.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
import "@azure-tools/typespec-azure-core";
import "@azure-tools/typespec-azure-resource-manager";
import "@typespec/openapi";
import "@typespec/rest";
import "./models.tsp";
using TypeSpec.Rest;
using Azure.ResourceManager;
using TypeSpec.Http;
using TypeSpec.OpenAPI;
namespace Microsoft.Sql;
/**
* An instance failover group.
*/
#suppress "@azure-tools/typespec-azure-core/no-legacy-usage" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details"
@parentResource(ResourceGroupLocationResource)
@Azure.ResourceManager.Legacy.feature(Features.InstanceFailoverGroups)
model InstanceFailoverGroup
is Azure.ResourceManager.ProxyResource<InstanceFailoverGroupProperties> {
...ResourceNameParameter<
Resource = InstanceFailoverGroup,
KeyName = "failoverGroupName",
SegmentName = "instanceFailoverGroups",
NamePattern = ""
>;
}
alias InstanceFailoverGroupsOps = Azure.ResourceManager.Legacy.LegacyOperations<
{
...ApiVersionParameter;
...SubscriptionIdParameter;
...ResourceGroupParameter;
...Azure.ResourceManager.Legacy.Provider;
/** The name of the region where the resource is located. */
@path
@segment("locations")
@key
@Azure.ClientGenerator.Core.alternateType(Azure.Core.azureLocation) // The type of this parameter is Azure location.
locationName: string;
},
{
/** The name of the failover group. */
@path
@segment("instanceFailoverGroups")
@key
failoverGroupName: string;
}
>;
#suppress "@azure-tools/typespec-azure-core/no-legacy-usage" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details"
@armResourceOperations
@Azure.ResourceManager.Legacy.feature(Features.InstanceFailoverGroups)
interface InstanceFailoverGroups {
/**
* Gets a failover group.
*/
get is InstanceFailoverGroupsOps.Read<InstanceFailoverGroup>;
/**
* Creates or updates a failover group.
*/
#suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details"
createOrUpdate is InstanceFailoverGroupsOps.CreateOrUpdateAsync<
InstanceFailoverGroup,
Response =
| ArmResourceUpdatedResponse<InstanceFailoverGroup>
| ArmResourceCreatedResponse<
InstanceFailoverGroup,
ArmLroLocationHeader<FinalResult = InstanceFailoverGroup> &
Azure.Core.Foundations.RetryAfterHeader
>
| ArmAcceptedLroResponse
>;
/**
* Deletes a failover group.
*/
#suppress "@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details"
delete is InstanceFailoverGroupsOps.DeleteWithoutOkAsync<
InstanceFailoverGroup,
Response =
| ArmDeletedResponse
| ArmDeleteAcceptedLroResponse
| ArmDeletedNoContentResponse
>;
/**
* Lists the failover groups in a location.
*/
listByLocation is InstanceFailoverGroupsOps.List<InstanceFailoverGroup>;
/**
* Fails over from the current primary managed instance to this managed instance.
*/
failover is InstanceFailoverGroupsOps.ActionAsync<
InstanceFailoverGroup,
void,
void,
Response =
| ArmResponse<InstanceFailoverGroup>
| ArmAcceptedLroResponse<LroHeaders = ArmLroLocationHeader<FinalResult = InstanceFailoverGroup> &
Azure.Core.Foundations.RetryAfterHeader>
>;
/**
* Fails over from the current primary managed instance to this managed instance. This operation might result in data loss.
*/
forceFailoverAllowDataLoss is InstanceFailoverGroupsOps.ActionAsync<
InstanceFailoverGroup,
void,
void,
Response =
| ArmResponse<InstanceFailoverGroup>
| ArmAcceptedLroResponse<LroHeaders = ArmLroLocationHeader<FinalResult = InstanceFailoverGroup> &
Azure.Core.Foundations.RetryAfterHeader>
>;
}
@@doc(InstanceFailoverGroup.name, "The name of the failover group.");
@@doc(InstanceFailoverGroup.properties, "Resource properties.");
@@doc(
InstanceFailoverGroups.createOrUpdate::parameters.resource,
"The failover group parameters."
);