contraband / autopilot

cf plugin for hands-off, zero downtime application deploys
Apache License 2.0
130 stars 43 forks source link

Handle failed CI cases better on subsequent runs #44

Closed aeijdenberg closed 6 years ago

aeijdenberg commented 6 years ago

Fixes some of the problems identified in https://github.com/contraband/autopilot/issues/37.

This builds on top of https://github.com/contraband/autopilot/pull/43.

We now have one actions code path that handles:

  1. No apps running.
  2. App running, no venerable.
  3. App not running, venerable app running.
  4. Both app and venerable app running.

Previously only (1) and (2) were handled correctly.

aeijdenberg commented 6 years ago

(gentle ping)

We've been using this patch in prod now for a number of projects for a number of weeks, including health checkers that deploy a new release every 5 minutes, and we haven't seen issues.

I'll be happy to rebase to fix the minor merge conflict, but only if it's likely to get a review. :)

drnic commented 6 years ago

@vito @contraband possible to merge; and then push into cf-resource?

aeijdenberg commented 6 years ago

I've just rebased this on master, which now uses dep.

I spent a few hours banging my head against the wall, as dep ensure wouldn't report clean, even on master.

I eventually removed Gopkg.toml, Gopkg.lock and vendor/ dirs, and then ran dep init in a clean environment.

This seemed to create a cleaner set of Gopkg files, from which I used as a base to cherry-pick and merge both of the changes that we've been using the past few months:

Hope this makes it easier to merge.

aeijdenberg commented 6 years ago

Wow, this actually removes nearly 1 MILLION lines of code... (presumably because dep init now excludes vendored test packages by default)

xoebus commented 6 years ago

Thank you! I'll review this tomorrow PST.

xoebus commented 6 years ago

Thank you!

Merged, released, and included in the cf-resource in https://github.com/concourse/concourse/commit/40769f4632317ed9cb25709608b4a5c02508aaca.

drnic commented 6 years ago

Awesome.


From: Christopher Brown notifications@github.com Sent: Friday, February 2, 2018 6:15:04 AM To: contraband/autopilot Cc: Dr Nic Williams; Comment Subject: Re: [contraband/autopilot] Handle failed CI cases better on subsequent runs (#44)

Thank you!

Merged, released, and included in the cf-resource in concourse/concourse@40769f4https://github.com/concourse/concourse/commit/40769f4632317ed9cb25709608b4a5c02508aaca.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/contraband/autopilot/pull/44#issuecomment-362388393, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAAAbHP7LSJiD8u4YzBC2JS6Ae_vMUBEks5tQhtHgaJpZM4QQe05.

aeijdenberg commented 6 years ago

Thanks @xoebus - though note that I think you'll also need to merge https://github.com/concourse/cf-resource/pull/40 in order to be able to pass the --show-app-log parameter through cf-resource.

xoebus commented 6 years ago

Thanks for the heads up! I'll let @vito know.