envkey 1.2.6 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. checksums.yaml +5 -5
  2. data/LICENSE.txt +1 -1
  3. data/README.md +7 -0
  4. data/ext/{envkey-fetch_1.2.6_darwin_386 → envkey-fetch_1.2.9_darwin_amd64}/LICENSE +1 -1
  5. data/ext/{envkey-fetch_1.2.6_darwin_amd64 → envkey-fetch_1.2.9_darwin_amd64}/README.md +8 -1
  6. data/ext/envkey-fetch_1.2.9_darwin_amd64/envkey-fetch +0 -0
  7. data/ext/{envkey-fetch_1.2.6_freebsd_386 → envkey-fetch_1.2.9_darwin_arm64}/LICENSE +1 -1
  8. data/ext/{envkey-fetch_1.2.6_darwin_386 → envkey-fetch_1.2.9_darwin_arm64}/README.md +8 -1
  9. data/ext/envkey-fetch_1.2.9_darwin_arm64/envkey-fetch +0 -0
  10. data/ext/{envkey-fetch_1.2.6_freebsd_amd64 → envkey-fetch_1.2.9_freebsd_amd64}/LICENSE +1 -1
  11. data/ext/{envkey-fetch_1.2.6_freebsd_386 → envkey-fetch_1.2.9_freebsd_amd64}/README.md +8 -1
  12. data/ext/envkey-fetch_1.2.9_freebsd_amd64/envkey-fetch +0 -0
  13. data/ext/{envkey-fetch_1.2.6_darwin_amd64 → envkey-fetch_1.2.9_linux_amd64}/LICENSE +1 -1
  14. data/ext/{envkey-fetch_1.2.6_freebsd_amd64 → envkey-fetch_1.2.9_linux_amd64}/README.md +8 -1
  15. data/ext/envkey-fetch_1.2.9_linux_amd64/envkey-fetch +0 -0
  16. data/ext/envkey-fetch_1.2.9_linux_arm64/LICENSE +21 -0
  17. data/ext/envkey-fetch_1.2.9_linux_arm64/README.md +97 -0
  18. data/ext/envkey-fetch_1.2.9_linux_arm64/envkey-fetch +0 -0
  19. data/ext/envkey-fetch_1.2.9_windows_amd64/LICENSE +21 -0
  20. data/ext/envkey-fetch_1.2.9_windows_amd64/README.md +97 -0
  21. data/ext/envkey-fetch_1.2.9_windows_amd64/envkey-fetch.exe +0 -0
  22. data/lib/envkey/platform.rb +9 -3
  23. data/lib/envkey/version.rb +2 -2
  24. metadata +21 -27
  25. data/ext/envkey-fetch_1.2.6_darwin_386/envkey-fetch +0 -0
  26. data/ext/envkey-fetch_1.2.6_darwin_amd64/envkey-fetch +0 -0
  27. data/ext/envkey-fetch_1.2.6_freebsd_386/envkey-fetch +0 -0
  28. data/ext/envkey-fetch_1.2.6_freebsd_amd64/envkey-fetch +0 -0
  29. data/ext/envkey-fetch_1.2.6_linux_386/LICENSE +0 -21
  30. data/ext/envkey-fetch_1.2.6_linux_386/README.md +0 -90
  31. data/ext/envkey-fetch_1.2.6_linux_386/envkey-fetch +0 -0
  32. data/ext/envkey-fetch_1.2.6_linux_amd64/LICENSE +0 -21
  33. data/ext/envkey-fetch_1.2.6_linux_amd64/README.md +0 -90
  34. data/ext/envkey-fetch_1.2.6_linux_amd64/envkey-fetch +0 -0
  35. data/ext/envkey-fetch_1.2.6_windows_386/LICENSE +0 -21
  36. data/ext/envkey-fetch_1.2.6_windows_386/README.md +0 -90
  37. data/ext/envkey-fetch_1.2.6_windows_386/envkey-fetch.exe +0 -0
  38. data/ext/envkey-fetch_1.2.6_windows_amd64/LICENSE +0 -21
  39. data/ext/envkey-fetch_1.2.6_windows_amd64/README.md +0 -90
  40. data/ext/envkey-fetch_1.2.6_windows_amd64/envkey-fetch.exe +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 05a14e712cde0b3dbb31b1125885125a5258e84aed307789a629bd6349184210
4
- data.tar.gz: 1fd5c14961f72c759fefadd6ae0e377d239ca7a098f579a02e0f80fdcd7d93a7
2
+ SHA1:
3
+ metadata.gz: db0162afe84d50b0134a360d1b5e8f11ca6a5234
4
+ data.tar.gz: 50d82bdf211ae4ffe376a8ba19eb343dfdec5111
5
5
  SHA512:
