pythonPathHome = mkOption { type = bool; description = "Whether to add project’s python home to python path"; };
workerPort = mkOption { type = port; description = "Port for the worker"; };
secrets = mkOption {
- type = attrsOf str;
- description = "Secrets for the project to dump as files";
+ #type = attrsOf (either str (functionTo str));
+ type = attrsOf unspecified;
+ description = "Secrets for the project to dump as files. Might be a function that takes pkgs as argument";
};
environment = mkOption {
- type = attrsOf str;
+ #type = attrsOf (either str (functionTo str));
+ type = attrsOf unspecified;
description = ''
- Environment variables for the project.
+ Environment variables for the project. Might be a function that takes pkgs as argument.
BUILDBOT_ is prefixed to the variable names
'';
};
description = "Websites configurations";
type = submodule {
options = {
+ christophe_carpentier = mkOption {
+ description = "Christophe Carpentier configuration by environment";
+ type = submodule {
+ options = {
+ agorakit = mkOption {
+ description = "Agorakit configuration";
+ type = submodule {
+ options = {
+ mysql = mkMysqlOptions "Agorakit" {};
+ smtp = mkSmtpOptions "Agorakit";
+ appkey = mkOption { type = str; description = "App key"; };
+ };
+ };
+ };
+ };
+ };
+ };
immae = mkOption {
description = "Immae configuration by environment";
type = submodule {
options = {
production = chloeSubmodule;
integration = chloeSubmodule;
+ new = mkOption {
+ description = "environment configuration";
+ type = submodule {
+ options = {
+ mysql = mkMysqlOptions "ChloeNew" {};
+ ldap = mkLdapOptions "ChloeNew" {};
+ secret = mkOption { type = str; description = "Symfony App secret"; };
+ };
+ };
+ };
};
};
};
};
};
};
+ nicecoop = mkOption {
+ description = "Nicecoop configuration";
+ type = submodule {
+ options = {
+ odoo = {
+ port = mkOption { description = "Port to listen to"; type = port; };
+ longpoll_port = mkOption { description = "Port to listen to"; type = port; };
+ postgresql = mkPsqlOptions "Odoo";
+ admin_password = mkOption { type = str; description = "Admin password"; };
+ };
+ gestion-compte = {
+ smtp = mkSmtpOptions "GestionCompte";
+ mysql = mkMysqlOptions "gestion-compte" {};
+ secret = mkOption { type = str; description = "Application secret"; };
+ adminpassword = mkOption { type = str; description = "Admin password"; };
+ };
+ gestion-compte-integration = {
+ smtp = mkSmtpOptions "GestionCompte";
+ mysql = mkMysqlOptions "gestion-compte" {};
+ secret = mkOption { type = str; description = "Application secret"; };
+ adminpassword = mkOption { type = str; description = "Admin password"; };
+ };
+ copanier = {
+ smtp = mkSmtpOptions "Copanier";
+ staff = mkOption { type = listOf str; description = "List of staff members"; };
+ };
+ };
+ };
+ };
emilia = mkOption {
description = "Emilia configuration";
type = submodule {