|
|
@ -8,43 +8,47 @@ class DockerBuildService:
|
|
|
|
self.resource_api = ResourceApi()
|
|
|
|
self.resource_api = ResourceApi()
|
|
|
|
self.docker_api = DockerApi()
|
|
|
|
self.docker_api = DockerApi()
|
|
|
|
|
|
|
|
|
|
|
|
def __copy_build_resource_file_from_package__(self, build: Docker):
|
|
|
|
def __copy_build_resource_file_from_package__(self, resource_name, docker: Docker):
|
|
|
|
data = self.resource_api.read_resource(
|
|
|
|
data = self.resource_api.read_resource(f"../../resources/docker/{resource_name}")
|
|
|
|
"src/main/resources/docker/" + build.name
|
|
|
|
self.file_api.write_data_to_file(
|
|
|
|
|
|
|
|
f"{docker.devops.build_path()}/{resource_name}", data
|
|
|
|
)
|
|
|
|
)
|
|
|
|
self.file_api.write_data_to_file(build.build_path() + "/" + build.name, data)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def __copy_build_resources_from_package__(self, build: Docker):
|
|
|
|
def __copy_build_resources_from_package__(self, docker: Docker):
|
|
|
|
self.__copy_build_resource_file_from_package__(
|
|
|
|
self.__copy_build_resource_file_from_package__(
|
|
|
|
"image/resources/install_functions.sh"
|
|
|
|
"image/resources/install_functions.sh", docker
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
def __copy_build_resources_from_dir__(self, build: Docker):
|
|
|
|
def __copy_build_resources_from_dir__(self, docker: Docker):
|
|
|
|
self.file_api.cp_force(build.docker_build_commons_path(), build.build_path())
|
|
|
|
self.file_api.cp_force(
|
|
|
|
|
|
|
|
docker.docker_build_commons_path(), docker.devops.build_path()
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
def initialize_build_dir(self, build: Devops, docker_build: Docker):
|
|
|
|
def initialize_build_dir(self, docker: Docker):
|
|
|
|
build_path = build.build_path()
|
|
|
|
build_path = docker.devops.build_path()
|
|
|
|
self.file_api.clean_dir(f"{build_path}/image/resources")
|
|
|
|
self.file_api.clean_dir(f"{build_path}/image/resources")
|
|
|
|
if docker_build.use_package_common_files:
|
|
|
|
if docker.use_package_common_files:
|
|
|
|
self.__copy_build_resources_from_package__(docker_build)
|
|
|
|
self.__copy_build_resources_from_package__(docker)
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
self.__copy_build_resources_from_dir__(docker_build)
|
|
|
|
self.__copy_build_resources_from_dir__(docker)
|
|
|
|
self.file_api.cp_recursive("image", build_path)
|
|
|
|
self.file_api.cp_recursive("image", build_path)
|
|
|
|
self.file_api.cp_recursive("test", build_path)
|
|
|
|
self.file_api.cp_recursive("test", build_path)
|
|
|
|
|
|
|
|
|
|
|
|
def image(self, build: Devops):
|
|
|
|
def image(self, docker: Docker):
|
|
|
|
self.docker_api.image(build.name(), build.build_path())
|
|
|
|
self.docker_api.image(docker.devops.name, docker.devops.build_path())
|
|
|
|
|
|
|
|
|
|
|
|
def drun(self, build: Docker):
|
|
|
|
def drun(self, docker: Devops):
|
|
|
|
self.docker_api.drun(build.name())
|
|
|
|
self.docker_api.drun(docker.devops.name)
|
|
|
|
|
|
|
|
|
|
|
|
def dockerhub_login(self, docker_build: Docker):
|
|
|
|
def dockerhub_login(self, docker: Docker):
|
|
|
|
self.docker_api.dockerhub_login(docker_build.dockerhub_user, docker_build.dockerhub_password)
|
|
|
|
self.docker_api.dockerhub_login(
|
|
|
|
|
|
|
|
docker.dockerhub_user, docker.dockerhub_password
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
def dockerhub_publish(self, build: Devops, docker_build: Docker):
|
|
|
|
def dockerhub_publish(self, docker: Docker):
|
|
|
|
self.docker_api.dockerhub_publish(
|
|
|
|
self.docker_api.dockerhub_publish(
|
|
|
|
build.name(), docker_build.dockerhub_user, docker_build.docker_publish_tag
|
|
|
|
docker.devops.name, docker.dockerhub_user, docker.docker_publish_tag
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
def test(self, build: Devops):
|
|
|
|
def test(self, docker: Docker):
|
|
|
|
self.docker_api.test(build.name(), build.build_path())
|
|
|
|
self.docker_api.test(docker.devops.name, docker.devops.build_path())
|
|
|
|