refactoring: rename Build -> Devops

merge-requests/6/merge
Michael Jerger 1 year ago
parent dd85b7b95b
commit 0717b0b361

@ -92,19 +92,3 @@ classDiagram
DevopsBuild <|-- C4kMixin
```
# Build Frontend with application and domain
```mermaid
classDiagram
DevopsBuild <|-- DevopsDockerBuild
DevopsBuild <|-- DevopsTerraformBuild
DevopsBuild <|-- C4kMixin
DevopsBuild *-- BuildService
DevopsDockerBuild *-- DockerBuildService
C4kMixin *-- C4kBuildService
```
# Domain

@ -1,4 +1,4 @@
# Build Frontend with application and domain
# Devops Frontend with application and domain
```mermaid
classDiagram
@ -8,11 +8,11 @@ classDiagram
}
class ProjectRepository {
get_build(project): Build
set_build(project, build)
get_devops(project): Devops
set_devops(project, build)
}
class Build
class Devops
class BuildService {
do_sth(project, build)
@ -34,8 +34,8 @@ sequenceDiagram
MyBuild ->> DevOpsBuild: create_config
MyBuild ->> DevOpsBuild: __init__(project, config)
activate DevOpsBuild
DevOpsBuild ->> Build: __init__
DevOpsBuild ->> ProjectRepository: set_build(build)
DevOpsBuild ->> Devops: __init__
DevOpsBuild ->> ProjectRepository: set_devops(build)
deactivate DevOpsBuild
```
@ -47,7 +47,7 @@ sequenceDiagram
activate DevOpsBuild
DevOpsBuild ->> BuildService: do_sth(project)
activate BuildService
BuildService ->> ProjectRepository: get_build
BuildService ->> ProjectRepository: get_devops
BuildService ->> BuildService: do_some_complicated_stuff(build)
deactivate BuildService
deactivate DevOpsBuild

@ -2,7 +2,7 @@
```mermaid
classDiagram
class Build {
class Devops {
stage
name
project_root_path
@ -31,10 +31,8 @@ classDiagram
```mermaid
classDiagram
class ProjectRepository {
get_build(project): Build
set_build(project, build)
}
get_devops(project): Devops
set_devops(project, build)
}
```

@ -19,7 +19,7 @@ from .devops_terraform_build import DevopsTerraformBuild, create_devops_terrafor
from .devops_build import DevopsBuild, create_devops_build_config, get_devops_build, get_tag_from_latest_commit
from .credential import gopass_password_from_path, gopass_field_from_path
from .domain import Validateable, DnsRecord, Build, DockerBuild, C4kBuild
from .domain import Validateable, DnsRecord, Devops, DockerBuild, C4kBuild
from .application import DockerBuildService
from .infrastructure import ProjectRepository, ResourceApi, FileApi, DockerApi, ExecutionApi

@ -1,4 +1,4 @@
from .domain import Build, DockerBuild, C4kBuild
from .domain import Devops, DockerBuild, C4kBuild
from .infrastructure import FileApi, ResourceApi, DockerApi, ExecutionApi
@ -22,7 +22,7 @@ class DockerBuildService:
def __copy_build_resources_from_dir__(self, build: DockerBuild):
self.file_api.cp_force(build.docker_build_commons_path(), build.build_path())
def initialize_build_dir(self, build: Build, docker_build: DockerBuild):
def initialize_build_dir(self, build: Devops, docker_build: DockerBuild):
build_path = build.build_path()
self.file_api.clean_dir(f"{build_path}/image/resources")
if docker_build.use_package_common_files:
@ -32,7 +32,7 @@ class DockerBuildService:
self.file_api.cp_recursive("image", build_path)
self.file_api.cp_recursive("test", build_path)
def image(self, build: Build):
def image(self, build: Devops):
self.docker_api.image(build.name(), build.build_path())
def drun(self, build: DockerBuild):
@ -41,10 +41,10 @@ class DockerBuildService:
def dockerhub_login(self, docker_build: DockerBuild):
self.docker_api.dockerhub_login(docker_build.dockerhub_user, docker_build.dockerhub_password)
def dockerhub_publish(self, build: Build, docker_build: DockerBuild):
def dockerhub_publish(self, build: Devops, docker_build: DockerBuild):
self.docker_api.dockerhub_publish(
build.name(), docker_build.dockerhub_user, docker_build.docker_publish_tag
)
def test(self, build: Build):
def test(self, build: Devops):
self.docker_api.test(build.name(), build.build_path())

@ -58,18 +58,18 @@ class C4kMixin(DevopsBuild):
self.repo.set_c4k_build(self.project, c4k_build)
def write_c4k_config(self):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
c4k_build = self.repo.get_c4k_build(self.project)
path = build.build_path() + "/out_c4k_config.yaml"
self.file_api.write_yaml_to_file(path, c4k_build.config())
def write_c4k_auth(self):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
c4k_build = self.repo.get_c4k_build(self.project)
path = build.build_path() + "/out_c4k_auth.yaml"
self.file_api.write_yaml_to_file(path, c4k_build.c4k_mixin_auth)
def c4k_apply(self, dry_run=False):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
c4k_build = self.repo.get_c4k_build(self.project)
return self.execution_api.execute(c4k_build.command(build), dry_run)

@ -1,5 +1,5 @@
import deprecation
from .domain import Build
from .domain import Devops
from .infrastructure import ProjectRepository, FileApi
@deprecation.deprecated(deprecated_in="3.2")
@ -40,17 +40,17 @@ class DevopsBuild:
self.file_api = FileApi()
self.repo = ProjectRepository()
config.update({"name": project.name})
build = Build(config)
self.repo.set_build(self.project, build)
build = Devops(config)
self.repo.set_devops(self.project, build)
def name(self):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
return build.name
def build_path(self):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
return build.build_path()
def initialize_build_dir(self):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
self.file_api.clean_dir(build.build_path())

@ -39,16 +39,16 @@ class DevopsDockerBuild(DevopsBuild):
def initialize_build_dir(self):
super().initialize_build_dir()
build = self.repo.get_build(self.project)
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_build(self.project)
build = self.repo.get_devops(self.project)
self.docker_build_service.image(build)
def drun(self):
build = self.repo.get_build(self.project)
build = self.repo.get_devops(self.project)
self.docker_build_service.drun(build)
def dockerhub_login(self):
@ -56,10 +56,10 @@ class DevopsDockerBuild(DevopsBuild):
self.docker_build_service.dockerhub_login(docker_build)
def dockerhub_publish(self):
build = self.repo.get_build(self.project)
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_build(self.project)
build = self.repo.get_devops(self.project)
self.test.dockerhub_publish(build)

@ -32,7 +32,7 @@ class DnsRecord(Validateable):
return result
class Build(Validateable):
class Devops(Validateable):
def __init__(self, config):
self.stage = config["stage"]
self.name = config["name"]
@ -107,7 +107,7 @@ class C4kBuild(Validateable):
self.c4k_mixin_config.update({"fqdn": fqdn})
return self.c4k_mixin_config
def command(self, build: Build):
def command(self, build: Devops):
module = build.module
build_path = build.build_path()
config_path = f"{build_path}/out_c4k_config.yaml"

@ -3,15 +3,15 @@ from sys import stdout
from pkg_resources import resource_string
from os import chmod
import yaml
from .domain import Build, DockerBuild, C4kBuild
from .domain import Devops, DockerBuild, C4kBuild
from .python_util import execute
class ProjectRepository:
def get_build(self, project) -> Build:
def get_devops(self, project) -> Devops:
return project.get_property("build")
def set_build(self, project, build: Build):
def set_devops(self, project, build: Devops):
project.set_property("build", build)
def get_docker_build(self, project) -> DockerBuild:

@ -1,5 +1,5 @@
from pybuilder.core import Project
from src.main.python.ddadevops.domain import Validateable, DnsRecord, C4kBuild, Build
from src.main.python.ddadevops.domain import Validateable, DnsRecord, C4kBuild, Devops
from src.main.python.ddadevops.c4k_mixin import add_c4k_mixin_config
@ -77,7 +77,7 @@ def test_c4k_build_should_update_fqdn(tmp_path):
grafana_cloud_user="user",
grafana_cloud_password="password",
)
build = Build(project_config)
build = Devops(project_config)
sut = C4kBuild(project_config)
sut.update_runtime_config(DnsRecord("test.de", ipv6="1::"))
@ -117,7 +117,7 @@ def test_c4k_build_should_calculate_command(tmp_path):
grafana_cloud_user="user",
grafana_cloud_password="password",
)
build = Build(project_config)
build = Devops(project_config)
sut = C4kBuild(project_config)
assert (
"c4k-module-standalone.jar "
@ -142,7 +142,7 @@ def test_c4k_build_should_calculate_command(tmp_path):
grafana_cloud_user="user",
grafana_cloud_password="password",
)
build = Build(project_config)
build = Devops(project_config)
sut = C4kBuild(project_config)
assert (
"c4k-executabel_name-standalone.jar "

Loading…
Cancel
Save