Skip to content

Commit 23f6a14

Browse files
authored
[Logic] az logic workflow: Fix the issue with parameters in --definition not working (#7132)
1 parent 8f52938 commit 23f6a14

File tree

14 files changed

+434
-6
lines changed

14 files changed

+434
-6
lines changed

src/logic/HISTORY.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
Release History
44
===============
55

6+
1.0.1
7+
++++++
8+
* `az logic workflow`: Fix the issue with `parameters` in `--definition` not working
9+
610
1.0.0
711
++++++
812
* Add new command group `az logic workflow identity` to support managing identity

src/logic/azext_logic/aaz/latest/logic/integration_account/_list.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"logic integration-account list",
1616
)
1717
class List(AAZCommand):
18-
"""List a list of integration accounts by subscription.
18+
"""List integration accounts
1919
2020
:example: List integration accounts by resource group name
2121
az logic integration-account list --resource-group rg

src/logic/azext_logic/aaz/latest/logic/workflow/_create.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ def _build_arguments_schema(cls, *args, **kwargs):
6969
_args_schema.definition = AAZFreeFormDictArg(
7070
options=["--definition"],
7171
help="The definition.",
72-
blank={},
7372
)
7473
_args_schema.endpoints_configuration = AAZObjectArg(
7574
options=["--endpoints-configuration"],
@@ -83,6 +82,10 @@ def _build_arguments_schema(cls, *args, **kwargs):
8382
options=["--integration-service-environment"],
8483
help="The integration service environment.",
8584
)
85+
_args_schema.parameters = AAZFreeFormDictArg(
86+
options=["--parameters"],
87+
help="The parameters.",
88+
)
8689
_args_schema.state = AAZStrArg(
8790
options=["--state"],
8891
help="The state.",
@@ -487,6 +490,7 @@ def content(self):
487490
properties.set_prop("endpointsConfiguration", AAZObjectType, ".endpoints_configuration")
488491
properties.set_prop("integrationAccount", AAZObjectType, ".integration_account")
489492
properties.set_prop("integrationServiceEnvironment", AAZObjectType, ".integration_service_environment")
493+
properties.set_prop("parameters", AAZFreeFormDictType, ".parameters")
490494
properties.set_prop("state", AAZStrType, ".state")
491495

492496
access_control = _builder.get(".properties.accessControl")
@@ -695,6 +699,10 @@ def content(self):
695699
if integration_service_environment is not None:
696700
integration_service_environment.set_prop("id", AAZStrType, ".id")
697701

702+
parameters = _builder.get(".properties.parameters")
703+
if parameters is not None:
704+
parameters.set_anytype_elements(".")
705+
698706
tags = _builder.get(".tags")
699707
if tags is not None:
700708
tags.set_elements(AAZStrType, ".")
@@ -792,6 +800,7 @@ def _build_schema_on_200_201(cls):
792800
serialized_name="integrationServiceEnvironment",
793801
)
794802
_CreateHelper._build_schema_resource_reference_read(properties.integration_service_environment)
803+
properties.parameters = AAZFreeFormDictType()
795804
properties.provisioning_state = AAZStrType(
796805
serialized_name="provisioningState",
797806
)

src/logic/azext_logic/aaz/latest/logic/workflow/_list.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"logic workflow list",
1616
)
1717
class List(AAZCommand):
18-
"""List a list of workflows by subscription.
18+
"""List workflows
1919
2020
:example: List all workflows in a resource group
2121
az logic workflow list --resource-group rg
@@ -248,6 +248,7 @@ def _build_schema_on_200(cls):
248248
serialized_name="integrationServiceEnvironment",
249249
)
250250
_ListHelper._build_schema_resource_reference_read(properties.integration_service_environment)
251+
properties.parameters = AAZFreeFormDictType()
251252
properties.provisioning_state = AAZStrType(
252253
serialized_name="provisioningState",
253254
)
@@ -448,6 +449,7 @@ def _build_schema_on_200(cls):
448449
serialized_name="integrationServiceEnvironment",
449450
)
450451
_ListHelper._build_schema_resource_reference_read(properties.integration_service_environment)
452+
properties.parameters = AAZFreeFormDictType()
451453
properties.provisioning_state = AAZStrType(
452454
serialized_name="provisioningState",
453455
)

src/logic/azext_logic/aaz/latest/logic/workflow/_show.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"logic workflow show",
1616
)
1717
class Show(AAZCommand):
18-
"""Get a workflow.
18+
"""Show a workflow.
1919
2020
:example: Show workflow
2121
az logic workflow show --resource-group rg --name workflow
@@ -226,6 +226,7 @@ def _build_schema_on_200(cls):
226226
serialized_name="integrationServiceEnvironment",
227227
)
228228
_ShowHelper._build_schema_resource_reference_read(properties.integration_service_environment)
229+
properties.parameters = AAZFreeFormDictType()
229230
properties.provisioning_state = AAZStrType(
230231
serialized_name="provisioningState",
231232
)

