weareinteractive.pm2

Ansible weareinteractive.pm2 Rolle

Build Status Galaxy GitHub Tags GitHub Stars

weareinteractive.pm2 ist eine Ansible Rolle, die:

  • pm2 installiert
  • JSON-Anwendungen verwaltet
  • Dienste konfiguriert

Installation

Mit ansible-galaxy:

$ ansible-galaxy install weareinteractive.pm2

Mit requirements.yml:

- src: weareinteractive.pm2

Mit git:

$ git clone https://github.com/weareinteractive/ansible-pm2.git weareinteractive.pm2

Abhängigkeiten

Hinweis:

Da Ansible Galaxy jetzt Organisationen unterstützt, wurde diese Rolle von franklinkim.pm2 zu weareinteractive.pm2 verschoben!

Variablen

Hier ist eine Liste aller Standardvariablen für diese Rolle, die auch in defaults/main.yml verfügbar sind.

---
pm2_cmds:
  - run: delete all
pm2_cmds_default_env: {}
pm2_post_cmds: []
pm2_post_cmds_default_env: {}
pm2_apps: []
pm2_apps_default_env: {}
pm2_apps_default_cmd: start
pm2_apps_delete_all: yes
pm2_upstart: yes
pm2_service_enabled: yes
pm2_service_name: pm2-init.sh
pm2_service_state: started
pm2_version:
pm2_user: "{{ ansible_user_id }}"
pm2_platform:

Handler

Dies sind die Handler, die in handlers/main.yml definiert sind.

---

- name: pm2 neu starten
  service:
    name: "{{ pm2_service_name }}"
    state: restarted
  when: pm2_upstart and pm2_service_state != 'stopped'

- name: pm2 neu laden
  service:
    name: "{{ pm2_service_name }}"
    state: reloaded
  when: pm2_upstart and pm2_service_state != 'stopped'

- name: pm2 aktualisieren
  shell: pm2 update
  when: pm2_upstart and pm2_service_state != 'stopped'

Verwendung

Dies ist ein Beispiel-Playbook:

---

- hosts: all
  become: yes
  roles:
    - weareinteractive.pm2
  vars:
    pm2_user: root
    pm2_upstart: no
    pm2_cmds:
      - run: delete
        args: console_error
        ignore_errors: yes
    pm2_apps:
      - run: apps.json
        path: "/etc/ansible/roles/weareinteractive.pm2/tests"
        cmd: startOrGracefulReload
      - run: console_error.js
        args: --name console_error
        path: "/etc/ansible/roles/weareinteractive.pm2/tests/apps"
        cmd: start
        env:
          NODE_ENV: dev
    pm2_apps_default_env:
      NODE_ENV: production

Tests

$ git clone https://github.com/weareinteractive/ansible-pm2.git
$ cd ansible-pm2
$ make test

Mitwirken

Um zur vorhandenen Stilrichtlinie beizutragen, achte darauf, den bestehenden Code-Stil beizubehalten. Füge Unit-Tests und Beispiele für neue oder geänderte Funktionen hinzu.

  1. Fork es
  2. Erstelle deinen Feature-Branch (git checkout -b mein-neues-feature)
  3. Committe deine Änderungen (git commit -am 'Füge eine Funktion hinzu')
  4. Push zu dem Branch (git push origin mein-neues-feature)
  5. Erstelle einen neuen Pull Request

Hinweis: Um die README.md-Datei zu aktualisieren, installiere und führe ansible-role aus:

$ gem install ansible-role
$ ansible-role docgen

Lizenz

Copyright (c) We Are Interactive unter der MIT-Lizenz.

Über das Projekt

Installs pm2 and manages apps

Installieren
ansible-galaxy install weareinteractive.pm2
Lizenz
mit
Downloads
30.6k