Skip to content

suzuken/yamlssm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 

Repository files navigation

yamlssm

yamlssm is extended YAML format with Amazon Simple System Manager.

How to use

yamlssm has expand ssm value as macro prefixed by ssm://. See example below:

foo: ssm://prod.database.name
bar: test

ssm://prod.database.name should be set on you System Manager Parameter Store. If you set, yamlssm set a value stored in parameter store.

package main

import (
  "fmt"

  "github.com/suzuken/yamlssm"
)

type T struct {
  Foo string `yaml:"foo"`
  Bar string `yaml:"bar"`
}

func main() {
  t := T{}
  if err := yamlssm.Unmarshal([]byte(`
foo: ssm://prod.database.name
bar: test
`), &t)
  err != nil {
    fmt.Println(err)
  }

  fmt.Println(t.Foo) // -> value of prod.database.name on your ssm
}

Notice

  • Only supports default encryption key of your account.
  • To set aws region, please use AWS_REGION environment variables. (ex. export AWS_REGION='ap-northeast-1')
  • This behavior based on aws-sdk-go. If you run yamlssm on your EC2 or some kind of instance on AWS, it's use that environment on default.

References

http://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-paramstore.html

LICENSE

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages