Skip to content

Consul Terraform Sync is a service-oriented tool for managing network infrastructure near real-time.

License

Notifications You must be signed in to change notification settings

marceloboeira/consul-terraform-sync

 
 

Repository files navigation

CircleCI

Consul-Terraform-Sync

Consul-Terraform-Sync (just Sync from here on) is a service-oriented tool for managing network infrastructure near real-time. Sync runs as a daemon and integrates the network topology maintained by your Consul cluster with your network infrastructure to dynamically secure and connect services.

Community Support

If you have questions about how consul-terraform-sync works, its capabilities or anything other than a bug or feature request (use github's issue tracker for those), please see our community support resources.

Community portal: discuss.hashicorp.com

Other resources: consul.io/community

Additionally, for issues and pull requests, we'll be using the 👍 reactions as a rough voting system to help gauge community priorities. So please add 👍 to any issue or pull request you'd like to see worked on. Thanks.

Roadmap

Knowing about our upcoming features and priorities helps our users plan. This repository contains information about what we are working on and allows all our user to give direct feedback. Please visit the Roadmap FAQs for more information on the categorization of the roadmap.

See the roadmap »

Installation

Sync is a daemon that runs alongside Consul, similar to other Consul ecosystem tools like Consul Template. Sync is not included with the Consul binary and will need to be installed separately.

Download

To install Sync, find the appropriate package for your system and download it as a zip archive. Unzip the package to extract the binary named consul-terraform-sync. Move the consul-terraform-sync binary to a location available on your $PATH.

  1. Download a pre-compiled, released version from the Sync release page.
  2. Extract the binary using unzip or tar.
  3. Move the binary into $PATH.
$ wget https://releases.hashicorp.com/consul-terraform-sync/${VERSION}/consul-terraform-sync_${VERSION}_${OS}_${ARCH}.zip
$ unzip consul-terraform-sync_${VERSION}_${OS}_${ARCH}.zip
$ mv consul-terraform-sync /usr/local/bin/consul-terraform-sync

Build from Source

You can also build Sync from source.

  1. Clone the repository to your local machine.
  2. Pick a version or build from main.
  3. Build Sync using the Makefile.
  4. The consul-terraform-sync binary is now installed to $GOPATH/bin.
$ git clone https://github.com/hashicorp/consul-terraform-sync.git
$ cd consul-terraform-sync
$ git fetch --all
$ git checkout tags/vX.Y.Z
$ make dev
$ which consul-terraform-sync

Verify

Once installed, verify the installation works by prompting the help option.

$ consul-terraform-sync -h
Usage of consul-terraform-sync:
  -config-dir value
      A directory to load files for configuring Sync. Configuration files
      require an .hcl or .json file extention in order to specify their format.
      This option can be specified multiple times to load different directories.
  -config-file value
      A file to load for configuring Sync. Configuration file requires an
      .hcl or .json extension in order to specify their format. This option can
      be specified multiple times to load different configuration files.
  -once
      Render templates and run tasks once. Does not run the process as a daemon
      and disables wait timers.
  -version
      Print the version of this daemon.

Configuration

Documentation to configure Sync

Roadmap FAQs

Why did you build this public facing roadmap?

We know that our customers are making decisions and plans based on what we are developing, and we want to provide our customers the insights they need to plan.

Why does your roadmap not have specific dates?

Because the highest priority for us to put out a secure and operationally stable product, we can't provide specific target dates for features. The roadmap is subject to change at any time, and roadmap issues in this repository do not guarantee a feature will be launched as proposed.

What are the roadmap categories?

  • Recently Shipped - These are the features, enhancements or bug fixes that we recently delivered.
  • Up Next - Features, enhancements or bug fixes coming in the next couple of months.
  • Researching - This might mean that we are still designing and thinking through how this feature or enhancement might work. We would love to hear from you on how you would like to see something implemented. Additionally, we would like to hear your usecase or design ideas here.

How can I request a feature be added to the roadmap?

Please open an issue! Guidelines on how to contribute can be found here. Community submitted issues will be tagged "Enhancement" and will be reviewed by the team.

Will you accept a pull request?

We want to create a strong community around CTS. We will take all PRs very seriously and review for inclusion. Please read about contributing.

About

Consul Terraform Sync is a service-oriented tool for managing network infrastructure near real-time.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 98.3%
  • Other 1.7%