envkey 1.2.6 → 1.3.2

Sign up to get free protection for your applications and to get access to all the features.
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
-