-
Notifications
You must be signed in to change notification settings - Fork 359
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WX-1566 Special Docker build for debugging #7417
Changes from 8 commits
3531c17
7d58cdd
64a3621
9554dbd
f25b506
becd1d0
8101f66
eb7ec2b
f23aadf
84591d2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -34,4 +34,10 @@ jobs: | |
run: | | ||
set -e | ||
cd cromwell | ||
sbt -Dproject.isSnapshot=false -Dproject.isRelease=false docker | ||
sbt -Dproject.isSnapshot=false docker | ||
# Rarely used but we really want it always working for emergencies | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thank you for adding this! |
||
- name: Build Cromwell Debug Docker | ||
run: | | ||
set -e | ||
cd cromwell | ||
sbt -Dproject.isDebug=true docker |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -12,7 +12,6 @@ jobs: | |
project: | ||
- cromiam | ||
- cromwell-drs-localizer | ||
- perf | ||
- server | ||
- womtool | ||
|
||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -387,11 +387,6 @@ lazy val `cloud-nio-impl-drs` = (project in cloudNio / "cloud-nio-impl-drs") | |
.dependsOn(common) | ||
.dependsOn(common % "test->test") | ||
|
||
lazy val perf = project | ||
.withExecutableSettings("perf", dependencies = perfDependencies, pushDocker = false) | ||
.dependsOn(common) | ||
.dependsOn(common % "test->test") | ||
Comment on lines
-390
to
-393
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This project has been unused for a few years but was still diligently building its Docker image every time I did a global There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. best way to optimize build times |
||
|
||
lazy val `cromwell-drs-localizer` = project | ||
.withExecutableSettings("cromwell-drs-localizer", drsLocalizerDependencies, drsLocalizerSettings) | ||
.dependsOn(`cloud-nio-impl-drs`) | ||
|
@@ -453,7 +448,6 @@ lazy val root = (project in file(".")) | |
.aggregate(googleBatch) | ||
.aggregate(httpFileSystem) | ||
.aggregate(languageFactoryCore) | ||
.aggregate(perf) | ||
.aggregate(server) | ||
.aggregate(services) | ||
.aggregate(sfsBackend) | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,13 +8,6 @@ features or fixes, the following are required to build Cromwell from source: | |
* [AdoptOpenJDK 11 HotSpot](https://adoptopenjdk.net/) | ||
* [Git](https://git-scm.com/) | ||
|
||
You can also use the [development image](https://github.com/broadinstitute/cromwell/tree/develop/scripts/docker-develop), and build a development container to work inside: | ||
|
||
```bash | ||
$ docker build -t cromwell-dev . | ||
$ docker run -it cromwell-dev bash | ||
``` | ||
|
||
Comment on lines
-11
to
-17
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I have not heard of anyone using this in many years |
||
First start by cloning the Cromwell repository from GitHub: | ||
|
||
```bash | ||
|
@@ -35,15 +28,15 @@ Finally build the Cromwell jar: | |
$ sbt assembly | ||
``` | ||
|
||
NOTE: This command will run for a long time the first time. | ||
NOTE: Compiling will not succeed on directories encrypted with ecryptfs (ubuntu encrypted home dirs for example), due to long file paths. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This encryption package has been removed from modern Ubuntu |
||
|
||
`sbt assembly` will build the runnable Cromwell JAR in `server/target/scala-2.13/` with a name like `cromwell-<VERSION>.jar`. It will also build a runnable Womtool JAR in `womtool/target/scala-2.13/` with a name like `womtool-<VERSION>.jar`. | ||
|
||
To build a [Docker](https://www.docker.com/) image, run: | ||
## Docker | ||
|
||
```bash | ||
$ sbt server/docker | ||
``` | ||
The following Docker build configurations are supported. Most users will want Snapshot, resulting in an image like `broadinstitute/cromwell:<VERSION>-SNAP`. | ||
|
||
This will build and tag a Docker image with a name like `broadinstitute/cromwell:<VERSION>-SNAP`. | ||
| Command | Build Type | Debug Tools | Description | | ||
|------------------------------------------------|------------|-------------|--------------------------------------| | ||
| `sbt server/docker` | Snapshot | No | Most common local build | | ||
| `sbt -Dproject.isDebug=true server/docker` | Debug | Yes | Local build with debugging/profiling | | ||
| `sbt -Dproject.isSnapshot=false server/docker` | Standard | No | Reserved for CI: commit on `develop` | | ||
| `sbt -Dproject.isRelease=true server/docker` | Release | No | Reserved for CI: numbered release | |
This file was deleted.
This file was deleted.
This file was deleted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Previously we needed both options to get a
Standard
build, it was a real head-scratcher to figure out. I'm still claiming the interface is unchanged because it's backwards compatible 😄