Skip to main content

ferro_cli/commands/
mod.rs

1pub mod api_check;
2pub mod boost_install;
3pub mod ci_init;
4pub mod claude_install;
5pub mod clean;
6pub mod db_fresh;
7pub mod db_migrate;
8pub mod db_query;
9pub mod db_rollback;
10pub mod db_seed;
11pub mod db_status;
12pub mod db_sync;
13pub mod deploy_init;
14pub mod do_init;
15pub mod docker_compose;
16pub mod docker_init;
17pub mod doctor;
18pub mod generate_routes;
19pub mod generate_types;
20pub mod make_action;
21pub mod make_api;
22pub mod make_api_key;
23pub mod make_auth;
24pub mod make_controller;
25pub mod make_error;
26pub mod make_event;
27pub mod make_factory;
28pub mod make_inertia;
29pub mod make_job;
30pub mod make_json_view;
31pub mod make_lang;
32pub mod make_listener;
33pub mod make_middleware;
34pub mod make_migration;
35pub mod make_module;
36pub mod make_notification;
37pub mod make_policy;
38pub mod make_projection;
39pub mod make_resource;
40pub mod make_scaffold;
41pub mod make_seeder;
42pub mod make_stripe;
43pub mod make_task;
44pub mod make_theme;
45pub mod make_whatsapp;
46pub mod mcp;
47pub mod new;
48#[cfg(feature = "projections")]
49pub mod projection_check;
50pub mod schedule_list;
51pub mod schedule_run;
52pub mod schedule_work;
53pub mod serve;
54pub mod storage_link;
55pub mod validate_contracts;
56
57/// Process-wide lock for tests that mutate `std::env::current_dir`.
58///
59/// `set_current_dir` is global state, so parallel tests that touch it race.
60/// Tests should acquire this mutex before calling `set_current_dir` and hold
61/// it until they restore the previous directory.
62#[cfg(test)]
63pub(crate) static CWD_TEST_LOCK: std::sync::Mutex<()> = std::sync::Mutex::new(());