Jimmy Zelinskie
cb6b6c4091
buildman: add silas keys to builders
2015-09-09 16:53:19 -04:00
Jimmy Zelinskie
0365831015
add barakmich, quentin, mjibson keys to builders
...
Fixes coreos-inc/quay-policies#38
2015-08-27 11:42:53 -04:00
Jimmy Zelinskie
239f76d39f
Merge pull request #368 from coreos-inc/buildarchive
...
Allow builds to be started with an external archive URL
2015-08-17 17:09:14 -04:00
Joseph Schorr
f092c00621
Allow builds to be started with an external archive URL
...
Fixes #114
2015-08-17 17:01:49 -04:00
Matt Jibson
cfb6e884f2
Refactor metric collection
...
This change adds a generic queue onto which metrics can be pushed. A
separate module removes metrics from the queue and adds them to Cloudwatch.
Since these are now separate ideas, we can easily change the consumer from
Cloudwatch to anything else.
This change maintains near feature parity (the only change is there is now
just one queue instead of two - not a big deal).
2015-08-12 12:15:52 -04:00
Jake Moshenko
18100be481
Refactor the util directory to use subpackages.
2015-08-03 16:04:19 -04:00
Jimmy Zelinskie
7dbcbe4706
Merge pull request #234 from coreos-inc/morespace
...
Increase the HD size on the build nodes
2015-07-27 15:35:45 -04:00
Jake Moshenko
3efaa255e8
Accidental refactor, split out legacy.py into separate sumodules and update all call sites.
2015-07-17 11:56:15 -04:00
Joseph Schorr
04cc471585
Increase the HD size on the build nodes
...
Fixes #228
2015-07-14 15:20:17 +03:00
Joseph Schorr
d842881608
Don't None the build_status, as it might still be used later
2015-07-14 12:49:03 +03:00
Joseph Schorr
e06435fee4
Record phase information and make better error messages on pull failure
2015-06-30 18:04:44 +03:00
Joseph Schorr
6655c7f745
Add exception handling that doesn't log the read-timeout exception
...
Note: This is a *hack* and needs to be replaced with proper code ASAP
2015-06-25 23:35:29 -04:00
Joseph Schorr
6e6610f31a
Switch to a 30s maximum timeout
2015-06-25 23:08:49 -04:00
Joseph Schorr
bead839abd
Make sure build components timeout if the initial connection fails
2015-06-25 22:13:01 -04:00
Joseph Schorr
ecebc06343
Update comment now that restarter is abstracted
2015-06-25 21:53:42 -04:00
Joseph Schorr
9f5f71398c
Abstract out the concept of a restart function
2015-06-25 21:40:50 -04:00
Joseph Schorr
52fa9aad5b
Fix etcd watching
...
Etcd can miss events on watches if they are occurring fast enough, so if we can get an exception indicating that we've missed an index, we reset the state of our local tracking structures by re-reading the *full* list and starting a new watch at HEAD
2015-06-25 21:22:39 -04:00
Jimmy Zelinskie
1195e3ec7c
buildman: rm coroutine decorator from subscribers
...
Python isn't able to figure out that these are generators and properly
handle theme.
2015-06-24 17:38:29 -04:00
josephschorr
2ade08468d
Merge pull request #168 from coreos-inc/etcdindex
...
Fix ephemeral build manager to ask for watches in index order with no gaps
2015-06-23 17:12:18 -04:00
Joseph Schorr
b4c39e8ec0
Fix ephemeral build manager to ask for watches in index order with no gaps
2015-06-23 17:11:46 -04:00
Jimmy Zelinskie
18aa7b6c1e
buildcomponent: use consistent trollius imports
2015-06-23 17:03:26 -04:00
Jimmy Zelinskie
197f3b9b85
buildman: fix ER failing to heartbeat
2015-06-22 18:12:20 -04:00
Jimmy Zelinskie
82287926ab
Merge pull request #140 from coreos-inc/eventinfo
...
Add more build information to the events and have better messaging
2015-06-17 16:49:59 -04:00
Joseph Schorr
c2dc1c9b75
Handle case where etcd key is already removed on job complete
2015-06-17 15:02:58 -04:00
Jimmy Zelinskie
177b96e965
builder: add missing 'yield from' coroutine
2015-06-17 14:16:27 -04:00
Jimmy Zelinskie
59aba93514
builder: update heartbeat timestamp on log message
2015-06-17 14:16:27 -04:00
Joseph Schorr
9b974f6b80
Add more build information to the events and have better messaging
...
Fixes #79
2015-06-16 23:16:36 -04:00
Jake Moshenko
c435f5c127
Add a comment about why we are taking a lock when terminating a builder machine.
2015-06-10 16:19:51 -04:00
Jake Moshenko
f767fc4d03
Track whether builders ever came online in etcd. Mark builds which never successfully heartbeated as incomplete.
2015-06-10 16:19:51 -04:00
Jake Moshenko
79f1181a63
Switch build-scheduled to an official build phase.
2015-06-10 16:19:51 -04:00
Jake Moshenko
884fedd229
Improve the log messages in the buildman.
2015-06-10 16:19:51 -04:00
Jake Moshenko
d31e25d5cd
Allow the individual build manager types to specify how long the queue should wait before retring a job that fails to schedule.
2015-06-10 16:19:50 -04:00
Jimmy Zelinskie
b7303665a2
Merge pull request #111 from coreos-inc/incompletefix
...
Requeue build jobs after the work check timeout + some additional padding.
2015-06-09 20:44:40 -04:00
Joseph Schorr
24ce0decd9
Requeue build jobs after the work check timeout + some additional padding. This ensures that if a build somehow gets wedged, other builds can continue to be picked up.
2015-06-09 20:43:48 -04:00
Joseph Schorr
f82831bff6
Log the etcd exception so we can debug this issue
2015-06-09 20:33:55 -04:00
Jimmy Zelinskie
7f4dd7d42f
triggers: backwards compatible schema for metadata
2015-06-02 16:05:17 -04:00
Jimmy Zelinskie
e01bdd4ab0
triggers: metadata.commit_sha -> metadata.commit
...
This resolves an issue where the custom-git trigger's public facing
schema was not the same as the internal metadata schema. Instead of
breaking users, we rework the internal metadata schema to be the same as
the custom-git JSON schema. This commit also updates everything that
used `metadata.commit_sha` including the test database.
2015-06-02 15:32:28 -04:00
Joseph Schorr
5589bfc6d5
- Have the heartbeat fail to update if the worker has timed out
...
- Add additional build component logging for tracking down problems in the future
2015-05-22 15:24:14 -04:00
Jimmy Zelinskie
db05db6295
cloudconfig: flatten logentries container
2015-05-20 16:34:16 -04:00
Joseph Schorr
598fc6ec46
Add the error code to the worker error logged to redis
2015-05-18 15:01:48 -04:00
Joseph Schorr
91b464d0de
Switch build manager to always just WARN on boto
2015-05-18 12:34:26 -04:00
Jimmy Zelinskie
86f400fdf5
buildman: fix btrfs mounting in worker cloudconfig
2015-05-13 17:40:35 -04:00
Jimmy Zelinskie
6a5cecebc5
buildman: create and mount btrfs volume for docker
...
There are numerous issues with overlayfs that actually aren't present with
btrfs. Btrfs seems to have long-running issues, but our builders are
ephemeral. Example issue: https://github.com/docker/docker/issues/10180
2015-05-12 17:42:34 -04:00
Jimmy Zelinskie
9f31bdd571
buildman: add new io.quay.builder.gitfailure error
2015-05-11 15:25:22 -04:00
Jimmy Zelinskie
15fdae6688
buildman: show base error for buildpack failures
...
Whereas before these were reserved only for S3 errors, users need these
specifics to debug custom-git configurations.
2015-05-11 14:18:48 -04:00
Joseph Schorr
31260d50f5
Rename the new images method to a slightly better name
2015-04-24 16:37:37 -04:00
Joseph Schorr
e70343d849
Faster cache lookup by removing a join with the ImagePlacementTable, removing the extra loop to add the locations and filtering the images looked up by the base image
2015-04-24 16:22:19 -04:00
Jimmy Zelinskie
02498d72ba
almost all PR discussion fixes
2015-04-21 18:04:25 -04:00
Jimmy Zelinskie
ba2cb08904
Merge branch 'master' into git
2015-04-16 17:38:35 -04:00
Jake Moshenko
b10fd4ff22
Tell the journal on the builders to listen on the proper socket.
2015-03-27 16:31:35 -04:00