Skip to content
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

Launch ncov builds using the up-and-coming new nextstrain/base image #123

Merged
merged 2 commits into from
Jan 27, 2021

Conversation

tsibley
Copy link
Member

@tsibley tsibley commented Jan 22, 2021

This helps us test the new image internally before making it the default.¹

I launched a quick test with:

./bin/launch-build --exec uname /var/empty

to make sure that builds can still start. Waiting on success as Batch hasn't scheduled the job onto a node yet. Update: it started fine and the job definition uses the expected image.

¹ nextstrain/docker-base#21

This helps us test the new image internally before making it the
default.¹

¹ nextstrain/docker-base#21
@tsibley tsibley marked this pull request as draft January 22, 2021 20:14
@tsibley tsibley marked this pull request as ready for review January 22, 2021 20:20
@tsibley
Copy link
Member Author

tsibley commented Jan 22, 2021

@eharkins @emmahodcroft @MoiraZuber This PR is to test nextstrain/docker-base#21 (comment) a little more broadly before releasing it widely. Is it ok with you if we merge this later today, aiming to see how ncov builds go on Monday and Tuesday? I expect they'll run fine, but it may introduce some snafus in the build.

If y'all don't like the idea of the potential disruption/being the test subjects, then what I'd suggest instead is running each launched ncov build in parallel: one as things are today, and one with the new base image (configured not to update staging/production). Then we can hopefully spot problems without impacting your work. This sounds better and better as I type it out. Should we just do this instead? It's slightly more work to arrange, but probably not too much. Y'all have the best sense of how costly disruption is.

@emmahodcroft
Copy link
Member

Sorry Tom, it's late here and my brain is already at half-mast. I think running them both in parallel sounds good as presumably if something goes wrong we'd still have one to work with without much delay. But I'm not really parsing how we do that, and how we ensure that they both don't end up trying to write the same thing at the write time/that we can access the files for the one that works... if you or Eli wouldn't mind outlining this before you log off today, I'd appreciate it, and we can give it a go on Monday!

@tsibley
Copy link
Member Author

tsibley commented Jan 22, 2021

@emmahodcroft No worries! Thanks for chiming in.

The second trial build in parallel to the primary build would be an automatic thing kicked off anytime a primary build was, and as part of that would be configured automatically to put results elsewhere. I think this makes sense, but admit I don't have a great sense of your process anymore.

Here's my proposed implementation: 3d8ab2f

It's no big deal if enabling this slips until next week. Maybe for the best anyway. @eharkins Let's coordinate when you have a chance? No rush.

@eharkins
Copy link
Contributor

This plan sounds good, 3d8ab2f makes sense to me at a glance. I will be running my next build on Thursday and am available to coordinate and problem solve if necessary then @tsibley. Sorry I didn't see this sooner!

@tsibley
Copy link
Member Author

tsibley commented Jan 26, 2021

@eharkins Great, thanks! I'm going to merge this now and test launching some builds (which I'll immediately cancel). Scratch that, I'll wait until no live builds are running.

…rain/base image

…instead of switching the primary ncov build to the new image, which
might be overly disruptive to the build shepherds.

The trial build will do all the things the primary build does, but
upload resulting files to a separate destination as not to interfere.
Build intermediates are uploaded under:

    s3://nextstrain-ncov-private/branch/new-build-base-image/…

While build outputs (JSONs) will be visible under:

    https://nextstrain.org/staging/trial/ncov/…
@tsibley tsibley force-pushed the new-build-base-image branch from 3d8ab2f to 54ae8da Compare January 27, 2021 17:57
@tsibley tsibley merged commit c1ef507 into master Jan 27, 2021
@tsibley tsibley deleted the new-build-base-image branch February 4, 2021 23:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants