local kube = import "../../kube/hscloud.libsonnet";

{
    local top = self,
    local cfg = self.cfg,

    cfg:: {
        name: 'ldapweb',
        namespace: 'ldapweb',
        domain: 'profile.hackerspace.pl',
        image: 'registry.k0.hswaw.net/radex/ldapweb:20231123203042',
    },

    secrets:: {
        admin_password: { secretKeyRef: { name: cfg.name, key: 'admin_password' } },
        smtp_password: { secretKeyRef: { name: cfg.name, key: 'smtp_password' } },
    },

    ns: kube.Namespace(cfg.namespace),

    deployment: top.ns.Contain(kube.Deployment(cfg.name)) {
        spec+: {
            replicas: 1,
            template+: {
                spec+: {
                    containers_: {
                        default: kube.Container("default") {
                            image: cfg.image,
                            resources: {
                                requests: { cpu: "25m", memory: "256Mi" },
                                limits: { cpu: "500m", memory: "512Mi" },
                            },
                            ports_: {
                                http: { containerPort: 8000 },
                            },
                            env_: {
                                LDAPWEB_ADMIN_GROUPS: 'ldap-admin,staff,zarzad',
                                LDAPWEB_ACTIVE_GROUPS: 'fatty,starving,potato',
                                LDAPWEB_ADMIN_DN: 'cn=ldapweb,ou=services,dc=hackerspace,dc=pl',
                                LDAPWEB_ADMIN_PASSWORD: top.secrets.admin_password,
                                LDAPWEB_PROTECTED_GROUPS: 'ldap-admin,staff,zarzad',
                                LDAPWEB_SMTP_USER: 'ldapweb',
                                LDAPWEB_SMTP_PASSWORD: top.secrets.smtp_password,
                                LDAPWEB_PAPERTRAIL_RECIPIENTS: 'zarzad@hackerspace.pl',
                                LDAPWEB_AVATAR_CACHE_TIMEOUT: '1800',
                            }
                        },
                    },
                },
            },
        },
    },

    service: top.ns.Contain(kube.Service(cfg.name)) {
        target:: top.deployment,
    },

    ingress: top.ns.Contain(kube.SimpleIngress(cfg.name)) {
        hosts:: [cfg.domain],
        target_service:: top.service,
    },
}
