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.aptto update and upgrade apt packages. - macOS: Uses
community.general.homebrewto update and upgrade brew packages.
- Debian-based systems: Uses
-
Install Node.js
- Debian-based systems: Uses
ansible.builtin.aptto install Node.js. - macOS: Uses
community.general.homebrewto install Node.js.
- Debian-based systems: Uses
-
Install npm
- Debian-based systems: Uses
ansible.builtin.aptto install npm.
- Debian-based systems: Uses
-
Install yarn
- Uses
ansible.builtin.commandto install yarn globally via npm.
- Uses
-
Install Watchman
- Debian-based systems: Uses
ansible.builtin.aptto install Watchman. - macOS: Uses
community.general.homebrewto install Watchman.
- Debian-based systems: Uses
-
Install Java Development Kit (JDK)
- Debian-based systems: Uses
ansible.builtin.aptto install openjdk-8-jdk. - macOS: Uses
community.general.homebrewto install openjdk.
- Debian-based systems: Uses
-
Install Android Studio dependencies
- Debian-based systems: Uses
ansible.builtin.aptto install various i386 libraries required for Android Studio.
- Debian-based systems: Uses
-
Install Gnu-tar
- macOS: Uses
community.general.homebrewto install gnu-tar.
- macOS: Uses
-
Download and set up Android Studio
- Uses
ansible.builtin.get_urlto download Android Studio. - Uses
ansible.builtin.unarchiveto extract Android Studio. - Uses
ansible.builtin.lineinfileto set up environment variables for Android Studio.
- Uses
-
Install React Native CLI
- Uses
community.general.npmto 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.