]> nos-oignons.net Git - gestion-adh.git/commitdiff
Add some documentation
authorLunar <lunar@anargeek.net>
Sat, 1 Jun 2013 14:43:55 +0000 (16:43 +0200)
committerLunar <lunar@anargeek.net>
Sat, 1 Jun 2013 14:43:55 +0000 (16:43 +0200)
README [new file with mode: 0644]

diff --git a/README b/README
new file mode 100644 (file)
index 0000000..bc73c09
--- /dev/null
+++ b/README
@@ -0,0 +1,114 @@
+====================================
+Gestion des adhésions de Nos oignons
+====================================
+
+Voici une collection de scripts et de bouts de code qui permettent de gérer les
+adhésions de Nos oignons conformément aux statuts de l'association.
+
+Base des membres
+================
+
+La base des membres est pensée pour être stockés dans le wiki du conseil
+d'administration. Elle est formée sous forme d'une série de pages, une par
+membre.
+
+Cela donne l'aboresence suivante :
+
+    Membres
+    ├── 000000.mdwn
+    ├── 000001.mdwn
+    ├── 000002.mdwn
+    ├── 000003.mdwn
+    ├── 000004.mdwn
+    …
+    └── 000042.mdwn
+
+Chaque page doit ressembler à :
+
+    ---
+    name: Violette Dupuis
+    address: |
+      42 rue du Fleuve
+      12042 Essaiville
+    email: violette@example.org
+    membership_fee_paid_on: 2013-05-25
+    ---
+
+    Violette sait programmer en Ruby, on peut lui demander si on a besoin de
+    coup de main.
+
+Le début de chaque page est un morceau de [YAML]. Il doit contenir les entrées
+suivantes :
+
+=`name`=
+    Le nom (complet) du membre.
+=`address`=
+    L'adresse postale du membre.
+=`email`=
+    L'adresse email du membre. C'est à cette adresse que seront envoyés les
+    messages de l'assemblée générale et les rappels de cotisation.
+=`membership_fee_paid_on`=
+    Date du paiement de la dernière cotisation.
+
+Le reste de la page peut servir à noter ce qu'on veut.
+
+[YAML]: http://yaml.org/
+
+Scripts
+=======
+
+Voici le détail des scripts utilisés. On peut se faire une idée de leurs
+fonctionalités respectives en lisant les cas d'utilisation dans les fichiers
+`features/*.feature`.
+
+`list-email`
+------------
+
+Affiche sur la sortie standard les adresses emails des membres à jour de
+cotisation.
+
+`pre-commit-hook`
+-----------------
+
+`pre-commit` hook pour Git. Ce dernier est avant tout là pour éviter de pouvoir
+enregistrer des informations invalides dans la base des membres depuis Ikiwiki.
+Il est nécessaire de le configurer à chaque fois qu'on clone le dépôt du wiki du
+C.A. (en faisant un lien symbolique dans `.git/hooks/pre-commit`).
+
+`pre-receive-hook`
+------------------
+
+`pre-commit` hook pour Git. Ce dernier est là pour éviter de pouvoir enregistrer
+des informations invalides dans la base des membres. Il doit être configuré dans
+le dépôt central du wiki du C.A. (via un lien symbolique dans
+`.git/hooks/pre-receive`).
+
+Développement
+=============
+
+L'essentiel du code est en Ruby. Les dépendences sont gérés avec Bundler. Les
+tests d'intégrations sont fait avec Cucumber.
+
+Installer les paquets Debian qui vont bien (sur Wheezy) :
+
+    apt-get install ruby1.9.1 bundler
+
+Pour récupérer les dépendences :
+
+    ruby1.9.1 /usr/bin/bundle install --path=vendor/bundle
+
+Déploiement
+===========
+
+Installer les paquets Debian qui vont bien (sur Wheezy) :
+
+    apt-get install ruby1.9.1 bundler
+
+Installer les dépendences :
+
+    ruby1.9.1 /usr/bin/bundle install --deployment \
+                                      --without=development \
+                                      --path=vendor/bundle
+
+Il faut ensuite mettre en place le lien symbolique vers le script
+`pre-receive-hooks`. XXX: à détailler