Skip to content

Docker based developer environment for the ODS AWS/AZURE Quickstarter

License

Notifications You must be signed in to change notification settings

terra-naut/terrarium

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

terrarium

terrarium logo terrarium Developer Environment
An immutable Developer Environment for developers working with OpenDevStacks' Cloud Quickstarters.

With terrarium we offer an immutable Developer Environment for developers working with OpenDevStack projects. terrarium provides the same environment which is used to deploy AWS or AZURE components via ODS.

By using the Visual Studio Code Remote - Containers extension it enables the developer to open cloud component repositories inside a container and take advantage of Visual Studio Code's full feature set. 

This repository contains an example container definition to help get you up and running with terrarium. The definition describes the appropriate container image and VS Code extensions that should be installed. A container configuration file (devcontainer.json) and other needed files that you can drop into any existing folder as a starting point for containerizing your project.

Usage

If the Cloud Quickstarter does not contain it already simply create a .devcontainer directory and put the devcontainer.json into it.

{
  "image": "ghcr.io/nichtraunzer/terrarium:latest"
}

Contents

  • .devcontainer - Contains a plain devcontainer.json eample.
  • examples - Contains a more sophisticated example.
  • terraform - Contains the Docker file.
  • tools - Contains an additional prompt example.

Update the terrarium tools

The tools and libraries of the terrarium toolset have to be updated from time to time. The following steps have to be performed:

  • Check for new versions of tool variables *_VERSION in iDockerfile.terrarium
  • Check for new versions of python libraries in file python_requirements (might depend on Python Version)
  • Check for new versions of the ruby Gems in Gemfile
  • Rebuild the container image $ DOCKER_BUILDKIT=1 docker build -t terrarium:update-tools -f ./Dockerfile.terrarium .
  • Mount the folder with the new toolset and rebuild Gemfile.lock from scratch using bundle install --jobs=22
  • verify updates with ods-quickstarters/inf-terraform-[aws|azure] docker run -ti --user 1000 -v $HOME/.bash_history:/home/terrarium/.bash_history -vpwd:/workspace -v $HOME/.gitconfig:/home/terrarium/.gitconfig -v $HOME/.cache/git/credential/socket:/home/terrarium/.cache/git/credential/socket terrarium:tools-update /bin/bash
  • commit & push changes & create pull request

About

Docker based developer environment for the ODS AWS/AZURE Quickstarter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 96.2%
  • Ruby 3.8%