Migrate from Segment to Twilio Buildkite#850
Merged
Merged
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes the Buildkite pipeline on the Twilio locked-down
general-039agents. The previous pipeline still depended on Segment-only infrastructure and failed every run.Verified green on build #11 (Build and Test + SauceLabs both passed).
Root causes fixed
cache-buildkite-plugin→shasum: command not found+ S3403on the locked-down agents. Removed.ChromeHeadless, butnode:*-alpineships no browser. Added a CI image with Chromium.docker.iopulls TLS-timeout, soapk add chromiumcan't reach the public Alpine CDN. Chromium is installed from the Twiliobase-alpineapk mirror.phantomjs-prebuiltpostinstall download (the real blocker) — several integrations pull it as a devDependency; its install downloads a binary from a public CDN and failsyarn install. It has no skip flag, so a tinyphantomjsstub onPATHreporting2.1.1makes its installer skip the download. The phantom launcher is unused — tests only run ChromeHeadless.Changes
.buildkite/Dockerfile.cidocker-compose-ci.yml.buildkite/pipeline.ymlmount-checkoutkarma.conf.jsChromeHeadlessNoSandboxlauncher (container runs as root).npmrcNotes / follow-ups
yarn testruns--since masterand reports "no packages" — passes without exercising integration tests. The CI infra is verified working; a branch touching an integration will exercise real Chrome runs.Upload Assetssteps still call./.buildkite/upload.sh/publish.sh, which rely on Segment agent hooks (SEGMENT_LIB_PATH,run-with-role). Being verified separately onstaging.🤖 Generated with Claude Code
Testing
Testing not required as migrating from Segment to Twilio BK.