zeus icon indicating copy to clipboard operation
zeus copied to clipboard

Improve consistency of Travis provider

Open dcramer opened this issue 7 years ago • 3 comments

Rough plan:

  1. Implement listeners for 'status' hooks from GitHub
  2. When status hook includes anything related to Travis, use keys to pull data (vs push?)
  3. When pushing data, ensure we maintain data
  4. Artifacts still need pushed
  5. TBD: determine if artifacts should be present or not (do we wait for them vs marking the build as finished)

https://developer.github.com/v3/activity/events/types/#statusevent

dcramer avatar Oct 05 '17 17:10 dcramer

We could also change the behavior so Zeus creates jobs in Travis (vs relying on GitHub). This would give us greater control and accuracy over results.

dcramer avatar Oct 07 '17 19:10 dcramer

Found Travis webhooks https://docs.travis-ci.com/user/notifications/#Configuring-webhook-notifications

dcramer avatar Oct 17 '17 03:10 dcramer

We've added webhooks, but still need API integration.

It looks like Travis will let us automatically authenticate against their APIs, which means we'll simply need to plug in some hooks for reconciling data on timeouts.

Likely this means:

  • Adding 'last updated' attributes to Jobs
  • Utilizing a timeout feature to sync failed webhooks
  • Priority queue/cursor for updates? (We need to avoid squashing each other when possible)

Note: We cannot get artifacts via the API.

dcramer avatar Nov 13 '17 20:11 dcramer