Repository navigation
feat(cli): floo deploy --preflight replaces floo preflight - #398
Merged
Merged
Conversation
floo deploy --preflight runs the config checks floo preflight ran, then shows what the deploy would do: the plan, or the first thing that would stop it (no repository, no commit, uncommitted work, not signed in). The config checks need neither git nor sign-in, so they run on a folder that isn't committed yet. --env resolves another environment's runtime values and only applies with --preflight. --name replaces --app; deploy checks every service, so --service is gone. The checks follow a git-push deploy: env files stay local, so a missing env_file no longer fails them. floo preflight fails with COMMAND_REMOVED naming floo deploy --preflight. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Eufw476uDAxxXQi632Y2Eq
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
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.
Summary
floo deploy --preflightreplacesfloo preflight. It runs the same config checks, then shows what the deploy would do: the plan, or the first thing that would stop it. Nothing is created or pushed. This is the "Check before deploying" row of the deploy rework plan (getfloo/floo#4262, step 4).Issue Closure
Part of getfloo/floo#4262 (step 4, cut the old surface). Does not close it.
Changes
floo deploy --preflightprints the full preflight report (findings, runtime plan, env plan, the server's runtime plan for an existing app) and addsdeploy_planto the JSON: the API plan when signed in, or the stop the deploy would hit first (NOT_A_GIT_REPOSITORY,NO_COMMITS,UNCOMMITTED_CHANGES,SECRET_FILES_NOT_IGNORED,NOT_AUTHENTICATED) withnext. The config checks need neither git nor sign-in, so they run on a folder that isn't committed yet. An invalid config exits 1 and never asks for the plan.--env dev|prod|previewresolves another environment's runtime values; clap only accepts it with--preflight.--namestands in for the old--app.--serviceis gone because a deploy builds every service.env_fileno longer fails them (env files stay local). The upload-deploy env-file tests now run againstfloo redeploy --preflight, which still uploads until the redeploy fold.floo preflightfails withCOMMAND_REMOVEDand namesfloo deploy --preflight(src/commands/removed.rs). Auth-exempt list, skill permissions and thefloo initnext step are updated.folder_blocker, which both paths share.Test Plan
cargo fmt --check,cargo clippy --all-targets -- -D warnings,cargo test(all suites pass).preflight_checks_the_config_then_shows_the_plan_and_changes_nothing(report plus plan, no create or push, invalid config never plans) andpreflight_runs_the_config_checks_before_the_folder_is_a_repository(plan names the git step;--envneeds--preflight).floo deploy --preflight. Tests that ran from a nested directory with--apprun at the repository root with--name, sincefloo deployreads floo.app.toml there.Discovered Issues
floo preflight. They move tofloo deploy --preflightin follow-up PRs once this merges.Generated by Claude Code