ansible-role-semaphore icon indicating copy to clipboard operation
ansible-role-semaphore copied to clipboard

Ansible role to install and configure the Ansible UI Semaphore.

Ansible UI Semaphore

Ansible role to install and configure the Ansible UI Semaphore.

Requirements

None. But for a production environment you should install a webserver as proxy for ssl termination.

Example playbook

- hosts: all
  become: yes

  roles:
  - semaphore

  vars:
    semaphore_addn_config:
      email_alert: true
      email_sender: "[email protected]"

Using an existing database/mariadb

Just set semaphore_mysql_install: false and provide the credentials semaphore_mysql_*.

Role variables

None of the variables below are required.

Variable Default Comment
semaphore_version v2.8.77 the version to download, also see semaphore_download_url and semaphore_download_checksum
semaphore_mysql_install true whether to install mysql on the host, installs with the password mysql_root_password
semaphore_mysql_create_db true whether to create the mysql db and user
semaphore_mysql_host:semaphore_mysql_port 127.0.0.1:3306 the mysql host
semaphore_mysql_db semaphore the mysql database
semaphore_mysql_user semaphore the mysql user
semaphore_mysql_password semaphore the mysql user password
semaphore_user semaphore the user and systemd identifier semaphore runs as
semaphore_port 3000 the port semaphore binds to
semaphore_path /opt/semaphore destination for the binary
semaphore_addn_config {} for all options see the source
semaphore_config_path /etc/semaphore/semaphore.json config file
semaphore_default_user admin login name of the default user
semaphore_default_user_name semaphore_default_user his human readable name
semaphore_default_user_password admin the password
semaphore_default_user_mail [email protected] and mail adress

For all options see defaults/main.yml

Demo/Development

Molecule is used for testing, the webinterface of the centos machine will be exposed and can be used as demo.

  • run molecule converge
  • open your browser at 127.0.0.1:3000
  • and login with user and password admin.

License

MIT