Fresh install
When setting up a fresh install the following steps are recommended
Install git and set up ssh
Git install
The VCS used here at motiv is git. As such you will need to install git.
https://github.com/git-guides/install-git
Set up ssh
Many of our install scripts rely on git ssh being set up. So you will need to set up your git ssh key and access.
Install gita
Gita is used by many of Motiv's developers and helps manage the many repositories we have. We recommend install it.
https://github.com/nosarthur/gita
Install docker and compose
You will next need to install docker. All our services are created via docker images and run using docker compose. Both will need to be installed.
Install docker
We do not recommend using docker desktop. Instead install the docker engine and cli.
https://docs.docker.com/engine/install/ubuntu/
Install docker compose
Next install docker compose. Again we do not recommend using docker desktop. Instead install the cli.
https://docs.docker.com/compose/install/#scenario-two-install-the-compose-plugin
Set docker compose alias
If docker compose v2 is used, you will need to create an alias for the command docker compose
to run as docker-compose
. Astro uses the docker-compose
syntax and thus requires this alias to run.
https://stackoverflow.com/questions/72099653/how-to-alias-docker-compose-to-docker-compose
Set docker to run for your user
This step will allow your user to run docker commands without requiring root access.
https://docs.docker.com/engine/install/linux-postinstall/
Docker login
Next you will need to run docker login
to ensure you have access to all motivlabs repositories.
In a terminal simply run docker login
and then provide the motivlabs docker username and password.
Set VM max map count
Some systems require the vm max map count to be increased. As such you can run the following command to increase it.
To make this persistent, you can add this line:
in your /etc/sysctl.conf
and run
Download git clone script
Next you will need to download the git clone script to clone all motiv labs github repositories.
https://github.com/motiv-labs/impulse/blob/master/scripts/gitCloneAllRepos.sh
Download or copy this script to your development directory where all the repositories should live. Make the script executable, then run the script. This will download all github repositories for Impulse into the executed directory, with the appropriate hierarchy.
Set impulse license
Once the git clone script has finished in order to be able to run Impulse, you will need to set up a license to use. Follow the steps in this slack thread to set up a license.
Set git config for go mod
Since many of the go modules used are private repositories, you will need to set up your git config to be able to run go mod
commands successfully.
https://stackoverflow.com/questions/71851732/go-mod-tidy-fails-to-download-private-github-repository
Set astro login conf
To run astro's build commands you will need to create an astro-login.conf
file at impulse/docker-tools/compose-template/config/astro-login.conf
. You can copy the astro-login-base.conf
file for the list of environment variables to be set. Then set your personal credentials in astro-login.conf
.
GITHUB_USER
This is the user to login to github with. The user must have access to motiv-labs github repositories.
GITHUB_TOKEN
This is the token for the github user to login to github with. You can create a personal access token for this.
Last updated