6
- metadata.gz: 711308a311b66197246880e9afd034ad9fe8cb2caa056a764db5d88abf5e9ee8f3de59f223fbacf242f9d10397ec66d0c301735a9a15b002e5957820032ea182
7
- data.tar.gz: 2831b6485bdc4b95f95e6306342f6686a30c94df01865eeff5b5ce40e81577f7aaf2c096dcb1ca18c593e3f60ae8c73011355141446217c0dd142c2c3bc6fe3a
6
+ metadata.gz: 957daed9c3cdd69ce06fa363d103df4654456e450b146bf880b3daf313373e6580b498eb4f7d8f6056d7cd3bb4acc66fe11fd5e1a15a9055e45a18cc221be562
7
+ data.tar.gz: 5edae58e1e8061536605036bc5f0cb2a5c21a278ddf54b8793a40e2a7cb7899e02155cf4eeb0ea057c4570a6854e06ec75865a1662430c2cdfb6800463ac5494
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2017 Envkey Inc. <support@envkey.com>
3
+ Copyright (c) 2021 Envkey Inc. <support@envkey.com>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -63,6 +63,13 @@ For caching purposes, the gem assumes you're in development mode if either `ENV[
63
63
 
64
64
  If you look in the `ext` directory of this gem, you'll find a number of `envkey-fetch` binaries for various platforms and architectures. These are output by the [envkey-fetch Go library](https://github.com/envkey/envkey-fetch). It contains EnvKey's core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It is completely open source.
65
65
 
