ElaoInfra.git

Ansible Role Platforms License

Rola Ansible: GIT

Ta rola zajmuje się instalacją i konfiguracją git, wykonując następujące kroki:

  • Instalacja pakietu GIT
  • Ustawienie pliku gitconfig
  • Umożliwienie konfiguracji pliku giconfig

Jest częścią stosu Ansible ELAO, ale może być używana jako samodzielny komponent.

Wymagania

  • Ansible 1.9.0+

Zależności

Brak.

Instalacja

Ansible 2+

Używając CLI ansible galaxy:

ansible-galaxy install elao.git,2.0

Używając pliku wymagań ansible galaxy:

- src:     elao.git
  version: 2.0

Ansible 1 (już nie jest aktualizowane)

Używając CLI ansible galaxy:

ansible-galaxy install elao.git,1.0

Używając pliku wymagań ansible galaxy:

- src:     elao.git
  version: 1.0

Obsługa ról

Brak

Zmienne roli

Nazwa Domyślna wartość Typ Opis
elao_git_config_file /etc/gitconfig String (ścieżka) Ścieżka do pliku konfiguracyjnego
elao_git_config_template config/empty.j2 String (ścieżka) Ścieżka do szablonu konfiguracyjnego
elao_git_config [] Tablica Lista opcji konfiguracyjnych git
elao_git_repositories [] Tablica Lista repozytoriów do sklonowania

Konfiguracja GIT

Klucz elao_git_config_file pozwala na określenie ścieżki do pliku konfiguracyjnego.

Przykład:

---

elao_git_config_file: "{{ playbook_dir }}/templates/git/config.j2"

Klucz elao_git_config_template pozwoli na użycie różnych głównych szablonów konfiguracyjnych. Rola dostarczana jest z podstawowymi szablonami:

  • base (Prosty szablon bez domyślnej konfiguracji)
  • dev (Ta konfiguracja zapewnia opcje dla VM Vagrant, takie jak ohmyzsh)
  • test
  • prod (Dla celów produkcyjnych. Lekki szablon konfiguracyjny)

Doświadczeni użytkownicy GIT mogą dostarczyć własny szablon za pomocą klucza elao_git_config_template.

Klucz elao_git_config pozwala zdefiniować klucze konfiguracyjne git, jak poniżej:

Przykład:

---

elao_git_config:
  - user:
    - name:           "Guewen FAIVRE"
    - email:          "[email protected]"

  - core:
    - autocrlf:       input
    - compression:    9
    - excludesfile:   "~/.gitignore_global"
    - filemode:       false

  - remote "france":
    - url:            git://repohost/project1.git
    - fetch:          +refs/heads/*:refs/remotes/origin/*

  - color:
    - ui:             "true"

  - color:
    - option:         branch
    - current:        yellow reverse
    - local:          yellow
    - remote:         green

  - color:
    - option:         diff
    - meta:           yellow bold
    - frag:           magenta bold
    - old:            red bold
    - new:            green bold

  - color:
    - option:         status
    - added:          yellow
    - changed:        green
    - untracked:      red

  - alias:
    - br:             branch -av
    - ci:             commit

Automatyczne klonowanie wymaganych repozytoriów

Klucz elao_git_repositories jest "specjalny", zaprojektowano go, aby umożliwić automatyczne klonowanie określonych repozytoriów:

Zmienne

Nazwa Domyślna wartość Typ Opis
repo ~ (wymagane) String adres repozytorium git w protokole git, SSH lub HTTP
dest ~ (wymagane) String Absolutna ścieżka do miejsca, gdzie repozytorium ma być sklonowane
version HEAD String Jaką wersję repozytorium sklonować
update true Boolean Jeśli nie, nie pobieraj nowych wersji z repozytorium źródłowego

Przykład:

---
elao_git_repositories:
  - repo:    https://github.com/symfony/symfony1.git
    dest:    /usr/share/symfony/symfony-1.4
    version: v1.4.20
    update:  false

Przykład playbooka

- hosts: serwery
  roles:
     - { role: elao.git }

Licencja

MIT

Informacje o autorze

ELAO (http://www.elao.com/)

O projekcie

This role will assume the setup and configuration of git - Installing GIT package - Define the gitconfig file - Allow setup of the giconfig file

Zainstaluj
ansible-galaxy install ElaoInfra.git
Licencja
Unknown
Pobrania
518
Właściciel
All of those roles aren't maintained anymore and we strongly encourage you to switch to our new (maintained and tested) Ansible stack: https://github.com/manala