{"id":19585471,"url":"https://github.com/stremovskyy/go-aws-config","last_synced_at":"2026-04-15T16:32:55.960Z","repository":{"id":65732896,"uuid":"598094978","full_name":"stremovskyy/go-aws-config","owner":"stremovskyy","description":"go-aws-config is a very simple wrapper around the AWS SDK for Go","archived":false,"fork":false,"pushed_at":"2023-03-06T11:47:36.000Z","size":19,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-03T11:13:04.462Z","etag":null,"topics":["app-config","aws","aws-appconfig","go","golang","golang-library","golang-package"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stremovskyy.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-06T11:45:06.000Z","updated_at":"2023-02-06T13:23:56.000Z","dependencies_parsed_at":"2024-06-20T21:52:19.188Z","dependency_job_id":"c5f2eb71-f7b6-4630-8a29-724a521517d9","html_url":"https://github.com/stremovskyy/go-aws-config","commit_stats":{"total_commits":8,"total_committers":1,"mean_commits":8.0,"dds":0.0,"last_synced_commit":"5f0b4e34b4232f01d67fcf7ec0c0bac8a401053e"},"previous_names":["karmadon/go-aws-config"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/stremovskyy/go-aws-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stremovskyy%2Fgo-aws-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stremovskyy%2Fgo-aws-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stremovskyy%2Fgo-aws-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stremovskyy%2Fgo-aws-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stremovskyy","download_url":"https://codeload.github.com/stremovskyy/go-aws-config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stremovskyy%2Fgo-aws-config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31849779,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"ssl_error","status_checked_at":"2026-04-15T15:24:39.138Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["app-config","aws","aws-appconfig","go","golang","golang-library","golang-package"],"created_at":"2024-11-11T07:54:16.323Z","updated_at":"2026-04-15T16:32:55.938Z","avatar_url":"https://github.com/stremovskyy.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GO AWS Config\n\n[![GoDoc](https://godoc.org/github.com/stremovskyy/go_aws_config?status.svg)](https://godoc.org/github.com/stremovskyy/go_aws_config)\n\n**go-aws-config** is a very simple wrapper around the AWS SDK for Go. It provides a simple way to get configuration values from AWS App Config.\n\n### Jump to\n\n* [Installation](#Installation)\n* [Usage](#Usage)\n* [License](#License)\n* [Contributing](#Contributing)\n* [Authors](#Authors)\n* [Acknowledgments](#Acknowledgments)\n* [TODO](#TODO)\n\n### Installation\n\n```bash\ngo get github.com/stremovskyy/go-aws-config\n```\n\n### Usage\n\n#### With environment variables\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"github.com/stremovskyy/go-aws-config\"\n)\n\ntype Configuration struct {\n\t// DB configuration\n\tDBHost string `yaml:\"db_host\" json:\"db_host\"`\n\tDBPort string `yaml:\"db_port\" json:\"db_port\"`\n}\n\nfunc main() {\n\t// Create new options for client\n\topts := \u0026go_aws_config.Options{\n\t\tRegion:           \"eu-central-1\",\n\t\tApplicationID:    \"test\",\n\t\tEnvironmentID:    \"TestEnvironment\",\n\t\tProfile:          \"test-config\",\n\t\tPollingInterval:  60,\n\t\tCredentialsInEnv: true,\n\t}\n\n\t// Create new client\n\tconfigurator := go_aws_config.NewClient(opts)\n\n\t// Prepare client\n\terr := configurator.Prepare()\n\tif err != nil {\n\t\tfmt.Printf(\"failed to prepare client, %v\", err)\n\t\treturn\n\t}\n\n\t// create a struct to load configuration into\n\tdbConfiguration := \u0026Configuration{}\n\n\t// load configuration into struct\n\terr = configurator.LoadIntoYaml(dbConfiguration)\n\tif err != nil {\n\t\tfmt.Printf(\"failed to load configuration into struct, %v\", err)\n\t\treturn\n\t}\n\n\t// PROFIT!\n\tfmt.Printf(\"db host: %s\", dbConfiguration.DBHost)\n}\n```\n\n#### With credentials in code\n```go\npackage main\n\nimport (\n    \"fmt\"\n    \"github.com/stremovskyy/go-aws-config\"\n)\n\ntype Configuration struct {\n    // DB configuration\n    DBHost string `yaml:\"db_host\" json:\"db_host\"`\n    DBPort string `yaml:\"db_port\" json:\"db_port\"`\n}\n\nfunc main() {\n\tawsKey := \"AKIAIOSFODNN7EXAMPLE\"\n\tawsSecret := \"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\"\n\t\n    // Create new options for client\n    opts := \u0026go_aws_config.Options{\n        Region:           \"eu-central-1\",\n        ApplicationID:    \"test\",\n        EnvironmentID:    \"TestEnvironment\",\n        Profile:          \"test-config\",\n        PollingInterval:  60,\n        CredentialsInEnv: false,\n        AccessKeyID:      awsKey,\n        SecretAccessKey:  awsSecret,\n    }\n\n    // Create new client\n    configurator := go_aws_config.NewClient(opts)\n\n    // Prepare client\n    err := configurator.Prepare()\n    if err != nil {\n        fmt.Printf(\"failed to prepare client, %v\", err)\n        return\n    }\n\n    // create a struct to load configuration into\n    dbConfiguration := \u0026Configuration{}\n\n    // load configuration into struct\n    err = configurator.LoadIntoYaml(dbConfiguration)\n    if err != nil {\n        fmt.Printf(\"failed to load configuration into struct, %v\", err)\n        return\n    }\n\n    // PROFIT!\n    fmt.Printf(\"db host: %s\", dbConfiguration.DBHost)\n}\n```\n\n\n\n\n### License\n\nThis library is licensed under the Apache 2.0 License.\n\n### Contributing\n\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\nPlease make sure to update tests as appropriate.\n\n### Authors\n\n* **Anton Stremovskyy** - *Initial work* - [stremovskyy](https://github.com/stremovskyy)\n\n### Acknowledgments\n\n* [AWS SDK for Go](https://github.com/aws/aws-sdk-go/)\n* [AWS AppConfig](https://aws.amazon.com/appconfig/)\n* [AWS AppConfig Go SDK](https://docs.aws.amazon.com/sdk-for-go/api/service/appconfig/)\n\n### TODO\n\n* [ ] Add support for more configuration formats\n* [ ] Add support for subscribing to configuration changes\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstremovskyy%2Fgo-aws-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstremovskyy%2Fgo-aws-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstremovskyy%2Fgo-aws-config/lists"}