Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Our deploy form had an unticked box and every deploy rebuilt the search index

Description and use

Manual GitHub Actions deployments unintentionally triggered full search index rebuilds due to incorrect boolean input handling. Updating the workflow to use the boolean inputs context and explicit string comparisons stopped the issue.

Problem

Manual deploys unintentionally triggered a full search index rebuild, causing temporary loss of catalogue search results.

Outcome

The issue was fixed by correctly handling boolean inputs in GitHub Actions, preventing unintended index rebuilds and restoring stable search functionality.

Workflow

  • 1. Trigger manual deploy via workflow_dispatch
  • 2. Resolve inputs and write to job summary
  • 3. Evaluate if: inputs.rebuild_index
  • 4. If true, run index rebuild step
  • 5. Write new index and switch alias after completion

Evidence

Our production deploy is a GitHub Actions workflow started by hand with workflow_dispatch.

Source

The step that rebuilds the index had the condition if: github.event.inputs.rebuild_index.

Source

GitHub passes manual inputs in two contexts. The inputs context keeps a boolean as a boolean. The older github.event.inputs carries the same values as strings, and the documentation says so.

Source

In an Actions expression the only falsy values are false, zero, null and the empty string, so a non empty string is truthy, including that one.

Source

The condition now reads if: inputs.rebuild_index, which gets a real boolean.

Source

The rebuild itself now writes into a new index and switches an alias when it finishes, so even a rebuild we did ask for no longer empties the search while it runs.

Source

  • Record date: 2026-10-19T07:41:02.802Z