Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/teamapps-org/ansible-collection-teamapps-general
Ansible Collection for different tools of an organization or company
https://github.com/teamapps-org/ansible-collection-teamapps-general
ansible ansible-collection monitoring prometheus victoriametrics
Last synced: 9 days ago
JSON representation
Ansible Collection for different tools of an organization or company
- Host: GitHub
- URL: https://github.com/teamapps-org/ansible-collection-teamapps-general
- Owner: teamapps-org
- License: apache-2.0
- Created: 2021-05-07T12:27:48.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-09-16T12:58:00.000Z (2 months ago)
- Last Synced: 2024-09-16T15:01:58.090Z (2 months ago)
- Topics: ansible, ansible-collection, monitoring, prometheus, victoriametrics
- Language: Jinja
- Homepage:
- Size: 1.21 MB
- Stars: 7
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Ansible Collection - teamapps.general
generic roles for different tools of an organization or company
## Installation
[Official Ansible Documentation for using collections](https://docs.ansible.com/ansible/latest/user_guide/collections_using.html)
Add to your `requirements.yml`:
~~~yaml
# requirements.ymlcollections:
# current unreleased from git source, requires ansible 2.10 or higher
- name: git+https://github.com/teamapps-org/ansible-collection-teamapps-general.git
type: git
version: main
~~~Run `ansible-galaxy collection install -r requirements.yml -f`
Tip: You can specify the installation path for collections in your project in `ansible.cfg` before running the command above.
~~~ini
# ansible.cfg
[defaults]
collections_path = collections
~~~## Usage
The roles in this collection can be used by using their full name, prefixed with `teamapps.general`
Check the `defaults.yml` of the roles for information on how to configure them.
~~~yaml
# Ansible Playbook
# site.yml- name: Zammad Helpdesk Play
hosts: yourhost.example.com
vars:
letsencrypt_email: [email protected]
zammad_domain: help.example.com
roles:
- role: teamapps.general.webproxy
- role: teamapps.general.zammad
tags: zammad~~~
## Development setup
We use [pipenv](https://pipenv.readthedocs.io) to install ansible and dependency package.
### First time Setup
This is my current way I do it on Ubuntu. There are other ways to install ansible and manage the python dependencies.
~~~bash
cd ansible-collection-teamapps-general # where you cloned this repository
sudo apt install python3-pip
# set PATH so it includes user's ~/.local/bin
echo $PATH | grep '\.local/bin' || echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.profile && export PATH="$HOME/.local/bin:$PATH"
pip3 install --user --upgrade pip pipenv
pipenv shell --three
pipenv sync
# check ansible working correctly
ansible --version
~~~### Loading pipenv
~~~bash
cd ansible-collection-teamapps-general # where you cloned this repository
pipenv shell
~~~### update ansible and other python packages
* Update your pip and pipenv packages: `pip3 install --user --upgrade pip pipenv`
* To update your local packages to what's defined in the Pipfile and Pipfile.lock, run `pipenv sync`
* To update the Pipfile.lock, run `pipenv update`
* For a major upgrade of ansible, you will get a warning. use `pipenv --rm` and then `pipenv sync`### Run checks
Check YAML and ansible syntax
~~~bash
ansible-lint roles/*
~~~## License
Apache 2.0