This is a WIP project. The playbook is not yet complete and it will eventually evolve to a CLI tool written in GO to automate the setup of different environments used by me.
It will (probably) include the following:
- React Native Environment Setup
- Go Environment Setup
- KMP Environment Setup
- Jira Integration
- Git/Github Integration
This playbook is used to install and configure the following services:
-
Update and upgrade packages
- Debian-based systems: Uses
ansible.builtin.apt
to update and upgrade apt packages. - macOS: Uses
community.general.homebrew
to update and upgrade brew packages.
- Debian-based systems: Uses
-
Install Node.js
- Debian-based systems: Uses
ansible.builtin.apt
to install Node.js. - macOS: Uses
community.general.homebrew
to install Node.js.
- Debian-based systems: Uses
-
Install npm
- Debian-based systems: Uses
ansible.builtin.apt
to install npm.
- Debian-based systems: Uses
-
Install yarn
- Uses
ansible.builtin.command
to install yarn globally via npm.
- Uses
-
Install Watchman
- Debian-based systems: Uses
ansible.builtin.apt
to install Watchman. - macOS: Uses
community.general.homebrew
to install Watchman.
- Debian-based systems: Uses
-
Install Java Development Kit (JDK)
- Debian-based systems: Uses
ansible.builtin.apt
to install openjdk-8-jdk. - macOS: Uses
community.general.homebrew
to install openjdk.
- Debian-based systems: Uses
-
Install Android Studio dependencies
- Debian-based systems: Uses
ansible.builtin.apt
to install various i386 libraries required for Android Studio.
- Debian-based systems: Uses
-
Install Gnu-tar
- macOS: Uses
community.general.homebrew
to install gnu-tar.
- macOS: Uses
-
Download and set up Android Studio
- Uses
ansible.builtin.get_url
to download Android Studio. - Uses
ansible.builtin.unarchive
to extract Android Studio. - Uses
ansible.builtin.lineinfile
to set up environment variables for Android Studio.
- Uses
-
Install React Native CLI
- Uses
community.general.npm
to install React Native CLI globally.
- Uses
This playbook ensures that all necessary tools and dependencies are installed and configured for both Debian-based systems and macOS.
-
Ensure you have Ansible installed on your system. You can install it using pip:
pip install ansible
-
Install the required Ansible Galaxy collection:
ansible-galaxy collection install community.general
-
Clone the repository containing the playbook:
git clone <repository_url> cd <repository_directory>
-
Run the playbook using the following command:
ansible-playbook -i inventory.ini playbook.yaml
-
The playbook will execute and install/configure the necessary services as described above.