Package template is responsible for rendering user supplied templates to disk. The Server type accepts configuration to communicate to a Vault server and a Vault token for authentication. Internally, the Server creates a Consul Template Runner which manages reading secrets from Vault and rendering templates to disk at configured locations



    This section is empty.


    This section is empty.


    This section is empty.


    type Server

    type Server struct {
    	// Templates holds the parsed Consul Templates
    	Templates []*ctconfig.TemplateConfig
    	DoneCh chan struct{}
    	// contains filtered or unexported fields

      Server manages the Consul Template Runner which renders templates

      func NewServer

      func NewServer(conf *ServerConfig) *Server

        NewServer returns a new configured server

        func (*Server) Run

        func (ts *Server) Run(ctx context.Context, incoming chan string, templates []*ctconfig.TemplateConfig) error

          Run kicks off the internal Consul Template runner, and listens for changes to the token from the AuthHandler. If Done() is called on the context, shut down the Runner and return

          func (*Server) Stop

          func (ts *Server) Stop()

          type ServerConfig

          type ServerConfig struct {
          	Logger hclog.Logger
          	// Client        *api.Client
          	VaultConf     *config.Vault
          	ExitAfterAuth bool
          	Namespace string
          	// LogLevel is needed to set the internal Consul Template Runner's log level
          	// to match the log level of Vault Agent. The internal Runner creates it's own
          	// logger and can't be set externally or copied from the Template Server.
          	// LogWriter is needed to initialize Consul Template's internal logger to use
          	// the same io.Writer that Vault Agent itself is using.
          	LogLevel  hclog.Level
          	LogWriter io.Writer

            ServerConfig is a config struct for setting up the basic parts of the Server

            Source Files