Files
ortools-clone/cmake/docs/docker.dot
2022-01-06 17:06:56 +01:00

86 lines
3.8 KiB
Plaintext

@startdot
digraph DockerDeps {
//rankdir=BT;
rankdir=TD;
node [shape=cylinder, style="rounded,filled", color=black, fillcolor=royalblue];
DISTRO_IMG [label="<distro>:latest"];
PKG [label="Build packages\ne.g. cmake, g++", shape=box3d];
PYPKG [label="Python packages\ne.g. python-dev", shape=box3d, fillcolor=gold];
JAVAPKG [label="Java packages\ne.g. openjdk", shape=box3d, fillcolor=crimson];
DOTNETPKG [label=".Net packages\ne.g. dotnet-cli", shape=box3d, fillcolor=forestgreen];
SRC [label="git repo", shape=folder];
SAMPLE [label="sample", shape=folder];
subgraph clusterDockerfile {
BASE_IMG [label="ortools/cmake:<distro>_base\nbase"];
SWIG_IMG [label="ortools/cmake:<distro>_swig\nswig"];
BASE_IMG -> SWIG_IMG;
color=royalblue;
label = "docker/<distro>/Dockerfile";
}
DISTRO_IMG -> BASE_IMG;
PKG -> BASE_IMG [label="install", style="dashed"];
// LANG
subgraph clusterLang {
LANGENV_IMG [label="ortools/cmake:<distro>_<lang>_env\nenv"];
LANGDEVEL_IMG [label="ortools/cmake:<distro>_<lang>_devel\ndevel"];
LANGBUILD_IMG [label="ortools/cmake:<distro>_<lang>_build\nbuild"];
LANGTEST_IMG [label="ortools/cmake:<distro>_<lang>_test\ntest"];
LANGINSTALLENV_IMG [label="ortools/cmake:<distro>_<lang>_install_env\ninstall_env"];
LANGINSTALLDEVEL_IMG [label="ortools/cmake:<distro>_<lang>_install_devel\ninstall_devel"];
LANGINSTALLBUILD_IMG [label="ortools/cmake:<distro>_<lang>_install_build\ninstall_build"];
LANGINSTALLTEST_IMG [label="ortools/cmake:<distro>_<lang>_install_test\ninstall_test"];
LANGENV_IMG -> LANGDEVEL_IMG;
LANGDEVEL_IMG -> LANGBUILD_IMG;
LANGBUILD_IMG -> LANGTEST_IMG;
LANGBUILD_IMG -> LANGINSTALLENV_IMG [label="copy install", style="dashed"];
LANGENV_IMG -> LANGINSTALLENV_IMG;
LANGINSTALLENV_IMG -> LANGINSTALLDEVEL_IMG;
LANGINSTALLDEVEL_IMG -> LANGINSTALLBUILD_IMG;
LANGINSTALLBUILD_IMG -> LANGINSTALLTEST_IMG;
color=royalblue;
label = "docker/<distro>/<lang>.Dockerfile";
}
SWIG_IMG -> LANGENV_IMG;
PYPKG -> LANGENV_IMG [label="install", style="dashed"];
JAVAPKG -> LANGENV_IMG [label="install", style="dashed"];
DOTNETPKG -> LANGENV_IMG [label="install", style="dashed"];
SRC -> LANGDEVEL_IMG [label="copy", style="dashed"];
SAMPLE -> LANGINSTALLDEVEL_IMG [label="copy", style="dashed"];
subgraph clusterCache {
node [shape=note, style="rounded,filled", color=black, fillcolor=royalblue];
BASE_TAR [label="docker_base.tar"];
SWIG_TAR [label="docker_swig.tar"];
LANGENV_TAR [label="docker_<lang>_env.tar"];
LANGDEVEL_TAR [label="docker_<lang>_devel.tar"];
LANGBUILD_TAR [label="docker_<lang>_build.tar"];
LANGTEST_TAR [label="docker_<lang>_test.tar"];
LANGINSTALLENV_TAR [label="docker_<lang>_install_env.tar"];
LANGINSTALLDEVEL_TAR [label="docker_<lang>_install_devel.tar"];
LANGINSTALLBUILD_TAR [label="docker_<lang>_install_build.tar"];
LANGINSTALLTEST_TAR [label="docker_<lang>_install_test.tar"];
edge [color=red];
BASE_IMG -> BASE_TAR [label="make save_<distro>_base"];
SWIG_IMG -> SWIG_TAR [label="make save_<distro>_swig"];
LANGENV_IMG -> LANGENV_TAR [label="make save_<distro>_<lang>_env"];
LANGDEVEL_IMG -> LANGDEVEL_TAR [label="make save_<distro>_<lang>_devel"];
LANGBUILD_IMG -> LANGBUILD_TAR [label="make save_<distro>_<lang>_build"];
LANGTEST_IMG -> LANGTEST_TAR [label="make save_<distro>_<lang>_test"];
LANGINSTALLENV_IMG -> LANGINSTALLENV_TAR [label="make save_<distro>_<lang>_install_env"];
LANGINSTALLDEVEL_IMG -> LANGINSTALLDEVEL_TAR [label="make save_<distro>_<lang>_install_devel"];
LANGINSTALLBUILD_IMG -> LANGINSTALLBUILD_TAR [label="make save_<distro>_<lang>_install_build"];
LANGINSTALLTEST_IMG -> LANGINSTALLTEST_TAR [label="make save_<distro>_<lang>_install_test"];
color=royalblue;
label = "cache/<distro>/";
}
}
@enddot