conductor-sdk / conductor-python

Conductor OSS SDK for Python programming language
Apache License 2.0
52 stars 26 forks source link

Added OrkesClients for Metadata, Workflow, Task, Scheduler, Secret, Auth #212

Closed coderabhigupta closed 7 months ago

coderabhigupta commented 9 months ago

Added OrkesClients which can be used to initialize the following clients for specific tasks.

MetadataClient

For making Workflow and Task definition management convenient. Following methods are supported:

  1. registerWorkflowDef
  2. updateWorkflowDef
  3. unregisterWorkflowDef
  4. getWorkflowDef
  5. getAllWorkflowDefs
  6. registerTaskDef
  7. updateTaskDef
  8. unregisterTaskDef
  9. getTaskDef
  10. getAllTaskDefs
  11. addWorkflowTag
  12. deleteWorkflowTag
  13. getWorkflowTags
  14. setWorkflowTags
  15. addTaskTag
  16. deleteTaskTag
  17. getTaskTags
  18. setTaskTags
  19. setWorkflowRateLimit
  20. getWorkflowRateLimit
  21. removeWorkflowRateLimit

WorkflowClient

For managing workflow instances. Following methods are supported:

  1. startWorkflow
  2. startWorkflowByName
  3. executeWorkflow
  4. pauseWorkflow
  5. resumeWorkflow
  6. restartWorkflow
  7. rerunWorkflow
  8. retryWorkflow
  9. terminateWorkflow
  10. getWorkflow
  11. deleteWorkflow
  12. skipTaskFromWorkflow
  13. testWorkflow

TaskClient

For managing task lifecycle. Following methods are supported:

  1. pollTask
  2. batchPollTasks
  3. getTask
  4. updateTask
  5. updateTaskByRefName
  6. updateTaskSync
  7. getQueueSizeForTask
  8. addTaskLog
  9. getTaskLogs

SchedulerClient

For managing schedules. Following methods are supported:

  1. saveSchedule
  2. getSchedule
  3. getAllSchedules
  4. getNextFewScheduleExecutionTimes
  5. deleteSchedule
  6. pauseSchedule
  7. pauseAllSchedules
  8. resumeSchedule
  9. resumeAllSchedules
  10. searchScheduleExecutions
  11. requeueAllExecutionRecords
  12. setSchedulerTags
  13. getSchedulerTags
  14. deleteSchedulerTags

SecretClient

For managing secrets. Following methods are supported:

  1. putSecret
  2. getSecret
  3. listAllSecretNames
  4. listSecretsThatUserCanGrantAccessTo
  5. deleteSecret
  6. secretExists
  7. setSecretTags
  8. getSecretTags
  9. deleteSecretTags

AuthorizationClient

For managing applications, users, groups, permissions. Following methods are supported:

  1. createApplication
  2. getApplication
  3. listApplications
  4. updateApplication
  5. deleteApplication
  6. addRoleToApplicationUser
  7. removeRoleFromApplicationUser
  8. setApplicationTags
  9. getApplicationTags
  10. deleteApplicationTags
  11. createAccessKey
  12. getAccessKeys
  13. toggleAccessKeyStatus
  14. deleteAccessKey
  15. upsertUser
  16. getUser
  17. listUsers
  18. deleteUser
  19. upsertGroup
  20. getGroup
  21. listGroups
  22. deleteGroup
  23. addUserToGroup
  24. getUsersInGroup
  25. removeUserFromGroup
  26. grantPermissions
  27. getPermissions
  28. getGrantedPermissionsForGroup
  29. getGrantedPermissionsForUser
  30. removePermissions