sshivprasad commented on code in PR #26951:
URL: https://github.com/apache/airflow/pull/26951#discussion_r993157721
##########
airflow/providers/docker/operators/docker.py:
##########
@@ -304,10 +311,13 @@ def _run_image_with_mounts(self, target_mounts,
add_tmp_variable: bool) -> list[
docker_log_config['max-size'] = self.log_opts_max_size
if self.log_opts_max_file is not None:
docker_log_config['max-file'] = self.log_opts_max_file
+ env_file_vars = {}
+ if self.env_file is not None:
+ env_file_vars = self.unpack_environment_variables(self.env_file)
self.container = self.cli.create_container(
command=self.format_command(self.command),
name=self.container_name,
- environment={**self.environment, **self._private_environment},
+ environment={**self.environment, **self._private_environment,
**env_file_vars},
Review Comment:
Thank you @uranusjr
Didn't think about the overriding.
I am assuming that either environment or env-file would be used and not both
at once since instead of setting in environment, it can as well be mentioned in
the env-file with the rest of the variables, but of course that's just an
assumption. I am unsure of what the prescribed norms are. If it is that
environment has to override the env-file and private-environment overrides the
rest, then I will change the order to `environment={**env_file_vars,
**self.environment, **self._private_environment}`, mention the overriding bit
in the docstring, and add a test case for that, if you think that's the right
way to go?
--
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]