src/logic/azext_logic/aaz/latest/logic/workflow/_update.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,6 @@ def _build_arguments_schema(cls, *args, **kwargs):
7676
options=["--definition"],
7777
help="The definition.",
7878
nullable=True,
79-
blank={},
8079
)
8180
_args_schema.endpoints_configuration = AAZObjectArg(
8281
options=["--endpoints-configuration"],
@@ -93,6 +92,11 @@ def _build_arguments_schema(cls, *args, **kwargs):
9392
help="The integration service environment.",
9493
nullable=True,
9594
)
95+
_args_schema.parameters = AAZFreeFormDictArg(
96+
options=["--parameters"],
97+
help="The parameters.",
98+
nullable=True,
99+
)
96100
_args_schema.state = AAZStrArg(
97101
options=["--state"],
98102
help="The state.",
@@ -711,6 +715,7 @@ def _update_instance(self, instance):
711715
properties.set_prop("endpointsConfiguration", AAZObjectType, ".endpoints_configuration")
712716
properties.set_prop("integrationAccount", AAZObjectType, ".integration_account")
713717
properties.set_prop("integrationServiceEnvironment", AAZObjectType, ".integration_service_environment")
718+
properties.set_prop("parameters", AAZFreeFormDictType, ".parameters")
714719
properties.set_prop("state", AAZStrType, ".state")
715720

716721
access_control = _builder.get(".properties.accessControl")
@@ -919,6 +924,10 @@ def _update_instance(self, instance):
919924
if integration_service_environment is not None:
920925
integration_service_environment.set_prop("id", AAZStrType, ".id")
921926

927+
parameters = _builder.get(".properties.parameters")
928+
if parameters is not None:
929+
parameters.set_anytype_elements(".")
930+
922931
tags = _builder.get(".tags")
923932
if tags is not None:
924933
tags.set_elements(AAZStrType, ".")
@@ -1144,6 +1153,7 @@ def _build_schema_workflow_read(cls, _schema):
11441153
serialized_name="integrationServiceEnvironment",
11451154
)
11461155
cls._build_schema_resource_reference_read(properties.integration_service_environment)
1156+
properties.parameters = AAZFreeFormDictType()
11471157
properties.provisioning_state = AAZStrType(
11481158
serialized_name="provisioningState",
11491159
)

src/logic/azext_logic/aaz/latest/logic/workflow/identity/_assign.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -521,6 +521,7 @@ def _build_schema_workflow_read(cls, _schema):
521521
serialized_name="integrationServiceEnvironment",
522522
)
523523
cls._build_schema_resource_reference_read(properties.integration_service_environment)
524+
properties.parameters = AAZFreeFormDictType()
524525
properties.provisioning_state = AAZStrType(
525526
serialized_name="provisioningState",
526527
)

src/logic/azext_logic/aaz/latest/logic/workflow/identity/_remove.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -523,6 +523,7 @@ def _build_schema_workflow_read(cls, _schema):
523523
serialized_name="integrationServiceEnvironment",
524524
)
525525
cls._build_schema_resource_reference_read(properties.integration_service_environment)
526+
properties.parameters = AAZFreeFormDictType()
526527
properties.provisioning_state = AAZStrType(
527528
serialized_name="provisioningState",
528529
)

src/logic/azext_logic/custom.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ def _build_arguments_schema(cls, *args, **kwargs):
134134
"/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{}")
135135
)
136136
args_schema.identity._registered = False
137+
args_schema.parameters._registered = False
137138
return args_schema
138139

139140
def pre_operations(self):
@@ -142,6 +143,7 @@ def pre_operations(self):
142143
raise RequiredArgumentMissingError("--definition does not contain a 'definition' key")
143144
definition = args.definition.to_serialized_data()
144145
args.access_control = definition.get('accessControl', args.access_control)
146+
args.parameters = definition.get('parameters', None)
145147
args.definition = definition['definition']
146148
if args.mi_system_assigned:
147149
args.identity.type = "SystemAssigned"
@@ -165,6 +167,7 @@ def _build_arguments_schema(cls, *args, **kwargs):
165167
args_schema.integration_service_environment._registered = False
166168
args_schema.integration_account._registered = False
167169
args_schema.access_control._registered = False
170+
args_schema.parameters._registered = False
168171
return args_schema
169172

170173
def pre_operations(self):
@@ -175,6 +178,7 @@ def pre_operations(self):
175178
definition = args.definition.to_serialized_data()
176179
args.definition = definition['definition']
177180
args.access_control = definition.get('accessControl', args.access_control)
181+
args.parameters = definition.get('parameters', None)
178182

179183
def pre_instance_update(self, instance):
180184
self.ctx.args.location = instance.location

0 commit comments

Comments
 (0)