Skip to main content

Getting Started

Prerequisites

  • Internet Connection
  • Linux VM (Tested on Ubuntu 22.04)
    • Enable nested virtualisation on the host Windows machine
      • Disable WSL and Hyper-V
    • Allocate at least 200GB of storage, 8GB of RAM and 4 cores
  • Ansible
  • Git

Deployment procedure

  1. Clone this repository

     git clone https://github.com/csitgovsg-acube/infra-production.git --recursive
  2. Set up Docker image credentials

    • Add an Access Token to your GitHub account with the scopes read_api. Replace $YOUR_GITHUB_USERNAME and $PASTE_ACCESS_TOKEN with the respective values.
    echo $YOUR_GITHUB_USERNAME > secrets/github_username
    echo $PASTE_ACCESS_TOKEN > secrets/github_token
  3. Deploy

    ansible-playbook --ask-pass --ask-become-pass --inventory inventory-local.yml setup.yml --extra-vars setup_virt=yes setup.yml
    1. --extra-vars specifies additional variables that you want to manually override
      1. Notably, setup_virt should only be run when setting up virutal machines via ansible, e.g. on the first run or together with reset_virt enabled
      2. This will take an additional 20-30 minutes to spin up the virtual machines for CAPEv2 sandbox
    2. --ask-become-pass will prompt the user to specify the sudo password