Repository navigation
docs: refresh docs - #105
Merged
Merged
Conversation
Co-Authored-By: Joshua Li <14209781+joshuarli@users.noreply.github.com>
joshuarli
approved these changes
Oct 17, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
Scope: whole repo, no audience filter. Part of a devinfra docs refresh.
Markdown line count: 295 before, 324 after.
README.mdwent from 295 to 262 lines. The rest is the newAGENTS.md(21),docs/testing.md(31), anddocs/releasing.md(10). The net growth comes from documentingrender()config keys, rollback keys, and the build-time asserts. None of these were documented before, and pipeline authors hit all of them.Files
README.md: now covers users only. It has install,output-files, a config reference forpipedream.render(), generated pipeline names, the build-time rules forpipeline_fn, env var cascading,PIPEDREAM_GROUP_REGIONS, rollback, and the tasks and stages helpers. Development, Testing, and Release Process moved out.AGENTS.md(new): a short router with commands, invariants, and a map to the docs.docs/testing.md(new): fixtures and goldens,*.failing.jsonnet, and how to test against GoCD or a service. This content came from the README.docs/releasing.md(new): release and rollout steps, from the README.libs/pipedream.libsonnet: deleted one narration comment (// Apply transform to all stages). Nothing else in source changed.Removed: the link to a dev pipedream example repo, which returns 404, and its pinned commit link. Also removed the
makevsmake testduplication, sincetestis the default goal and both run fmt, lint, and test.Corrected claims
Pipeline-level attributes differ across regions in group. Region 'customer-2' differs.I confirmed this by runningjsonneton the old snippet. The cause isregion: regionat the pipeline level, which the assert atlibs/pipedream.libsonnet:307rejects for the multi-regionstgroup. The new example renders, and I checked its output.auto_pipeline_progressionsaid "Set to true if you want each pipeline to require manual approval". The code does the opposite:falseadds thereadyand manualwaitstages (pipedream.libsonnet:466).v2.15.0. The latest release isv3.0.10(gh release list), and the README now points readers to the releases page.PIPEDREAM_GROUP_REGIONSexample listedcustomer-1,customer-2,customer-4,customer-7. Thestgroup iscustomer-1,customer-2,customer-7(libs/getsentry.libsonnet:16).PIPEDREAM_GROUP_REGIONSoverride has undocumented preconditions, and the README now lists them. It only works in multi-region groups, only wrapsscripttasks, and only acts when the job setsSENTRY_REGION. The library never setsSENTRY_REGION(deploy_target_gate,wrap_task,pipedream.libsonnet:35-51,431-432).materialsis what "the pipelines watch for changes". The configmaterialsonly goes to thedeploy-<name>trigger pipeline (pipedream.libsonnet:107-114). Group pipelines use the materials frompipeline_fn.gocd-stagesexample usedgocdtaskswithout importing it. The README also left out thefetch_materialsoption (gocd-stages.libsonnet:21).Could not verify
brew install ... yq). Nothing in this repo uses yq, so I left the claim unchanged.make gocdin consuming repos. I only checked snuba's Makefile.Code looks wrong rather than the doc (comments not changed)
pipedream.libsonnet:492-494: the comment says the gate validates a "user-supplied DEPLOY_TARGET_REGION". The variable isPIPEDREAM_GROUP_REGIONS, and the gate compares it againstSENTRY_REGION.pipedream.libsonnet:579-582: the comment says--ext-var=output-files=true, but the flag is--ext-code. It also says the single-file shape is{ pipelines: [ ... ] }, but the code returns{ format_version, pipelines: { <name>: ... } }.pipedream.libsonnet:15: the header describesrender(config, pipeline_fn)and leaves out theparallelparam.gocd-pipelines.libsonnet:87-88: the comment sayspipelines_to_objectreturns{ <pipeline name>: <definition> }. The function also wraps the result informat_versionandpipelines.Candidates to enforce
npm run lint(eslint and prettier, which also checks Markdown) runs in CI but not inmake.Skipped
libs/bash/*.shcomments: the scripts are embedded throughimportstrinto the rendered rollback pipelines. Editing a comment would change the goldens.Checks run
npx prettier --checkon the changed Markdown, andnpm run lint: pass.make(jsonnetfmt, jsonnet-lint, ava) with go-jsonnet v0.20.0: 57 tests pass, and the working tree was clean afterward.libs/.test -eon every relative link and backticked path in the changed docs. I also checked that the external links return 200.via @joshuarli.
--
View Junior Session [Sentry]