Skip to content

A development environment for use at GigaTECH

License

Notifications You must be signed in to change notification settings

GigaTech-net/dev

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GigaTECH Development environment

CI Project Status: Active – The project has reached a stable, usable state and is being actively developed. Docker Pulls

A development environment for use at GigaTECH. Published to a docker image.

using the docker container

Running the container in non interactive mode

For example, run the development environment to execute the FHIR validator in the current directory.

export HOME="/Users/matthewjenks"
export GTDEV_IMG="gigatech/dev"
export GTDEV_VER=latest

docker container run --rm -w /home/gigatech/workdir \
      -v "$(pwd)":/home/gigatech/workdir \
      -v "${HOME}/.zsh_history":/home/gigatech/.zsh_history \
      -v "${HOME}/.terraform.d":/home/gigatech/.terraform.d \
      -v "${HOME}/.aws":/home/gigatech/.aws \
      -e "TF_LOG=${loglevel}" \
      ${GTDEV_IMG}:${GTDEV_VER} fhirvalidator.sh source/Patient_QuestionnaireResponse_Example.json -transform http://my.hl7.org/Patient-StructureMap -version 4.0.1 -ig logical/ -ig map/patient-structuremap-test.json -log test.txt -output output/Patient_Example-mj.json

Running the container in interactive mode

For example, run the development environment to run curl with jq.

export HOME="/Users/matthewjenks"
export GTDEV_IMG="gigatech/dev"
export GTDEV_VER=latest

docker container run --rm -it -w /home/gigatech/workdir \
      -v "$(pwd)":/home/gigatech/workdir \
      -v "${HOME}/.zsh_history":/home/gigatech/.zsh_history \
      -v "${HOME}/.terraform.d":/home/gigatech/.terraform.d \
      -v "${HOME}/.aws":/home/gigatech/.aws \
      -v "${HOME}/.ssh/mjgmail":/home/gigatech/.ssh/id_rsa \
      -v "${HOME}/.ssh/mjgmail.pub":/home/gigatech/.ssh/id_rsa.pub \
      -e "TF_LOG=${loglevel}" \
      ${GTDEV_IMG}:${GTDEV_VER} zsh

will get you a Zsh prompt. From here you can run the curl command such as:

curl -s http://hapi.fhir.org/baseR4/Patient | jq .

Notes: If you don't map a public and private key then that config will be ignored. This is useful for communicating with GitHub. If you map those volumes and your key has a passcode, you will br prompted once for it when you start the container.

Tagging the docker container

tag with a command like:

git tag -a 0.2.0 -m "add a test tag for version 0.2.0"
git push origin 0.2.0

because the current workflow uses elgohr/Publish-Docker-Github-Action@master and the tag_semver option.

Base development environment

I recommend installing:

This environment includes the following utilities