All Projects → secrethub → Secrethub Go

secrethub / Secrethub Go

Licence: apache-2.0
Go client library for the SecretHub Secrets Management API

Programming Languages

go
31211 projects - #10 most used programming language
golang
3204 projects

Projects that are alternatives of or similar to Secrethub Go

Atlantis
Terraform Pull Request Automation
Stars: ✭ 4,236 (+8372%)
Mutual labels:  hacktoberfest, devops
Awesome Open Source Supporters
⭐️ A curated list of companies that offer their services for free to Open Source projects
Stars: ✭ 457 (+814%)
Mutual labels:  hacktoberfest, devops
Launcher
Osquery launcher, autoupdater, and packager
Stars: ✭ 346 (+592%)
Mutual labels:  hacktoberfest, devops
Unleash
Unleash is the open source feature toggle service.
Stars: ✭ 4,679 (+9258%)
Mutual labels:  hacktoberfest, devops
Chef
Chef Infra, a powerful automation platform that transforms infrastructure into code automating how infrastructure is configured, deployed and managed across any environment, at any scale
Stars: ✭ 6,766 (+13432%)
Mutual labels:  hacktoberfest, devops
Cds
Enterprise-Grade Continuous Delivery & DevOps Automation Open Source Platform
Stars: ✭ 3,677 (+7254%)
Mutual labels:  hacktoberfest, devops
Tsuru
Open source and extensible Platform as a Service (PaaS).
Stars: ✭ 3,761 (+7422%)
Mutual labels:  hacktoberfest, devops
Sysadmin Reading List
A reading/viewing list for larval stage sysadmins and SREs
Stars: ✭ 240 (+380%)
Mutual labels:  hacktoberfest, devops
Go Carbon
Golang implementation of Graphite/Carbon server with classic architecture: Agent -> Cache -> Persister
Stars: ✭ 713 (+1326%)
Mutual labels:  hacktoberfest, devops
Gitea
Git with a cup of tea, painless self-hosted git service
Stars: ✭ 27,320 (+54540%)
Mutual labels:  hacktoberfest, devops
Secretz
secretz, minimizing the large attack surface of Travis CI
Stars: ✭ 279 (+458%)
Mutual labels:  hacktoberfest, secrets
Sentry
Sentry is cross-platform application monitoring, with a focus on error reporting.
Stars: ✭ 29,700 (+59300%)
Mutual labels:  hacktoberfest, devops
Takeoff
A rapid development environment using docker for convenience.
Stars: ✭ 271 (+442%)
Mutual labels:  hacktoberfest, devops
Jenkins
Jenkins automation server
Stars: ✭ 18,225 (+36350%)
Mutual labels:  hacktoberfest, devops
Foremast
Spinnaker Pipeline/Infrastructure Configuration and Templating Tool - Pipelines as Code.
Stars: ✭ 263 (+426%)
Mutual labels:  hacktoberfest, devops
Devops Guide
DevOps Guide - Development to Production all configurations with basic notes to debug efficiently.
Stars: ✭ 4,119 (+8138%)
Mutual labels:  hacktoberfest, devops
Errbot
Errbot is a chatbot, a daemon that connects to your favorite chat service and bring your tools and some fun into the conversation.
Stars: ✭ 2,605 (+5110%)
Mutual labels:  hacktoberfest, devops
Liquibase
Main Liquibase Source
Stars: ✭ 2,910 (+5720%)
Mutual labels:  hacktoberfest, devops
Opsdroid
🤖 An open source chat-ops bot framework
Stars: ✭ 563 (+1026%)
Mutual labels:  hacktoberfest, devops
Openebs
Leading Open Source Container Attached Storage, built using Cloud Native Architecture, simplifies running Stateful Applications on Kubernetes.
Stars: ✭ 7,277 (+14454%)
Mutual labels:  hacktoberfest, devops

SecretHub

Go Client

GoDoc CircleCI Go Report Card Version Discord

secrethub-go provides a client for various SecretHub APIs.

SecretHub is a secrets management tool that works for every engineer. Securely provision passwords and keys throughout your entire stack with just a few lines of code.

Gopher

Usage

You can install secrethub-go with:

go get github.com/secrethub/secrethub-go

Or install a specific version with:

go get github.com/secrethub/[email protected]

Then, import it using:

import (
    "github.com/secrethub/secrethub-go/pkg/secrethub"
)

Note: only packages inside the /pkg directory should be considered library code that you can use in your projects. All other code is not guaranteed to be backwards compatible and may change in the future.

Examples

For details on all functionality of this library, see the GoDoc documentation.

Below are a few simple examples:

Read Secrets

package main

import (
    "fmt"

    "github.com/secrethub/secrethub-go/pkg/secrethub"
)

func main() {
    client, _ := secrethub.NewClient()
    secret, _ := client.Secrets().ReadString("path/to/db/pass")
    fmt.Println(secret)
    // Output: wFc16W#96N1$
}

Write Secrets

package main

import (
    "fmt"

    "github.com/secrethub/secrethub-go/pkg/secrethub"
)

func main() {
    client, _ := secrethub.NewClient()
    _, _ = client.Secrets().Write("path/to/secret", []byte("password123"))
}

Generate Secrets

package main

import (
    "fmt"

    "github.com/secrethub/secrethub-go/pkg/randchar"
    "github.com/secrethub/secrethub-go/pkg/secrethub"
)

func main() {
    client, _ := secrethub.NewClient()
    data, _ := randchar.Generate(30)
    _, _ = client.Secrets().Write("path/to/secret", data)
}

Credential

To use the SecretHub Go client, you need to provide a credential for your SecretHub account. You can create a free developer account by signing up through the CLI.

After signup, the credential is located at $HOME/.secrethub/credential by default. secrethub.NewClient() automatically uses this credential.

Development

Pull requests from the community are welcome. If you'd like to contribute, please checkout the contributing guidelines.

Testing

Run all tests:

make test

Run tests for one package:

go test ./pkg/secrethub

Run a single test:

go test ./pkg/secrethub -run TestSignup

For any requests, bug or comments, please open an issue or submit a pull request.

Getting help

If you get stuck or just want advice, come chat with the engineers on Discord or send an email to [email protected]

Attributions

"gopher.png" by Takuya Ueda is licensed under CC BY 3.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].