Skip to content

Commit

Permalink
Quickstart guide for Terra devs [BT-623] (#745)
Browse files Browse the repository at this point in the history
* Quick guide for Terra devs

* PR feedback
  • Loading branch information
jgainerdewar authored Apr 14, 2022
1 parent 99c648d commit 8eb82ed
Show file tree
Hide file tree
Showing 2 changed files with 49 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Job Manager

If you're looking for basics for Terra developers, see [here](TERRA_QUICKSTART.md).

[![CircleCI branch](https://img.shields.io/circleci/project/github/DataBiosphere/job-manager/master.svg?label=Tests%20on%20Circle%20CI&style=flat-square)](https://circleci.com/gh/DataBiosphere/job-manager/tree/master)
![Github](https://img.shields.io/badge/Supported%20Backends-cromwell-blue.svg?&style=flat-square)
![GitHub](https://img.shields.io/github/license/DataBiosphere/job-manager.svg?color=orange&style=flat-square)
Expand Down
47 changes: 47 additions & 0 deletions TERRA_QUICKSTART.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Quickstart for Terra Devs

This document is intended for folks who need to do basic JobManager maintenance
in support of its use in Terra.

## Running JobManager Locally

These are the minimal steps you need to take to get JobManager running locally in
Docker, showing state from a local Cromwell instance. It combines steps from the
main README and Cromwell server README.

### Check out and configure JobManager

```
$ git clone https://github.com/DataBiosphere/job-manager.git
$ cd job-manager
$ ln -sf cromwell-instance-compose.yml docker-compose.yml
```

### Set CROMWELL_URL env var

JobManager relies on a `CROMWELL_URL` environment variable to find Cromwell.
Set this to `http://IP_ADDR:8000/api/workflows/v1` where `IP_ADDR` is your machine's
IP address. We need the broadcast address, because if we use `0.0.0.0` or `localhost` Docker
will try to connect to itself.

For example:
```
$ ifconfig | grep inet | grep broadcast
inet 192.XXX.Y.ZZZ netmask 0xffffff00 broadcast 192.XXX.Y.255
$ export CROMWELL_URL="http://192.XXX.Y.ZZZ:8000/api/workflows/v1"
```

### Start JobManager

```
$ docker-compose up
```
Once you see `webpack: Compiled successfully.` you should be able to access JobManager
at http://localhost:4200, and state of your local Cromwell should be reflected there.

## Releasing JobManager in Terra

Start by following release instructions in [the README](README.md#build-docker-images-and-releases).
Once the new version exists in GCR and Github:
* Update version in [dsp-jenkins](https://github.com/broadinstitute/dsp-jenkins/blob/master/src/main/resources/FirecloudAutomatedTesting.conf)
* Update version in [terra-helmfile](https://github.com/broadinstitute/terra-helmfile/blob/master/versions/app/dev.yaml)

0 comments on commit 8eb82ed

Please sign in to comment.