queueflow 0.1.0__tar.gz
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.
- queueflow-0.1.0/PKG-INFO +26 -0
- queueflow-0.1.0/README.md +188 -0
- queueflow-0.1.0/pyproject.toml +89 -0
- queueflow-0.1.0/queueflow/__init__.py +80 -0
- queueflow-0.1.0/queueflow/api/__init__.py +11 -0
- queueflow-0.1.0/queueflow/api/cron_api.py +1808 -0
- queueflow-0.1.0/queueflow/api/dlq_api.py +996 -0
- queueflow-0.1.0/queueflow/api/health_api.py +527 -0
- queueflow-0.1.0/queueflow/api/jobs_api.py +1830 -0
- queueflow-0.1.0/queueflow/api/system_api.py +523 -0
- queueflow-0.1.0/queueflow/api/worker_api.py +1229 -0
- queueflow-0.1.0/queueflow/api/workflows_api.py +1804 -0
- queueflow-0.1.0/queueflow/api_client.py +797 -0
- queueflow-0.1.0/queueflow/api_response.py +21 -0
- queueflow-0.1.0/queueflow/configuration.py +579 -0
- queueflow-0.1.0/queueflow/exceptions.py +199 -0
- queueflow-0.1.0/queueflow/facade.py +255 -0
- queueflow-0.1.0/queueflow/models/__init__.py +57 -0
- queueflow-0.1.0/queueflow/models/backoff_strategy.py +38 -0
- queueflow-0.1.0/queueflow/models/complete_job_request.py +89 -0
- queueflow-0.1.0/queueflow/models/create_batch_jobs_request.py +95 -0
- queueflow-0.1.0/queueflow/models/create_batch_jobs_response.py +90 -0
- queueflow-0.1.0/queueflow/models/create_cron_request.py +111 -0
- queueflow-0.1.0/queueflow/models/create_cron_response.py +87 -0
- queueflow-0.1.0/queueflow/models/create_job_request.py +108 -0
- queueflow-0.1.0/queueflow/models/create_job_response.py +87 -0
- queueflow-0.1.0/queueflow/models/create_workflow_request.py +101 -0
- queueflow-0.1.0/queueflow/models/create_workflow_response.py +87 -0
- queueflow-0.1.0/queueflow/models/cron_schedule.py +134 -0
- queueflow-0.1.0/queueflow/models/dead_letter.py +136 -0
- queueflow-0.1.0/queueflow/models/error_body.py +90 -0
- queueflow-0.1.0/queueflow/models/fail_job_request.py +91 -0
- queueflow-0.1.0/queueflow/models/health_status.py +92 -0
- queueflow-0.1.0/queueflow/models/heartbeat_request.py +90 -0
- queueflow-0.1.0/queueflow/models/heartbeat_response.py +88 -0
- queueflow-0.1.0/queueflow/models/job.py +172 -0
- queueflow-0.1.0/queueflow/models/job_config.py +106 -0
- queueflow-0.1.0/queueflow/models/job_config_request.py +143 -0
- queueflow-0.1.0/queueflow/models/job_status.py +41 -0
- queueflow-0.1.0/queueflow/models/lease_jobs_request.py +107 -0
- queueflow-0.1.0/queueflow/models/lease_jobs_response.py +95 -0
- queueflow-0.1.0/queueflow/models/leased_job.py +93 -0
- queueflow-0.1.0/queueflow/models/list_crons_response.py +115 -0
- queueflow-0.1.0/queueflow/models/list_dead_letters_response.py +115 -0
- queueflow-0.1.0/queueflow/models/list_jobs_response.py +115 -0
- queueflow-0.1.0/queueflow/models/list_workflows_response.py +115 -0
- queueflow-0.1.0/queueflow/models/on_failure.py +38 -0
- queueflow-0.1.0/queueflow/models/on_success.py +36 -0
- queueflow-0.1.0/queueflow/models/ready_status.py +87 -0
- queueflow-0.1.0/queueflow/models/replay_dead_letter_response.py +87 -0
- queueflow-0.1.0/queueflow/models/stats_snapshot.py +102 -0
- queueflow-0.1.0/queueflow/models/step_status.py +41 -0
- queueflow-0.1.0/queueflow/models/tasks_response.py +87 -0
- queueflow-0.1.0/queueflow/models/workflow.py +130 -0
- queueflow-0.1.0/queueflow/models/workflow_diagram_response.py +89 -0
- queueflow-0.1.0/queueflow/models/workflow_status.py +41 -0
- queueflow-0.1.0/queueflow/models/workflow_step.py +112 -0
- queueflow-0.1.0/queueflow/models/workflow_step_state.py +97 -0
- queueflow-0.1.0/queueflow/models/workflow_step_states_response.py +95 -0
- queueflow-0.1.0/queueflow/py.typed +0 -0
- queueflow-0.1.0/queueflow/rest.py +257 -0
- queueflow-0.1.0/queueflow.egg-info/PKG-INFO +26 -0
- queueflow-0.1.0/queueflow.egg-info/SOURCES.txt +116 -0
- queueflow-0.1.0/queueflow.egg-info/dependency_links.txt +1 -0
- queueflow-0.1.0/queueflow.egg-info/requires.txt +4 -0
- queueflow-0.1.0/queueflow.egg-info/top_level.txt +1 -0
- queueflow-0.1.0/setup.cfg +7 -0
- queueflow-0.1.0/setup.py +50 -0
- queueflow-0.1.0/test/test_backoff_strategy.py +33 -0
- queueflow-0.1.0/test/test_complete_job_request.py +55 -0
- queueflow-0.1.0/test/test_create_batch_jobs_request.py +84 -0
- queueflow-0.1.0/test/test_create_batch_jobs_response.py +58 -0
- queueflow-0.1.0/test/test_create_cron_request.py +68 -0
- queueflow-0.1.0/test/test_create_cron_response.py +52 -0
- queueflow-0.1.0/test/test_create_job_request.py +65 -0
- queueflow-0.1.0/test/test_create_job_response.py +52 -0
- queueflow-0.1.0/test/test_create_workflow_request.py +106 -0
- queueflow-0.1.0/test/test_create_workflow_response.py +52 -0
- queueflow-0.1.0/test/test_cron_api.py +67 -0
- queueflow-0.1.0/test/test_cron_schedule.py +78 -0
- queueflow-0.1.0/test/test_dead_letter.py +64 -0
- queueflow-0.1.0/test/test_dlq_api.py +49 -0
- queueflow-0.1.0/test/test_error_body.py +54 -0
- queueflow-0.1.0/test/test_facade.py +267 -0
- queueflow-0.1.0/test/test_fail_job_request.py +55 -0
- queueflow-0.1.0/test/test_health_api.py +43 -0
- queueflow-0.1.0/test/test_health_status.py +56 -0
- queueflow-0.1.0/test/test_heartbeat_request.py +54 -0
- queueflow-0.1.0/test/test_heartbeat_response.py +52 -0
- queueflow-0.1.0/test/test_job.py +98 -0
- queueflow-0.1.0/test/test_job_config.py +57 -0
- queueflow-0.1.0/test/test_job_config_request.py +58 -0
- queueflow-0.1.0/test/test_job_status.py +33 -0
- queueflow-0.1.0/test/test_jobs_api.py +68 -0
- queueflow-0.1.0/test/test_lease_jobs_request.py +53 -0
- queueflow-0.1.0/test/test_lease_jobs_response.py +126 -0
- queueflow-0.1.0/test/test_leased_job.py +120 -0
- queueflow-0.1.0/test/test_list_crons_response.py +106 -0
- queueflow-0.1.0/test/test_list_dead_letters_response.py +84 -0
- queueflow-0.1.0/test/test_list_jobs_response.py +130 -0
- queueflow-0.1.0/test/test_list_workflows_response.py +132 -0
- queueflow-0.1.0/test/test_on_failure.py +33 -0
- queueflow-0.1.0/test/test_on_success.py +33 -0
- queueflow-0.1.0/test/test_ready_status.py +52 -0
- queueflow-0.1.0/test/test_replay_dead_letter_response.py +52 -0
- queueflow-0.1.0/test/test_stats_snapshot.py +66 -0
- queueflow-0.1.0/test/test_step_status.py +33 -0
- queueflow-0.1.0/test/test_system_api.py +43 -0
- queueflow-0.1.0/test/test_tasks_response.py +56 -0
- queueflow-0.1.0/test/test_worker_api.py +55 -0
- queueflow-0.1.0/test/test_workflow.py +115 -0
- queueflow-0.1.0/test/test_workflow_diagram_response.py +54 -0
- queueflow-0.1.0/test/test_workflow_status.py +33 -0
- queueflow-0.1.0/test/test_workflow_step.py +73 -0
- queueflow-0.1.0/test/test_workflow_step_state.py +55 -0
- queueflow-0.1.0/test/test_workflow_step_states_response.py +62 -0
- queueflow-0.1.0/test/test_workflows_api.py +67 -0
queueflow-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: queueflow
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: QueueFlow API
|
|
5
|
+
Home-page: https://github.com/queueflow/queueflow-sdk-python
|
|
6
|
+
Author: QueueFlow
|
|
7
|
+
Author-email: team@queueflow.dev
|
|
8
|
+
License: MIT
|
|
9
|
+
Keywords: OpenAPI,OpenAPI-Generator,QueueFlow API
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
Requires-Dist: urllib3<3.0.0,>=1.25.3
|
|
12
|
+
Requires-Dist: python-dateutil>=2.8.2
|
|
13
|
+
Requires-Dist: pydantic>=2
|
|
14
|
+
Requires-Dist: typing-extensions>=4.7.1
|
|
15
|
+
Dynamic: author
|
|
16
|
+
Dynamic: author-email
|
|
17
|
+
Dynamic: description
|
|
18
|
+
Dynamic: description-content-type
|
|
19
|
+
Dynamic: home-page
|
|
20
|
+
Dynamic: keywords
|
|
21
|
+
Dynamic: license
|
|
22
|
+
Dynamic: requires-dist
|
|
23
|
+
Dynamic: summary
|
|
24
|
+
|
|
25
|
+
REST API for QueueFlow, a PostgreSQL-native distributed job queue and workflow engine.
|
|
26
|
+
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
# queueflow
|
|
2
|
+
REST API for QueueFlow, a PostgreSQL-native distributed job queue and workflow engine.
|
|
3
|
+
|
|
4
|
+
This Python package is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
|
5
|
+
|
|
6
|
+
- API version: 1.0.0
|
|
7
|
+
- Package version: 0.1.0
|
|
8
|
+
- Generator version: 7.10.0
|
|
9
|
+
- Build package: org.openapitools.codegen.languages.PythonClientCodegen
|
|
10
|
+
For more information, please visit [https://queueflow.dev](https://queueflow.dev)
|
|
11
|
+
|
|
12
|
+
## Requirements.
|
|
13
|
+
|
|
14
|
+
Python 3.8+
|
|
15
|
+
|
|
16
|
+
## Installation & Usage
|
|
17
|
+
### pip install
|
|
18
|
+
|
|
19
|
+
If the python package is hosted on a repository, you can install directly using:
|
|
20
|
+
|
|
21
|
+
```sh
|
|
22
|
+
pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git
|
|
23
|
+
```
|
|
24
|
+
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git`)
|
|
25
|
+
|
|
26
|
+
Then import the package:
|
|
27
|
+
```python
|
|
28
|
+
import queueflow
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Setuptools
|
|
32
|
+
|
|
33
|
+
Install via [Setuptools](http://pypi.python.org/pypi/setuptools).
|
|
34
|
+
|
|
35
|
+
```sh
|
|
36
|
+
python setup.py install --user
|
|
37
|
+
```
|
|
38
|
+
(or `sudo python setup.py install` to install the package for all users)
|
|
39
|
+
|
|
40
|
+
Then import the package:
|
|
41
|
+
```python
|
|
42
|
+
import queueflow
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Tests
|
|
46
|
+
|
|
47
|
+
Execute `pytest` to run the tests.
|
|
48
|
+
|
|
49
|
+
## Getting Started
|
|
50
|
+
|
|
51
|
+
Please follow the [installation procedure](#installation--usage) and then run the following:
|
|
52
|
+
|
|
53
|
+
```python
|
|
54
|
+
|
|
55
|
+
import queueflow
|
|
56
|
+
from queueflow.rest import ApiException
|
|
57
|
+
from pprint import pprint
|
|
58
|
+
|
|
59
|
+
# Defining the host is optional and defaults to http://localhost:8000
|
|
60
|
+
# See configuration.py for a list of all supported configuration parameters.
|
|
61
|
+
configuration = queueflow.Configuration(
|
|
62
|
+
host = "http://localhost:8000"
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
# The client must configure the authentication and authorization parameters
|
|
66
|
+
# in accordance with the API server security policy.
|
|
67
|
+
# Examples for each auth method are provided below, use the example that
|
|
68
|
+
# satisfies your auth use case.
|
|
69
|
+
|
|
70
|
+
# Configure Bearer authorization (API Key): bearerAuth
|
|
71
|
+
configuration = queueflow.Configuration(
|
|
72
|
+
access_token = os.environ["BEARER_TOKEN"]
|
|
73
|
+
)
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
# Enter a context with an instance of the API client
|
|
77
|
+
with queueflow.ApiClient(configuration) as api_client:
|
|
78
|
+
# Create an instance of the API class
|
|
79
|
+
api_instance = queueflow.CronApi(api_client)
|
|
80
|
+
create_cron_request = queueflow.CreateCronRequest() # CreateCronRequest |
|
|
81
|
+
|
|
82
|
+
try:
|
|
83
|
+
api_response = api_instance.create_cron(create_cron_request)
|
|
84
|
+
print("The response of CronApi->create_cron:\n")
|
|
85
|
+
pprint(api_response)
|
|
86
|
+
except ApiException as e:
|
|
87
|
+
print("Exception when calling CronApi->create_cron: %s\n" % e)
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Documentation for API Endpoints
|
|
92
|
+
|
|
93
|
+
All URIs are relative to *http://localhost:8000*
|
|
94
|
+
|
|
95
|
+
Class | Method | HTTP request | Description
|
|
96
|
+
------------ | ------------- | ------------- | -------------
|
|
97
|
+
*CronApi* | [**create_cron**](docs/CronApi.md#create_cron) | **POST** /api/v1/cron |
|
|
98
|
+
*CronApi* | [**delete_cron**](docs/CronApi.md#delete_cron) | **DELETE** /api/v1/cron/{id} |
|
|
99
|
+
*CronApi* | [**get_cron**](docs/CronApi.md#get_cron) | **GET** /api/v1/cron/{id} |
|
|
100
|
+
*CronApi* | [**list_crons**](docs/CronApi.md#list_crons) | **GET** /api/v1/cron |
|
|
101
|
+
*CronApi* | [**pause_cron**](docs/CronApi.md#pause_cron) | **POST** /api/v1/cron/{id}/pause |
|
|
102
|
+
*CronApi* | [**resume_cron**](docs/CronApi.md#resume_cron) | **POST** /api/v1/cron/{id}/resume |
|
|
103
|
+
*DlqApi* | [**get_dead_letter**](docs/DlqApi.md#get_dead_letter) | **GET** /api/v1/dlq/{id} |
|
|
104
|
+
*DlqApi* | [**list_dead_letters**](docs/DlqApi.md#list_dead_letters) | **GET** /api/v1/dlq |
|
|
105
|
+
*DlqApi* | [**replay_dead_letter**](docs/DlqApi.md#replay_dead_letter) | **POST** /api/v1/dlq/{id}/replay |
|
|
106
|
+
*HealthApi* | [**get_health**](docs/HealthApi.md#get_health) | **GET** /health |
|
|
107
|
+
*HealthApi* | [**get_ready**](docs/HealthApi.md#get_ready) | **GET** /ready |
|
|
108
|
+
*JobsApi* | [**cancel_job**](docs/JobsApi.md#cancel_job) | **POST** /api/v1/jobs/{id}/cancel |
|
|
109
|
+
*JobsApi* | [**create_batch_jobs**](docs/JobsApi.md#create_batch_jobs) | **POST** /api/v1/jobs/batch |
|
|
110
|
+
*JobsApi* | [**create_job**](docs/JobsApi.md#create_job) | **POST** /api/v1/jobs |
|
|
111
|
+
*JobsApi* | [**get_job**](docs/JobsApi.md#get_job) | **GET** /api/v1/jobs/{id} |
|
|
112
|
+
*JobsApi* | [**list_jobs**](docs/JobsApi.md#list_jobs) | **GET** /api/v1/jobs |
|
|
113
|
+
*JobsApi* | [**stream_job_events**](docs/JobsApi.md#stream_job_events) | **GET** /api/v1/jobs/{id}/events | Stream a job's status transitions as Server-Sent Events until it reaches a terminal state. Lets clients await completion without polling the REST endpoint themselves.
|
|
114
|
+
*SystemApi* | [**get_stats**](docs/SystemApi.md#get_stats) | **GET** /api/v1/stats |
|
|
115
|
+
*SystemApi* | [**list_tasks**](docs/SystemApi.md#list_tasks) | **GET** /api/v1/tasks |
|
|
116
|
+
*WorkerApi* | [**complete_job**](docs/WorkerApi.md#complete_job) | **POST** /api/v1/jobs/{id}/complete |
|
|
117
|
+
*WorkerApi* | [**fail_job**](docs/WorkerApi.md#fail_job) | **POST** /api/v1/jobs/{id}/fail |
|
|
118
|
+
*WorkerApi* | [**heartbeat_job**](docs/WorkerApi.md#heartbeat_job) | **POST** /api/v1/jobs/{id}/heartbeat |
|
|
119
|
+
*WorkerApi* | [**lease_jobs**](docs/WorkerApi.md#lease_jobs) | **POST** /api/v1/queues/{queue}/lease |
|
|
120
|
+
*WorkflowsApi* | [**cancel_workflow**](docs/WorkflowsApi.md#cancel_workflow) | **POST** /api/v1/workflows/{id}/cancel |
|
|
121
|
+
*WorkflowsApi* | [**create_workflow**](docs/WorkflowsApi.md#create_workflow) | **POST** /api/v1/workflows |
|
|
122
|
+
*WorkflowsApi* | [**get_workflow**](docs/WorkflowsApi.md#get_workflow) | **GET** /api/v1/workflows/{id} |
|
|
123
|
+
*WorkflowsApi* | [**get_workflow_diagram**](docs/WorkflowsApi.md#get_workflow_diagram) | **GET** /api/v1/workflows/{id}/diagram |
|
|
124
|
+
*WorkflowsApi* | [**get_workflow_step_states**](docs/WorkflowsApi.md#get_workflow_step_states) | **GET** /api/v1/workflows/{id}/steps |
|
|
125
|
+
*WorkflowsApi* | [**list_workflows**](docs/WorkflowsApi.md#list_workflows) | **GET** /api/v1/workflows |
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
## Documentation For Models
|
|
129
|
+
|
|
130
|
+
- [BackoffStrategy](docs/BackoffStrategy.md)
|
|
131
|
+
- [CompleteJobRequest](docs/CompleteJobRequest.md)
|
|
132
|
+
- [CreateBatchJobsRequest](docs/CreateBatchJobsRequest.md)
|
|
133
|
+
- [CreateBatchJobsResponse](docs/CreateBatchJobsResponse.md)
|
|
134
|
+
- [CreateCronRequest](docs/CreateCronRequest.md)
|
|
135
|
+
- [CreateCronResponse](docs/CreateCronResponse.md)
|
|
136
|
+
- [CreateJobRequest](docs/CreateJobRequest.md)
|
|
137
|
+
- [CreateJobResponse](docs/CreateJobResponse.md)
|
|
138
|
+
- [CreateWorkflowRequest](docs/CreateWorkflowRequest.md)
|
|
139
|
+
- [CreateWorkflowResponse](docs/CreateWorkflowResponse.md)
|
|
140
|
+
- [CronSchedule](docs/CronSchedule.md)
|
|
141
|
+
- [DeadLetter](docs/DeadLetter.md)
|
|
142
|
+
- [ErrorBody](docs/ErrorBody.md)
|
|
143
|
+
- [FailJobRequest](docs/FailJobRequest.md)
|
|
144
|
+
- [HealthStatus](docs/HealthStatus.md)
|
|
145
|
+
- [HeartbeatRequest](docs/HeartbeatRequest.md)
|
|
146
|
+
- [HeartbeatResponse](docs/HeartbeatResponse.md)
|
|
147
|
+
- [Job](docs/Job.md)
|
|
148
|
+
- [JobConfig](docs/JobConfig.md)
|
|
149
|
+
- [JobConfigRequest](docs/JobConfigRequest.md)
|
|
150
|
+
- [JobStatus](docs/JobStatus.md)
|
|
151
|
+
- [LeaseJobsRequest](docs/LeaseJobsRequest.md)
|
|
152
|
+
- [LeaseJobsResponse](docs/LeaseJobsResponse.md)
|
|
153
|
+
- [LeasedJob](docs/LeasedJob.md)
|
|
154
|
+
- [ListCronsResponse](docs/ListCronsResponse.md)
|
|
155
|
+
- [ListDeadLettersResponse](docs/ListDeadLettersResponse.md)
|
|
156
|
+
- [ListJobsResponse](docs/ListJobsResponse.md)
|
|
157
|
+
- [ListWorkflowsResponse](docs/ListWorkflowsResponse.md)
|
|
158
|
+
- [OnFailure](docs/OnFailure.md)
|
|
159
|
+
- [OnSuccess](docs/OnSuccess.md)
|
|
160
|
+
- [ReadyStatus](docs/ReadyStatus.md)
|
|
161
|
+
- [ReplayDeadLetterResponse](docs/ReplayDeadLetterResponse.md)
|
|
162
|
+
- [StatsSnapshot](docs/StatsSnapshot.md)
|
|
163
|
+
- [StepStatus](docs/StepStatus.md)
|
|
164
|
+
- [TasksResponse](docs/TasksResponse.md)
|
|
165
|
+
- [Workflow](docs/Workflow.md)
|
|
166
|
+
- [WorkflowDiagramResponse](docs/WorkflowDiagramResponse.md)
|
|
167
|
+
- [WorkflowStatus](docs/WorkflowStatus.md)
|
|
168
|
+
- [WorkflowStep](docs/WorkflowStep.md)
|
|
169
|
+
- [WorkflowStepState](docs/WorkflowStepState.md)
|
|
170
|
+
- [WorkflowStepStatesResponse](docs/WorkflowStepStatesResponse.md)
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<a id="documentation-for-authorization"></a>
|
|
174
|
+
## Documentation For Authorization
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
Authentication schemes defined for the API:
|
|
178
|
+
<a id="bearerAuth"></a>
|
|
179
|
+
### bearerAuth
|
|
180
|
+
|
|
181
|
+
- **Type**: Bearer authentication (API Key)
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
## Author
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
[tool.poetry]
|
|
2
|
+
name = "queueflow"
|
|
3
|
+
version = "0.1.0"
|
|
4
|
+
description = "QueueFlow API"
|
|
5
|
+
authors = ["QueueFlow"]
|
|
6
|
+
license = "MIT"
|
|
7
|
+
readme = "README.md"
|
|
8
|
+
repository = "https://github.com/elision-labs/queueflow-sdk-python"
|
|
9
|
+
keywords = ["OpenAPI", "OpenAPI-Generator", "QueueFlow API"]
|
|
10
|
+
include = ["queueflow/py.typed"]
|
|
11
|
+
|
|
12
|
+
[tool.poetry.dependencies]
|
|
13
|
+
python = "^3.8"
|
|
14
|
+
|
|
15
|
+
urllib3 = ">= 1.25.3 < 3.0.0"
|
|
16
|
+
python-dateutil = ">= 2.8.2"
|
|
17
|
+
pydantic = ">= 2"
|
|
18
|
+
typing-extensions = ">= 4.7.1"
|
|
19
|
+
|
|
20
|
+
[tool.poetry.dev-dependencies]
|
|
21
|
+
pytest = ">= 7.2.1"
|
|
22
|
+
pytest-cov = ">= 2.8.1"
|
|
23
|
+
tox = ">= 3.9.0"
|
|
24
|
+
flake8 = ">= 4.0.0"
|
|
25
|
+
types-python-dateutil = ">= 2.8.19.14"
|
|
26
|
+
mypy = ">= 1.5"
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
[build-system]
|
|
30
|
+
requires = ["setuptools"]
|
|
31
|
+
build-backend = "setuptools.build_meta"
|
|
32
|
+
|
|
33
|
+
[tool.pylint.'MESSAGES CONTROL']
|
|
34
|
+
extension-pkg-whitelist = "pydantic"
|
|
35
|
+
|
|
36
|
+
[tool.mypy]
|
|
37
|
+
files = [
|
|
38
|
+
"queueflow",
|
|
39
|
+
"test",
|
|
40
|
+
|
|
41
|
+
]
|
|
42
|
+
# TODO: enable "strict" once all these individual checks are passing
|
|
43
|
+
# strict = true
|
|
44
|
+
|
|
45
|
+
# List from: https://mypy.readthedocs.io/en/stable/existing_code.html#introduce-stricter-options
|
|
46
|
+
warn_unused_configs = true
|
|
47
|
+
warn_redundant_casts = true
|
|
48
|
+
warn_unused_ignores = true
|
|
49
|
+
|
|
50
|
+
## Getting these passing should be easy
|
|
51
|
+
strict_equality = true
|
|
52
|
+
extra_checks = true
|
|
53
|
+
|
|
54
|
+
## Strongly recommend enabling this one as soon as you can
|
|
55
|
+
check_untyped_defs = true
|
|
56
|
+
|
|
57
|
+
## These shouldn't be too much additional work, but may be tricky to
|
|
58
|
+
## get passing if you use a lot of untyped libraries
|
|
59
|
+
disallow_subclassing_any = true
|
|
60
|
+
disallow_untyped_decorators = true
|
|
61
|
+
disallow_any_generics = true
|
|
62
|
+
|
|
63
|
+
### These next few are various gradations of forcing use of type annotations
|
|
64
|
+
#disallow_untyped_calls = true
|
|
65
|
+
#disallow_incomplete_defs = true
|
|
66
|
+
#disallow_untyped_defs = true
|
|
67
|
+
#
|
|
68
|
+
### This one isn't too hard to get passing, but return on investment is lower
|
|
69
|
+
#no_implicit_reexport = true
|
|
70
|
+
#
|
|
71
|
+
### This one can be tricky to get passing if you use a lot of untyped libraries
|
|
72
|
+
#warn_return_any = true
|
|
73
|
+
|
|
74
|
+
[[tool.mypy.overrides]]
|
|
75
|
+
module = [
|
|
76
|
+
"queueflow.configuration",
|
|
77
|
+
]
|
|
78
|
+
warn_unused_ignores = true
|
|
79
|
+
strict_equality = true
|
|
80
|
+
extra_checks = true
|
|
81
|
+
check_untyped_defs = true
|
|
82
|
+
disallow_subclassing_any = true
|
|
83
|
+
disallow_untyped_decorators = true
|
|
84
|
+
disallow_any_generics = true
|
|
85
|
+
disallow_untyped_calls = true
|
|
86
|
+
disallow_incomplete_defs = true
|
|
87
|
+
disallow_untyped_defs = true
|
|
88
|
+
no_implicit_reexport = true
|
|
89
|
+
warn_return_any = true
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
# flake8: noqa
|
|
4
|
+
|
|
5
|
+
"""
|
|
6
|
+
QueueFlow API
|
|
7
|
+
|
|
8
|
+
REST API for QueueFlow, a PostgreSQL-native distributed job queue and workflow engine.
|
|
9
|
+
|
|
10
|
+
The version of the OpenAPI document: 1.0.0
|
|
11
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
12
|
+
|
|
13
|
+
Do not edit the class manually.
|
|
14
|
+
""" # noqa: E501
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
__version__ = "0.1.0"
|
|
18
|
+
|
|
19
|
+
# import apis into sdk package
|
|
20
|
+
from queueflow.api.cron_api import CronApi
|
|
21
|
+
from queueflow.api.dlq_api import DlqApi
|
|
22
|
+
from queueflow.api.health_api import HealthApi
|
|
23
|
+
from queueflow.api.jobs_api import JobsApi
|
|
24
|
+
from queueflow.api.system_api import SystemApi
|
|
25
|
+
from queueflow.api.worker_api import WorkerApi
|
|
26
|
+
from queueflow.api.workflows_api import WorkflowsApi
|
|
27
|
+
|
|
28
|
+
# import ApiClient
|
|
29
|
+
from queueflow.api_response import ApiResponse
|
|
30
|
+
from queueflow.api_client import ApiClient
|
|
31
|
+
from queueflow.configuration import Configuration
|
|
32
|
+
from queueflow.exceptions import OpenApiException
|
|
33
|
+
from queueflow.exceptions import ApiTypeError
|
|
34
|
+
from queueflow.exceptions import ApiValueError
|
|
35
|
+
from queueflow.exceptions import ApiKeyError
|
|
36
|
+
from queueflow.exceptions import ApiAttributeError
|
|
37
|
+
from queueflow.exceptions import ApiException
|
|
38
|
+
|
|
39
|
+
# import models into sdk package
|
|
40
|
+
from queueflow.models.backoff_strategy import BackoffStrategy
|
|
41
|
+
from queueflow.models.complete_job_request import CompleteJobRequest
|
|
42
|
+
from queueflow.models.create_batch_jobs_request import CreateBatchJobsRequest
|
|
43
|
+
from queueflow.models.create_batch_jobs_response import CreateBatchJobsResponse
|
|
44
|
+
from queueflow.models.create_cron_request import CreateCronRequest
|
|
45
|
+
from queueflow.models.create_cron_response import CreateCronResponse
|
|
46
|
+
from queueflow.models.create_job_request import CreateJobRequest
|
|
47
|
+
from queueflow.models.create_job_response import CreateJobResponse
|
|
48
|
+
from queueflow.models.create_workflow_request import CreateWorkflowRequest
|
|
49
|
+
from queueflow.models.create_workflow_response import CreateWorkflowResponse
|
|
50
|
+
from queueflow.models.cron_schedule import CronSchedule
|
|
51
|
+
from queueflow.models.dead_letter import DeadLetter
|
|
52
|
+
from queueflow.models.error_body import ErrorBody
|
|
53
|
+
from queueflow.models.fail_job_request import FailJobRequest
|
|
54
|
+
from queueflow.models.health_status import HealthStatus
|
|
55
|
+
from queueflow.models.heartbeat_request import HeartbeatRequest
|
|
56
|
+
from queueflow.models.heartbeat_response import HeartbeatResponse
|
|
57
|
+
from queueflow.models.job import Job
|
|
58
|
+
from queueflow.models.job_config import JobConfig
|
|
59
|
+
from queueflow.models.job_config_request import JobConfigRequest
|
|
60
|
+
from queueflow.models.job_status import JobStatus
|
|
61
|
+
from queueflow.models.lease_jobs_request import LeaseJobsRequest
|
|
62
|
+
from queueflow.models.lease_jobs_response import LeaseJobsResponse
|
|
63
|
+
from queueflow.models.leased_job import LeasedJob
|
|
64
|
+
from queueflow.models.list_crons_response import ListCronsResponse
|
|
65
|
+
from queueflow.models.list_dead_letters_response import ListDeadLettersResponse
|
|
66
|
+
from queueflow.models.list_jobs_response import ListJobsResponse
|
|
67
|
+
from queueflow.models.list_workflows_response import ListWorkflowsResponse
|
|
68
|
+
from queueflow.models.on_failure import OnFailure
|
|
69
|
+
from queueflow.models.on_success import OnSuccess
|
|
70
|
+
from queueflow.models.ready_status import ReadyStatus
|
|
71
|
+
from queueflow.models.replay_dead_letter_response import ReplayDeadLetterResponse
|
|
72
|
+
from queueflow.models.stats_snapshot import StatsSnapshot
|
|
73
|
+
from queueflow.models.step_status import StepStatus
|
|
74
|
+
from queueflow.models.tasks_response import TasksResponse
|
|
75
|
+
from queueflow.models.workflow import Workflow
|
|
76
|
+
from queueflow.models.workflow_diagram_response import WorkflowDiagramResponse
|
|
77
|
+
from queueflow.models.workflow_status import WorkflowStatus
|
|
78
|
+
from queueflow.models.workflow_step import WorkflowStep
|
|
79
|
+
from queueflow.models.workflow_step_state import WorkflowStepState
|
|
80
|
+
from queueflow.models.workflow_step_states_response import WorkflowStepStatesResponse
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# flake8: noqa
|
|
2
|
+
|
|
3
|
+
# import apis into api package
|
|
4
|
+
from queueflow.api.cron_api import CronApi
|
|
5
|
+
from queueflow.api.dlq_api import DlqApi
|
|
6
|
+
from queueflow.api.health_api import HealthApi
|
|
7
|
+
from queueflow.api.jobs_api import JobsApi
|
|
8
|
+
from queueflow.api.system_api import SystemApi
|
|
9
|
+
from queueflow.api.worker_api import WorkerApi
|
|
10
|
+
from queueflow.api.workflows_api import WorkflowsApi
|
|
11
|
+
|