66
+ ## x509 error / ca-certificates
67
+
68
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when the envkey gem attempts to load your config. [envkey-fetch](https://github.com/envkey/envkey-fetch) tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
69
+ ```
70
+ apk add --no-cache ca-certificates
71
+ ```
72
+
66
73
  ## Further Reading
67
74
 
68
75
  For more on EnvKey in general:
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
3
+ Copyright © 2021 Envkey Inc. <support@envkey.com>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -8,7 +8,7 @@ If you want to build an EnvKey library in a language that isn't yet officially s
8
8
 
9
9
  ## Installation
10
10
 
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
11
+ envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this, as well as a [homebrew tap](https://github.com/envkey/homebrew-envkey)..
12
12
 
13
13
  **Install via bash:**
14
14
 
@@ -69,6 +69,13 @@ error: ENVKEY invalid
69
69
  -v, --version prints the version
70
70
  ```
71
71
 
72
+ ## x509 error / ca-certificates
73
+
74
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when `envkey-fetch` attempts to load your config. `envkey-fetch` tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
75
+ ```
76
+ apk add --no-cache ca-certificates
77
+ ```
78
+
72
79
  ## Further Reading
73
80
 
74
81
  For more on EnvKey in general:
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
3
+ Copyright © 2021 Envkey Inc. <support@envkey.com>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -8,7 +8,7 @@ If you want to build an EnvKey library in a language that isn't yet officially s
8
8
 
9
9
  ## Installation
10
10
 
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
11
+ envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this, as well as a [homebrew tap](https://github.com/envkey/homebrew-envkey)..
12
12
 
13
13
  **Install via bash:**
14
14
 
@@ -69,6 +69,13 @@ error: ENVKEY invalid
69
69
  -v, --version prints the version
70
70
  ```
71
71
 
72
+ ## x509 error / ca-certificates
73
+
74
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when `envkey-fetch` attempts to load your config. `envkey-fetch` tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
75
+ ```
76
+ apk add --no-cache ca-certificates
77
+ ```
78
+
72
79
  ## Further Reading
73
80
 
74
81
  For more on EnvKey in general:
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
3
+ Copyright © 2021 Envkey Inc. <support@envkey.com>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -8,7 +8,7 @@ If you want to build an EnvKey library in a language that isn't yet officially s
8
8
 
9
9
  ## Installation
10
10
 
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
11
+ envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this, as well as a [homebrew tap](https://github.com/envkey/homebrew-envkey)..
12
12
 
13
13
  **Install via bash:**
14
14
 
@@ -69,6 +69,13 @@ error: ENVKEY invalid
69
69
  -v, --version prints the version
70
70
  ```
71
71
 
72
+ ## x509 error / ca-certificates
73
+
74
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when `envkey-fetch` attempts to load your config. `envkey-fetch` tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
75
+ ```
76
+ apk add --no-cache ca-certificates
77
+ ```
78
+
72
79
  ## Further Reading
73
80
 
74
81
  For more on EnvKey in general:
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
3
+ Copyright © 2021 Envkey Inc. <support@envkey.com>
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -8,7 +8,7 @@ If you want to build an EnvKey library in a language that isn't yet officially s
8
8
 
9
9
  ## Installation
10
10
 
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
11
+ envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this, as well as a [homebrew tap](https://github.com/envkey/homebrew-envkey)..
12
12
 
13
13
  **Install via bash:**
14
14
 
@@ -69,6 +69,13 @@ error: ENVKEY invalid
69
69
  -v, --version prints the version
70
70
  ```
71
71
 
72
+ ## x509 error / ca-certificates
73
+
74
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when `envkey-fetch` attempts to load your config. `envkey-fetch` tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
75
+ ```
76
+ apk add --no-cache ca-certificates
77
+ ```
78
+
72
79
  ## Further Reading
73
80
 
74
81
  For more on EnvKey in general:
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright © 2021 Envkey Inc. <support@envkey.com>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,97 @@
1
+ # envkey-fetch
2
+
3
+ This library contains [EnvKey](https://www.envkey.com)'s core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It accepts an `ENVKEY` generated by the [EnvKey App](https://www.github.com/envkey/envkey-app) and returns decrypted configuration for a specific app environment as json.
4
+
5
+ It is used by EnvKey's various Client Libraries, including [envkey-source](https://github.com/envkey/envkey-source) for bash, [envkey-ruby](https://github.com/envkey/envkey-ruby) for Ruby and Rails, [envkey-python](https://github.com/envkey/envkey-python) for Python, [envkey-node](https://github.com/envkey/envkey-node) for Node.js, and [envkeygo](https://github.com/envkey/envkeygo) for Go.
6
+
7
+ If you want to build an EnvKey library in a language that isn't yet officially supported, build some other type of integration, or simply play around with EnvKey on the command line, envkey-fetch is the library for you. If you just want to integrate EnvKey with your project, check out one of the aforementioned higher level libraries.
8
+
9
+ ## Installation
10
+
11
+ envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this, as well as a [homebrew tap](https://github.com/envkey/homebrew-envkey)..
12
+
13
+ **Install via bash:**
14
+
15
+ ```bash
16
+ curl -s https://raw.githubusercontent.com/envkey/envkey-fetch/master/install.sh | bash
17
+ ```
18
+
19
+ **Install manually:**
20
+
21
+ Find the [release](https://github.com/envkey/envkey-fetch/releases) for your platform and architecture, and stick the appropriate binary somewhere in your `PATH` (or wherever you like really).
22
+
23
+ **Install from source:**
24
+
25
+ With Go installed, clone the project into your `GOPATH`. `cd` into the directory and run `go get` and `go build`.
26
+
27
+ **Cross-compile from source:**
28
+
29
+ To compile cross-platform binaries, make sure Go is installed, then install [goreleaser](https://goreleaser.com/) - follow instructions in the docs to do so.
30
+
31
+ Then to cross-compile, run:
32
+
33
+ `goreleaser`
34
+
35
+ Binaries for each platform will be output to the `dist` folder.
36
+
37
+ ## Usage
38
+
39
+ ```bash
40
+ envkey-fetch YOUR-ENVKEY [flags]
41
+ ```
42
+
43
+ This will either write your the app environment's configuration associated with your `ENVKEY` as json to stdout or write an error message beginning with `error:` to stdout.
44
+
45
+ ### Example json output
46
+
47
+ ```json
48
+ {"TEST":"it","TEST_2":"works!"}
49
+ ```
50
+
51
+ ### Example error output
52
+
53
+ ```text
54
+ error: ENVKEY invalid
55
+ ```
56
+
57
+ ### Flags
58
+
59
+ ```text
60
+ --cache cache encrypted config as a local backup (default is false)
61
+ --cache-dir string cache directory (default is $HOME/.envkey/cache)
62
+ --client-name string calling client library name (default is none)
63
+ --client-version string calling client library version (default is none)
64
+ -h, --help help for envkey-fetch
65
+ --retries uint8 number of times to retry requests on failure (default 3)
66
+ --retryBackoff float retry backoff factor: {retryBackoff} * (2 ^ {retries - 1}) (default 1)
67
+ --timeout float timeout in seconds for http requests (default 10)
68
+ --verbose print verbose output (default is false)
69
+ -v, --version prints the version
70
+ ```
71
+
72
+ ## x509 error / ca-certificates
73
+
74
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when `envkey-fetch` attempts to load your config. `envkey-fetch` tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
75
+ ```
76
+ apk add --no-cache ca-certificates
77
+ ```
78
+
79
+ ## Further Reading
80
+
81
+ For more on EnvKey in general:
82
+
83
+ Read the [docs](https://docs.envkey.com).
84
+
85
+ Read the [integration quickstart](https://docs.envkey.com/integration-quickstart.html).
86
+
87
+ Read the [security and cryptography overview](https://security.envkey.com).
88
+
89
+ ## Need help? Have questions, feedback, or ideas?
90
+
91
+ Post an [issue](https://github.com/envkey/envkey-fetch/issues) or email us: [support@envkey.com](mailto:support@envkey.com).
92
+
93
+
94
+
95
+
96
+
97
+
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright © 2021 Envkey Inc. <support@envkey.com>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,97 @@
1
+ # envkey-fetch
2
+
3
+ This library contains [EnvKey](https://www.envkey.com)'s core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It accepts an `ENVKEY` generated by the [EnvKey App](https://www.github.com/envkey/envkey-app) and returns decrypted configuration for a specific app environment as json.
4
+
5
+ It is used by EnvKey's various Client Libraries, including [envkey-source](https://github.com/envkey/envkey-source) for bash, [envkey-ruby](https://github.com/envkey/envkey-ruby) for Ruby and Rails, [envkey-python](https://github.com/envkey/envkey-python) for Python, [envkey-node](https://github.com/envkey/envkey-node) for Node.js, and [envkeygo](https://github.com/envkey/envkeygo) for Go.
6
+
7
+ If you want to build an EnvKey library in a language that isn't yet officially supported, build some other type of integration, or simply play around with EnvKey on the command line, envkey-fetch is the library for you. If you just want to integrate EnvKey with your project, check out one of the aforementioned higher level libraries.
8
+
9
+ ## Installation
10
+
11
+ envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this, as well as a [homebrew tap](https://github.com/envkey/homebrew-envkey)..
12
+
13
+ **Install via bash:**
14
+
15
+ ```bash
16
+ curl -s https://raw.githubusercontent.com/envkey/envkey-fetch/master/install.sh | bash
17
+ ```
18
+
19
+ **Install manually:**
20
+
21
+ Find the [release](https://github.com/envkey/envkey-fetch/releases) for your platform and architecture, and stick the appropriate binary somewhere in your `PATH` (or wherever you like really).
22
+
23
+ **Install from source:**
24
+
25
+ With Go installed, clone the project into your `GOPATH`. `cd` into the directory and run `go get` and `go build`.
26
+
27
+ **Cross-compile from source:**
28
+
29
+ To compile cross-platform binaries, make sure Go is installed, then install [goreleaser](https://goreleaser.com/) - follow instructions in the docs to do so.
30
+
31
+ Then to cross-compile, run:
32
+
33
+ `goreleaser`
34
+
35
+ Binaries for each platform will be output to the `dist` folder.
36
+
37
+ ## Usage
38
+
39
+ ```bash
40
+ envkey-fetch YOUR-ENVKEY [flags]
41
+ ```
42
+
43
+ This will either write your the app environment's configuration associated with your `ENVKEY` as json to stdout or write an error message beginning with `error:` to stdout.
44
+
45
+ ### Example json output
46
+
47
+ ```json
48
+ {"TEST":"it","TEST_2":"works!"}
49
+ ```
50
+
51
+ ### Example error output
52
+
53
+ ```text
54
+ error: ENVKEY invalid
55
+ ```
56
+
57
+ ### Flags
58
+
59
+ ```text
60
+ --cache cache encrypted config as a local backup (default is false)
61
+ --cache-dir string cache directory (default is $HOME/.envkey/cache)
62
+ --client-name string calling client library name (default is none)
63
+ --client-version string calling client library version (default is none)
64
+ -h, --help help for envkey-fetch
65
+ --retries uint8 number of times to retry requests on failure (default 3)
66
+ --retryBackoff float retry backoff factor: {retryBackoff} * (2 ^ {retries - 1}) (default 1)
67
+ --timeout float timeout in seconds for http requests (default 10)
68
+ --verbose print verbose output (default is false)
69
+ -v, --version prints the version
70
+ ```
71
+
72
+ ## x509 error / ca-certificates
73
+
74
+ On a stripped down OS like Alpine Linux, you may get an `x509: certificate signed by unknown authority` error when `envkey-fetch` attempts to load your config. `envkey-fetch` tries to handle this by including its own set of trusted CAs via [gocertifi](https://github.com/certifi/gocertifi), but if you're getting this error anyway, you can fix it by ensuring that the `ca-certificates` dependency is installed. On Alpine you'll want to run:
75
+ ```
76
+ apk add --no-cache ca-certificates
77
+ ```
78
+
79
+ ## Further Reading
80
+
81
+ For more on EnvKey in general:
82
+
83
+ Read the [docs](https://docs.envkey.com).
84
+
85
+ Read the [integration quickstart](https://docs.envkey.com/integration-quickstart.html).
86
+
87
+ Read the [security and cryptography overview](https://security.envkey.com).
88
+
89
+ ## Need help? Have questions, feedback, or ideas?
90
+
91
+ Post an [issue](https://github.com/envkey/envkey-fetch/issues) or email us: [support@envkey.com](mailto:support@envkey.com).
92
+
93
+
94
+
95
+
96
+
97
+
@@ -21,7 +21,7 @@ module Envkey::Platform
21
21
  "x86"
22
22
  when /ppc|powerpc/
23
23
  "powerpc"
24
- when /^arm/
24
+ when /^arm|^aarch/
25
25
  "arm"
26
26
  else
27
27
  cpu
@@ -37,7 +37,13 @@ module Envkey::Platform
37
37
  end
38
38
 
39
39
  def self.arch_part
40
- ARCH == "x86_64" ? "amd64" : "386"
40
+ if (platform_part == "darwin" || platform_part == "linux") && ARCH == "arm"
41
+ "arm64"
42
+ elsif ARCH == "x86_64"
43
+ "amd64"
44
+ else
45
+ raise "As of 1.3.0, envkey-ruby only supports 64-bit systems. Please use an earlier version for 32-bit support."
46
+ end
41
47
  end
42
48
 
43
49
  def self.ext
@@ -52,4 +58,4 @@ module Envkey::Platform
52
58
  ["envkey-fetch", Envkey::ENVKEY_FETCH_VERSION.to_s, platform_part, arch_part].join("_")
53
59
  end
54
60
 
55
- end
61
+ end
@@ -1,4 +1,4 @@
1
1
  module Envkey
2
- VERSION = "1.2.6"
3
- ENVKEY_FETCH_VERSION="1.2.6"
2
+ VERSION = "1.3.2"
3
+ ENVKEY_FETCH_VERSION="1.2.9"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: envkey
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.6
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dane Schneider
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-18 00:00:00.000000000 Z
11
+ date: 2022-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -83,30 +83,24 @@ files:
83
83
  - bin/console
84
84
  - bin/setup
85
85
  - envkey.gemspec
86
- - ext/envkey-fetch_1.2.6_darwin_386/LICENSE
87
- - ext/envkey-fetch_1.2.6_darwin_386/README.md
88
- - ext/envkey-fetch_1.2.6_darwin_386/envkey-fetch
89
- - ext/envkey-fetch_1.2.6_darwin_amd64/LICENSE
90
- - ext/envkey-fetch_1.2.6_darwin_amd64/README.md
91
- - ext/envkey-fetch_1.2.6_darwin_amd64/envkey-fetch
92
- - ext/envkey-fetch_1.2.6_freebsd_386/LICENSE
93
- - ext/envkey-fetch_1.2.6_freebsd_386/README.md
94
- - ext/envkey-fetch_1.2.6_freebsd_386/envkey-fetch
95
- - ext/envkey-fetch_1.2.6_freebsd_amd64/LICENSE
96
- - ext/envkey-fetch_1.2.6_freebsd_amd64/README.md
97
- - ext/envkey-fetch_1.2.6_freebsd_amd64/envkey-fetch
98
- - ext/envkey-fetch_1.2.6_linux_386/LICENSE
99
- - ext/envkey-fetch_1.2.6_linux_386/README.md
100
- - ext/envkey-fetch_1.2.6_linux_386/envkey-fetch
101
- - ext/envkey-fetch_1.2.6_linux_amd64/LICENSE
102
- - ext/envkey-fetch_1.2.6_linux_amd64/README.md
103
- - ext/envkey-fetch_1.2.6_linux_amd64/envkey-fetch
104
- - ext/envkey-fetch_1.2.6_windows_386/LICENSE
105
- - ext/envkey-fetch_1.2.6_windows_386/README.md
106
- - ext/envkey-fetch_1.2.6_windows_386/envkey-fetch.exe
107
- - ext/envkey-fetch_1.2.6_windows_amd64/LICENSE
108
- - ext/envkey-fetch_1.2.6_windows_amd64/README.md
109
- - ext/envkey-fetch_1.2.6_windows_amd64/envkey-fetch.exe
86
+ - ext/envkey-fetch_1.2.9_darwin_amd64/LICENSE
87
+ - ext/envkey-fetch_1.2.9_darwin_amd64/README.md
88
+ - ext/envkey-fetch_1.2.9_darwin_amd64/envkey-fetch
89
+ - ext/envkey-fetch_1.2.9_darwin_arm64/LICENSE
90
+ - ext/envkey-fetch_1.2.9_darwin_arm64/README.md
91
+ - ext/envkey-fetch_1.2.9_darwin_arm64/envkey-fetch
92
+ - ext/envkey-fetch_1.2.9_freebsd_amd64/LICENSE
93
+ - ext/envkey-fetch_1.2.9_freebsd_amd64/README.md
94
+ - ext/envkey-fetch_1.2.9_freebsd_amd64/envkey-fetch
95
+ - ext/envkey-fetch_1.2.9_linux_amd64/LICENSE
96
+ - ext/envkey-fetch_1.2.9_linux_amd64/README.md
97
+ - ext/envkey-fetch_1.2.9_linux_amd64/envkey-fetch
98
+ - ext/envkey-fetch_1.2.9_linux_arm64/LICENSE
99
+ - ext/envkey-fetch_1.2.9_linux_arm64/README.md
100
+ - ext/envkey-fetch_1.2.9_linux_arm64/envkey-fetch
101
+ - ext/envkey-fetch_1.2.9_windows_amd64/LICENSE
102
+ - ext/envkey-fetch_1.2.9_windows_amd64/README.md
103
+ - ext/envkey-fetch_1.2.9_windows_amd64/envkey-fetch.exe
110
104
  - lib/envkey.rb
111
105
  - lib/envkey/core.rb
112
106
  - lib/envkey/fetch.rb
@@ -134,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
128
  version: '0'
135
129
  requirements: []
136
130
  rubyforge_project:
137
- rubygems_version: 2.7.4
131
+ rubygems_version: 2.6.14
138
132
  signing_key:
139
133
  specification_version: 4
140
134
  summary: Envkey secures and simplifies app secrets and config.
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,90 +0,0 @@
1
- # envkey-fetch
2
-
3
- This library contains [EnvKey](https://www.envkey.com)'s core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It accepts an `ENVKEY` generated by the [EnvKey App](https://www.github.com/envkey/envkey-app) and returns decrypted configuration for a specific app environment as json.
4
-
5
- It is used by EnvKey's various Client Libraries, including [envkey-source](https://github.com/envkey/envkey-source) for bash, [envkey-ruby](https://github.com/envkey/envkey-ruby) for Ruby and Rails, [envkey-python](https://github.com/envkey/envkey-python) for Python, [envkey-node](https://github.com/envkey/envkey-node) for Node.js, and [envkeygo](https://github.com/envkey/envkeygo) for Go.
6
-
7
- If you want to build an EnvKey library in a language that isn't yet officially supported, build some other type of integration, or simply play around with EnvKey on the command line, envkey-fetch is the library for you. If you just want to integrate EnvKey with your project, check out one of the aforementioned higher level libraries.
8
-
9
- ## Installation
10
-
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
12
-
13
- **Install via bash:**
14
-
15
- ```bash
16
- curl -s https://raw.githubusercontent.com/envkey/envkey-fetch/master/install.sh | bash
17
- ```
18
-
19
- **Install manually:**
20
-
21
- Find the [release](https://github.com/envkey/envkey-fetch/releases) for your platform and architecture, and stick the appropriate binary somewhere in your `PATH` (or wherever you like really).
22
-
23
- **Install from source:**
24
-
25
- With Go installed, clone the project into your `GOPATH`. `cd` into the directory and run `go get` and `go build`.
26
-
27
- **Cross-compile from source:**
28
-
29
- To compile cross-platform binaries, make sure Go is installed, then install [goreleaser](https://goreleaser.com/) - follow instructions in the docs to do so.
30
-
31
- Then to cross-compile, run:
32
-
33
- `goreleaser`
34
-
35
- Binaries for each platform will be output to the `dist` folder.
36
-
37
- ## Usage
38
-
39
- ```bash
40
- envkey-fetch YOUR-ENVKEY [flags]
41
- ```
42
-
43
- This will either write your the app environment's configuration associated with your `ENVKEY` as json to stdout or write an error message beginning with `error:` to stdout.
44
-
45
- ### Example json output
46
-
47
- ```json
48
- {"TEST":"it","TEST_2":"works!"}
49
- ```
50
-
51
- ### Example error output
52
-
53
- ```text
54
- error: ENVKEY invalid
55
- ```
56
-
57
- ### Flags
58
-
59
- ```text
60
- --cache cache encrypted config as a local backup (default is false)
61
- --cache-dir string cache directory (default is $HOME/.envkey/cache)
62
- --client-name string calling client library name (default is none)
63
- --client-version string calling client library version (default is none)
64
- -h, --help help for envkey-fetch
65
- --retries uint8 number of times to retry requests on failure (default 3)
66
- --retryBackoff float retry backoff factor: {retryBackoff} * (2 ^ {retries - 1}) (default 1)
67
- --timeout float timeout in seconds for http requests (default 10)
68
- --verbose print verbose output (default is false)
69
- -v, --version prints the version
70
- ```
71
-
72
- ## Further Reading
73
-
74
- For more on EnvKey in general:
75
-
76
- Read the [docs](https://docs.envkey.com).
77
-
78
- Read the [integration quickstart](https://docs.envkey.com/integration-quickstart.html).
79
-
80
- Read the [security and cryptography overview](https://security.envkey.com).
81
-
82
- ## Need help? Have questions, feedback, or ideas?
83
-
84
- Post an [issue](https://github.com/envkey/envkey-fetch/issues) or email us: [support@envkey.com](mailto:support@envkey.com).
85
-
86
-
87
-
88
-
89
-
90
-
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,90 +0,0 @@
1
- # envkey-fetch
2
-
3
- This library contains [EnvKey](https://www.envkey.com)'s core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It accepts an `ENVKEY` generated by the [EnvKey App](https://www.github.com/envkey/envkey-app) and returns decrypted configuration for a specific app environment as json.
4
-
5
- It is used by EnvKey's various Client Libraries, including [envkey-source](https://github.com/envkey/envkey-source) for bash, [envkey-ruby](https://github.com/envkey/envkey-ruby) for Ruby and Rails, [envkey-python](https://github.com/envkey/envkey-python) for Python, [envkey-node](https://github.com/envkey/envkey-node) for Node.js, and [envkeygo](https://github.com/envkey/envkeygo) for Go.
6
-
7
- If you want to build an EnvKey library in a language that isn't yet officially supported, build some other type of integration, or simply play around with EnvKey on the command line, envkey-fetch is the library for you. If you just want to integrate EnvKey with your project, check out one of the aforementioned higher level libraries.
8
-
9
- ## Installation
10
-
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
12
-
13
- **Install via bash:**
14
-
15
- ```bash
16
- curl -s https://raw.githubusercontent.com/envkey/envkey-fetch/master/install.sh | bash
17
- ```
18
-
19
- **Install manually:**
20
-
21
- Find the [release](https://github.com/envkey/envkey-fetch/releases) for your platform and architecture, and stick the appropriate binary somewhere in your `PATH` (or wherever you like really).
22
-
23
- **Install from source:**
24
-
25
- With Go installed, clone the project into your `GOPATH`. `cd` into the directory and run `go get` and `go build`.
26
-
27
- **Cross-compile from source:**
28
-
29
- To compile cross-platform binaries, make sure Go is installed, then install [goreleaser](https://goreleaser.com/) - follow instructions in the docs to do so.
30
-
31
- Then to cross-compile, run:
32
-
33
- `goreleaser`
34
-
35
- Binaries for each platform will be output to the `dist` folder.
36
-
37
- ## Usage
38
-
39
- ```bash
40
- envkey-fetch YOUR-ENVKEY [flags]
41
- ```
42
-
43
- This will either write your the app environment's configuration associated with your `ENVKEY` as json to stdout or write an error message beginning with `error:` to stdout.
44
-
45
- ### Example json output
46
-
47
- ```json
48
- {"TEST":"it","TEST_2":"works!"}
49
- ```
50
-
51
- ### Example error output
52
-
53
- ```text
54
- error: ENVKEY invalid
55
- ```
56
-
57
- ### Flags
58
-
59
- ```text
60
- --cache cache encrypted config as a local backup (default is false)
61
- --cache-dir string cache directory (default is $HOME/.envkey/cache)
62
- --client-name string calling client library name (default is none)
63
- --client-version string calling client library version (default is none)
64
- -h, --help help for envkey-fetch
65
- --retries uint8 number of times to retry requests on failure (default 3)
66
- --retryBackoff float retry backoff factor: {retryBackoff} * (2 ^ {retries - 1}) (default 1)
67
- --timeout float timeout in seconds for http requests (default 10)
68
- --verbose print verbose output (default is false)
69
- -v, --version prints the version
70
- ```
71
-
72
- ## Further Reading
73
-
74
- For more on EnvKey in general:
75
-
76
- Read the [docs](https://docs.envkey.com).
77
-
78
- Read the [integration quickstart](https://docs.envkey.com/integration-quickstart.html).
79
-
80
- Read the [security and cryptography overview](https://security.envkey.com).
81
-
82
- ## Need help? Have questions, feedback, or ideas?
83
-
84
- Post an [issue](https://github.com/envkey/envkey-fetch/issues) or email us: [support@envkey.com](mailto:support@envkey.com).
85
-
86
-
87
-
88
-
89
-
90
-
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,90 +0,0 @@
1
- # envkey-fetch
2
-
3
- This library contains [EnvKey](https://www.envkey.com)'s core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It accepts an `ENVKEY` generated by the [EnvKey App](https://www.github.com/envkey/envkey-app) and returns decrypted configuration for a specific app environment as json.
4
-
5
- It is used by EnvKey's various Client Libraries, including [envkey-source](https://github.com/envkey/envkey-source) for bash, [envkey-ruby](https://github.com/envkey/envkey-ruby) for Ruby and Rails, [envkey-python](https://github.com/envkey/envkey-python) for Python, [envkey-node](https://github.com/envkey/envkey-node) for Node.js, and [envkeygo](https://github.com/envkey/envkeygo) for Go.
6
-
7
- If you want to build an EnvKey library in a language that isn't yet officially supported, build some other type of integration, or simply play around with EnvKey on the command line, envkey-fetch is the library for you. If you just want to integrate EnvKey with your project, check out one of the aforementioned higher level libraries.
8
-
9
- ## Installation
10
-
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
12
-
13
- **Install via bash:**
14
-
15
- ```bash
16
- curl -s https://raw.githubusercontent.com/envkey/envkey-fetch/master/install.sh | bash
17
- ```
18
-
19
- **Install manually:**
20
-
21
- Find the [release](https://github.com/envkey/envkey-fetch/releases) for your platform and architecture, and stick the appropriate binary somewhere in your `PATH` (or wherever you like really).
22
-
23
- **Install from source:**
24
-
25
- With Go installed, clone the project into your `GOPATH`. `cd` into the directory and run `go get` and `go build`.
26
-
27
- **Cross-compile from source:**
28
-
29
- To compile cross-platform binaries, make sure Go is installed, then install [goreleaser](https://goreleaser.com/) - follow instructions in the docs to do so.
30
-
31
- Then to cross-compile, run:
32
-
33
- `goreleaser`
34
-
35
- Binaries for each platform will be output to the `dist` folder.
36
-
37
- ## Usage
38
-
39
- ```bash
40
- envkey-fetch YOUR-ENVKEY [flags]
41
- ```
42
-
43
- This will either write your the app environment's configuration associated with your `ENVKEY` as json to stdout or write an error message beginning with `error:` to stdout.
44
-
45
- ### Example json output
46
-
47
- ```json
48
- {"TEST":"it","TEST_2":"works!"}
49
- ```
50
-
51
- ### Example error output
52
-
53
- ```text
54
- error: ENVKEY invalid
55
- ```
56
-
57
- ### Flags
58
-
59
- ```text
60
- --cache cache encrypted config as a local backup (default is false)
61
- --cache-dir string cache directory (default is $HOME/.envkey/cache)
62
- --client-name string calling client library name (default is none)
63
- --client-version string calling client library version (default is none)
64
- -h, --help help for envkey-fetch
65
- --retries uint8 number of times to retry requests on failure (default 3)
66
- --retryBackoff float retry backoff factor: {retryBackoff} * (2 ^ {retries - 1}) (default 1)
67
- --timeout float timeout in seconds for http requests (default 10)
68
- --verbose print verbose output (default is false)
69
- -v, --version prints the version
70
- ```
71
-
72
- ## Further Reading
73
-
74
- For more on EnvKey in general:
75
-
76
- Read the [docs](https://docs.envkey.com).
77
-
78
- Read the [integration quickstart](https://docs.envkey.com/integration-quickstart.html).
79
-
80
- Read the [security and cryptography overview](https://security.envkey.com).
81
-
82
- ## Need help? Have questions, feedback, or ideas?
83
-
84
- Post an [issue](https://github.com/envkey/envkey-fetch/issues) or email us: [support@envkey.com](mailto:support@envkey.com).
85
-
86
-
87
-
88
-
89
-
90
-
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright © 2017 Envkey Inc. <support@envkey.com>
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
@@ -1,90 +0,0 @@
1
- # envkey-fetch
2
-
3
- This library contains [EnvKey](https://www.envkey.com)'s core cross-platform fetching, decryption, verification, web of trust, redundancy, and caching logic. It accepts an `ENVKEY` generated by the [EnvKey App](https://www.github.com/envkey/envkey-app) and returns decrypted configuration for a specific app environment as json.
4
-
5
- It is used by EnvKey's various Client Libraries, including [envkey-source](https://github.com/envkey/envkey-source) for bash, [envkey-ruby](https://github.com/envkey/envkey-ruby) for Ruby and Rails, [envkey-python](https://github.com/envkey/envkey-python) for Python, [envkey-node](https://github.com/envkey/envkey-node) for Node.js, and [envkeygo](https://github.com/envkey/envkeygo) for Go.
6
-
7
- If you want to build an EnvKey library in a language that isn't yet officially supported, build some other type of integration, or simply play around with EnvKey on the command line, envkey-fetch is the library for you. If you just want to integrate EnvKey with your project, check out one of the aforementioned higher level libraries.
8
-
9
- ## Installation
10
-
11
- envkey-fetch compiles into a simple static binary with no dependencies, which makes installation a simple matter of fetching the right binary for your platform and putting it in your `PATH`. An `install.sh` script is available to simplify this.
12
-
13
- **Install via bash:**
14
-
15
- ```bash
16
- curl -s https://raw.githubusercontent.com/envkey/envkey-fetch/master/install.sh | bash
17
- ```
18
-
19
- **Install manually:**
20
-
21
- Find the [release](https://github.com/envkey/envkey-fetch/releases) for your platform and architecture, and stick the appropriate binary somewhere in your `PATH` (or wherever you like really).
22
-
23
- **Install from source:**
24
-
25
- With Go installed, clone the project into your `GOPATH`. `cd` into the directory and run `go get` and `go build`.
26
-
27
- **Cross-compile from source:**
28
-
29
- To compile cross-platform binaries, make sure Go is installed, then install [goreleaser](https://goreleaser.com/) - follow instructions in the docs to do so.
30
-
31
- Then to cross-compile, run:
32
-
33
- `goreleaser`
34
-
35
- Binaries for each platform will be output to the `dist` folder.
36
-
37
- ## Usage
38
-
39
- ```bash
40
- envkey-fetch YOUR-ENVKEY [flags]
41
- ```
42
-
43
- This will either write your the app environment's configuration associated with your `ENVKEY` as json to stdout or write an error message beginning with `error:` to stdout.
44
-
45
- ### Example json output
46
-
47
- ```json
48
- {"TEST":"it","TEST_2":"works!"}
49
- ```
50
-
51
- ### Example error output
52
-
53
- ```text
54
- error: ENVKEY invalid
55
- ```
56
-
57
- ### Flags
58
-
59
- ```text
60
- --cache cache encrypted config as a local backup (default is false)
61
- --cache-dir string cache directory (default is $HOME/.envkey/cache)
62
- --client-name string calling client library name (default is none)
63
- --client-version string calling client library version (default is none)
64
- -h, --help help for envkey-fetch
65
- --retries uint8 number of times to retry requests on failure (default 3)
66
- --retryBackoff float retry backoff factor: {retryBackoff} * (2 ^ {retries - 1}) (default 1)
67
- --timeout float timeout in seconds for http requests (default 10)
68
- --verbose print verbose output (default is false)
69
- -v, --version prints the version
70
- ```
71
-
72
- ## Further Reading
73
-
74
- For more on EnvKey in general:
75
-
76
- Read the [docs](https://docs.envkey.com).
77
-
78
- Read the [integration quickstart](https://docs.envkey.com/integration-quickstart.html).
79
-
80
- Read the [security and cryptography overview](https://security.envkey.com).
81
-
82
- ## Need help? Have questions, feedback, or ideas?
83
-
84
- Post an [issue](https://github.com/envkey/envkey-fetch/issues) or email us: [support@envkey.com](mailto:support@envkey.com).
85
-
86
-
87
-
88
-
89
-
90
-