66 lines
2.3 KiB
Python
66 lines
2.3 KiB
Python
import deprecation
|
|
from .domain import DockerBuild
|
|
from .application import DockerBuildService
|
|
from .devops_build import DevopsBuild, create_devops_build_config
|
|
|
|
@deprecation.deprecated(deprecated_in="3.2")
|
|
# create objects direct instead
|
|
def create_devops_docker_build_config(
|
|
stage,
|
|
project_root_path,
|
|
module,
|
|
dockerhub_user,
|
|
dockerhub_password,
|
|
build_dir_name="target",
|
|
use_package_common_files=True,
|
|
build_commons_path=None,
|
|
docker_build_commons_dir_name="docker",
|
|
docker_publish_tag=None,
|
|
):
|
|
ret = create_devops_build_config(stage, project_root_path, module, build_dir_name)
|
|
ret.update(
|
|
{
|
|
"dockerhub_user": dockerhub_user,
|
|
"dockerhub_password": dockerhub_password,
|
|
"use_package_common_files": use_package_common_files,
|
|
"docker_build_commons_dir_name": docker_build_commons_dir_name,
|
|
"build_commons_path": build_commons_path,
|
|
"docker_publish_tag": docker_publish_tag,
|
|
}
|
|
)
|
|
return ret
|
|
|
|
|
|
class DevopsDockerBuild(DevopsBuild):
|
|
def __init__(self, project, config):
|
|
super().__init__(project, config)
|
|
self.docker_build_service = DockerBuildService()
|
|
docker_build = DockerBuild(config)
|
|
self.repo.set_docker_build(self.project, docker_build)
|
|
|
|
def initialize_build_dir(self):
|
|
super().initialize_build_dir()
|
|
build = self.repo.get_devops(self.project)
|
|
docker_build = self.repo.get_docker_build(self.project)
|
|
self.docker_build_service.initialize_build_dir(build, docker_build)
|
|
|
|
def image(self):
|
|
build = self.repo.get_devops(self.project)
|
|
self.docker_build_service.image(build)
|
|
|
|
def drun(self):
|
|
build = self.repo.get_devops(self.project)
|
|
self.docker_build_service.drun(build)
|
|
|
|
def dockerhub_login(self):
|
|
docker_build = self.repo.get_docker_build(self.project)
|
|
self.docker_build_service.dockerhub_login(docker_build)
|
|
|
|
def dockerhub_publish(self):
|
|
build = self.repo.get_devops(self.project)
|
|
docker_build = self.repo.get_docker_build(self.project)
|
|
self.docker_build_service.dockerhub_publish(build, docker_build)
|
|
|
|
def test(self):
|
|
build = self.repo.get_devops(self.project)
|
|
self.test.dockerhub_publish(build)
|