Sites statique #5

Open
sinavir wants to merge 12 commits from static_website into master
6 changed files with 32 additions and 29 deletions
Showing only changes of commit 13e949996d - Show all commits

View file

@ -1,12 +1,12 @@
{ config, pkgs, ... }:
{
staticWebsites.sites = {
services.staticWebsites.sites = {
"2048" = {
root = pkgs.fetchFromGitHub {
owner = "hackEns";
repo = "2048NdS";
rev = "1df6db154ca22c380eb52844c7a6a7f888fb5610";
sha256 = "087471kpbpcg5920wy6fgcx6jz613zbyy0jn5iiimwjk1im1wa4q";
sha256 = "1y2v637j0g03g4l80ag72pm9kc46f07npir7ddp8i6x15bzygj1a";
};
hostname = config.my.subZone;
location = "/2048";

View file

@ -2,8 +2,8 @@
{
imports = [
./my.nix
./staticWebsite.nix
./staticWebsites.nix
./nginx.nix
./webhook.nix
./webhooks.nix
];
}

View file

@ -36,27 +36,29 @@ in
config = mkIf (eachSite != {}) {
services.nginx = {
enable = true;
virtualHosts = mapAttrs ( hostName: conf: (mkMerge [
{
serverName = conf.hostname;
forceSSL = if debug then false else true;
enableACME = if debug then false else true;
}
(mkIf (conf.location == null) {
root = conf.root;
})
(mkIf (conf.location != null) {
location = {
"~ ^${conf.location}" = {
alias = conf.root;
virtualHosts = mapAttrs' ( hostname: conf: {
name = conf.hostname;
value = (mkMerge [
{
serverName = conf.hostname;
forceSSL = if config.services.staticWebsites.debug then false else true;
enableACME = if config.services.staticWebsites.debug then false else true;
}
(mkIf (conf.location == null) {
root = conf.root;
})
(mkIf (conf.location != null) {
locations = {
"${conf.location}/" = {
alias = "${conf.root}/";
};
};
};
})
])
) eachSite;
})
]);
}) eachSite;
};
};
}

View file

@ -2,7 +2,7 @@
with lib;
let
json = pkgs.formats.json {};
cfg = config.services.webhook;
cfg = config.services.webhooks;
in
{
options.services.webhooks = {
@ -33,6 +33,7 @@ in
debug = mkOption {
type = types.bool;
default = false;
};
};
config = mkIf cfg.enable {
services.nginx = {
@ -50,6 +51,6 @@ in
};
script = "${cfg.package}/bin/webhook -nopanic -ip \"127.0.0.1\" -port \"${toString cfg.internalPort}\" -verbose -hooks ${json.generate "conf.json" cfg.hooks}";
wantedBy = [ "mulit-user.target" ];
};
};
};
}

View file

@ -1,6 +1,6 @@
{ config, pkgs, ... }:
{
services.staticWebsites.test = {
services.staticWebsites.sites.test = {
hostname = "test.${config.my.subZone}";
root = pkgs.writeTextDir "index.html" "Hello world!";
};

View file

@ -1,8 +1,8 @@
{ pkgs, ... }:
{ pkgs, config, ... }:
{
networking.firewall.allowedTCPPorts = [ 80 443 ];
# TODO: move to hackens.org
services.dokuwiki.sites."hackens.ens.fr" = {
services.dokuwiki.sites."${config.my.subZone}" = {
enable = true;
extraConfig = ''