Installer fabric via saltstack dans un virtualenv python 3.X

J'ai décidé de ne plus rien installer manuellement sur mes serveurs, et donc, je passe par saltstack pour qu'il installe ce que je veux à ma place. Vous trouvez ici un states saltstack pour installer fabric dans un virtualenv python.

Les scripts fabric seront à mettre de preference dans le dossier /srv/fabric.

Ci dessous le fichier fabric.sls:

python3:
  pkg.installed

python3-pip:
  pkg.installed

python3-virtualenv:
  pkg.installed

virtualenv:
  pkg.installed

/srv/fabric:
  file.directory:
    - user: config
    - group: config

/srv/fabric/.virtualenv:
  virtualenv.managed:
    - user: config
    - python: /usr/bin/python3
    - require:
      - file: /srv/fabric
      - pkg: python3-virtualenv

fabric:
  cmd.run:
    - name: ". ~/.profile; source /srv/fabric/.virtualenv/bin/activate; pip install -q --upgrade fabric"
    - shell: /bin/bash
    - user: config
    - cwd: /srv/fabric/.virtualenv
    - require:
      - pkg: python3-pip
      - virtualenv: /srv/fabric/.virtualenv