1. Pour un blog static facile avec JBAKE + GIT + TRAVISCI

    Un blog statique c'est cool, moins de problème de sécurité, une vitesse de rendu sans pareil, n'importe qu'elle hebergeur peux faire l'affaire. Mais c'est aussi dire bonjour à une mise plus fastidieuse à coup de ftp. Pour rendre tout cela fluide le triptyque JBake + Git + TravisCi est une des solution.

    Ce qu'il faut

    Comment faire

    • forker mon template jbake-uno
      travisCi Environnement variable
    • cloner ce nouveau repository sur votre poste
      • git clone git@github.com:<yourName>/jbake-uno.git
    • commencer à écrire votre blog
      • modifier jbake.properties pour le configurer à vos besoin.
      • créer/editer les fichier dans content/blog/YYYY/YYYY-MM-JJ-name.md
    • faite vos tests
      • jbake -b
      • jbake -s
    • configurer travisCI
      travisCi Environnement variable
      • HOST contient le nom de l'hôte ftp
      • USER contient le nom de l'utilisateur ftp
      • PASS contient le mot de passe de l'utilisateur ftp
      • SITE_PATH contient le chemin depuis la racine ou uploader les fichiers
    • "comiter" sur master
      • git add content/blog/
      • git commit -m "message"
      • git push
    • surveiller le build travisCI
    • regarder sur votre site web

    S'inspirer

    vous pouvez regarder le fichier .travis.yml pour la configuration de travisCi et aussi le fichier scripts/travis_build


  2. Mon équipement 2017

    Quoi de neuf

    Cette année je continue les changements coté éclairage avec le financement d'une lampe DING sur kickstater (reçu il y quelques mois). Cette lampe à pour particularité d'éclairer à la fois en avant (normal) mais aussi en dessous. Cette éclairage vers le bas permet d'être plus visible au niveau des intersections et marque aussi votre position sur le coté en vous entourant d'un halo qui s'avère être très rassurant.

    Un éclairage essentiellement sur batterie et plus à dynamo, ce qui ne pose pas vraiment problème car les équipements indiquent facilement l'état de la batterie et permettent donc d'anticipé la panne sèche.

    Les Vélos

    VéloTaff Giant ROAM 1 Disc

    Robuste à souhait, un cadre vtt équipé en VTC pour du vélotaff fiable.

    • Éclairage SeeSense Icon+ (trouvé sur kickstarer)
    • Éclairage DING FlashLight (trouvé sur kickstarer)
    • Casque Giro
    • Pédales time attac
    • Chaussures Sidi Logo XC
    • Sacoche Mainstream MSX SL 55 Classic
    • Sacoche Vaude 10918 Aqua
    • Sac à dos Osprey Momentum 22
    • Charrette à enfants Croozer kid for two.
    • Garmin Edge 510 (très utile pour l'IKV)

    Vélo route Cannondale quick speed 4

    • Casque giro transfer
    • Pédales time attac
    • Chaussures Sidi Log
    • Capteur vitesse cadence Garmin GSC10
    • Sac à dos Osprey Viper 10
    • Garmin Edge 810

    Vélo VTT Trek 4300

    • Casque giro transfer
    • Pédales time Z-Strong
    • Chaussures Sidi Logo
    • Capteur vitesse cadence Garmin GSC10
    • Sac à dos Osprey Viper 10
    • Garmin Edge 810

    Running

    • Montre GPS Garmin Fenix3
    • Ceinture cardio HRM Run

    Natation

    • Montre Garmin Fenix3
    • Lunettes Speedo Merit
    • pullBuoy Decathlon

    Divers Etc

    • Appareil photo Sony RX100 MKI
    • Video Rollei s-50 Wifi
    • Mon profil garminConnect

  3. ISCSI root avec un raspberry PI.

    Pour palier au problème d'usure des cartes SD j'utilisais berryBoot pour installer linux sur un LUN iscsi. Mais cette solution quoi que pratique ne supporte pas très bien les mises à jour du noyau. Depuis quelques temps raspbian supporte de façon native le iscsi. voici comment installer raspbian avec iscsi.

    Informations

    Configuration

    Client : Raspberry PI2 / Raspbian jessy lite V4.4 / 2016-05-27 sur Sdcard 4Go Samsung
    Serveur iscsi : QNAP TS-131 / adresse ip 192.168.0.10
    Box Internet : serveur DHCP

    Prérequis

    La machine cliente sera l'initiateur et devra avoir un nom d'initiateur icsci dont le format est le suivant iqn.yyyy-mm.naming-authority:unique il doit être unique sur le réseau. dans cet exemple le nom sera iqn.2012-07.org.raspbian:raspberry:local.home.raspbian. Le nom de la cible sera définis au niveau du NAS dans cette exemple se sera iqn.2004-04.com.qnap:ts-131:iscsi.raspbian.e65bfb.

    Installation

    Préparer le disque iscsi

    Il suffit de créer une cible(target) iscsi avec son volume (LUN) en suivant la
    Documentation QNAP

    Installer raspbian lite

    J'utilise une raspbian lite disponible ici documentation d'installation
    Mettre la sdcard dans le raspberry pi et mettez le sous tension.
    connecter vous avec l'utilisateur pi mot de passe raspberry
    exécuter les commandes suivantes :
    1. sudo aptitude update
    2. sudo aptitude upgrade
    3. sudo aptitude install rsync open-iscsi
    4. sudo reboot

    Finaliser l'installation iscsi

    reconnecter vous avec l'utilisateur pi
    1. sudo nano /etc/iscsi/initiatorname.iscsi mettre la valeur iqn.2012-07.org.raspbian:raspberry:local.home.raspbian
    2. sudo /etc/init.d/open-iscsi start
    3. sudo systemctl daemon-reload
    4. sudo iscsiadm --mode discovery --type sendtargets --portal 192.168.0.10:3260
    résultat : 192.168.0.10:3260,1 iqn.2004-04.com.qnap:ts-131:iscsi.raspbian.e65bfb
    5. sudo iscsiadm -m node --targetname "iqn.2004-04.com.qnap:ts-131:iscsi.raspbian.e65bfb" --portal "192.168.0.10:3260" --login
    6. sudo mkfs.ext4 -m0 /dev/sda
    7. sudo mkdir /mnt/iscsi && sudo mount /dev/sda /mnt/iscsi
    8. sudo rsync -avhP --exclude /boot --exclude /proc --exclude /sys --exclude /mnt / /mnt/iscsi/
    9. sudo mkdir /mnt/iscsi/{proc,sys,boot,initrd,mnt}
    10. sudo touch /etc/iscsi/iscsi.initramfs (nécessaire à update-initramfs)
    11. sudo touch /mnt/iscsi/etc/iscsi/iscsi.initramfs
    12. sudo update-initramfs -c -k `uname -r`
    résultat : update-initramfs: Generating /boot/initrd.img-4.4.13-v7
    13. sudo cp /boot/kernel7.img /boot/kernel7-4.4.13-v7+.img
    14. sudo nano /boot/config.txt
    ajouter :
    kernel=kernel7-4.4.13-v7+.img
    initramfs initrd.img-4.4.13-v7+ followkernel
    15. sudo blkid /dev/sda
    résultat : /dev/sda: UUID="b042d66d-ead3-4742-953a-61e2bf162aaf" TYPE="ext4"
    16. sudo nano /boot/cmdline.txt
    ip=::::raspberrypi:eth0:dhcp ISCSI_INITIATOR=iqn.2012-07.org.raspbian:raspberry:local.home.raspbian ISCSI_TARGET_NAME=iqn.2004-04.com.qnap:ts-131:iscsi.raspbian.e65bfb ISCSI_TARGET_IP=192.168.0.10 ISCSI_TARGET_PORT=3260 dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=UUID=b042d66d-ead3-4742-953a-61e2bf162aaf rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

    Nota

    Les étapes 7, 8 et 9 permettent de copier l'installation vers le fileSystem iscsi.
    Les étapes 10,11,12 et 13 assure que le noyau et les modules ne changent pas après une mise à jour.
    L'étape 15 configure la connexion vers la cible iscsi.

    Conclusion

    voilà vous n'avez plus qu'a faire rebooter, vous verrez votre pi récupérer une adresse ip puis monter le disque iscsi et continuer le démarrage.
    Vous pouvez donc cloner une installation complète comme ceci :
    - sauvegarder le LUN de cette installation, le copier vers un nouveau LUN associé à une nouvelle cible
    - copier le contenu de la sdcard sur une nouvelle éditer le fichier /boot/cmdline.txt
    - changer les paramètres suivant pour qu'il corresponde à cette nouvelle cible n'oublier pas de changer le nom de l'initiateur :
    ISCSI_INITIATOR=iqn.2012-07.org.raspbian:raspberry:local.home.raspbian ISCSI_TARGET_NAME=iqn.2004-04.com.qnap:ts-131:iscsi.raspbian.e65bfb ISCSI_TARGET_IP=192.168.0.10 ISCSI_TARGET_PORT=3260

    Bibliographie :

    source :
    1. https://www.reddit.com/r/raspberry_pi/comments/49l25b/iscsi_booting_your_raspberry_pi/
    2. https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=151302

    Changelog

    2016-07-14 : correction de coquille dans les commandes.


  4. Domoticz Script lua Heure Creuse / Heure Pleine

    Voici un script en lua pour domoticz qui permet de ventiler dans deux compteurs différent la consomation heure creuse et heure pleine de votre consomation éléctrique.

    Préambule

    Pour ce script il vous faut une installation domoticz fonctionnelle, un compteur de consomation OWL comme le CM180.

    Créer/Avoir dans domoticz

    • le compteur pricipal (owl) ici CONSO
    • Trois variable utilisateurs :
      1. CONSO_LAST_HP
      2. CONSO_LAST_HC
      3. CONSO_LAST
    • Deux compteurs :
      1. CONSO_HP (noter l'index ici idx=57)
      2. CONSO_HC (noter l'index ici idx=59)
    • Un interupteur HC/HP programmer avec un planning (l'interupteur est à ON pendant les heure creuse)

    Le script

    Il est inspiré de celui disponnibe sur le forum domoticz ici. Copier le script suivant, dans le repertoire /home/pi/domoticz/scripts/lua/


  5. OSx a cassé mon jekyll je passe sur jbake

    Comme OSX maverick n'apprécie pas trop jekyll (Ruby), un problème presque après chaque mise à jour. J'ai donc essayé plusieurs moteur de blog statique. Et finalement c'est la promesse du "Write once run everywhere" de java et donc de jbake qui m'a séduit.

    Le thème de base n'est pas des plus attrayant. J'ai donc adapté le thème jekyll-uno qui est relativement simple. Cette adaptation est jbake-uno une démonstration est disponible ici.

    mise en place

    Installation de jbake

    Installation de jbake brew install jbake

    Récupération du thème

    1. Cloner le repo git git clone git@github.com:tisseurdetoile/jbake-uno.git
    2. Enter dans le répertoire: cd jbake-uno/
    3. Cuire le thème : jbake -b
    4. Démarrer le serveur jbake : jbake -s

    Commencer à écrire

    Il vous suffit de créer des fichiers dans content/blog/YYYY/YYYY-MM-DD_nom-du-fichier.md
    et c'est partie.

    Cuire le blog avec jbake -b
    On teste le résultât avec jbake -s
    On upload le contenu du répertoire output.



Billets plus anciens