peak-sdk 1.9.0__py3-none-any.whl → 1.10.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. peak/_version.py +1 -1
  2. peak/cli/press/blocks/specs.py +252 -7
  3. peak/cli/resources/workflows.py +320 -18
  4. peak/press/blocks.py +305 -1
  5. peak/resources/workflows.py +476 -8
  6. peak/sample_yaml/press/blocks/specs/workflow/create_block_spec.yaml +49 -1
  7. peak/sample_yaml/press/blocks/specs/workflow/create_block_spec_release.yaml +49 -1
  8. peak/sample_yaml/resources/images/dockerfile/create_image.yaml +2 -2
  9. peak/sample_yaml/resources/images/dockerfile/create_image_version.yaml +1 -1
  10. peak/sample_yaml/resources/images/dockerfile/update_version.yaml +1 -1
  11. peak/sample_yaml/resources/images/github/create_image.yaml +1 -1
  12. peak/sample_yaml/resources/images/github/create_image_version.yaml +1 -1
  13. peak/sample_yaml/resources/images/github/update_version.yaml +1 -1
  14. peak/sample_yaml/resources/images/upload/create_image.yaml +3 -3
  15. peak/sample_yaml/resources/images/upload/create_image_version.yaml +4 -4
  16. peak/sample_yaml/resources/images/upload/create_or_update_image.yaml +4 -4
  17. peak/sample_yaml/resources/images/upload/update_version.yaml +4 -4
  18. peak/sample_yaml/resources/services/test_service.yaml +1 -1
  19. peak/sample_yaml/resources/workflows/create_or_update_workflow.yaml +36 -3
  20. peak/sample_yaml/resources/workflows/create_workflow.yaml +33 -4
  21. peak/sample_yaml/resources/workflows/patch_workflow.yaml +16 -4
  22. peak/sample_yaml/resources/workflows/update_workflow.yaml +35 -2
  23. peak/sample_yaml/resources/workflows/workflow_auto_retry.yaml +59 -12
  24. peak/sample_yaml/resources/workflows/workflow_execution_parameters.yaml +75 -10
  25. peak/sample_yaml/resources/workflows/workflow_input_parameters.yaml +42 -2
  26. peak/sample_yaml/resources/workflows/workflow_input_parameters_inherit.yaml +64 -0
  27. peak/sample_yaml/resources/workflows/workflow_output_parameters.yaml +20 -3
  28. peak/sample_yaml/resources/workflows/workflow_skippable_steps.yaml +45 -12
  29. {peak_sdk-1.9.0.dist-info → peak_sdk-1.10.0.dist-info}/METADATA +1 -1
  30. {peak_sdk-1.9.0.dist-info → peak_sdk-1.10.0.dist-info}/RECORD +33 -32
  31. {peak_sdk-1.9.0.dist-info → peak_sdk-1.10.0.dist-info}/LICENSE +0 -0
  32. {peak_sdk-1.9.0.dist-info → peak_sdk-1.10.0.dist-info}/WHEEL +0 -0
  33. {peak_sdk-1.9.0.dist-info → peak_sdk-1.10.0.dist-info}/entry_points.txt +0 -0
@@ -32,7 +32,7 @@ from peak.resources.workflows import Workflow
32
32
  from typing_extensions import Annotated
33
33
 
34
34
  app = typer.Typer(
35
- help="Create Machine Learning Pipelines using Workflows. Please note that Workflows with only standard steps are supported.",
35
+ help="Create Machine Learning Pipelines using Workflows.",
36
36
  short_help="Create and manage Workflows.",
37
37
  )
38
38
 
@@ -104,7 +104,7 @@ def create(
104
104
  output_type: Optional[OutputTypesNoTable] = OUTPUT_TYPES, # noqa: ARG001
105
105
  generate: Optional[bool] = GENERATE_YAML, # noqa: ARG001
106
106
  ) -> None:
107
- """***Create*** a new workflow. Workflows with only standard steps are supported.
107
+ """***Create*** a new workflow.
108
108
 
109
109
  \b
110
110
  🧩 ***Input file schema(yaml):***<br/>
