ArchMiniCI

Voici une idée pour avoir un ou plusieurs environnements de CI ondemand.

Objectif - V1

Le but est d'avoir a disposition trés simplement une stack de dev pour sysadmin/devops.

Devops Basic CI

Les fonctionnalités nécessaires sont les suivantes:

  • Repo Git:
    • API: git+ssh, git+https
    • WebUI: Gogs
  • Repo Docker:
    • API: Official Docker Registry
    • WebUI: N'importe quel webapp
  • CI: Jenkins/Rundeck
    • API: Jenkins
    • WebUI: Jenkins
    • Fonctionnalité; Doit avoir accès à l'ensemble des ressource, dont le controle de docker
  • Docker:
    • API: Docker
  • Artifact repository: httpd
    • WebUI: mod_dir, ou equivalent
    • API: HTTP
  • Dockerised Tools:
    • Ansible
    • Vagrant
    • Veewee
    • Packer
    • ...

L'idée est de pouvoir faire popper trés rapidement une stack de developpment pour sysadmin/devops. Le point d'entré de tout ça est Ansible pour le déploiement de cette infrastructure, et git pour garder une trace de tout.

Architecture

On va tout déployer avec Ansible, et le seul requirement de l'hote distant est d'avoir docker de disponible.

Phases du projet

On va essayer d'utiliser un maximum de choses upstream dans un premier temps. Une version 2 viendra avec des builds personnalisés de Docker, et de meilleurs bonnes pratiques. Le but de la version 1 est d'avoir une plateforme rapidement disponible, et fonctionnelle. Cette plateforme en version 1 sera utilisée pour créer la version 2. D'autres outils viendront étouffer l'ensemble plus tard.

Ressources

Page last modified on February 01, 2017, at 07:15 PM EST