Projet

Général

Profil

Les fichiers de configuration

3 fichiers de configuration sont utilisés :
  • ModulesConf.yaml : contient les éléments liés aux modules EOLE
  • ModeleReseauTestEole.yaml : décrit la structure du réseau
  • test.yaml : Décrit les contextes et actions permettant de faire un test.

ModulesConf.yaml

Ce fichier décrit globalement les modules Eole.
Il est utilisé pour :
  • générer les context de chaque modele de VM
  • générer les fresh install eole ( <module>-<version>-<architecure>.fi dans nebula )
  • générer les daily ( <module>-<versionMajer>-daily-<architecure>.fi dans nebula )
eoleVersions:                           # liste des numéros de version géré dans l'env de test
- versionMajeur: "2.3"                  # version Majeur
  version: "2.3.13"                     # version détaillée utilisé dans nebula pour identifier la version (elle n'a de sens que pour nebula !! ex: nous pourrions l'appeler 'toto'....)
  majAuto: STABLE                       # stratégie de mise à jour à appliquer
  repertoireTemplates: "2.3"            # répertoire des templates utilisé pour les Install dans /mnt/eole-ci-tests/templateFreshInstall
  genereDaily: true                     # pour cette version, il faut génerer des daily / non !

- versionMajeur: "2.4" 
  version: "2.4.0" 
  majAuto: STABLE

- versionMajeur: "2.4.1" 
  version: "2.4.1-beta3" 
  repertoireTemplates: "2.4.1" 
  genereDaily: true
  majAuto: DEV
  url: http://eoleng.ac-dijon.fr/pub/iso/devel/2.4/full/eole-unstable/precise/daily/current/precise-alternate-amd64.iso   # l'url a utiliser si ce n'est pas le repository par default  

modules:                                # La liste des modules connus
  - module: base                        # le nom du module dans les modeles
    memoire: 1024                       # permet de définir la mémoire requise pour ce module
    architecture: i386                  # est limité à l'architecture i386
    container: non                      # permet d'indiquer aux tests qu'il faut faire l'installation des conteneurs ou non

versionModules:                         # la liste des modules de chaque version
- versionMajeur: "2.3"                  # 
  modulesVersion:                       # 
  - module: base                        # dans la version 2.3 
    menu: 1                             # ... le module est en position 1 sur le menu d'installation 
    actif: oui                          # indique que le module est actif/ou déactivé dans les tests
  - module: "amon"    ...
    menu: 1

ModeleReseauTestEole.yaml

Attention: Les gateway de chaque réseau est toujours l'ip .1 de chaque réseau
Il est utilisé pour :
  • générer les context de chaque modele de VM
  • générer les templates de chaque machine
  • démarrer les VM lors des tests en Itégration Continue
bases:                                  
  - base: eole23                        # nom de la base utiliser dans la description d'une machine (cf ci dessous )
    versionMajeur: 2.3                  # quel est la version majeur a utiliser. La version mineur sera déduite du fichier ModulesConf.yaml
  - base: winpcadmin
    imageNebula: windows-xp-sp3.vm      # si imageNebula est presente, alors la base n'est pas EOLE ==> windows ou autre
    architecture: amd64                 # dans ce cas, l'architecture doit être définie 
                                        #....

switchs:                                # c'est la liste des switchs nécessaire à ce modele
  - sw: academie                        # c'est l'id du switch . dans Nebula, il correspond à "SW-<pefixe>-academie" 
    network: 192.168.0                  # c'est le réseau associé à ce switch
                                        #....

networks:                               # ce tag est la racine de description de tous les établissements 
  - etablissement: aca                  # ce tag correspond à un etablissement dont le nom est 'aca'. Toutes les machines définies sous l'établissement seront 
                                        # préfixées par <prefixe_user>.<etablissement>
    machines:                           # c'est la liste des machines
    - machine: eolebase                 # chaque machine a : un nom (eolebase). 
                                        # le template de cette machine sera <prefixe_user>.<etablissement>.<machine> (ggg.aca.eolebase) 
                                        # le nom dns sera : <machine>.<etablissement>@ac-test.fr pour les etablissement et
                                        #                   <machine>@ac-test.fr pour les machines en académie
                                        # Ce nom est important car il va définir un template dans les configurations enregistrées dans eole-ci-test
      module: base                      # c'est le nom du module (cf ModulesConf.yaml). La valeur est obligatoire pour les modules Eole
      base: eole24                      # identifie l'image de base à utiliser eole23, eole24, win...
      switchs:                          # ce tag décris les liens de la machine
      - sw: academie                    # le nom du switch 
        host: 24                        # l'ip sur ce switch
                                        #....
    - machine: sphynx24a
      module: sphynx
      base: eole24
      switchs:                          # exemple avec plusieurs switchs
      - sw: academie
        host: 11
      - sw: agriates
        host: 11
      - sw: ha1
        host: 11
                                        #....
    - machine: pcadmin                  # exemple pour un poste client
      base: winpcadmin
      switchs:
      - sw: admin1
        host: 20
                                        #....

test.yaml

todo