--- layout: docs page_title: Consul-Terraform-Sync CLI sidebar_title: CLI description: >- How to use the Consul-Terraform-Sync CLI --- # Consul-Terraform-Sync Command (CLI) Consul-Terraform-Sync is controlled via an easy to use command-line interface (CLI). Consul-Terraform-Sync is only a single command-line application: `consul-terraform-sync`. Since there is no default configuration to run Consul-Terraform-Sync in a meaningful way, setting a configuration flag `-config-file` or `-config-dir` is required. For example: ```shell-session $ consul-terraform-sync -config-file=config.hcl ``` To view a list of available flags, use the `-help` or `-h` flag. ## Modes Consul-Terraform-Sync can be run in different modes. ### Daemon Mode Flag: none Behavior: This is the default mode in which Consul-Terraform-Sync passes through a once-mode phase and then turns into a long running process. During the once-mode phase, the daemon will exit with a non-zero status if it encounters an error. After successfully passing through once-mode phase, it will begin a long running process in which errors are logged and exiting is not expected behavior. Usage: Intended to be run as a long running process after running once-mode successfully for given configuration and tasks. ### Once Mode Flag: `-once` Behavior: Consul-Terraform-Sync will run all tasks once with buffer periods disabled and exit. On encountering an error before completing, Consul-Terraform-Sync will exit with a non-zero status. Usage: Intended to be run before daemon-mode in order to confirm configuration is accurate and tasks update network infrastructure as expected.