aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--integration/README.md16
-rw-r--r--integration/config/bottin.json13
-rw-r--r--integration/config/guichet.json34
-rw-r--r--integration/docker-compose.yml16
5 files changed, 80 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e1a6d79..3ff2a32 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@ guichet.static
config.json
result
.direnv/
+password
diff --git a/integration/README.md b/integration/README.md
new file mode 100644
index 0000000..01cde3f
--- /dev/null
+++ b/integration/README.md
@@ -0,0 +1,16 @@
+# Intégration de Guichet dans un environnement de dev/test
+
+## Dev process
+
+On utilise `docker compose` pour mettre en place l'infrastructure dont dépend Guichet, que l'on développe. (On rajoutera Garage dedans plus tard.)
+
+On ne met pas Guichet dans le `compose` pour pouvoir itérer plus rapidement : un `go build` et on a la nouvelle version, sans avoir restart les dépendances (Bottin, Consul...).
+
+## Notes
+
+* Bien récupérer le password `admin` dans les logs de 1er lancement de Bottin : il ne sera pas réaffiché.
+* Identifiant de l'admin sur Guichet : `cn=admin,dc=bottin,dc=eu` because il n'est pas dans `ou=users,dc=bottin,dc=eu` qui est l'organisation par défaut dans laquelle on va chercher les utilisateurs.
+
+## TODO
+
+* Bridger Garage/S3 (pour le moment ne sert que pour les avatars dans l'annuaire) \ No newline at end of file
diff --git a/integration/config/bottin.json b/integration/config/bottin.json
new file mode 100644
index 0000000..0b54e22
--- /dev/null
+++ b/integration/config/bottin.json
@@ -0,0 +1,13 @@
+{
+ "suffix": "dc=bottin,dc=eu",
+ "bind": "bottin:389",
+ "consul_host": "consul:8500",
+ "acl": [
+ "ANONYMOUS::bind:*,ou=users,dc=bottin,dc=eu:",
+ "ANONYMOUS::bind:cn=admin,dc=bottin,dc=eu:",
+ "*,dc=bottin,dc=eu::read:*:* !userpassword",
+ "*::read modify:SELF:*",
+ "cn=admin,dc=bottin,dc=eu::read add modify delete:*:*",
+ "*:cn=admin,ou=groups,dc=bottin,dc=eu:read add modify delete:*:*"
+ ]
+}
diff --git a/integration/config/guichet.json b/integration/config/guichet.json
new file mode 100644
index 0000000..8f6c20b
--- /dev/null
+++ b/integration/config/guichet.json
@@ -0,0 +1,34 @@
+{
+ "http_bind_addr": ":9991",
+ "ldap_server_addr": "ldap://127.0.0.1:389",
+
+ "base_dn": "dc=bottin,dc=eu",
+ "user_base_dn": "ou=users,dc=bottin,dc=eu",
+ "user_name_attr": "cn",
+ "group_base_dn": "ou=groups,dc=bottin,dc=eu",
+ "group_name_attr": "cn",
+
+ "invitation_base_dn": "ou=invitations,dc=bottin,dc=eu",
+ "invitation_name_attr": "cn",
+ "invited_mail_format": "{}@bottin.eu",
+ "invited_auto_groups": [
+ "cn=email,ou=groups,dc=bottin,dc=eu"
+ ],
+
+ "web_address": "https://guichet.bottin.eu",
+ "mail_from": "welcome@bottin.eu",
+ "smtp_server": "smtp.bottin.eu",
+ "smtp_username": "guichet",
+ "smtp_password": "",
+
+ "admin_account": "cn=admin,dc=bottin,dc=eu",
+ "group_can_admin": "gid=admin,ou=groups,dc=bottin,dc=eu",
+ "group_can_invite": "",
+
+ "s3_endpoint": "garage.bottin.eu",
+ "s3_access_key": "",
+ "s3_secret_key": "",
+ "s3_region": "garage",
+ "s3_bucket": "bottin-pictures"
+}
+
diff --git a/integration/docker-compose.yml b/integration/docker-compose.yml
new file mode 100644
index 0000000..6331737
--- /dev/null
+++ b/integration/docker-compose.yml
@@ -0,0 +1,16 @@
+version: '3'
+services:
+ consul:
+ image: consul
+ restart: "always"
+ expose:
+ - 8500
+ bottin:
+ image: dxflrs/bottin:dnp41vp8w24h4mbh0xg1mybzr1f46k41
+ command: "-config /etc/bottin.json"
+ restart: "always"
+ depends_on: ["consul"]
+ ports:
+ - "389:389"
+ volumes:
+ - "./config/bottin.json:/etc/bottin.json"