Commit Graph

285 Commits (f8d1c2e2ae2c92e29b90ecc3cdcee3d6f1bf5c8e)

Author SHA1 Message Date
Aayush Shah f8d1c2e2ae
*: normalize file paths in all cases (#104) 10 months ago
Aditya Maru 6fd13769ac src: disable native multi-arch builds 10 months ago
Aditya Maru feb3751245 src: only log fatal errors in tailscale teardown 10 months ago
Aditya Maru 4a3e86e9c9 src: add scaffolding for support multi-platform builds 10 months ago
Aayush 1390f95565 *: bind to localhost over TCP instead of using a unix socket 11 months ago
Aditya Maru 2331ad873b src: add sync before umount 11 months ago
Aditya Maru f440133b20 wip 12 months ago
Aayush 8554acbf59
src: prevent path duplication when dockerfile is within context 12 months ago
Aditya Maru 5ac445ae84 src: fix error message 12 months ago
Aayush 0e4788906e
src: bump buildkit startup timeout to 30sec 12 months ago
Aayush Shah d8a061af73
src: update timeout on `setupStickyDisk` (#91) 12 months ago
Aditya Maru 34ea2f79e5 src: change warning to debug 12 months ago
Aayush Shah 4ed3ba5c73
src: ignore unset sentinel value for tailscale token (#89) 12 months ago
Aditya Maru 42b59d67c9 src: bump timeout from 30s to 45s 12 months ago
Aayush Shah c03b613806
use local dockerfile path over git context (#86) 12 months ago
Aditya Maru aa6b213b0b src: join and leave tailnet on start and cleanup of builder 12 months ago
Aditya Maru 9fdeb57c53 src: disable automatic buildkit GC
We have reason to believe that automatic GC is affecting
daemon startup times. In this patch we disable automatic GC
and instead rely on manual pruning of the buildkit cache.
Once the daemon is ready we spawn an async task to run prune
on any objects older than 14 days. We are already manaing the
ceph volume approaching its size limit ourselves in the VM
Agent.

Patch also adds some alerting when inode usage is high on a mountpoint.
1 year ago
Aditya Maru 61713d1849 src: print api url in debug info 1 year ago
Aditya Maru 6fe2467492 src: silence metric warnings for now 1 year ago
Aditya Maru 4759d93c12 src: use the plumbed BLACKSMITH_BACKEND_URL if present 1 year ago
Aditya Maru def1585067 *: report metrics to the VM agent 1 year ago
Aditya Maru 4723a2a346 src: stop spurious warnings on buildkit shutdown 1 year ago
Aditya Maru 1672d6fbad src: fix shutdown retry behavior 1 year ago
Aditya Maru 9302d2aea9 src: stop running process as nohup to avoid missing logs 1 year ago
Aditya Maru ac42783fa9 src: cleanup flakiness in different parts of the action 1 year ago
Aditya Maru 54bc4e0788 src: refactor cleanup logic to expose buildkitd.log
Previosuly, we only killed the buildkitd process and unmounted
if builderInfo was non null. This was wrong cause we could have setup
builkdkitd, but failed after that step. This would then rely on the last
ditch effort by the post action to cleanup. We now change the proc kill
and unmount to happen on any build error.
1 year ago
Aditya Maru d43ee61bb7 *: move to grpc backed communication for the agent 1 year ago
Aditya Maru 53000f0f59 ignore error when nothing is mounted 1 year ago
Aditya Maru 1df1b3c361 src: ignore error when theres nothing mounted 1 year ago
Aditya Maru de0451e517 src: make post unmount even if buildkitd is no longer present
Also increase retries when trying to unmount the buildkit directory.
Retry up to 3 seconds now, previously we were only retrying 3 times
with a 100ms backoff.
1 year ago
Aditya Maru 0f99a0b1c7 src: start sending get request with query params
We are incorrectly using formData in a get request. To move
away from this we send both query params and formData until
the server is fully upgraded. After which we can stop sending
formData.
1 year ago
Aditya Maru 0186286e06 *: use axios-retry instead of handrolled retry methods 1 year ago
Aayush Shah 7b8642822f
src: make `getDockerfilePath` return the full path to the dockerfile (#64)
Previously we were just returning the path to the dir containing the dockerfile
in most cases.
1 year ago
Aditya Maru f06a558c36 src: alert if an exception is thrown on cleanup 1 year ago
Aditya Maru b76cd7bf3b src: fix bug in conditional that zero'd out expose ID 1 year ago
Aayush f9d1e150a9
*: unify error handling and add more unit tests 1 year ago
Aditya Maru c71ad2dbef *: refactor methods to support mocking
Additionally, write some tests to ensure the driver method
`startBlacksmithBuilder` handles all exceptions correctly in
both nofallback=true and nofallback=false configurations.
1 year ago
Aditya Maru 5ab78173d3 backend: default to /dev/vdb when ExposeVolume response is empty 1 year ago
Aditya Maru edc01b36df backend: use device returned in ExposeVolume response 1 year ago
Aditya Maru 72c7e93db9 src: send stickydisk key with commit 1 year ago
Aditya Maru 6d7db93fa2 src: bump socket creation timeout to 5s from 3s 1 year ago
Aditya Maru c308f14958 src: report the correct sticky disk key 1 year ago
Aditya Maru 17d922af1a src: shuttle a expose ID between expose and commit 1 year ago
Aditya Maru a55bae5255 src: prevent top-level ref variable from being shadowed 1 year ago
Aditya Maru 9841eabab1 src: only resolve buildref on success 1 year ago
Aditya Maru 4938a7e10a src: change arch to use BLACKSMITH_ENV 1 year ago
Aditya Maru 9336122050 src: add some idempotent cleanup safeguard in post action 1 year ago
Aditya Maru bdf7f0bb37 src: wrap all steps after blacksmith builder in try catch
This ensures we always run cleanup if any step after creating the Blacksmith
builder errors out.
1 year ago
Aditya Maru 9b63433194 src: make blacksmith builder name unique 1 year ago
Aditya Maru bda6587832 src: change sticky disk key to repo name 1 year ago