-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding changes to extend secret stores scope to global #7155
Changes from 17 commits
012c5c3
f7b7e81
68589d6
aba834d
4b8ed5e
240d9f9
b0023e5
3813e86
c784e27
990ca8f
8fc6f02
349b126
01a3435
a3f43b2
720df1c
28b9bdb
2125896
c331be1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
{ | ||
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Applications.Core/secretStores/secret0", | ||
"name": "secret0", | ||
"type": "applications.core/secretstores", | ||
"location": "global", | ||
"systemData": { | ||
"createdAt": "2022-03-22T18:54:52.6857175Z", | ||
"createdBy": "[email protected]", | ||
"createdByType": "User", | ||
"lastModifiedAt": "2022-03-22T18:57:52.6857175Z", | ||
"lastModifiedBy": "[email protected]", | ||
"lastModifiedByType": "User" | ||
}, | ||
"provisioningState": "Succeeded", | ||
"properties": { | ||
"resource": "test-namespace/secret0", | ||
kachawla marked this conversation as resolved.
Show resolved
Hide resolved
|
||
"type": "generic", | ||
"data": { | ||
"tls.crt": { | ||
"encoding": "raw", | ||
"value": "tls.crt" | ||
}, | ||
"tls.key": { | ||
"encoding": "base64", | ||
"value": "dGxzLmNlcnQK" | ||
}, | ||
"servicePrincipalPassword": { | ||
"value": "10000000-1000-1000-0000-000000000000" | ||
} | ||
} | ||
}, | ||
"tenantId": "00000000-0000-0000-0000-000000000000", | ||
"subscriptionId": "00000000-0000-0000-0000-000000000000", | ||
"resourceGroup": "testGroup", | ||
"createdApiVersion": "2023-10-01-preview", | ||
"updatedApiVersion": "2023-10-01-preview" | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
{ | ||
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Applications.Core/secretStores/secret0", | ||
"name": "secret0", | ||
"type": "applications.core/secretstores", | ||
"location": "global", | ||
"systemData": { | ||
"createdAt": "2022-03-22T18:54:52.6857175Z", | ||
"createdBy": "[email protected]", | ||
"createdByType": "User", | ||
"lastModifiedAt": "2022-03-22T18:57:52.6857175Z", | ||
"lastModifiedBy": "[email protected]", | ||
"lastModifiedByType": "User" | ||
}, | ||
"provisioningState": "Succeeded", | ||
"properties": { | ||
"type": "generic", | ||
"data": { | ||
"tls.crt": { | ||
"encoding": "raw", | ||
"value": "tls.crt" | ||
}, | ||
"tls.key": { | ||
"encoding": "base64", | ||
"value": "dGxzLmNlcnQK" | ||
}, | ||
"servicePrincipalPassword": { | ||
"value": "10000000-1000-1000-0000-000000000000" | ||
} | ||
} | ||
}, | ||
"tenantId": "00000000-0000-0000-0000-000000000000", | ||
"subscriptionId": "00000000-0000-0000-0000-000000000000", | ||
"resourceGroup": "testGroup", | ||
"createdApiVersion": "2023-10-01-preview", | ||
"updatedApiVersion": "2023-10-01-preview" | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
{ | ||
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testGroup/providers/Applications.Core/secretStores/secret0", | ||
"name": "secret0", | ||
"type": "applications.core/secretstores", | ||
"location": "global", | ||
"systemData": { | ||
"createdAt": "2022-03-22T18:54:52.6857175Z", | ||
"createdBy": "[email protected]", | ||
"createdByType": "User", | ||
"lastModifiedAt": "2022-03-22T18:57:52.6857175Z", | ||
"lastModifiedBy": "[email protected]", | ||
"lastModifiedByType": "User" | ||
}, | ||
"provisioningState": "Succeeded", | ||
"properties": { | ||
"resource": "secret0", | ||
"type": "generic", | ||
"data": { | ||
"tls.crt": { | ||
"encoding": "raw", | ||
"value": "tls.crt" | ||
}, | ||
"tls.key": { | ||
"encoding": "base64", | ||
"value": "dGxzLmNlcnQK" | ||
}, | ||
"servicePrincipalPassword": { | ||
"value": "10000000-1000-1000-0000-000000000000" | ||
} | ||
} | ||
}, | ||
"tenantId": "00000000-0000-0000-0000-000000000000", | ||
"subscriptionId": "00000000-0000-0000-0000-000000000000", | ||
"resourceGroup": "testGroup", | ||
"createdApiVersion": "2023-10-01-preview", | ||
"updatedApiVersion": "2023-10-01-preview" | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5059,7 +5059,6 @@ | |
} | ||
}, | ||
"required": [ | ||
"application", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The secret store no longer requires to be a part of an application. Makes sense. |
||
"data" | ||
] | ||
}, | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -47,7 +47,7 @@ model SecretStoreResource is TrackedResourceRequired<SecretStoreProperties, "sec | |
|
||
@doc("The properties of SecretStore") | ||
model SecretStoreProperties { | ||
...ApplicationScopedResource; | ||
...GlobalScopedResource; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you please add SecretStores_CreateOrUpdate_GlobalScope.json example like below ? Overall LGTM :) |
||
|
||
#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-duplicate-property" | ||
@doc("The type of secret store data") | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -62,6 +62,23 @@ model ApplicationScopedResource { | |
status?: ResourceStatus; | ||
} | ||
|
||
@doc("Base properties of a Global-scoped resource") | ||
model GlobalScopedResource { | ||
@doc("Fully qualified resource ID for the environment that the application is linked to") | ||
environment?: string; | ||
|
||
@doc("Fully qualified resource ID for the application") | ||
application?: string; | ||
Comment on lines
+67
to
+71
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can a globally scoped resource still have these set? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. My question is should they be optional or not exist at all? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Here we are just making application as optional so user can skip providing env/app to make it global scope. |
||
|
||
@doc("The status of the asynchronous operation.") | ||
@visibility("read") | ||
provisioningState?: ProvisioningState; | ||
|
||
@doc("Status of a resource.") | ||
@visibility("read") | ||
status?: ResourceStatus; | ||
} | ||
|
||
@doc("IdentitySettings is the external identity setting.") | ||
model IdentitySettings { | ||
@doc("kind of identity setting") | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this make a secret resource global scoped?