Skip to content
Snippets Groups Projects
Commit 95175b1d6eed authored by Vincent Hatakeyama's avatar Vincent Hatakeyama
Browse files

:pencil: move common method in docker_client

parent 9e4d7f6b9c91
No related branches found
No related tags found
1 merge request!186✨ On docker_build_copy, when not run localy, do not build.
......@@ -9,8 +9,7 @@
from .config import Config
from .docker_build import add_build_options, build_local_image, get_build_options
from .docker_client import DockerClient
from .docker_prettier import get_volumes
from .docker_client import DockerClient, get_volumes
from .parsing import apply, basic_parser
__version__ = "1.0.1"
......
......@@ -486,3 +486,23 @@
return True
result = self.docker_cli.containers.list(filters={"id": self._container.id})
return result and result[0].status == "exited"
def get_volumes(base_dir, directory: str, write: bool = False):
"""return volumes to bind"""
path = os.path.abspath(os.path.join(base_dir, directory))
volumes = {
base_dir: {
"bind": base_dir,
"mode": "rw" if write else "ro",
}
}
# also bind any symbolic link, but only for the given directory or its parent.
# all symbolic link could be scanned for but that might take too much time
for potential_link in (path, os.path.dirname(path)):
if os.path.islink(potential_link):
volumes[potential_link] = {
"bind": os.path.realpath(potential_link),
"mode": "rw" if write else "ro",
}
return volumes, path
......@@ -9,8 +9,7 @@
from .config import ODOO_7, ODOO_8, ODOO_9, ODOO_10, ODOO_11, ODOO_12, ODOO_13, Config
from .docker_build import add_build_options, build_local_image, get_build_options
from .docker_client import DockerClient
from .docker_prettier import get_volumes
from .docker_client import DockerClient, get_volumes
from .parsing import apply, basic_parser
__version__ = "3.0.2"
......
......@@ -8,7 +8,7 @@
from .config import ODOO_7, ODOO_8, ODOO_9, ODOO_10, Config
from .docker_build import add_build_options, build_local_image, get_build_options
from .docker_client import DockerClient
from .docker_client import DockerClient, get_volumes
from .parsing import apply, basic_parser
__version__ = "1.1.1"
......@@ -104,25 +104,5 @@
)
def get_volumes(base_dir, directory: str, write: bool = False):
"""return volumes to bind"""
path = os.path.abspath(os.path.join(base_dir, directory))
volumes = {
base_dir: {
"bind": base_dir,
"mode": "rw" if write else "ro",
}
}
# also bind any symbolic link, but only for the given directory or its parent.
# all symbolic link could be scanned for but that might take too much time
for potential_link in (path, os.path.dirname(path)):
if os.path.islink(potential_link):
volumes[potential_link] = {
"bind": os.path.realpath(potential_link),
"mode": "rw" if write else "ro",
}
return volumes, path
if __name__ == "__main__":
sys.exit(main())
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment