dda-devops-build/doc/architecture/Domain.md

1.4 KiB

Domain

classDiagram
    class Devops {
        <<AggregateRoot>>
        name
        module
        stage
        build_dir_name
        project_root_path
    }

    class Image {
        image_dockerhub_user
        image_dockerhub_password
        image_publish_tag
        image_build_dir_name
        image_use_package_common_files
        image_build_commons_path
        image_build_commons_dir_name
    }

    class C4k {
        c4k_executabel_name
        c4k_mixin_config
        c4k_mixin_auth
    }

    class DnsRecord {
        fqdn
        ipv4
        ipv6
    }

    class Release {
        release_main_branch
        release_current_branch
        release_type
    }

    class BuildFile {
        filename
        file_type
        content
    }
    
    class Version {
        get_version_string(release_type: ReleaseType)
        create_release_version(release_type: ReleaseType):
        create_bump_version(release_type: ReleaseType):
    }

    Devops *-- "0..1" Image: spcialized_builds
    Devops *-- "0..1" C4k: spcialized_builds
    Devops *-- "0..1" Release: mixins
    Release *-- "0..1" BuildFile: primary_release_file
    Release *-- "0..n" BuildFile: secondary_release_files
    BuildFile *-- "1" Version
    C4k *-- DnsRecord
    

Infrastructure

classDiagram
    class ProjectRepository {
        get_devops(project): Devops
        set_devops(project, build)
    }