diff options
author | Vivien Kraus <vivien@planete-kraus.eu> | 2020-12-07 22:20:53 +0100 |
---|---|---|
committer | Vivien Kraus <vivien@planete-kraus.eu> | 2021-06-19 15:44:36 +0200 |
commit | 1cd51a1728a34aaf85b964bff7636733ef732999 (patch) | |
tree | d6d7e45c749bcac5fa12ec3fa70226ccab0af621 /guix/vkraus/systems | |
parent | feb186bacbf57cb1de4b933eca6f53d259bfcc9d (diff) |
Create a hello world server
Diffstat (limited to 'guix/vkraus/systems')
-rw-r--r-- | guix/vkraus/systems/webid-oidc-issuer.scm | 50 | ||||
-rw-r--r-- | guix/vkraus/systems/webid-oidc.scm | 80 |
2 files changed, 80 insertions, 50 deletions
diff --git a/guix/vkraus/systems/webid-oidc-issuer.scm b/guix/vkraus/systems/webid-oidc-issuer.scm deleted file mode 100644 index 103f49f..0000000 --- a/guix/vkraus/systems/webid-oidc-issuer.scm +++ /dev/null @@ -1,50 +0,0 @@ -(define-module (vkraus systems webid-oidc-issuer) - #:use-module (gnu) - #:use-module (guix) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (vkraus services webid-oidc) - #:use-module (vkraus packages webid-oidc)) - -(operating-system - (locale "fr_FR.utf8") - (timezone "Europe/Paris") - (keyboard-layout (keyboard-layout "fr")) - (host-name "webid-oidc-issuer") - (users (cons* (user-account - (name "admin") - (comment "Administrator") - (group "users") - (home-directory "/home/admin") - (supplementary-groups - '("wheel" "netdev"))) - %base-user-accounts)) - (packages - (append - (list (specification->package "nss-certs")) - %base-packages)) - (services - (append - (cons* - (service webid-oidc-issuer-service-type - (webid-oidc-issuer-configuration - (webid-oidc webid-oidc-snapshot) - (issuer "http://localhost:8080") - (subject "http://localhost:8080/profile/card#me") - (password "p4ssw0rd") - (jwks-uri "http://localhost:8080/keys") - (authorization-endpoint-uri "http://localhost:8080/authorize") - (token-endpoint-uri "http://localhost:8080/token") - (port 8080))) - %base-services))) - (bootloader - (bootloader-configuration - (bootloader grub-efi-bootloader) - (target "/boot/efi") - (keyboard-layout keyboard-layout))) - (file-systems - (cons* (file-system - (mount-point "/") - (device "/dev/sda") - (type "ext4")) - %base-file-systems))) diff --git a/guix/vkraus/systems/webid-oidc.scm b/guix/vkraus/systems/webid-oidc.scm new file mode 100644 index 0000000..704c746 --- /dev/null +++ b/guix/vkraus/systems/webid-oidc.scm @@ -0,0 +1,80 @@ +(define-module (vkraus systems webid-oidc) + #:use-module (gnu) + #:use-module (guix) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (vkraus services webid-oidc) + #:use-module (vkraus packages webid-oidc) + #:use-module (gnu services web)) + +(operating-system + (locale "fr_FR.utf8") + (timezone "Europe/Paris") + (keyboard-layout (keyboard-layout "fr")) + (host-name "webid-oidc-issuer") + (users %base-user-accounts) + (packages + (append + (list (specification->package "nss-certs")) + %base-packages)) + (services + (append + (cons* + (service webid-oidc-issuer-service-type + (webid-oidc-issuer-configuration + (webid-oidc webid-oidc-snapshot) + (issuer "http://localhost:8080") + (subject "http://localhost:8080/profile/card#me") + (password "p4ssw0rd") + (jwks-uri "http://localhost:8080/keys") + (authorization-endpoint-uri "http://localhost:8080/authorize") + (token-endpoint-uri "http://localhost:8080/token") + (port 8080))) + (service webid-oidc-hello-service-type + (webid-oidc-hello-configuration + (webid-oidc webid-oidc-snapshot) + (port 8081))) + (service nginx-service-type + (nginx-configuration + (upstream-blocks + (list + (nginx-upstream-configuration + (name "issuer") + (servers (list "localhost:8080"))) + (nginx-upstream-configuration + (name "server") + (servers (list "localhost:8081"))))) + (server-blocks + (list + (nginx-server-configuration + (server-name '("localhost")) + (listen '("80")) + (locations + (list + (nginx-location-configuration + (uri "/profile/card") + (body (list "proxy_pass http://issuer;"))) + (nginx-location-configuration + (uri "/keys") + (body (list "proxy_pass http://issuer;"))) + (nginx-location-configuration + (uri "/authorize") + (body (list "proxy_pass http://issuer;"))) + (nginx-location-configuration + (uri "/token") + (body (list "proxy_pass http://issuer;"))) + (nginx-location-configuration + (uri "/") + (body (list "proxy_pass http://server;")))))))))) + %base-services))) + (bootloader + (bootloader-configuration + (bootloader grub-efi-bootloader) + (target "/boot/efi") + (keyboard-layout keyboard-layout))) + (file-systems + (cons* (file-system + (mount-point "/") + (device "/dev/sda") + (type "ext4")) + %base-file-systems))) |