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

{
    cfg:: {
        secret: {
            telegram_token: error "telegram_token must be set",
        },
        image: {
            teleimg: "registry.k0.hswaw.net/q3k/teleimg:1578259776-a07688fe74efe1e190d58092a9f50d4275a15e3d",
            lelegram: "registry.k0.hswaw.net/q3k/lelegram:1578255597-a885488fd0f9fcd271f6a02416aae5bb3fd9c9ac",
        },
        bridge: {
            telegram: "-1001345766954",
            irc: "#hackerspace-krk",
        },
        webFQDN: error "webFQDN must be set!",
    },

    teleimg(cfg, env):: mirko.Component(env, "teleimg") {
        local teleimg = self,
        cfg+: {
            image: cfg.image.teleimg,
            container: teleimg.GoContainer("main", "/teleimg/teleimg") {
                env_: {
                    TELEGRAM_TOKEN: kube.SecretKeyRef(teleimg.secret, "telegram_token"),
                },
                command+: [
                    "-public_listen", "0.0.0.0:5000",
                    "-telegram_token", "$(TELEGRAM_TOKEN)",
                ],
            },
            ports+: {
                publicHTTP: {
                    public: {
                        port: 5000,
                        dns: cfg.webFQDN,
                    },
                },
            },
        },

        secret: kube.Secret("teleimg") {
            metadata+: teleimg.metadata,
            data: cfg.secret,
        },
    },

    lelegram(cfg, env):: mirko.Component(env, "lelegram") {
        local lelegram = self,
        cfg+: {
            image: cfg.image.lelegram,
            nodeSelector: {
              "kubernetes.io/hostname": "bc01n01.hswaw.net",
            },
            container: lelegram.GoContainer("main", "/lelegram/lelegram") {
                env_: {
                    TELEGRAM_TOKEN: kube.SecretKeyRef(lelegram.secret, "telegram_token"),
                },
                command+: [
                    "-telegram_token", "$(TELEGRAM_TOKEN)",
                    "-telegram_chat", cfg.bridge.telegram,
                    "-irc_channel", cfg.bridge.irc,
                    "-irc_max_connections", "10",
                ],
            },
        },

        secret: kube.Secret("lelegram") {
            metadata+: lelegram.metadata,
            data: cfg.secret,
        },
    },
}
