stoobly-agent 1.9.7__py3-none-any.whl → 1.9.9__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.
- stoobly_agent/__init__.py +1 -1
- stoobly_agent/app/cli/scaffold/templates/app/.Makefile +39 -62
- stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/exec/.docker-compose.exec.yml +1 -0
- stoobly_agent/app/cli/scaffold_cli.py +7 -5
- stoobly_agent/app/cli/validators/scaffold.py +9 -0
- {stoobly_agent-1.9.7.dist-info → stoobly_agent-1.9.9.dist-info}/METADATA +1 -1
- {stoobly_agent-1.9.7.dist-info → stoobly_agent-1.9.9.dist-info}/RECORD +23 -23
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.disable → intercept/.disable} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.enable → intercept/.enable} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.down → scaffold/.down} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.logs → scaffold/.logs} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.mkcert → scaffold/.mkcert} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.services → scaffold/.services} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.up → scaffold/.up} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.create → scenario/.create} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.delete → scenario/.delete} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.list → scenario/.list} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.overwrite → scenario/.overwrite} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.reset → scenario/.reset} +0 -0
- /stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.snapshot → scenario/.snapshot} +0 -0
- {stoobly_agent-1.9.7.dist-info → stoobly_agent-1.9.9.dist-info}/LICENSE +0 -0
- {stoobly_agent-1.9.7.dist-info → stoobly_agent-1.9.9.dist-info}/WHEEL +0 -0
- {stoobly_agent-1.9.7.dist-info → stoobly_agent-1.9.9.dist-info}/entry_points.txt +0 -0
stoobly_agent/__init__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
1
|
COMMAND = 'stoobly-agent'
|
2
|
-
VERSION = '1.9.
|
2
|
+
VERSION = '1.9.9'
|
@@ -1,20 +1,23 @@
|
|
1
1
|
# Overridable Environment Variables
|
2
2
|
#
|
3
|
-
# STOOBLY_APP_DIR: path to the application source code directory
|
4
|
-
# STOOBLY_CA_CERTS_DIR: path to folder where ca certs are stored
|
5
|
-
# STOOBLY_CERTS_DIR: path to a folder to store certs
|
6
|
-
# STOOBLY_CONTEXT_DIR: path to the folder containing the .stoobly folder
|
7
|
-
#
|
3
|
+
# STOOBLY_APP_DIR: path to the application source code directory, defaults to $(pwd)
|
4
|
+
# STOOBLY_CA_CERTS_DIR: path to folder where ca certs are stored, defaults to $(pwd)/.stoobly/ca_certs
|
5
|
+
# STOOBLY_CERTS_DIR: path to a folder to store certs, defaults to $(pwd)/.stoobly/certs
|
6
|
+
# STOOBLY_CONTEXT_DIR: path to the folder containing the .stoobly folder, defaults to $(pwd)
|
7
|
+
# STOOBLY_ENV_FILE: path to dotenv file, defaults to $(pwd)/.env
|
8
|
+
# STOOBLY_WORKFLOW_SERVICE_OPTIONS: extra --service options to pass 'stoobly-agent scaffold workflow' commands
|
8
9
|
|
9
10
|
# Overridable Options
|
10
11
|
#
|
11
|
-
# workflow_down_extra_options
|
12
|
-
# workflow_log_extra_options
|
13
|
-
# workflow_up_extra_options
|
12
|
+
# workflow_down_extra_options e.g. $(eval workflow_down_extra_options=<OPTIONS>)
|
13
|
+
# workflow_log_extra_options e.g. $(eval workflow_log_extra_options=<OPTIONS>)
|
14
|
+
# workflow_up_extra_options e.g. $(eval workflow_up_extra_options=<OPTIONS>)
|
15
|
+
#
|
16
|
+
# For full list, see targets with EXEC_OPTIONS
|
14
17
|
|
15
18
|
# Constants
|
16
19
|
DIR := $(dir $(realpath $(lastword $(MAKEFILE_LIST))))
|
17
|
-
|
20
|
+
DOCKER_BIN := docker
|
18
21
|
PULL_OPTION := $(if $(STOOBLY_IMAGE_USE_LOCAL),,--pull)
|
19
22
|
USER_ID := $(shell id -u)
|
20
23
|
|
@@ -25,6 +28,7 @@ app_dir=$$(realpath "$${STOOBLY_APP_DIR:-$(CONTEXT_DIR_DEFAULT)}")
|
|
25
28
|
ca_certs_dir=$$(realpath "$${STOOBLY_CA_CERTS_DIR:-$(app_data_dir)/ca_certs}")
|
26
29
|
certs_dir=$$(realpath "$${STOOBLY_CERTS_DIR:-$(app_data_dir)/certs}")
|
27
30
|
context_dir=$$(realpath "$${STOOBLY_CONTEXT_DIR:-$(CONTEXT_DIR_DEFAULT)}")
|
31
|
+
env_file=$$(realpath "$${STOOBLY_ENV_FILE:-.env}" 2> /dev/null || echo '')
|
28
32
|
workflow=record
|
29
33
|
workflow_service_options=$(shell echo $$STOOBLY_WORKFLOW_SERVICE_OPTIONS)
|
30
34
|
|
@@ -33,13 +37,11 @@ app_namespace_dir=$(app_data_dir)/docker
|
|
33
37
|
app_tmp_dir=$(app_data_dir)/tmp
|
34
38
|
dockerfile_path=$(app_namespace_dir)/.Dockerfile.context
|
35
39
|
exec_docker_compose_file_path=$(app_namespace_dir)/stoobly-ui/exec/.docker-compose.exec.yml
|
36
|
-
exec_namespace=$(shell echo "$(workflow_namespace).$(context_dir)" | (md5 2>/dev/null || md5sum 2>/dev/null || shasum 2>/dev/null) | awk '{print $$1}')
|
37
40
|
workflow_namespace=$(if $(namespace),$(namespace),$(workflow))
|
38
41
|
workflow_script=.stoobly/tmp/$(workflow_namespace)/run.sh
|
39
42
|
|
40
43
|
# Options
|
41
44
|
certs_dir_options=--ca-certs-dir-path $(ca_certs_dir) --certs-dir-path $(certs_dir)
|
42
|
-
stoobly_exec_options=--profile $(EXEC_WORKFLOW_NAME) -p $(exec_namespace)
|
43
45
|
working_dir_options=--app-dir-path $(app_dir) --context-dir-path $(context_dir)
|
44
46
|
|
45
47
|
workflow_down_options=--user-id $(USER_ID) $(workflow_down_extra_options)
|
@@ -48,29 +50,26 @@ workflow_run_options=--namespace $(workflow_namespace) --script-path $(workflow_
|
|
48
50
|
workflow_up_options=$(working_dir_options) $(certs_dir_options) --user-id $(USER_ID) $(workflow_up_extra_options)
|
49
51
|
|
50
52
|
# Commands
|
51
|
-
docker_command=docker
|
52
|
-
docker_compose_command=$(docker_command) compose
|
53
|
-
exec_down=$(docker_compose_command) -f "$(exec_docker_compose_file_path)" $(stoobly_exec_options) down
|
54
53
|
exec_env=APP_DIR="$(app_dir)" CA_CERTS_DIR="$(ca_certs_dir)" USER_ID="$(USER_ID)"
|
55
|
-
exec_up=$(
|
56
|
-
source_env=
|
54
|
+
exec_up=$(DOCKER_BIN) compose -f "$(exec_docker_compose_file_path)" run --rm stoobly_ui.command
|
55
|
+
source_env=set -a; [ -f "$(env_file)" ] && . "$(env_file)"; set +a
|
57
56
|
|
58
57
|
# Build base image
|
59
|
-
stoobly_exec_build=$(
|
58
|
+
stoobly_exec_build=$(DOCKER_BIN) build $(stoobly_exec_build_args) $(app_namespace_dir) > /dev/null
|
60
59
|
stoobly_exec_build_args=-f "$(dockerfile_path)" -t stoobly.$(USER_ID) --build-arg USER_ID=$(USER_ID) $(PULL_OPTION) --quiet
|
61
60
|
|
62
61
|
# Exec any
|
63
|
-
stoobly_exec=$(stoobly_exec_build) && $(stoobly_exec_env) $(exec_up)
|
64
|
-
stoobly_exec_env=$(
|
62
|
+
stoobly_exec=$(source_env); $(stoobly_exec_build) && $(stoobly_exec_env) $(exec_up)
|
63
|
+
stoobly_exec_env=$(exec_env) CONTEXT_DIR="$(context_dir)"
|
65
64
|
|
66
65
|
# Exec workflow run
|
67
|
-
# Scaffold is stored in the application source code directory
|
68
|
-
#
|
69
|
-
stoobly_exec_run=$(stoobly_exec_build) && $(stoobly_exec_run_env) $(exec_up)
|
70
|
-
stoobly_exec_run_env=$(
|
66
|
+
# Scaffold is stored in the application source code directory.
|
67
|
+
# When running a scaffold command from within a container, it needs access to $(app_dir) rather than $(context_dir)
|
68
|
+
stoobly_exec_run=$(source_env); $(stoobly_exec_build) && $(stoobly_exec_run_env) $(exec_up)
|
69
|
+
stoobly_exec_run_env=$(exec_env) CONTEXT_DIR="$(app_dir)"
|
71
70
|
|
72
71
|
# Workflow run
|
73
|
-
workflow_run
|
72
|
+
workflow_run=bash "$(app_dir)/$(workflow_script)"
|
74
73
|
|
75
74
|
action/install:
|
76
75
|
$(eval action=install)
|
@@ -87,10 +86,8 @@ ca-cert/install: stoobly/install
|
|
87
86
|
fi \
|
88
87
|
fi
|
89
88
|
certs:
|
90
|
-
@export EXEC_COMMAND
|
89
|
+
@export EXEC_COMMAND=scaffold/.mkcert EXEC_OPTIONS="" EXEC_ARGS="" && \
|
91
90
|
$(stoobly_exec)
|
92
|
-
exec/down:
|
93
|
-
@$(stoobly_exec_env) EXEC_COMMAND=- EXEC_ARGS=- EXEC_OPTIONS=- $(exec_down)
|
94
91
|
nameservers: tmpdir
|
95
92
|
@if [ -f /etc/resolv.conf ]; then \
|
96
93
|
nameserver=$$(grep -Eo '([0-9]{1,3}\.){3}[0-9]{1,3}' /etc/resolv.conf) && \
|
@@ -103,16 +100,15 @@ nameservers: tmpdir
|
|
103
100
|
echo "/etc/resolv.conf not found." >&2; \
|
104
101
|
fi
|
105
102
|
intercept/disable:
|
106
|
-
@export EXEC_COMMAND
|
103
|
+
@export EXEC_COMMAND=intercept/.disable EXEC_OPTIONS="" EXEC_ARGS="" && \
|
107
104
|
$(stoobly_exec)
|
108
105
|
intercept/enable:
|
109
|
-
@export EXEC_COMMAND
|
110
|
-
export EXEC_ARGS=$(scenario_key) && \
|
106
|
+
@export EXEC_COMMAND=intercept/.enable EXEC_OPTIONS="" EXEC_ARGS=$(scenario_key) && \
|
111
107
|
$(stoobly_exec)
|
112
108
|
mock: workflow/mock ca-cert/install workflow/hostname/install nameservers workflow/up
|
113
109
|
mock/services: workflow/mock workflow/services
|
114
110
|
mock/logs: workflow/mock workflow/logs
|
115
|
-
mock/down: workflow/mock workflow/down workflow/hostname/uninstall
|
111
|
+
mock/down: workflow/mock workflow/down workflow/hostname/uninstall
|
116
112
|
pipx/install:
|
117
113
|
@if ! command -v pipx >/dev/null 2>&1; then \
|
118
114
|
echo "pipx is not installed. Installing pipx..."; \
|
@@ -124,43 +120,32 @@ python/validate:
|
|
124
120
|
exit 1; \
|
125
121
|
fi
|
126
122
|
record: workflow/record ca-cert/install workflow/hostname/install nameservers workflow/up
|
127
|
-
record/down: workflow/record workflow/down workflow/hostname/uninstall
|
123
|
+
record/down: workflow/record workflow/down workflow/hostname/uninstall
|
128
124
|
record/services: workflow/record workflow/services
|
129
125
|
record/logs: workflow/record workflow/logs
|
130
126
|
scenario/create:
|
131
127
|
# Create a scenario
|
132
|
-
@export EXEC_COMMAND
|
133
|
-
export EXEC_OPTIONS="$(options)" && \
|
134
|
-
export EXEC_ARGS="$(name)" && \
|
128
|
+
@export EXEC_COMMAND=scenario/.create EXEC_OPTIONS="$(options)" EXEC_ARGS="$(name)" && \
|
135
129
|
$(stoobly_exec)
|
136
130
|
scenario/delete:
|
137
131
|
# Delete a scenario
|
138
|
-
@export EXEC_COMMAND
|
139
|
-
export EXEC_OPTIONS="$(options)" && \
|
140
|
-
export EXEC_ARGS="$(key)" && \
|
132
|
+
@export EXEC_COMMAND=scenario/.delete EXEC_OPTIONS="$(options)" EXEC_ARGS="$(key)" && \
|
141
133
|
$(stoobly_exec)
|
142
134
|
scenario/list:
|
143
135
|
# List scenarios
|
144
|
-
@export EXEC_COMMAND
|
145
|
-
export EXEC_OPTIONS="$(options)" && \
|
136
|
+
@export EXEC_COMMAND=scenario/.list EXEC_OPTIONS="$(options)" EXEC_ARGS="" && \
|
146
137
|
$(stoobly_exec)
|
147
138
|
scenario/overwrite:
|
148
139
|
# Overwrite a scenario
|
149
|
-
@export EXEC_COMMAND
|
150
|
-
export EXEC_OPTIONS="$(options)" && \
|
151
|
-
export EXEC_ARGS="$(key)" && \
|
140
|
+
@export EXEC_COMMAND=scenario/.overwrite EXEC_OPTIONS="$(options)" EXEC_ARGS="$(key)" && \
|
152
141
|
$(stoobly_exec)
|
153
142
|
scenario/reset:
|
154
143
|
# Resets a scenario to its last snapshot
|
155
|
-
@export EXEC_COMMAND
|
156
|
-
export EXEC_OPTIONS="$(options)" && \
|
157
|
-
export EXEC_ARGS="$(key)" && \
|
144
|
+
@export EXEC_COMMAND=scenario/.reset EXEC_OPTIONS="$(options)" EXEC_ARGS="$(key)" && \
|
158
145
|
$(stoobly_exec)
|
159
146
|
scenario/snapshot:
|
160
147
|
# Create committable files for a scenario
|
161
|
-
@export EXEC_COMMAND
|
162
|
-
export EXEC_OPTIONS="$(options)" && \
|
163
|
-
export EXEC_ARGS="$(key)" && \
|
148
|
+
@export EXEC_COMMAND=scenario/.snapshot EXEC_OPTIONS="$(options)" EXEC_ARGS="$(key)" && \
|
164
149
|
$(stoobly_exec)
|
165
150
|
stoobly/install: python/validate pipx/install
|
166
151
|
@if ! pipx list 2> /dev/null | grep -q 'stoobly-agent'; then \
|
@@ -170,13 +155,11 @@ stoobly/install: python/validate pipx/install
|
|
170
155
|
test: workflow/test workflow/up
|
171
156
|
test/services: workflow/test workflow/services
|
172
157
|
test/logs: workflow/test workflow/logs
|
173
|
-
test/down: workflow/test workflow/down
|
158
|
+
test/down: workflow/test workflow/down
|
174
159
|
tmpdir:
|
175
160
|
@mkdir -p $(app_tmp_dir)
|
176
161
|
workflow/down:
|
177
|
-
@export EXEC_COMMAND
|
178
|
-
export EXEC_OPTIONS="$(workflow_down_options) $(workflow_run_options) $(options)" && \
|
179
|
-
export EXEC_ARGS="$(workflow)" && \
|
162
|
+
@export EXEC_COMMAND=scaffold/.down EXEC_OPTIONS="$(workflow_down_options) $(workflow_run_options) $(options)" EXEC_ARGS="$(workflow)" && \
|
180
163
|
$(stoobly_exec_run) && \
|
181
164
|
$(workflow_run)
|
182
165
|
workflow/hostname: stoobly/install
|
@@ -194,9 +177,7 @@ workflow/hostname: stoobly/install
|
|
194
177
|
workflow/hostname/install: action/install workflow/hostname
|
195
178
|
workflow/hostname/uninstall: action/uninstall workflow/hostname
|
196
179
|
workflow/logs:
|
197
|
-
@export EXEC_COMMAND
|
198
|
-
export EXEC_OPTIONS="$(workflow_log_options) $(workflow_run_options) $(options)" && \
|
199
|
-
export EXEC_ARGS="$(workflow)" && \
|
180
|
+
@export EXEC_COMMAND=scaffold/.logs EXEC_OPTIONS="$(workflow_log_options) $(workflow_run_options) $(options)" EXEC_ARGS="$(workflow)" && \
|
200
181
|
$(stoobly_exec_run) && \
|
201
182
|
$(workflow_run)
|
202
183
|
workflow/mock:
|
@@ -204,15 +185,11 @@ workflow/mock:
|
|
204
185
|
workflow/record:
|
205
186
|
$(eval workflow=record)
|
206
187
|
workflow/services:
|
207
|
-
@export EXEC_COMMAND
|
208
|
-
export EXEC_OPTIONS="$(workflow_service_options) $(options)" && \
|
209
|
-
export EXEC_ARGS="$(workflow)" && \
|
188
|
+
@export EXEC_COMMAND=scaffold/.services EXEC_OPTIONS="$(workflow_service_options) $(options)" EXEC_ARGS="$(workflow)" && \
|
210
189
|
$(stoobly_exec_run)
|
211
190
|
workflow/test:
|
212
191
|
$(eval workflow=test) $(eval workflow_up_extra_options=$(workflow_up_extra_options) --no-publish)
|
213
192
|
workflow/up:
|
214
|
-
@export EXEC_COMMAND
|
215
|
-
export EXEC_OPTIONS="$(workflow_up_options) $(workflow_run_options) $(options)" && \
|
216
|
-
export EXEC_ARGS="$(workflow)" && \
|
193
|
+
@export EXEC_COMMAND=scaffold/.up EXEC_OPTIONS="$(workflow_up_options) $(workflow_run_options) $(options)" EXEC_ARGS="$(workflow)" && \
|
217
194
|
$(stoobly_exec_run) && \
|
218
195
|
$(workflow_run)
|
@@ -37,7 +37,7 @@ from stoobly_agent.config.data_dir import DataDir
|
|
37
37
|
from stoobly_agent.lib.logger import bcolors, DEBUG, ERROR, INFO, Logger, WARNING
|
38
38
|
|
39
39
|
from .helpers.print_service import FORMATS, print_services, select_print_options
|
40
|
-
from .validators.scaffold import validate_app_name, validate_hostname, validate_namespace, validate_service_name
|
40
|
+
from .validators.scaffold import validate_app_name, validate_hostname, validate_namespace, validate_network, validate_service_name
|
41
41
|
|
42
42
|
LOG_ID = 'Scaffold'
|
43
43
|
|
@@ -88,7 +88,7 @@ def hostname(ctx):
|
|
88
88
|
help="Scaffold application"
|
89
89
|
)
|
90
90
|
@click.option('--app-dir-path', default=current_working_dir, help='Path to create the app scaffold.')
|
91
|
-
@click.option('--network', help='App default network name. Defaults to app name.')
|
91
|
+
@click.option('--network', callback=validate_network, help='App default network name. Defaults to app name.')
|
92
92
|
@click.option('--quiet', is_flag=True, help='Disable log output.')
|
93
93
|
@click.option('--ui-port', default=4200, type=click.IntRange(1, 65535), help='UI service port.')
|
94
94
|
@click.argument('app_name', callback=validate_app_name)
|
@@ -335,7 +335,7 @@ def copy(**kwargs):
|
|
335
335
|
Log levels can be "debug", "info", "warning", or "error"
|
336
336
|
''')
|
337
337
|
@click.option('--namespace', callback=validate_namespace, help='Workflow namespace.')
|
338
|
-
@click.option('--network', help='Workflow network name.')
|
338
|
+
@click.option('--network', callback=validate_network, help='Workflow network name.')
|
339
339
|
@click.option('--rmi', is_flag=True, help='Remove images used by containers.')
|
340
340
|
@click.option('--script-path', help='Path to intermediate script path.')
|
341
341
|
@click.option('--service', multiple=True, help='Select which services to log. Defaults to all.')
|
@@ -480,7 +480,7 @@ def logs(**kwargs):
|
|
480
480
|
''')
|
481
481
|
@click.option('--mkcert', is_flag=True, help='Set to generate SSL certs for HTTPS services.')
|
482
482
|
@click.option('--namespace', callback=validate_namespace, help='Workflow namespace.')
|
483
|
-
@click.option('--network', help='Workflow network name.')
|
483
|
+
@click.option('--network', callback=validate_network, help='Workflow network name.')
|
484
484
|
@click.option('--no-build', is_flag=True, help='Do not build images before starting containers.')
|
485
485
|
@click.option('--no-publish', is_flag=True, help='Do not publish all ports.')
|
486
486
|
@click.option('--pull', is_flag=True, help='Pull image before running.')
|
@@ -513,7 +513,9 @@ def up(**kwargs):
|
|
513
513
|
|
514
514
|
# Gateway ports are dynamically set depending on the workflow run
|
515
515
|
workflow = Workflow(kwargs['workflow_name'], app)
|
516
|
-
configure_gateway(
|
516
|
+
configure_gateway(
|
517
|
+
kwargs['namespace'] or workflow.workflow_name, workflow.service_paths_from_services(services), kwargs['no_publish']
|
518
|
+
)
|
517
519
|
|
518
520
|
commands: List[WorkflowRunCommand] = []
|
519
521
|
for service in services:
|
@@ -19,6 +19,15 @@ def validate_hostname(ctx, param, hostname: str) -> str:
|
|
19
19
|
sys.exit(1)
|
20
20
|
return hostname
|
21
21
|
|
22
|
+
def validate_network(ctx, param, network: str) -> str:
|
23
|
+
if not network:
|
24
|
+
return
|
25
|
+
network_regex = re.compile(r'^[a-zA-Z0-9._-]+$')
|
26
|
+
if not re.search(network_regex, network):
|
27
|
+
print(f"Error: network {network} is invalid.", file=sys.stderr)
|
28
|
+
sys.exit(1)
|
29
|
+
return network
|
30
|
+
|
22
31
|
def validate_namespace(ctx, param, namespace: str) -> str:
|
23
32
|
if not namespace:
|
24
33
|
return
|
@@ -1,4 +1,4 @@
|
|
1
|
-
stoobly_agent/__init__.py,sha256=
|
1
|
+
stoobly_agent/__init__.py,sha256=ynj3t69d_GKqdl_NzWnMm4vXo8bYFLqoXtgFzDp3BXk,44
|
2
2
|
stoobly_agent/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
3
|
stoobly_agent/app/api/__init__.py,sha256=ctkB8KR-eXO0SFhj602huHiyvQ3PslFWd8fkcufgrAI,1000
|
4
4
|
stoobly_agent/app/api/application_http_request_handler.py,sha256=Vvz53yB0bR7J-QqMAkLlhcZrA4P64ZEN7w8cMbgl6o0,5261
|
@@ -105,7 +105,7 @@ stoobly_agent/app/cli/scaffold/service_workflow.py,sha256=sQ_Edy_wGHKMXpD0DmhnOW
|
|
105
105
|
stoobly_agent/app/cli/scaffold/service_workflow_validate_command.py,sha256=veigidzR4EwGi8dc0v_l4Ik7cZikDBnLcvwcHNc1Wzg,11457
|
106
106
|
stoobly_agent/app/cli/scaffold/templates/__init__.py,sha256=x8C_a0VoO_vUbosp4_6IC1U7Ge9NnUdVKDPpVMtMkeY,171
|
107
107
|
stoobly_agent/app/cli/scaffold/templates/app/.Dockerfile.context,sha256=Okk4Q0Fj7Wi5NU58gQfpjpFwAL3RUBJyRe56kteQfcA,158
|
108
|
-
stoobly_agent/app/cli/scaffold/templates/app/.Makefile,sha256=
|
108
|
+
stoobly_agent/app/cli/scaffold/templates/app/.Makefile,sha256=VGtO-dz0tXHfUN9MMkc3Lqfqg6Vhdb_aiz7cxiot3DE,8950
|
109
109
|
stoobly_agent/app/cli/scaffold/templates/app/.docker-compose.base.yml,sha256=6tFqXh3ine8vaD0FCL5TMoY5NjKx2wLUR8XpW3tJtew,245
|
110
110
|
stoobly_agent/app/cli/scaffold/templates/app/.docker-compose.networks.yml,sha256=I4PbJpQjFHb5IbAUWNvYM6okDEtmwtKFDQg-yog05WM,141
|
111
111
|
stoobly_agent/app/cli/scaffold/templates/app/Makefile,sha256=TEmPG7Bf0KZOnmfsgdzza3UdwcVMmM5Lj1YdLc4cgjA,79
|
@@ -144,7 +144,7 @@ stoobly_agent/app/cli/scaffold/templates/app/gateway/record/.docker-compose.reco
|
|
144
144
|
stoobly_agent/app/cli/scaffold/templates/app/gateway/test/.docker-compose.test.yml,sha256=oJO6i0lsuQaQeIH80yoPZo3Vs0LzUAH2WRl853yLq6g,136
|
145
145
|
stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/.config.yml,sha256=XnLQZMzzMMIwVycjyPN5QXsmRztkTFAna1kIHYuDfJQ,19
|
146
146
|
stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/.docker-compose.base.yml,sha256=bxrtZqf3YtaJCukzScslh5PgWC5q8xkGIP1wKJf33LA,111
|
147
|
-
stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/exec/.docker-compose.exec.yml,sha256=
|
147
|
+
stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/exec/.docker-compose.exec.yml,sha256=_lku3K0t2TRLMOcoSKcisCLQO_YCXZoevr_q6anjhL8,327
|
148
148
|
stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/mock/.docker-compose.mock.yml,sha256=2wg-YArlQVjat-bin_PLOnULQJW7mOmZjP7CFp6Knbs,242
|
149
149
|
stoobly_agent/app/cli/scaffold/templates/app/stoobly-ui/record/.docker-compose.record.yml,sha256=yDw8OSX7rFsW6J51K5Qf33qM-isGL8V4xPAYayIfnvQ,245
|
150
150
|
stoobly_agent/app/cli/scaffold/templates/build/services/build/mock/.configure,sha256=SKvht2K_3tW08K24rl8_j0jMYOhq1k-GsVwhoHwjxYA,337
|
@@ -159,19 +159,19 @@ stoobly_agent/app/cli/scaffold/templates/build/services/entrypoint/record/.confi
|
|
159
159
|
stoobly_agent/app/cli/scaffold/templates/build/services/entrypoint/record/.init,sha256=AcM6SLUsZa6BOLDjxteDR_AXIco47GZNkWQCGPhPDAY,189
|
160
160
|
stoobly_agent/app/cli/scaffold/templates/build/services/entrypoint/test/.configure,sha256=xWJGhCKQejtVLFAOEZMWnaCeGAc9tuqEh_WsG3xfA_0,184
|
161
161
|
stoobly_agent/app/cli/scaffold/templates/build/services/entrypoint/test/.init,sha256=AcM6SLUsZa6BOLDjxteDR_AXIco47GZNkWQCGPhPDAY,189
|
162
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
163
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
164
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
165
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
166
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
167
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
168
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
169
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
170
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
171
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
172
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
173
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
174
|
-
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/.
|
162
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/intercept/.disable,sha256=xVf4Pk1RLvJm7Ff0rbGoWhYHPv0ME5e93fxS2yFqLnE,45
|
163
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/intercept/.enable,sha256=sfUSPG4uHdXX95BLgivXQYLbsLBP2DjJIiSTXRtvXuY,188
|
164
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scaffold/.down,sha256=WtEjm2hJ01-1GGxRmmcUqZq7VjEe5JfZZKvm8TNhNEs,219
|
165
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scaffold/.logs,sha256=4CJVEVLn9VTQN9LAjOJpijwd_DZ5IuIXL1aFCYkelxk,178
|
166
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scaffold/.mkcert,sha256=vyHaXmvy-7oL2RD8rIxwT-fdJS5kXmB0yHK5fRMo_cM,46
|
167
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scaffold/.services,sha256=sAbaKzBxNDXimyUNinB_a2Kt47vUCa0Kd3Z1QAp2GrU,161
|
168
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scaffold/.up,sha256=S88O31UgsabaMvSwkQJjLF9C7mrFkyEk9x6JDE6qSXI,228
|
169
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scenario/.create,sha256=EZe84bLAKB-mrB9PGMx-amyMjp6x-ESUZKC8wxrWdLE,245
|
170
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scenario/.delete,sha256=RspRDQ7WT5jpN2o-6qXOlH-A2VpN4981pD4ZJljk9Rw,260
|
171
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scenario/.list,sha256=BdX3ARC-Piuwk0vFzBrcxEwtHjdFncpORzqP-hP4IwE,84
|
172
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scenario/.overwrite,sha256=04VwyAXSGNLgbWRGacKAXhswfNlOk02ahprXK3LdSiA,297
|
173
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scenario/.reset,sha256=_pvbLk-ektsCHEh_egDtd6c0sVqCPunwUWggarfoli0,238
|
174
|
+
stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/scenario/.snapshot,sha256=Kav1QNhKG7f0DBzc4-9dmxZMmmVTxmPqakT_W4kVYKk,241
|
175
175
|
stoobly_agent/app/cli/scaffold/templates/build/workflows/mock/.configure,sha256=xWJGhCKQejtVLFAOEZMWnaCeGAc9tuqEh_WsG3xfA_0,184
|
176
176
|
stoobly_agent/app/cli/scaffold/templates/build/workflows/mock/.init,sha256=el5LYLY-7P3-EuxZ8dAFgGNU_4zDhyA4D_iS6D4fvps,312
|
177
177
|
stoobly_agent/app/cli/scaffold/templates/build/workflows/record/.configure,sha256=xWJGhCKQejtVLFAOEZMWnaCeGAc9tuqEh_WsG3xfA_0,184
|
@@ -204,7 +204,7 @@ stoobly_agent/app/cli/scaffold/workflow_env.py,sha256=x8V5pJmIiklD3f2q2-qq-CORf4
|
|
204
204
|
stoobly_agent/app/cli/scaffold/workflow_log_command.py,sha256=Bke4lMOMxuDUFuAx9nlXHbKgYMO4KAg9ASHvjz4aVWc,1372
|
205
205
|
stoobly_agent/app/cli/scaffold/workflow_run_command.py,sha256=AZhLd1N260RjXEiUSRppqfhQMwVyRnn0jpapRu4FwyM,11114
|
206
206
|
stoobly_agent/app/cli/scaffold/workflow_validate_command.py,sha256=Uo_yo6rVR1ZR7xpvsQvlH48AyMBVLRupd4G-bRjzm_Q,5584
|
207
|
-
stoobly_agent/app/cli/scaffold_cli.py,sha256=
|
207
|
+
stoobly_agent/app/cli/scaffold_cli.py,sha256=PmFDxe0pACL7hdyf7bPlol3xxGkOS4VES92HTAnga6Y,32622
|
208
208
|
stoobly_agent/app/cli/scenario_cli.py,sha256=3J1EiJOvunkfWrEkOsanw-XrKkOk78ij_GjBlE9p7CE,8229
|
209
209
|
stoobly_agent/app/cli/snapshot_cli.py,sha256=1Dw5JgDlmG6vctrawIRO7CdB73vAQk_wRBnPG2lVOrQ,11929
|
210
210
|
stoobly_agent/app/cli/trace_cli.py,sha256=K7E-vx3JUcqEDSWOdIOi_AieKNQz7dBfmRrVvKDkzFI,4605
|
@@ -215,7 +215,7 @@ stoobly_agent/app/cli/types/request.py,sha256=QthojE5sfx7OvKu-vVNnSUfGk8n4pLzuBQ
|
|
215
215
|
stoobly_agent/app/cli/types/scenario.py,sha256=28WxmOlbm2Bsek1uu7yc4hJGz-d5oHbYAro7LlFWRoc,81
|
216
216
|
stoobly_agent/app/cli/types/snapshot_migration.py,sha256=4_Re46FKjsflcTOO3qhNsbWWmdEU67SFsF-XE_FKG3M,1859
|
217
217
|
stoobly_agent/app/cli/types/test.py,sha256=1c458B7DFBWsEk5Q1CrZ2CUi84YzEzcs-W4qTcudwAk,714
|
218
|
-
stoobly_agent/app/cli/validators/scaffold.py,sha256=
|
218
|
+
stoobly_agent/app/cli/validators/scaffold.py,sha256=Y2XQrN2RFMcBh228q6inTwZGoN0K5FmXO8JfrgKVwJA,1669
|
219
219
|
stoobly_agent/app/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
220
220
|
stoobly_agent/app/models/adapters/__init__.py,sha256=cEEE--Bvrvk6DAsHx_uPgFhLnZJETP4zSBtWjMqyIKc,233
|
221
221
|
stoobly_agent/app/models/adapters/joined_request_adapter.py,sha256=fSq16n3AAlxi8KJdBESHp3JGio_M9uzMnHbnQU8VI3w,3598
|
@@ -751,8 +751,8 @@ stoobly_agent/test/mock_data/scaffold/docker-compose-local-service.yml,sha256=1W
|
|
751
751
|
stoobly_agent/test/mock_data/scaffold/index.html,sha256=qJwuYajKZ4ihWZrJQ3BNObV5kf1VGnnm_vqlPJzdqLE,258
|
752
752
|
stoobly_agent/test/mock_data/uspto.yaml,sha256=6U5se7C3o-86J4m9xpOk9Npias399f5CbfWzR87WKwE,7835
|
753
753
|
stoobly_agent/test/test_helper.py,sha256=m_oAI7tmRYCNZdKfNqISWhMv3e44tjeYViQ3nTUfnos,1007
|
754
|
-
stoobly_agent-1.9.
|
755
|
-
stoobly_agent-1.9.
|
756
|
-
stoobly_agent-1.9.
|
757
|
-
stoobly_agent-1.9.
|
758
|
-
stoobly_agent-1.9.
|
754
|
+
stoobly_agent-1.9.9.dist-info/LICENSE,sha256=o93sj12cdoEOsTCjPaPFsw3Xq0SXs3pPcY-9reE2sEw,548
|
755
|
+
stoobly_agent-1.9.9.dist-info/METADATA,sha256=P2fxdK2aPocPzJHjKZKqyFF4xz9zhyeERR-EylS6FLA,3087
|
756
|
+
stoobly_agent-1.9.9.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
|
757
|
+
stoobly_agent-1.9.9.dist-info/entry_points.txt,sha256=aq5wix5oC8MDQtmyPGU0xaFrsjJg7WH28NmXh2sc3Z8,56
|
758
|
+
stoobly_agent-1.9.9.dist-info/RECORD,,
|
/stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.disable → intercept/.disable}
RENAMED
File without changes
|
/stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.enable → intercept/.enable}
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
/stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.services → scaffold/.services}
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
/stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.overwrite → scenario/.overwrite}
RENAMED
File without changes
|
File without changes
|
/stoobly_agent/app/cli/scaffold/templates/build/workflows/exec/{.snapshot → scenario/.snapshot}
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|