Skip to content

release: 10 new change integrations - #608

Merged
ysyneu merged 51 commits into
mainfrom
feat/change-integrations
Sep 29, 2026
Merged

ysyneu merged 51 commits into
mainfrom
feat/change-integrations

Conversation

@ysyneu

@ysyneu ysyneu commented Sep 29, 2026

Copy link
Copy Markdown
Contributor

Promote feat/change-integrations to main.

New change integrations (10): GitHub, GitLab, Vercel, Netlify, LaunchDarkly, HCP Terraform, Buildkite, Jenkins, Argo CD, JFrog Artifactory. Each vendor has a webhook handler that maps its deployment/run/build lifecycle onto Planned/Ready/Processing/Done/Canceled/Failed, a push route, a console card with logo, and setup docs.

Also includes: documentation of the new terminal change status, Failed, and the corresponding OpenAPI spec regeneration.

Verification (at 38cf5fc)

  • integration-docs: npm run build built 121 documentation keys for zh/en; npm run check passed (121 keys).
  • Leakage check: reviewed all touched files and commit messages for internal ids/hosts/process references — none found.
  • git merge-tree main vs this branch: no conflicts.

Deployments, deployment statuses and releases from a GitHub webhook
become Flashduty changes: one change per deployment id or release id,
with the state-to-status mapping, ignored deliveries, labels and FAQ.
Adds the zh/en pages, the navigation entries and the GithubChange
in-app doc key.
change_status now accepts Failed. Like Done and Canceled it is a
terminal status: the event time is recorded as the change end time.
Update the standard change event docs, the change search view, and the
change_status enum in the OpenAPI specs.
docs(change): document the Failed change status
docs(change-integration): GitHub change integration
Documents the GitLab deployment change integration: webhook setup with
Deployment events, deployment status mapping, what one change is, labels and
FAQ.
docs: add HCP Terraform change integration page
Argo CD Notifications webhook service, template and trigger that record each
Application sync operation as a Flashduty change, with the phase-to-status
mapping, the change key and the label reference.
…eat/netlify-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/gitlab-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/argocd-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
docs(change): add Argo CD change integration
…eat/netlify-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/jfrog-artifactory-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
docs(change): add Netlify change integration page
docs(change): add GitLab change integration page
…eat/vercel-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/jfrog-artifactory-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
docs(change): Vercel change integration
Document the Jenkins change integration built on the Notification plugin:
setup, what one change is, status mapping, labels and FAQ.
…eat/jfrog-artifactory-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/jenkins-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/buildkite-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
docs(change): add Buildkite change integration
…eat/launchdarkly-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/launchdarkly-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
…eat/jenkins-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
docs(change): add LaunchDarkly change integration page
…eat/jenkins-change

# Conflicts:
#	docs.json
#	integration-docs/src/doc-map.mjs
docs(change): add Jenkins change integration page
docs(change): list every Jenkins rejection reason
argocd admin notifications template notify prints debug logs of the request and response, including the push URL with its integration_key. Say which line shows acceptance and warn against sharing the output.
docs(argocd): describe the output of template notify
… SCM label behavior

- The Notification plugin sends nothing without the JUnit plugin; name the
  NoClassDefFoundError it logs.
- Plain Text URL Source prints the Push URL with integration_key in every
  build log; use a Secret text credential.
- QUEUED is sent only when the build starts and is not recorded; drop it
  from the status table.
- branch/commit come only from freestyle jobs with Git SCM, not from the
  Pipeline git step; start-time values can predate the checkout.
- COMPLETED and FINALIZED within one second are recorded once.
docs(jenkins-change): JUnit dependency, Credentials Store, QUEUED and SCM labels
docs(change): GitHub Actions deployments canceled on the run page show as Canceled
docs(netlify change): restore time, canceled builds, current event list
LaunchDarkly: a policy statement may name only one resource kind, so the
flag and segment specifiers go in two statements; the Webhooks card's
button is Add new.

HCP Terraform: the notification form now lists more run events under new
names, so select All events; a run discarded at the confirm step is
delivered as run:completed with run_status discarded (Canceled); button
labels match the current UI.
docs(change): correct LaunchDarkly and HCP Terraform setup steps
@ysyneu
ysyneu merged commit dae3577 into main Sep 29, 2026
2 checks passed
@ysyneu
ysyneu deleted the feat/change-integrations branch September 29, 2026 11:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant