Cormac
11/24/2023, 12:29 PM? Would you like to use an existing deployment configuration? [Use arrows to move; enter to select; n to select none]
┏━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ┃ Name ┃ Entrypoint ┃ Description ┃
┡━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ > │ nde-test-deployment-001 │ flows/prefect-docker-guide-flow.py:get_repo_info │ Test deployment attempting to trigger Prefect Docker image which fetches prefect git from push workqueue │
│ │ nde-test-deployment-002 │ flows/prefect-docker-guide-flow.py:do_some_work │ Test deployment attempting to trigger no-op Prefect Docker image from push workqueue │
└────┴─────────────────────────┴──────────────────────────────────────────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────┘
No, configure a new deployment
Running deployment build steps...
> Running build_docker_image step...
Unable to load step function: prefect_docker.deployments.steps.build_docker_image. Attempting install of prefect-docker>=0.3.1.
Traceback (most recent call last):
File "<CUT>prefect_env\lib\site-packages\prefect\deployments\steps\core.py", line 149, in run_steps
step_output = await run_step(step, upstream_outputs)
step_func = _get_function_for_step(fqn, requires=keywords.get("requires"))
File "<CUT>prefect_env\lib\site-packages\prefect\deployments\steps\core.py", line 83, in _get_function_for_step
subprocess.check_call(
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 364, in check_call
retcode = call(*popenargs, **kwargs)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 345, in call
with Popen(*popenargs, **kwargs) as p:
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 971, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\subprocess.py", line 1456, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
PermissionError: [WinError 5] Access is denied
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<CUT>prefect_env\lib\site-packages\prefect\cli\_utilities.py", line 41, in wrapper
return fn(*args, **kwargs)
File "<CUT>prefect_env\lib\site-packages\prefect\utilities\asyncutils.py", line 255, in coroutine_wrapper
return call()
File "<CUT>prefect_env\lib\site-packages\prefect\_internal\concurrency\calls.py", line 382, in __call__
return self.result()
File "<CUT>prefect_env\lib\site-packages\prefect\_internal\concurrency\calls.py", line 282, in result
return self.future.result(timeout=timeout)
File "<CUT>prefect_env\lib\site-packages\prefect\_internal\concurrency\calls.py", line 168, in result
return self.__get_result()
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.3056.0_x64__qbz5n2kfra8p0\lib\concurrent\futures\_base.py", line 403, in __get_result
raise self._exception
File "<CUT>prefect_env\lib\site-packages\prefect\_internal\concurrency\calls.py", line 345, in _run_async
result = await coro
File "<CUT>prefect_env\lib\site-packages\prefect\cli\deploy.py", line 292, in deploy
await _run_single_deploy(
File "<CUT>prefect_env\lib\site-packages\prefect\client\utilities.py", line 51, in with_injected_client
return await fn(*args, **kwargs)
File "<CUT>prefect_env\lib\site-packages\prefect\cli\deploy.py", line 595, in _run_single_deploy
await run_steps(build_steps, step_outputs, print_function=app.console.print)
File "<CUT>prefect_env\lib\site-packages\prefect\deployments\steps\core.py", line 177, in run_steps
raise StepExecutionError(f"Encountered error while running {fqn}") from exc
prefect.deployments.steps.core.StepExecutionError: Encountered error while running prefect_docker.deployments.steps.build_docker_image
An exception occurred.
I've verified that
• my AWS is logged in (AWS CLI can happily query my AWS cloud project)
• Docker is logged in to ECR: Docker images are building and can be shipped to ECR
• Prefect cloud login is confirmed authenticated
So: What have I missed?
Version information:
Version: 2.14.4
API version: 0.8.4
Python version: 3.10.11
Git commit: d2cf30f4
Built: Thu, Nov 9, 2023 4:48 PM
OS/Arch: win32/AMD64
Profile: default
Server type: cloud
Cormac
11/24/2023, 12:44 PMprefect.deploysments.steps.core._get_function_for_step()
is using get_sys_executable()
call from within a subprocess.check_call()
which is picking up the system python, not the local env python. Perhaps a missing popen kwarg?Cormac
11/24/2023, 12:44 PMCormac
11/24/2023, 1:36 PMCormac
11/24/2023, 3:07 PM