Skip to content

Commit 1b89a45

Browse files
add datadog terms commands (Azure#2875)
1 parent e3d8e71 commit 1b89a45

File tree

14 files changed

+513
-3
lines changed

14 files changed

+513
-3
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
22
"azext.isExperimental": true,
3-
"azext.minCliCoreVersion": "2.11.0"
3+
"azext.minCliCoreVersion": "2.17.0"
44
}

src/datadog/azext_datadog/generated/_client_factory.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,7 @@ def cf_tag_rule(cli_ctx, *_):
4646

4747
def cf_single_sign_on_configuration(cli_ctx, *_):
4848
return cf_datadog_cl(cli_ctx).single_sign_on_configuration
49+
50+
51+
def cf_marketplace_agreement(cli_ctx, *_):
52+
return cf_datadog_cl(cli_ctx).marketplace_agreements

src/datadog/azext_datadog/generated/_help.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,20 @@
1212
from knack.help_files import helps
1313

1414

15+
helps['datadog terms'] = """
16+
type: group
17+
short-summary: Manage marketplace agreements with datadog
18+
"""
19+
20+
helps['datadog terms list'] = """
21+
type: command
22+
short-summary: "List datadog marketplace agreements"
23+
examples:
24+
- name: List marketplace agreements
25+
text: |-
26+
az datadog terms list
27+
"""
28+
1529
helps['datadog api-key'] = """
1630
type: group
1731
short-summary: datadog api-key

src/datadog/azext_datadog/generated/commands.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,15 @@
1515

1616
def load_command_table(self, _):
1717

18+
from azext_datadog.generated._client_factory import cf_marketplace_agreement
19+
datadog_marketplace_agreement = CliCommandType(
20+
operations_tmpl='azext_datadog.vendored_sdks.datadog.operations._marketplace_agreements_operations#MarketplaceA'
21+
'greementsOperations.{}',
22+
client_factory=cf_marketplace_agreement)
23+
with self.command_group('datadog terms', datadog_marketplace_agreement,
24+
client_factory=cf_marketplace_agreement, is_experimental=True) as g:
25+
g.custom_command('list', 'datadog_terms_list')
26+
1827
from azext_datadog.generated._client_factory import cf_api_key
1928
datadog_api_key = CliCommandType(
2029
operations_tmpl='azext_datadog.vendored_sdks.datadog.operations._api_key_operations#ApiKeyOperations.{}',

src/datadog/azext_datadog/generated/custom.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@
1313
from azure.cli.core.util import sdk_no_wait
1414

1515

16+
def datadog_terms_list(client):
17+
return client.list()
18+
19+
1620
def datadog_api_key_list(client,
1721
resource_group_name,
1822
monitor_name):

src/datadog/azext_datadog/manual/commands.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
# Licensed under the MIT License. See License.txt in the project root for license information.
44
# --------------------------------------------------------------------------------------------
55

6-
from azure.cli.core.commands import CliCommandType
7-
86

97
def load_command_table(self, _):
108

src/datadog/azext_datadog/tests/latest/recordings/test_datadog.yaml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1483,4 +1483,48 @@ interactions:
14831483
status:
14841484
code: 200
14851485
message: OK
1486+
- request:
1487+
body: null
1488+
headers:
1489+
Accept:
1490+
- application/json
1491+
Accept-Encoding:
1492+
- gzip, deflate
1493+
CommandName:
1494+
- datadog terms list
1495+
Connection:
1496+
- keep-alive
1497+
User-Agent:
1498+
- AZURECLI/2.17.1 azsdk-python-microsoftdatadogclient/unknown Python/3.6.8 (Windows-10-10.0.19041-SP0)
1499+
method: GET
1500+
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements?api-version=2020-02-01-preview
1501+
response:
1502+
body:
1503+
string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/marketplace","name":"marketplace","type":"Microsoft.Datadog/agreements","properties":{"publisher":"Microsoft","product":"Marketplace","plan":"Marketplace","licenseTextLink":"https://azure.microsoft.com/en-us/support/legal/marketplace-terms/","privacyPolicyLink":"http://www.microsoft.com/privacy","retrieveDatetime":null,"signature":"","accepted":true}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Datadog/agreements/datadog","name":"datadog","type":"Microsoft.Datadog/agreements","properties":{"publisher":"Datadog","product":"Datadog","plan":"Datadog","licenseTextLink":"https://www.datadoghq.com/pdf/Datadog_AzureMarketplace.pdf","privacyPolicyLink":"https://www.datadoghq.com/legal/privacy/","retrieveDatetime":null,"signature":"","accepted":true}}]}'
1504+
headers:
1505+
cache-control:
1506+
- no-cache
1507+
content-length:
1508+
- '897'
1509+
content-type:
1510+
- application/json; charset=utf-8
1511+
date:
1512+
- Fri, 08 Jan 2021 07:41:52 GMT
1513+
expires:
1514+
- '-1'
1515+
pragma:
1516+
- no-cache
1517+
server:
1518+
- Kestrel
1519+
strict-transport-security:
1520+
- max-age=31536000; includeSubDomains
1521+
transfer-encoding:
1522+
- chunked
1523+
vary:
1524+
- Accept-Encoding
1525+
x-content-type-options:
1526+
- nosniff
1527+
status:
1528+
code: 200
1529+
message: OK
14861530
version: 1

src/datadog/azext_datadog/tests/latest/test_datadog_scenario.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,14 @@ def step__monitors_delete_monitors_delete(test, rg):
263263
checks=[])
264264

265265

266+
@try_manual
267+
def step__terms_list(test, rg):
268+
test.cmd('az datadog terms list',
269+
checks=[
270+
test.check('length(@)', 2)
271+
])
272+
273+
266274
@try_manual
267275
def cleanup(test, rg):
268276
pass
@@ -290,6 +298,7 @@ def call_scenario(test, rg):
290298
step__apikeys_post_apikeys_setdefaultkey(test, rg)
291299
step__apikeys_post_apikeys_getdefaultkey(test, rg)
292300
step__monitors_delete_monitors_delete(test, rg)
301+
step__terms_list(test, rg)
293302
cleanup(test, rg)
294303

295304

src/datadog/azext_datadog/vendored_sdks/datadog/_microsoft_datadog_client.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
from azure.core.credentials import TokenCredential
1919

2020
from ._configuration import MicrosoftDatadogClientConfiguration
21+
from .operations import MarketplaceAgreementsOperations
2122
from .operations import ApiKeyOperations
2223
from .operations import HostOperations
2324
from .operations import LinkedResourceOperations
@@ -33,6 +34,8 @@
3334
class MicrosoftDatadogClient(object):
3435
"""MicrosoftDatadogClient.
3536
37+
:ivar marketplace_agreements: MarketplaceAgreementsOperations operations
38+
:vartype marketplace_agreements: microsoft_datadog_client.operations.MarketplaceAgreementsOperations
3639
:ivar api_key: ApiKeyOperations operations
3740
:vartype api_key: microsoft_datadog_client.operations.ApiKeyOperations
3841
:ivar host: HostOperations operations
@@ -76,6 +79,8 @@ def __init__(
7679
self._serialize = Serializer(client_models)
7780
self._deserialize = Deserializer(client_models)
7881

82+
self.marketplace_agreements = MarketplaceAgreementsOperations(
83+
self._client, self._config, self._serialize, self._deserialize)
7984
self.api_key = ApiKeyOperations(
8085
self._client, self._config, self._serialize, self._deserialize)
8186
self.host = HostOperations(

src/datadog/azext_datadog/vendored_sdks/datadog/models/__init__.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@
77
# --------------------------------------------------------------------------
88

99
try:
10+
from ._models_py3 import DatadogAgreementProperties
11+
from ._models_py3 import DatadogAgreementResource
12+
from ._models_py3 import DatadogAgreementResourceListResponse
1013
from ._models_py3 import DatadogApiKey
1114
from ._models_py3 import DatadogApiKeyListResponse
1215
from ._models_py3 import DatadogHost
@@ -36,6 +39,9 @@
3639
from ._models_py3 import ResourceProviderDefaultErrorResponse
3740
from ._models_py3 import UserInfo
3841
except (SyntaxError, ImportError):
42+
from ._models import DatadogAgreementProperties # type: ignore
43+
from ._models import DatadogAgreementResource # type: ignore
44+
from ._models import DatadogAgreementResourceListResponse # type: ignore
3945
from ._models import DatadogApiKey # type: ignore
4046
from ._models import DatadogApiKeyListResponse # type: ignore
4147
from ._models import DatadogHost # type: ignore

0 commit comments

Comments
 (0)