Skip to content
Giuseppe Capizzi edited this page May 31, 2021 · 3 revisions

The whole team used shared provisioning scripts for workstations. These consisted on Ansible playbooks for both Mac and Linux and can be found in the garden-dotfiles repository. The README explains all the steps required to set up the workstations.

Everyone on the team has been using macOS for a while, so the Mac playbooks will be the most up-to-date ones. If you decide to work on a Mac, keep in mind that Garden relies on Linux kernel primitives and Linux-specific dependencies, so you will need to use special tools to build the project and run the tests. Any editor trying to use LSP and gopls would also struggle unless configured properly: we launched our editor (Neovim with CoC) this way.

It is probably a good idea to develop on Linux instead. The Linux playbooks could be outdated compared to the Mac ones, but they're still a good starting point. If you can't use Linux machines, Vagrant is an excellent tool. garden-dotfiles comes with a (very minimal) Vagrantfile which shows how you could provision a development VM using the Ansible playbooks. The vagrant-google and vagrant-aws plugins make it easy to spin up development VMs on the cloud, which makes remote pairing easier and frees you from hardware or network constraints.

Clone this wiki locally