jscheffl commented on code in PR #36482:
URL: https://github.com/apache/airflow/pull/36482#discussion_r1438135048
##########
dev/breeze/src/airflow_breeze/utils/docker_command_utils.py:
##########
@@ -481,10 +482,30 @@ def prepare_broker_url(params, env_variables):
env_variables["AIRFLOW__CELERY__BROKER_URL"] =
url_map[params.celery_broker]
+def check_executable_entrypoint_permissions(quiet: bool = False):
+ """
+ Checks if the user has executable permissions on the entrypoints in
checked-out airflow repository..
+ """
+ for volume in SCRIPTS_DOCKER_DIR.glob("entrypoint*.sh"):
+ if get_verbose() and not quiet:
+ get_console().print(f"[info]Checking executable permissions on
{volume.as_posix()}[/]")
+ if not os.access(volume.as_posix(), os.X_OK):
+ get_console().print(
+ f"[error]You do not have executable permissions on
{volume[0]}[/]\n"
+ f"You likely checked out airflow repo on a filesystem that
does not support executable "
+ f"permissions (for example on a Windows filesystem that is
mapped to Linux VM). Airflow "
+ f"repository should only be checked out on a filesystem that
is POSIX compliant."
Review Comment:
I would not call it `volume` - might be mis-leading.
```suggestion
for entrypoint in SCRIPTS_DOCKER_DIR.glob("entrypoint*.sh"):
if get_verbose() and not quiet:
get_console().print(f"[info]Checking executable permissions on
{entrypoint.as_posix()}[/]")
if not os.access(entrypoint.as_posix(), os.X_OK):
get_console().print(
f"[error]You do not have executable permissions on
{entrypoint}[/]\n"
f"You likely checked out airflow repo on a filesystem that
does not support executable "
f"permissions (for example on a Windows filesystem that is
mapped to Linux VM). Airflow "
f"repository should only be checked out on a filesystem that
is POSIX compliant."
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]