consul-terraform-sync

command module
v0.7.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2023 License: MPL-2.0 Imports: 2 Imported by: 0

README

Consul-Terraform-Sync Build Status CI

We're looking for feedback on how our users interact with Consul-Terraform-Sync (CTS), please fill out our brief survey!

Overview

Consul-Terraform-Sync (CTS) is a service-oriented tool for managing network infrastructure near real-time. CTS 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

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

Download

To install CTS, 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 CTS 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 CTS from source.

  1. Clone the repository to your local machine.
  2. Pick a version or build from main.
  3. Build CTS 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 CLI: consul-terraform-sync <command> [-help] [options]

Commands:
    start
     task

Options:
    -autocomplete-install [Default: false]
        Install the autocomplete

    -autocomplete-uninstall [Default: false]
        Uninstall the autocomplete

    -config-dir
        A directory to load files for configuring Consul-Terraform-Sync.
        Configuration files require an .hcl or .json file extension in order
        to specify their format. This option can be specified multiple times to
        load different directories.

    -config-file
        A file to load for configuring Consul-Terraform-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.

    -inspect [Default: false]
        Run Consul-Terraform-Sync in Inspect mode to print the proposed state
        changes for all tasks, and then exit. No changes are applied
        in this mode.

    -inspect-task
        Run Consul-Terraform-Sync in Inspect mode to print the proposed
        state changes for the task, and then exit. No changes are applied
        in this mode.

    -once [Default: false]
        Render templates and run tasks once. Does not run the process
        as a daemon and disables buffer periods.

Configuration

Documentation to configure CTS

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 use case 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.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
oapigen
Package oapigen provides primitives to interact with the openapi HTTP API.
Package oapigen provides primitives to interact with the openapi HTTP API.
internal
decode
Package decode provides tools for customizing the decoding of configuration, into structures using mapstructure.
Package decode provides tools for customizing the decoding of configuration, into structures using mapstructure.
mocks
api

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL