Geodesic Module Usage
- Follow the “Quick Start” for Quick start
All examples are based on use cases provided in Agenda
A Geodesic Module is docker container that extends Geodesic and used as a shell.
Each Geodesic Module will have a unique name. The shell can be easily started any time by simply running that name in a terminal.
The name is a shell script in
/usr/local/bin. Make sure this path is in your
PATH environment variable.
After you create a Geodesic Module, there will be
/conf directory in the image.
The ‘/conf’ dir used to store definitions of all Backing Services.
During development, it would be very painful to have to rebuild the container everytime you make or test a change. Therefore, we recommend that you use
/localhost path in the Geodesic Shell so that you can work on your local copy. Your native
$HOME directory is mounted to
/localhost in the container.
Finally, when you have everything working, we recommend that you rebuild Geodesic Module container to add the backing services in the container and do one more final test.
Build new version
To build Geodesic Module just run
make build in the module directory
When you run into the shell you need to authorize on AWS by assuming a correct role and then you can work with tools build in Geodesic Module.
> staging.example.com # Mounting /home/goruha into container # Starting new staging.example.com session from cloudposse/staging.example.com:dev # Exposing port 48934 * Started EC2 metadata service at http://169.254.169.254/latest _ _ _ ___| |_ __ _ __ _(_)_ __ __ _ _____ ____ _ _ __ ___ _ __ | | ___ / __| __/ _` |/ _` | | '_ \ / _` | / _ \ \/ / _` | '_ ` _ \| '_ \| |/ _ \ \__ \ || (_| | (_| | | | | | (_| | | __/> < (_| | | | | | | |_) | | __/ |___/\__\__,_|\__, |_|_| |_|\__, | \___/_/\_\__,_|_| |_| |_| .__/|_|\___| |___/ |___/ |_| IMPORTANT: * Your $HOME directory has been mounted to `/localhost` * Use `aws-vault` to manage your sessions * Run `assume-role` to start a session -> Run 'assume-role' to login to AWS ⧉ staging example > ❌ (none) ~ ➤ assume-role Enter passphrase to unlock /conf/.awsvault/keys/: Enter token for arn:aws:iam::xxxxxxx:mfa/goruha: 365322 * Assumed role arn:aws:iam::xxxxxxx:role/OrganizationAccountAccessRole ⧉ staging example > ✅ (example-staging-admin) ~ ➤