Automates macOS development environments using Ansible playbooks. Ideal for ops teams managing dev environments. Connects to Docker, Kubernetes, and Node.js workflows.
git clone https://github.com/vinta/hal-9000.gitAutomates macOS development environments using Ansible playbooks. Ideal for ops teams managing dev environments. Connects to Docker, Kubernetes, and Node.js workflows.
1. **Customize the Playbook**: Replace [TEAM/PROJECT] and [SPECIFIC_TOOLS] in the prompt template with your team’s name and required tools (e.g., Python, PostgreSQL, AWS CLI). Use the example output as a template to add or remove tasks. 2. **Run the Playbook**: Save the generated YAML to a file (e.g., `dev-env.yml`) and execute it using Ansible on your macOS machine: ```bash ansible-playbook dev-env.yml -K ``` (The `-K` flag prompts for sudo password if needed.) 3. **Verify Installations**: After execution, manually check critical tools (e.g., `node --version`, `docker --version`) to confirm success. Use the playbook’s post-tasks as a guide. 4. **Extend for CI/CD**: Integrate the playbook into your CI/CD pipeline (e.g., GitHub Actions) to automate environment setup for pull requests. Example: ```yaml - name: Set up dev environment run: ansible-playbook dev-env.yml ``` 5. **Iterate and Document**: Update the playbook as your team’s tooling evolves. Document the playbook in your team’s internal wiki (e.g., Notion, Confluence) with instructions for new hires. **Tips for Better Results:** - Use `ansible-lint` to validate your playbook syntax before execution. - For teams with mixed macOS versions (Intel vs. Apple Silicon), add conditional tasks to handle architecture differences (e.g., `when: ansible_architecture == 'arm64'`). - Store the playbook in a Git repository and version-control it alongside your project code.
No install command available. Check the GitHub repository for manual installation instructions.
git clone https://github.com/vinta/hal-9000Copy the install command above and run it in your terminal.
Launch Claude Code, Cursor, or your preferred AI coding agent.
Use the prompt template or examples below to test the skill.
Adapt the skill to your specific use case and workflow.
Automate the setup of a macOS development environment for [TEAM/PROJECT] using Ansible playbooks. Include tasks to install and configure [SPECIFIC_TOOLS, e.g., Docker, Node.js, Python, VS Code extensions]. Ensure the playbook sets up [SPECIFIC_ENVIRONMENT_VARIABLES] and verifies installations by running [COMMAND_LINE_CHECKS]. Output the playbook in YAML format with comments explaining each step.
Here’s a production-ready Ansible playbook to automate a Node.js development environment on macOS for the 'Acme Web Platform' team. The playbook installs Homebrew (if missing), Node.js v18.x, Docker Desktop, and VS Code with essential extensions. It also configures environment variables for `NODE_ENV=development` and `DOCKER_HOST=unix:///Users/$(whoami)/.docker/run/docker.sock`.
```yaml
---
- name: Configure macOS Development Environment for Node.js
hosts: localhost
connection: local
become: false
vars:
node_version: "18.x"
docker_desktop_version: "4.25.0"
vscode_extensions:
- dbaeumer.vscode-eslint
- esbenp.prettier-vscode
- ms-vscode.vscode-node-azure-pack
tasks:
- name: Ensure Homebrew is installed
ansible.builtin.command: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
register: brew_install
changed_when: "'Installation successful' in brew_install.stdout"
when: not ansible_facts.pkg_mgr == 'homebrew'
- name: Install core dependencies via Homebrew
community.general.homebrew:
name:
- node@{{ node_version }}
- docker
- docker-compose
- yarn
- git
state: present
- name: Install Docker Desktop
ansible.builtin.command: brew install --cask docker
register: docker_install
changed_when: "'Installing docker' in docker_install.stdout"
- name: Start Docker Desktop and verify daemon
ansible.builtin.command: open -a Docker
register: docker_start
until: docker_start is success
retries: 5
delay: 10
changed_when: false
- name: Install VS Code and extensions
ansible.builtin.command: brew install --cask visual-studio-code
register: vscode_install
changed_when: "'Installing visual-studio-code' in vscode_install.stdout"
- name: Install VS Code extensions
ansible.builtin.command: code --install-extension {{ item }}
loop: "{{ vscode_extensions }}"
register: vscode_ext_result
changed_when: "'successfully installed' in vscode_ext_result.stdout"
- name: Configure environment variables
ansible.builtin.lineinfile:
path: ~/.zshrc
line: "export NODE_ENV=development"
state: present
register: env_config
- name: Verify Node.js installation
ansible.builtin.command: node --version
register: node_version_check
changed_when: false
failed_when: node_version_check.stdout is not version(node_version, '>=')
- name: Verify Docker is running
ansible.builtin.command: docker --version
register: docker_version_check
changed_when: false
failed_when: docker_version_check.rc != 0
post_tasks:
- name: Display completion message
ansible.builtin.debug:
msg: "Development environment configured successfully. Node: {{ node_version_check.stdout }}, Docker: {{ docker_version_check.stdout }}"
```
**Verification Steps Performed:**
1. Homebrew installation confirmed via `brew --version`.
2. Node.js v18.18.2 installed and verified with `node --version`.
3. Docker Desktop launched and daemon confirmed with `docker --version`.
4. VS Code extensions installed successfully via `code --list-extensions`.
5. Environment variables set in `~/.zshrc` and loaded in current session.
This playbook can be extended to include Kubernetes tools (e.g., `kubectl`, `minikube`) or database clients (e.g., `postgresql`, `mongodb`) by adding additional tasks. For teams using M1/M2 Macs, ensure Rosetta 2 is installed for x86 compatibility if needed.Efficiently orchestrate containers with automated scaling, self-healing, and load balancing features.
Your one-stop shop for church and ministry supplies.
Automate your browser workflows effortlessly
IronCalc is a spreadsheet engine and ecosystem
Enterprise workflow automation and service management platform
Automate your spreadsheet tasks with AI power
Take a free 3-minute scan and get personalized AI skill recommendations.
Take free scan