opentf-toolkit-nightly 0.58.0.dev1144__py3-none-any.whl → 0.58.0.dev1149__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.
opentf/commons/pubsub.py CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
  """Helpers for the OpenTestFactory subscription and publication API."""
16
16
 
17
- from typing import Any, Dict, Optional
17
+ from typing import Any, Dict, List, Optional
18
18
 
19
19
  import sys
20
20
  import threading
@@ -134,8 +134,8 @@ def subscribe(
134
134
  app,
135
135
  labels: Optional[Dict[str, str]] = None,
136
136
  fields: Optional[Dict[str, str]] = None,
137
- expressions: Optional[Dict[str, Any]] = None,
138
- fieldexpressions: Optional[Dict[str, Any]] = None,
137
+ expressions: Optional[List[Dict[str, Any]]] = None,
138
+ fieldexpressions: Optional[List[Dict[str, Any]]] = None,
139
139
  ) -> str:
140
140
  """Subscribe on specified endpoint.
141
141
 
@@ -44,7 +44,7 @@
44
44
  "additionalProperties": false
45
45
  },
46
46
  "matchExpressions": {
47
- "$ref": "#/definitions/expressions"
47
+ "$ref": "#/definitions/labelexpressions"
48
48
  },
49
49
  "matchFields": {
50
50
  "type": "object",
@@ -57,7 +57,7 @@
57
57
  "additionalProperties": false
58
58
  },
59
59
  "matchFieldExpressions": {
60
- "$ref": "#/definitions/expressions"
60
+ "$ref": "#/definitions/fieldexpressions"
61
61
  }
62
62
  },
63
63
  "minProperties": 1,
@@ -127,58 +127,105 @@
127
127
  ],
128
128
  "additionalProperties": false,
129
129
  "definitions": {
130
- "expressions": {
130
+ "existexpression": {
131
+ "type": "object",
132
+ "properties": {
133
+ "key": {
134
+ "type": "string"
135
+ },
136
+ "operator": {
137
+ "enum": [
138
+ "Exists",
139
+ "DoesNotExist"
140
+ ]
141
+ }
142
+ },
143
+ "additionalProperties": false,
144
+ "required": [
145
+ "key",
146
+ "operator"
147
+ ]
148
+ },
149
+ "inexpression": {
150
+ "type": "object",
151
+ "properties": {
152
+ "key": {
153
+ "type": "string"
154
+ },
155
+ "operator": {
156
+ "enum": [
157
+ "In",
158
+ "NotIn"
159
+ ]
160
+ },
161
+ "values": {
162
+ "type": "array",
163
+ "minItems": 1,
164
+ "items": {
165
+ "type": "string"
166
+ }
167
+ }
168
+ },
169
+ "additionalProperties": false,
170
+ "required": [
171
+ "key",
172
+ "operator",
173
+ "values"
174
+ ]
175
+ },
176
+ "setexpression": {
177
+ "type": "object",
178
+ "properties": {
179
+ "key": {
180
+ "type": "string"
181
+ },
182
+ "operator": {
183
+ "enum": [
184
+ "In",
185
+ "NotIn",
186
+ "ContainsAll",
187
+ "DoesNotContainAll"
188
+ ]
189
+ },
190
+ "values": {
191
+ "type": "array",
192
+ "minItems": 1,
193
+ "items": {
194
+ "type": "string"
195
+ }
196
+ }
197
+ },
198
+ "additionalProperties": false,
199
+ "required": [
200
+ "key",
201
+ "operator",
202
+ "values"
203
+ ]
204
+ },
205
+ "fieldexpressions": {
131
206
  "type": "array",
132
207
  "minItems": 1,
133
208
  "items": {
134
209
  "anyOf": [
135
210
  {
136
- "type": "object",
137
- "properties": {
138
- "key": {
139
- "type": "string"
140
- },
141
- "operator": {
142
- "enum": [
143
- "In",
144
- "NotIn",
145
- "ContainsAll",
146
- "DoesNotContainAll"
147
- ]
148
- },
149
- "values": {
150
- "type": "array",
151
- "minItems": 1,
152
- "items": {
153
- "type": "string"
154
- }
155
- }
156
- },
157
- "additionalProperties": false,
158
- "required": [
159
- "key",
160
- "operator",
161
- "values"
162
- ]
211
+ "$ref": "#/definitions/setexpression"
163
212
  },
164
213
  {
165
- "type": "object",
166
- "properties": {
167
- "key": {
168
- "type": "string"
169
- },
170
- "operator": {
171
- "enum": [
172
- "Exists",
173
- "DoesNotExist"
174
- ]
175
- }
176
- },
177
- "additionalProperties": false,
178
- "required": [
179
- "key",
180
- "operator"
181
- ]
214
+ "$ref": "#/definitions/existexpression"
215
+ }
216
+ ]
217
+ }
218
+ },
219
+ "labelexpressions": {
220
+ "type": "array",
221
+ "minItems": 1,
222
+ "items": {
223
+ "anyOf": [
224
+ {
225
+ "$ref": "#/definitions/inexpression"
226
+ },
227
+ {
228
+ "$ref": "#/definitions/existexpression"
182
229
  }
183
230
  ]
184
231
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: opentf-toolkit-nightly
3
- Version: 0.58.0.dev1144
3
+ Version: 0.58.0.dev1149
4
4
  Summary: OpenTestFactory Orchestrator Toolkit
5
5
  Home-page: https://gitlab.com/henixdevelopment/open-source/opentestfactory/python-toolkit
6
6
  Author: Martin Lafaix
@@ -13,17 +13,17 @@ Classifier: Programming Language :: Python :: 3
13
13
  Classifier: Operating System :: OS Independent
14
14
  Classifier: Topic :: Software Development :: Libraries
15
15
  Classifier: License :: OSI Approved :: Apache Software License
16
- Requires-Python: >= 3.8.0
16
+ Requires-Python: >= 3.9.0
17
17
  Description-Content-Type: text/markdown
18
18
  License-File: LICENSE
19
- Requires-Dist: requests>=2.31
19
+ Requires-Dist: requests>=2.32
20
20
  Requires-Dist: PyJWT[crypto]<2.9,>=2.7
21
21
  Requires-Dist: PyYAML>=6
22
- Requires-Dist: Flask<3,>=2.2.3
22
+ Requires-Dist: Flask<4,>=3
23
23
  Requires-Dist: jsonschema>=4.23
24
24
  Requires-Dist: toposort>=1.10
25
- Requires-Dist: waitress>=2.1.2
26
- Requires-Dist: paste>=3.5.2
25
+ Requires-Dist: waitress>=3
26
+ Requires-Dist: paste>=3.10
27
27
 
28
28
  # opentf-toolkit
29
29
 
@@ -3,7 +3,7 @@ opentf/commons/auth.py,sha256=bM2Z3kxm2Wku1lKXaRAIg37LHvXWAXIZIqjplDfN2P8,15899
3
3
  opentf/commons/config.py,sha256=dyus4K5Zdmcftc3Y9Z1YRkzA1KwiRLHoeAlg2_A49QM,7876
4
4
  opentf/commons/datasources.py,sha256=GSbjrYnZQup2B3r7T7l3C_o6R2jS13nQiu6dRitoenk,26194
5
5
  opentf/commons/expressions.py,sha256=jM_YKXVOFhvOE2aE2IuacuvxhIsOYTFs2oQkpcbWR6g,19645
6
- opentf/commons/pubsub.py,sha256=kHJggZZnoibx31r9NzTd6tyCjHO2NJlr_q1UY4fVwCQ,7567
6
+ opentf/commons/pubsub.py,sha256=S5_20XhrVKJ5ZXFFBg90qlhbG3PZ_H3Mu1hbS1vpy1U,7585
7
7
  opentf/commons/schemas.py,sha256=cjyPXRhRIPQauCdy9zGRaOkqdVcklz47JnljTTLNpq8,4254
8
8
  opentf/commons/selectors.py,sha256=DEpLgRAr5HXSpSYI4liXP2hLUTvOSexFa9Vfa1xIQTk,7134
9
9
  opentf/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -12,7 +12,7 @@ opentf/schemas/opentestfactory.org/v1/ExecutionCommand.json,sha256=UtmAlTaYdPSZD
12
12
  opentf/schemas/opentestfactory.org/v1/GeneratorResult.json,sha256=sOwieyDWi6UZR7X29R9IjOR87ruSRQ4U6CM2_yT81Zk,16607
13
13
  opentf/schemas/opentestfactory.org/v1/ProviderCommand.json,sha256=EU4kvEKxlqpH2IkLZ1HdBealuG6C0YzPkAtI7dNrfHg,4427
14
14
  opentf/schemas/opentestfactory.org/v1/ProviderResult.json,sha256=Ej4zhCE3rCqCGKcaeAoIHwSJTV_7fw-rAxhJ52qA-Gs,9641
15
- opentf/schemas/opentestfactory.org/v1/Subscription.json,sha256=ULD4s-PViRAHUt_iHnvzpQAxONjGW95hXB4tvMS8u_E,6341
15
+ opentf/schemas/opentestfactory.org/v1/Subscription.json,sha256=hNaCUW3qSqqa1LY01Ao7kQ8FJhkjkwMrrPf4xihgSt4,7150
16
16
  opentf/schemas/opentestfactory.org/v1/Workflow.json,sha256=WAFvCAIxmp22-AN1wPuOkd3BYs8UP5u3hj74NnlO3vU,22945
17
17
  opentf/schemas/opentestfactory.org/v1/WorkflowCanceled.json,sha256=BCWxnm3rt4VWh9GXkIhdNY9JYohFWxi9Wg3JjXIavaU,1694
18
18
  opentf/schemas/opentestfactory.org/v1/WorkflowCancellation.json,sha256=HAtc8xjrr-WwXwIck9B86BrHELkCb1oPYhTsRzHMMOE,1993
@@ -57,8 +57,8 @@ opentf/scripts/startup.py,sha256=c5fhYUy_Nk6z-eo0kW0mG56452dcIw9mzb9trljZYZ4,214
57
57
  opentf/toolkit/__init__.py,sha256=mYeJPZ92ulbTBItqEsZgF4nnuRh6G19QPY3Jxc92ifc,23028
58
58
  opentf/toolkit/channels.py,sha256=6xcVKHUK2FdyVKIQmPQbakngfVuQDzCcD_lInOdKpro,17171
59
59
  opentf/toolkit/core.py,sha256=6nud1vqcfjs9swZu_Z-rbvdbejtrlSjOd8eZXIF0ChE,9795
60
- opentf_toolkit_nightly-0.58.0.dev1144.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
61
- opentf_toolkit_nightly-0.58.0.dev1144.dist-info/METADATA,sha256=aw6HxZ-BdUC88HFnFuTYMtjBi-jU-3n48YVykNCkuik,1946
62
- opentf_toolkit_nightly-0.58.0.dev1144.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
63
- opentf_toolkit_nightly-0.58.0.dev1144.dist-info/top_level.txt,sha256=_gPuE6GTT6UNXy1DjtmQSfCcZb_qYA2vWmjg7a30AGk,7
64
- opentf_toolkit_nightly-0.58.0.dev1144.dist-info/RECORD,,
60
+ opentf_toolkit_nightly-0.58.0.dev1149.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
61
+ opentf_toolkit_nightly-0.58.0.dev1149.dist-info/METADATA,sha256=DEtG4B0lQUosA0HMEW_xsabGfbEGmsXks2ImLD2_ypU,1937
62
+ opentf_toolkit_nightly-0.58.0.dev1149.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
63
+ opentf_toolkit_nightly-0.58.0.dev1149.dist-info/top_level.txt,sha256=_gPuE6GTT6UNXy1DjtmQSfCcZb_qYA2vWmjg7a30AGk,7
64
+ opentf_toolkit_nightly-0.58.0.dev1149.dist-info/RECORD,,