45 lines
1.2 KiB
Python
45 lines
1.2 KiB
Python
|
import os
|
||
|
|
||
|
|
||
|
def _get_config_expand(config):
|
||
|
""" Get config with both context and dockerfile_path written to it """
|
||
|
if config and "subdir" in config and "context" not in config:
|
||
|
config_expand = dict(config)
|
||
|
config_expand["context"] = _create_context(config["subdir"])
|
||
|
config_expand["dockerfile_path"] = _create_dockerfile_path(config["subdir"])
|
||
|
return config_expand
|
||
|
return config or {}
|
||
|
|
||
|
|
||
|
def _create_context(current_subdir):
|
||
|
""" Create context from current subdir """
|
||
|
if current_subdir.endswith("Dockerfile"):
|
||
|
context, _ = os.path.split(current_subdir)
|
||
|
if context == "":
|
||
|
return os.path.sep
|
||
|
|
||
|
return context
|
||
|
|
||
|
if current_subdir == "":
|
||
|
current_subdir = os.path.sep + current_subdir
|
||
|
|
||
|
if current_subdir[len(current_subdir) - 1] != os.path.sep:
|
||
|
current_subdir += os.path.sep
|
||
|
|
||
|
context, _ = os.path.split(current_subdir)
|
||
|
return context
|
||
|
|
||
|
|
||
|
def _create_dockerfile_path(current_subdir):
|
||
|
""" Create dockefile path from current subdir """
|
||
|
if current_subdir.endswith("Dockerfile"):
|
||
|
return current_subdir
|
||
|
|
||
|
if current_subdir == "":
|
||
|
current_subdir = os.path.sep + current_subdir
|
||
|
|
||
|
if current_subdir[len(current_subdir) - 1] != os.path.sep:
|
||
|
current_subdir += os.path.sep
|
||
|
|
||
|
return current_subdir + "Dockerfile"
|