Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tdgroot/ansible-workstation-common

Common tasks for installing and configuring Fedora Workstation and MacOS
https://github.com/tdgroot/ansible-workstation-common

ansible ansible-galaxy fedora macos mariadb-server nginx nvidia-driver php-fpm redis-server steam

Last synced: about 2 months ago
JSON representation

Common tasks for installing and configuring Fedora Workstation and MacOS

Awesome Lists containing this project

README

        

[![GitHub branch checks state](https://img.shields.io/github/checks-status/tdgroot/ansible-workstation-common/master?style=flat-square)](https://travis-ci.org/tdgroot/ansible-workstation-common)
[![Ansible Role](https://img.shields.io/ansible/role/54428?style=flat-square)](https://galaxy.ansible.com/tdgroot/workstation_common/)
[![Ansible Role](https://img.shields.io/ansible/role/d/54428?style=flat-square)](https://galaxy.ansible.com/tdgroot/workstation_common/)

_**DEPRECATION NOTICE:**_

_**Times have changed and so has the need for this Ansible workstation configuration. I have used it with my team for over 4 years to have a very feature-rich development environment deployed on either Fedora Workstation or MacOS. Eventually we moved to using Docker Compose based configurations (like Warden), because the maintanence burden was getting quite high, especially for MacOS. This repository has been archived and should be seen as a library of all kinds of Ansible stuff.**_

Workstation Common
=================================

Common tasks for installing and configuring Fedora Workstation and MacOS. It's a development stack using:
- PHP (7.3, 7.4 and 8.0)
- Node.js
- NGINX (automatically tested and reloaded using [nginx_config_reloader](https://github.com/ByteInternet/nginx_config_reloader))
- MariaDB
- Redis
- Dnsmasq
- Elasticsearch
- Mailcatcher

All the other sugar included, such as:
- Docker
- Google Chrome
- AWS CLI
- Composer
- Magerun
- Spotify
- Steam
- Many other tweaks.

This project is tested and running on:
- Fedora Workstation 33
- MacOS (**in development, tests need to be added**)

Requirements
------------

A running instance of Fedora Workstation/MacOS with ssh key access.

Role Variables
--------------

Too many to list here, please see [defaults/main.yml](https://github.com/tdgroot/ansible-workstation-common/blob/master/defaults/main.yml).

Dependencies
------------

- [geerlingguy.homebrew](https://galaxy.ansible.com/geerlingguy/homebrew/)

Running Tests
-------------

``` shell
pip install -r install.txt
molecule test
```

Example Playbook
----------------

Example filename: `workstation.yml`.

- hosts: localhost
connection: local
become_method: sudo
vars:
primary_user: john
primary_group: john
roles:
- tdgroot.workstation_common

Running the role on your system
-------------------------------

1. Create a playbook as described above.
2. Install the role with `ansible-galaxy install tdgroot.workstation_common`.
3. Run command `echo localhost > hosts`.
4. Run command `ansible-playbook -K `.

License
-------

MIT