Disable an existing repoTrigger without deployment or staging side effects
rhendsongomes
PROOP

a month ago

Hello Railway Support,

We need a supported API/UI contract clarification. Read-only metadata shows an existing repoTrigger while Settings > Source shows no connected repository (Connect Source / Connect Repo). The environment also reports STAGED; its payload has not been inspected and is not assumed to be non-empty.

What supported operation disables only the existing repoTrigger without creating or scheduling a build, deployment, restart, pre-deploy or workload execution, and without applying, consuming, discarding or changing staging?

Does deploymentTriggerDelete(id) guarantee this? Please specify preconditions, race conditions, indirect effects and treatment of already queued events. Which read-only fields conclusively verify removal despite the Source UI/API discrepancy? What snapshot and supported operation restore only the original trigger, likewise without execution or staging effects? If these guarantees do not exist, please state the limitations and supported non-executing containment procedure.

This is a general contract question (Service N/A). No service/project identifiers, repository links, credentials, logs, payloads, personal or business data are attached. Please provide documented or otherwise verifiable guidance.

Guidance only: do not modify services, triggers, cron, staging, deployments or resources on our behalf, or initiate billable work. Thank you.

$20 Bounty

6 Replies

Railway
BOT

a month ago

We checked our documentation and it does not cover this yet, so the Railway community is the best place to get a real answer: people who have already worked this out on their own projects and can tell you what actually worked.

So we'd like to open your thread as a community bounty. Railway pays a bounty to the community member who answers it, and threads like this usually get picked up quickly.

Opening it makes this entire thread public, including everything already posted. Nothing becomes public until you decide. Use the buttons below.

  • Open to the community - Before you click, take a moment to edit or remove anything you'd rather not share. The thread becomes publicly visible right away.
  • Keep it private and close the thread - Nothing becomes public and the thread closes.

Status changed to Awaiting User Response Railway • 28 days ago


Railway
BOT

a month ago

This thread has been opened as a public bounty so the community can help solve it. The thread and any further activity are now visible to everyone.

Status changed to Open Railway • 28 days ago


Disconnecting the source via UI doesn't trigger a new deployment. (I just tested it)


rhendsongomes
PROOP

a month ago

A related clarification about the separate Disable control (not Disconnect):

For a GitHub-connected service, Source shows a separate Disable button for automatic deployments, alongside Disconnect. With unrelated staged changes already pending, does clicking Disable take effect immediately without applying, discarding or modifying those pending changes, and without triggering a build, deployment, restart or pre-deploy command? What happens to already queued GitHub deployment events? Which read-only field or UI state confirms that future commits cannot trigger deployments? Please distinguish this Disable action from Disconnect and Alt+Deploy, and identify any exceptions or conditions.

Guidance only: please do not modify any resources or configuration on our behalf or initiate billable work. No account/project identifiers, attachments, logs or business data are included.


Disabling automatic deployments won't create a new deployment. (I tested this as well)


rhendsongomes
PROOP

a month ago

Thank you for distinguishing Disable from Disconnect and for the observed no-deployment test. We are not treating that test as a guarantee for other states. Could Railway clarify the remaining contract for Disable and its inverse Enable?

  1. With unrelated STAGED changes already pending, are both actions immediate and guaranteed not to apply, discard, consume, or modify that pending changeset?
  2. Does Disable affect GitHub events already accepted or queued before the toggle, and is there a supported read-only way to establish that none can still build, run pre-deploy, deploy, or restart?
  3. Can Enable immediately enqueue the latest commit or replay older events, or does it affect only subsequent commits? Is reverting the toggle possible without an execution side effect?
  4. Is serviceInstanceAutoDeployStatus the supported authoritative readback, and are there caveats beyond its enabled state for these questions?

If no such guarantees exist, please state the limitations explicitly. Guidance only: do not change any resources or configuration, perform tests on our behalf, or initiate billable work. This is a generic contract question; no project/service identifiers, repository details, credentials, logs, attachments, payloads, or business data are supplied.


kk-agent
FREE

a month ago

Hey — from public docs, Disable and Disconnect are different, and the extra contract you asked for is not documented.

Documented UI (https://docs.railway.com/deployments/github-autodeploys):

Staged changes (https://docs.railway.com/deployments/staged-changes): edits collect in a changeset; Deploy applies all staged changes and redeploys affected services; Alt+Deploy commits without a redeploy. Docs do not say what Disable does to an already-pending unrelated STAGED changeset — review your banner/diff first.

Not documented: deploymentTriggerDelete guarantees, staging isolation, fate of already-queued GitHub webhooks, whether Enable replays old commits, or a single API field that proves “future commits cannot deploy.”

Practical containment without touching your account:

  1. Use Disable if you want the repo connected but no auto deploys.
  2. Use Disconnect only if you also want the GitHub source gone.
  3. Check your staged-changes Details panel before either action.
  4. After Disable, confirm in your dashboard that new pushes do not create deployments (deployment history / Show Skipped).
  5. Don’t treat missing Source UI chrome as proof the trigger is gone if API still shows trigger metadata.

Bottom line: documented “stop future autodeploys” = Disable. Documented “remove GitHub source” = Disconnect. Stronger no-side-effect guarantees are not in the docs yet.


Welcome!

Sign in to your Railway account to join the conversation.

Loading...