Skip to content

Instantly share code, notes, and snippets.

@loftwah
Created March 31, 2024 05:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save loftwah/b2daf4f43a516a381c17525c9ea6b9dd to your computer and use it in GitHub Desktop.
Save loftwah/b2daf4f43a516a381c17525c9ea6b9dd to your computer and use it in GitHub Desktop.
Loftwah Dev Env

Automating Development Environment Setup with Ansible

  • Ansible Playbook for Oh My Zsh:

    • Write tasks to install Oh My Zsh.
    • Create a template for the .zshrc file to configure themes and plugins.
    • Apply the template to both macOS and Linux systems.
  • Ruby Environment Setup:

    • Write conditional Ansible tasks: ruby-install and chruby for macOS, rbenv for Linux.
    • Automate the Ruby version installation and global version setting.
  • Node.js Version Manager:

    • Choose a Node.js version manager and write tasks to install and configure it.
    • Automate Node.js installations and version management.
  • Go Language Setup:

    • Write tasks to install Go and configure the GOPATH.
    • Ensure the Go binary path is added to the PATH environment variable.
  • Terraform Version Manager (tfenv):

    • Write tasks to install tfenv.
    • Automate the installation of desired Terraform versions.
  • SSH Configuration:

    • Automate the SSH agent setup and ssh-add commands.
    • Consider using Ansible Vault for managing private SSH keys securely.
  • Docker Installation:

    • Write tasks to install Docker.
    • Ensure Docker is properly configured on both macOS and Linux.
  • Unix Tools Installation:

    • Identify and write tasks to install tools like fzf and others you find useful.
  • Tailscale Setup:

    • Write tasks to install and configure Tailscale.
  • AWS CLI Configuration:

    • Write tasks to install the AWS CLI.
    • Configure the AWS CLI, potentially using Ansible's aws_ssm module to manage secrets securely.
  • Fonts and Themes:

    • Write tasks to download and install Nerd Fonts if required.
    • Configure the "Shades of Purple" theme for your terminal and code editor.
  • Validation and Testing:

    • After creating your playbooks, run them in test environments.
    • Validate that all configurations are applied correctly and environments are set up as expected.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment