LukasGibb.asterisk-config-deploy

Asterisk-Konfigurations-Deployment

Eine Ansible-Rolle, die Asterisk-Konfigurationen, Sounds und Wartemusikdateien aus einem Git-Repository bereitstellt.

Die Rolle wird Konfigurationsdateien aus einem Git-Repository in ein Arbeitsverzeichnis auschecken und diese Dateien dann als symbolischen Link in das Asterisk-Konfigurationsverzeichnis einfügen.

WARNUNG: Dies wird Ihre ursprünglichen Asterisk-Konfigurationsdateien löschen! Führen Sie dies nicht auf einem bestehenden Server aus.

Die Rolle wird auch Verzeichnisse mit benutzerdefinierten 'Sounds' und 'Wartemusik' Dateien als symbolische Links einfügen.

Um diese Option zu verwenden, sollten Sie Git LFS zum Speichern der Audiodateien nutzen. Die Rolle installiert git-lfs für Sie auf dem Server.

Asterisk Konfigurationsdatei Überschreibungssystem

Konfigurationsdateien, die spezifisch für einen bestimmten Server sind, können in einen Unterordner im Repository gelegt werden. Dies kann hilfreich sein, wenn Sie einen generischen Wählplan haben, aber Erweiterungen/Schnitstellen usw. für mehrere Regionen/Büros/Kunden konfigurieren müssen.

z.B. Konfigurationsdateien für die US-PABX in "asterisk/us/" und die UK-PABX in "asterisk/uk/"

Der Pfad zum relevanten Unterordner kann in einer Host-Variablen (asterisk_config_deploy_ast_override_dir) festgelegt werden. Die Rolle wird alle server spezifischen Konfigurationsdateien bereitstellen, die vorhanden sind, anstelle der allgemeineren Dateien mit demselben Namen im Hauptordner.

Asterisk Sounds

Benutzerdefinierte Asterisk-Sounddateien können in ein Verzeichnis im Repository hinzugefügt werden (Standardverzeichnis: sounds). Dieses Verzeichnis wird als symbolischer Link zum 'benutzerdefinierten' Asterisk 'Sounds'-Verzeichnis eingefügt.

Asterisk Wartemusik

Benutzerdefinierte Asterisk 'Wartemusik'-Dateien können in ein Verzeichnis im Repository hinzugefügt werden (Standardverzeichnis: moh). Dieses Verzeichnis wird als symbolischer Link zu einem 'benutzerdefinierten' Verzeichnis unter dem Asterisk 'moh'-Verzeichnis eingefügt (damit die ursprünglichen moh-Dateien nicht verloren gehen). Wenn Sie stattdessen die Standard-moh-Dateien überschreiben möchten, setzen Sie 'asterisk_config_deploy_moh_path' auf den tatsächlichen moh-Pfad.

Anforderungen

Benötigt eine funktionierende Asterisk-Installation und ein Git-Repository, das Ihre Konfigurationsdateien enthält.

Wenn Ihr Konfigurationsrepository privat ist (empfohlen), sollten Sie die SSH-Agentenweiterleitung einrichten, damit die Git-Aufgabe Ihre SSH-Schlüssel nutzen kann, ohne dass Sie diese auf dem Asterisk-Server zurücklassen müssen:

https://developer.github.com/v3/guides/using-ssh-agent-forwarding/

Wenn mehrere Benutzer diese Rolle anwenden, stellen Sie sicher, dass Sie sie alle einer Gruppe hinzufügen und den Gruppennamen über die Variable asterisk_config_deploy_group an die Rolle übergeben.

Rollenvariablen

Siehe defaults/main.yml.

Abhängigkeiten

Keine erforderlichen Abhängigkeiten. Wählen Sie Ihre bevorzugte Methode zur Installation von Asterisk. Möglicherweise möchten Sie sich auch ansehen:

https://galaxy.ansible.com/LukasGibb/asterisk/

Beispiel-Playbook

Offensichtlich müssen Sie Ihre Git-Repository-Details übergeben (nicht die Beispiel-/Standardwerte):

- hosts: pabxservers
  vars: 
    asterisk_config_deploy_repo_protocol: "ssh://" 
    asterisk_config_deploy_repo_url: "github.com/myusername/myprivateasteriskconfigrepo"
    asterisk_config_deploy_repo_subfolder: "asterisk-config"
    asterisk_config_deploy_repo_override_subfolder: "asterisk-config/pbx1"
  
  roles:
    - LukasGibb.asterisk
    - LukasGibb.asterisk-config-deploy

Lizenz

MIT

Autorinformationen

Diese Rolle wurde 2018 von: Lukas Gibb CloudJourneyman.com erstellt.

Über das Projekt

An Ansible role that deploys Asterisk config, sounds and moh files

Installieren
ansible-galaxy install LukasGibb.asterisk-config-deploy
GitHub Repository
Lizenz
mit
Downloads
93
Besitzer