Get support for sagikazarmark/viperx

If you're new to LTH, please see our FAQ for more information on what it is we do.

Support Options

Unfortunately, there are currently no active helpers for this repository on the platform. Until they become available, we reccomend the following actions:

View Open Issues

Take a look to see if anyone else has experienced the same issue as you and if they managed to solve it.

Open an Issue

Make sure to read any relevant guidelines for opening issues on this repo before posting a new issue.

Sponsor directly

Check out the page and see if there are any options to sponsor this project or it's developers directly.

sagikazarmark/viperx

ViperX: Viper extensions

GitHub Workflow Status Codecov Go Report Card Go Version PkgGoDev FOSSA Status

This library adds some extensions to the core Viper package.

Installation

$ go get github.com/sagikazarmark/viperx

Usage

Remote config provider registry

Package remote provides a remote provider registry.

package main

import (
	"github.com/spf13/viper"

	vaultremote "github.com/sagikazarmark/viperx/remote"
)

func main() {
	vaultremote.RegisterConfigProvider("vault", &myVaultProvider{})

	_ = viper.AddRemoteProvider("vault", "endpoint", "path")
}

Hashicorp Vault Remote config provider

package main

import (
	"github.com/spf13/viper"

	"github.com/sagikazarmark/viperx/remote/vault"
)

func main() {
	_ = viper.AddRemoteProvider("vault", "endpoint", "path")
	viper.SetConfigType("json") // This is required for the vault provider

	_ = viper.ReadRemoteConfig()
}

Roadmap

  • Add etcd remote provider support (Using Go CDK secrets?)
  • Add consul remote provider support (Using Go CDK secrets?)
  • Add a friendly (declarative?) API for defining configuration

Development

Contributions are welcome! :)

  1. Clone the repository
  2. Make changes on a new branch
  3. If you changed any dependencies or added new packages run: ./pleasew tidy
  4. Run the test suite:
    ./pleasew test
    ./pleasew lint
    
  5. Commit, push and open a PR

License

The MIT License (MIT). Please see License File for more information.

FOSSA Status

Our Mission

We want to make open source more sustainable. The entire platform was born from this and everything we do is in aid of this.

Interesting Articles

Thank you for checking out LiveTechHelper |
2025 © lth-dev incorporated

p-e622a1a2