@@ -145,9 +145,10 @@ def create(
145
145
  numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
146
146
  steps(map):
147
147
  <stepName> (map): # Dictionary containing the step configuration. Here the key is name of the step.
148
+ # Standard Step
148
149
  imageId (int): ID of the existing image.
149
150
  imageVersionId: (int | required: false): ID of the existing image version.
150
- type (string | required: false): Type of workflow step. Currently only standard type is supported.
151
+ type (string | required: false): Type of workflow step. This should be 'standard' for a Standard Step.
151
152
  command (string): Command to run when step is executed.
152
153
  clearImageCache (boolean | required: false): Whether to clear image cache on workflow execution.
153
154
  stepTimeout (int | required: false): Time after which the step timeouts.
@@ -161,9 +162,108 @@ def create(
161
162
  storage (string): Storage in GB. For example, "10GB".
162
163
  parameters (map | required: false):
163
164
  env (map | required: false): Key-Value pair where key is the name of the env.
165
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
164
166
  secrets (list(str) | required: false): List of secret names to be passed.
165
- outputParamters (map | required: false):
166
- <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the parameter's value.
167
+ outputParameters (map | required: false):
168
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the file name where the output is stored.
169
+ executionParameters (map | required: false):
170
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
171
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
172
+ paramName (string): Name of the output parameter to be evaluated.
173
+ stepName (string): Name of the step containing the output parameter.
174
+ value (string): Value to be compared with the output parameter.
175
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
176
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
177
+ parents (list(str)): List of parent step names.
178
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
179
+ runConfiguration (map | required: false):
180
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
181
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
182
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
183
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
184
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
185
+ skipConfiguration (map | required: false):
186
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
187
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
188
+ # HTTP Step
189
+ type (string | required: true): Type of workflow step. This should be 'http' for a HTTP Step.
190
+ method (string | required: true): The HTTP method to be used for the API call. Should be one of - get, post, put, patch, and delete
191
+ url (string | required: true): The URL to make the HTTP API call to.
192
+ payload (string | required: false): Stringified JSON payload to be sent in case of non-get requests.
193
+ headers (map | required: false):
194
+ absolute (map | required: false): Key-Value pair where key is the name of the header and value is the value of the header.
195
+ secrets (map | required: false): Key-Value pair where key is the name of the header and value is the name of the secret to get the value from.
196
+ auth (map | required: false):
197
+ type (string | required: true): The type of authentication to use. Should be one of - no-auth, oauth, basic, api-key, and bearer-token.
198
+ clientId (string | required: false): The Client ID used to get the access token in case of OAuth. Value should be the name of a secret. Required when type is oauth.
199
+ clientSecret (string | required: false): The Client Secret used to get the access token in case of OAuth. Value should be the name of a secret. Required when type is oauth.
200
+ authUrl (string | required: false): The URL that is hit to get the access token in case of OAuth. Required when type is oauth.
201
+ username (string | required: false): The username used for basic authentication. Required when type is basic.
202
+ password (string | required: false): The password used for basic authentication. Value should be the name of a secret. Required when type is basic.
203
+ apiKey (string | required: false): The API Key used for authentication. Value should be the name of a secret. Required when type is api-key.
204
+ bearerToken (string | required: false): The bearer token used for authentication. Value should be the name of a secret. Required when type is bearer-token.
205
+ parameters (map | required: false):
206
+ env (map | required: false): Key-Value pair where key is the name of the env.
207
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
208
+ secrets (list(str) | required: false): List of secret names to be passed.
209
+ outputParameters (map | required: false):
210
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name. Note that in case of HTTP step, value should always be "response.txt", otherwise this parameter would be rejected.
211
+ executionParameters (map | required: false):
212
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
213
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
214
+ paramName (string): Name of the output parameter to be evaluated.
215
+ stepName (string): Name of the step containing the output parameter.
216
+ value (string): Value to be compared with the output parameter.
217
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
218
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
219
+ parents (list(str)): List of parent step names.
220
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
221
+ runConfiguration (map | required: false):
222
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
223
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
224
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
225
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
226
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
227
+ skipConfiguration (map | required: false):
228
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
229
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
230
+ # Export Step
231
+ type (string | required: true): Type of workflow step. This should be 'export' for a export Step.
232
+ schema (string | required: true): Schema from which the data is to be exported.
233
+ table (string | required: true): Table from which the data is to be exported.
234
+ sortBy (string | required: true): Column name by which the data is to be sorted.
235
+ sortOrder (string | required: false): Order in which the data is to be sorted. Should be one of - asc, desc. Default is asc.
236
+ compression (boolean | required: false): Whether to compress the files to '.gz' format while exporting. Default is false.
237
+ executionParameters (map | required: false):
238
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
239
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
240
+ paramName (string): Name of the output parameter to be evaluated.
241
+ stepName (string): Name of the step containing the output parameter.
242
+ value (string): Value to be compared with the output parameter.
243
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
244
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
245
+ parents (list(str)): List of parent step names.
246
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
247
+ runConfiguration (map | required: false):
248
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
249
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
250
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
251
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
252
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
253
+ skipConfiguration (map | required: false):
254
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
255
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
256
+ # SQL Step
257
+ type (string | required: true): Type of workflow step. This should be 'sql' for a sql Step.
258
+ sqlQueryPath (string | required: false): Path to the SQL query file. One of the 'sqlQueryPath' or 'repository' is required.
259
+ repository (map | required: false):
260
+ branch (string | required: true): Branch of the repository containing the required files.
261
+ token (string | required: false): The token to be used to clone the repository.
262
+ url (string | required: true): URL of the repository.
263
+ filePath (string | required: true): Path to the file containing the SQL query.
264
+ parameters (map | required: false):
265
+ env (map | required: false): Key-Value pair where key is the name of the env.
266
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
167
267
  executionParameters (map | required: false):
168
268
  conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
169
269
  - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
@@ -228,7 +328,7 @@ def update(
228
328
  output_type: Optional[OutputTypesNoTable] = OUTPUT_TYPES, # noqa: ARG001
229
329
  generate: Optional[bool] = GENERATE_YAML, # noqa: ARG001
230
330
  ) -> None:
231
- """***Update*** an existing workflow. Workflows with only standard steps are supported.
331
+ """***Update*** an existing workflow.
232
332
 
233
333
  \b
234
334
  🧩 ***Input file schema(yaml):***<br/>
@@ -269,9 +369,10 @@ def update(
269
369
  numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
270
370
  steps(map):
271
371
  <stepName> (map): # Dictionary containing the step configuration. Here the key is name of the step.
372
+ # Standard Step
272
373
  imageId (int): ID of the existing image.
273
374
  imageVersionId: (int | required: false): ID of the existing image version.
274
- type (string | required: false): Type of workflow step. Currently only standard type is supported.
375
+ type (string | required: false): Type of workflow step. This should be 'standard' for Standard Step.
275
376
  command (string): Command to run when step is executed.
276
377
  clearImageCache (boolean | required: false): Whether to clear image cache on workflow execution.
277
378
  stepTimeout (int | required: false): Time after which the step timeouts.
@@ -285,9 +386,10 @@ def update(
285
386
  storage (string): Storage in GB. For example, "10GB".
286
387
  parameters (map | required: false):
287
388
  env (map | required: false): Key-Value pair where key is the name of the env.
389
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
288
390
  secrets (list(str) | required: false): List of secret names to be passed.
289
- outputParamters (map | required: false):
290
- <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the parameter's value.
391
+ outputParameters (map | required: false):
392
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the file name where the output is stored.
291
393
  executionParameters (map | required: false):
292
394
  conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
293
395
  - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
@@ -307,7 +409,105 @@ def update(
307
409
  skipConfiguration (map | required: false):
308
410
  skip (boolean | required: false): Indicates whether to skip the step. Default is false.
309
411
  skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
310
- ```
412
+ # HTTP Step
413
+ type (string | required: false): Type of workflow step. This should be 'http' for a HTTP Step.
414
+ method (string | required: true): The HTTP method to be used for the API call. Should be one of - get, post, put, patch, and delete
415
+ url (string | required: true): The URL to make the HTTP API call to.
416
+ payload (string | required: false): Stringified JSON payload to be sent in case of non-get requests.
417
+ headers (map | required: false):
418
+ absolute (map | required: false): Key-Value pair where key is the name of the header and value is the value of the header.
419
+ secrets (map | required: false): Key-Value pair where key is the name of the header and value is the name of the secret to get the value from.
420
+ auth (map | required: false):
421
+ type (string | required: true): The type of authentication to use. Should be one of - no-auth, oauth, basic, api-key, and bearer-token.
422
+ clientId (string | required: false): The Client ID used to get the access token in case of OAuth. Value should be the name of a secret. Required when type is oauth.
423
+ clientSecret (string | required: false): The Client Secret used to get the access token in case of OAuth. Value should be the name of a secret. Required when type is oauth.
424
+ authUrl (string | required: false): The URL that is hit to get the access token in case of OAuth. Required when type is oauth.
425
+ username (string | required: false): The username used for basic authentication. Required when type is basic.
426
+ password (string | required: false): The password used for basic authentication. Value should be the name of a secret. Required when type is basic.
427
+ apiKey (string | required: false): The API Key used for authentication. Value should be the name of a secret. Required when type is api-key.
428
+ bearerToken (string | required: false): The bearer token used for authentication. Value should be the name of a secret. Required when type is bearer-token.
429
+ parameters (map | required: false):
430
+ env (map | required: false): Key-Value pair where key is the name of the env.
431
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
432
+ secrets (list(str) | required: false): List of secret names to be passed.
433
+ outputParameters (map | required: false):
434
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name. Note that in case of HTTP step, value should always be "response.txt", otherwise this parameter would be rejected.
435
+ executionParameters (map | required: false):
436
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
437
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
438
+ paramName (string): Name of the output parameter to be evaluated.
439
+ stepName (string): Name of the step containing the output parameter.
440
+ value (string): Value to be compared with the output parameter.
441
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
442
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
443
+ parents (list(str)): List of parent step names.
444
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
445
+ runConfiguration (map | required: false):
446
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
447
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
448
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
449
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
450
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
451
+ skipConfiguration (map | required: false):
452
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
453
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
454
+ # Export Step
455
+ type (string | required: true): Type of workflow step. This should be 'export' for a export Step.
456
+ schema (string | required: true): Schema from which the data is to be exported.
457
+ table (string | required: true): Table from which the data is to be exported.
458
+ sortBy (string | required: true): Column name by which the data is to be sorted.
459
+ sortOrder (string | required: false): Order in which the data is to be sorted. Should be one of - asc, desc. Default is asc.
460
+ compression (boolean | required: false): Whether to compress the files to '.gz' format while exporting. Default is false.
461
+ executionParameters (map | required: false):
462
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
463
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
464
+ paramName (string): Name of the output parameter to be evaluated.
465
+ stepName (string): Name of the step containing the output parameter.
466
+ value (string): Value to be compared with the output parameter.
467
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
468
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
469
+ parents (list(str)): List of parent step names.
470
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
471
+ runConfiguration (map | required: false):
472
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
473
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
474
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
475
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
476
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
477
+ skipConfiguration (map | required: false):
478
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
479
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
480
+ # SQL Step
481
+ type (string | required: true): Type of workflow step. This should be 'sql' for a sql Step.
482
+ sqlQueryPath (string | required: false): Path to the SQL query file. One of the 'sqlQueryPath' or 'repository' is required.
483
+ repository (map | required: false):
484
+ branch (string | required: true): Branch of the repository containing the required files.
485
+ token (string | required: false): The token to be used to clone the repository.
486
+ url (string | required: true): URL of the repository.
487
+ filePath (string | required: true): Path to the file containing the SQL query.
488
+ parameters (map | required: false):
489
+ env (map | required: false): Key-Value pair where key is the name of the env.
490
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
491
+ executionParameters (map | required: false):
492
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
493
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
494
+ paramName (string): Name of the output parameter to be evaluated.
495
+ stepName (string): Name of the step containing the output parameter.
496
+ value (string): Value to be compared with the output parameter.
497
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
498
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
499
+ parents (list(str)): List of parent step names.
500
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
501
+ runConfiguration (map | required: false):
502
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
503
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
504
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
505
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
506
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
507
+ skipConfiguration (map | required: false):
508
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
509
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
510
+ ```
311
511
 
312
512
  \b
313
513
  📝 ***Example usage:***
@@ -392,9 +592,10 @@ def create_or_update(
392
592
  numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
393
593
  steps(map):
394
594
  <stepName> (map): # Dictionary containing the step configuration. Here the key is name of the step.
595
+ # Standard Step
395
596
  imageId (int): ID of the existing image.
396
597
  imageVersionId: (int | required: false): ID of the existing image version.
397
- type (string | required: false): Type of workflow step. Currently only standard type is supported.
598
+ type (string | required: false): Type of workflow step. This should be 'standard' for Standard Step.
398
599
  command (string): Command to run when step is executed.
399
600
  clearImageCache (boolean | required: false): Whether to clear image cache on workflow execution.
400
601
  stepTimeout (int | required: false): Time after which the step timeouts.
@@ -408,9 +609,108 @@ def create_or_update(
408
609
  storage (string): Storage in GB. For example, "10GB".
409
610
  parameters (map | required: false):
410
611
  env (map | required: false): Key-Value pair where key is the name of the env.
612
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
411
613
  secrets (list(str) | required: false): List of secret names to be passed.
412
- outputParamters (map | required: false):
413
- <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the parameter's value.
614
+ outputParameters (map | required: false):
615
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the file name where the output is stored.
616
+ executionParameters (map | required: false):
617
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
618
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
619
+ paramName (string): Name of the output parameter to be evaluated.
620
+ stepName (string): Name of the step containing the output parameter.
621
+ value (string): Value to be compared with the output parameter.
622
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
623
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
624
+ parents (list(str)): List of parent step names.
625
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
626
+ runConfiguration (map | required: false):
627
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
628
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
629
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
630
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
631
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
632
+ skipConfiguration (map | required: false):
633
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
634
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
635
+ # HTTP Step
636
+ type (string | required: false): Type of workflow step. This should be 'http' for a HTTP Step.
637
+ method (string | required: true): The HTTP method to be used for the API call. Should be one of - get, post, put, patch, and delete
638
+ url (string | required: true): The URL to make the HTTP API call to.
639
+ payload (string | required: false): Stringified JSON payload to be sent in case of non-get requests.
640
+ headers (map | required: false):
641
+ absolute (map | required: false): Key-Value pair where key is the name of the header and value is the value of the header.
642
+ secrets (map | required: false): Key-Value pair where key is the name of the header and value is the name of the secret to get the value from.
643
+ auth (map | required: false):
644
+ type (string | required: true): The type of authentication to use. Should be one of - no-auth, oauth, basic, api-key, and bearer-token.
645
+ clientId (string | required: false): The Client ID used to get the access token in case of OAuth. Value should be the name of a secret. Required when type is oauth.
646
+ clientSecret (string | required: false): The Client Secret used to get the access token in case of OAuth. Value should be the name of a secret. Required when type is oauth.
647
+ authUrl (string | required: false): The URL that is hit to get the access token in case of OAuth. Required when type is oauth.
648
+ username (string | required: false): The username used for basic authentication. Required when type is basic.
649
+ password (string | required: false): The password used for basic authentication. Value should be the name of a secret. Required when type is basic.
650
+ apiKey (string | required: false): The API Key used for authentication. Value should be the name of a secret. Required when type is api-key.
651
+ bearerToken (string | required: false): The bearer token used for authentication. Value should be the name of a secret. Required when type is bearer-token.
652
+ parameters (map | required: false):
653
+ env (map | required: false): Key-Value pair where key is the name of the env.
654
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
655
+ secrets (list(str) | required: false): List of secret names to be passed.
656
+ outputParameters (map | required: false):
657
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name. Note that in case of HTTP step, value should always be "response.txt", otherwise this parameter would be rejected.
658
+ executionParameters (map | required: false):
659
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
660
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
661
+ paramName (string): Name of the output parameter to be evaluated.
662
+ stepName (string): Name of the step containing the output parameter.
663
+ value (string): Value to be compared with the output parameter.
664
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
665
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
666
+ parents (list(str)): List of parent step names.
667
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
668
+ runConfiguration (map | required: false):
669
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
670
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
671
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
672
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
673
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
674
+ skipConfiguration (map | required: false):
675
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
676
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
677
+ # Export Step
678
+ type (string | required: true): Type of workflow step. This should be 'export' for a export Step.
679
+ schema (string | required: true): Schema from which the data is to be exported.
680
+ table (string | required: true): Table from which the data is to be exported.
681
+ sortBy (string | required: true): Column name by which the data is to be sorted.
682
+ sortOrder (string | required: false): Order in which the data is to be sorted. Should be one of - asc, desc. Default is asc.
683
+ compression (boolean | required: false): Whether to compress the files to '.gz' format while exporting. Default is false.
684
+ executionParameters (map | required: false):
685
+ conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
686
+ - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
687
+ paramName (string): Name of the output parameter to be evaluated.
688
+ stepName (string): Name of the step containing the output parameter.
689
+ value (string): Value to be compared with the output parameter.
690
+ parentStatus (list(map) | required: false): # List of conditions to be evaluated based on the status of the parent steps.
691
+ - condition (string): The evaluation condition, either 'all-of' or 'one-of'.
692
+ parents (list(str)): List of parent step names.
693
+ status (list(str)): List of parent step statuses, with valid values being 'success' and 'failure'.
694
+ runConfiguration (map | required: false):
695
+ retryOptions (map | required: false): # Step level retry options which will override the workflow level retry options.
696
+ duration (int | required: false): Duration in seconds after which the step is retried if it fails. Default is 5 seconds and maximum is 120 seconds.
697
+ exitCodes (list(int) | required: false): List of exit codes for which the step is retried. If not provided, the step is retried for all exit codes.
698
+ exponentialBackoff (boolean | required: false): Whether to use exponential backoff for retrying the step. If provided as true, the factor used will be 2.
699
+ numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
700
+ skipConfiguration (map | required: false):
701
+ skip (boolean | required: false): Indicates whether to skip the step. Default is false.
702
+ skipDAG (boolean | required: false): Indicates whether to skip dependent steps, including the current step. Default is false.
703
+ # SQL Step
704
+ type (string | required: true): Type of workflow step. This should be 'sql' for a sql Step.
705
+ sqlQueryPath (string | required: false): Path to the SQL query file. One of the 'sqlQueryPath' or 'repository' is required.
706
+ repository (map | required: false):
707
+ branch (string | required: true): Branch of the repository containing the required files.
708
+ token (string | required: false): The token to be used to clone the repository.
709
+ url (string | required: true): URL of the repository.
710
+ filePath (string | required: true): Path to the file containing the SQL query.
711
+ parameters (map | required: false):
712
+ env (map | required: false): Key-Value pair where key is the name of the env.
713
+ inherit (map | required: false): Key-Value pair where key is the name of the env and value is the name of the output parameter.
414
714
  executionParameters (map | required: false):
415
715
  conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
416
716
  - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
@@ -493,7 +793,7 @@ def patch(
493
793
  output_type: Optional[OutputTypesNoTable] = OUTPUT_TYPES, # noqa: ARG001
494
794
  generate: Optional[bool] = GENERATE_YAML, # noqa: ARG001
495
795
  ) -> None:
496
- """***Update*** an existing workflow. Workflows with only standard steps are supported.
796
+ """***Update*** an existing workflow.
497
797
 
498
798
  \b
499
799
  This command allows to efficiently modify trigger details, watchers, workflow name, and specific step attributes such as repository URL, branch, token, image ID, version ID etc.
@@ -546,9 +846,11 @@ def patch(
546
846
  numberOfRetries (int | required: false): Number of times the step should be retried. Default is 3 and maximum is 5.
547
847
  steps(map):
548
848
  <stepName> (map): # Dictionary containing the step configuration. Here the key is name of the step.
849
+
850
+ # Standard Step
549
851
  imageId (int): ID of the existing image.
550
852
  imageVersionId: (int | required: false): ID of the existing image version.
551
- type (string | required: false): Type of workflow step. Currently only standard type is supported.
853
+ type (string | required: false): Type of workflow step. This should be standard for Standard Step.
552
854
  command (string): Command to run when step is executed.
553
855
  clearImageCache (boolean | required: false): Whether to clear image cache on workflow execution.
554
856
  stepTimeout (int | required: false): Time after which the step timeouts.
@@ -563,8 +865,8 @@ def patch(
563
865
  parameters (map | required: false):
564
866
  env (map | required: false): Key-Value pair where key is the name of the env.
565
867
  secrets (list(str) | required: false): List of secret names to be passed.
566
- outputParamters (map | required: false):
567
- <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the parameter's value.
868
+ outputParameters (map | required: false):
869
+ <keyName> (string | required: false): Represents a key-value pair where the key is the parameter name, and the value is the file name where the output is stored.
568
870
  executionParameters (map | required: false):
569
871
  conditional (list(map) | required: false): # List of conditions to be evaluated based on the output params of the parent steps.
570
872
  - condition (string): The evaluation condition, either 'equals' or 'not-equals'.
@@ -696,7 +998,7 @@ def describe(
696
998
  paging: Optional[bool] = PAGING, # noqa: ARG001
697
999
  output_type: Optional[OutputTypesNoTable] = OUTPUT_TYPES, # noqa: ARG001
698
1000
  ) -> None:
699
- """***Describe*** details of a specific workflow. Workflows with only standard steps are supported.
1001
+ """***Describe*** details of a specific workflow.
700
1002
 
701
1003
  \b
702
1004
  📝 ***Example usage:***<br/>