-
Notifications
You must be signed in to change notification settings - Fork 827
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
shamir treshold breaks env files (panic: interface conversion: interface {} is float64, not string) #857
Comments
👋🏻 Hello folks, I've also been hitting this exact issue, and can add some color to the configuration that causes it. This first configuration defines multiple creation_rules:
- path_regex: .*
key_groups:
- pgp:
- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
- pgp:
- YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY Whereas this second configuration a single creation_rules:
- path_regex: .*
key_groups:
- pgp:
- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
- YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY Hopefully this help to resolve this bug. Cheers! Additionally, this observation holds even if you're mixing key_groups:
- kms:
- arn:aws:kms:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
- pgp:
- YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY But this configuration will not: key_groups:
- kms:
- arn:aws:kms:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
pgp: # <--- No dash before, so it's the same list item.
- YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY |
These changes remove the JSON encoding/decoding steps that are performed during the serialization of ini and dotenv files. This roundtrip loses type information during the transformation which causes values to be incorrectly converted to the JSON marshaller defaults (int becomes float64, bool becomes string, etc, etc). In place of this JSON encoding, the mapstructure library allows for a direct conversion between the Metadata struct and map[string]interface{} needed to leverage the stores.Flatten and stores.Unflatten functions. In addition this adds mapstructure tags to the metadata structures to allow backwards compatibility with the JSON encoding. Resolves getsops#879 & getsops#857 This is getsops#1009 by acastle with mapstructure updated to v1.5.0 applied to getsops/sops/main HEAD.
These changes remove the JSON encoding/decoding steps that are performed during the serialization of ini and dotenv files. This roundtrip loses type information during the transformation which causes values to be incorrectly converted to the JSON marshaller defaults (int becomes float64, bool becomes string, etc, etc). In place of this JSON encoding, the mapstructure library allows for a direct conversion between the Metadata struct and map[string]interface{} needed to leverage the stores.Flatten and stores.Unflatten functions. In addition this adds mapstructure tags to the metadata structures to allow backwards compatibility with the JSON encoding. Resolves getsops#879 & getsops#857 This is getsops#1009 by acastle with mapstructure updated to v1.5.0 and unused imports removed applied to getsops/sops/main HEAD.
These changes remove the JSON encoding/decoding steps that are performed during the serialization of ini and dotenv files. This roundtrip loses type information during the transformation which causes values to be incorrectly converted to the JSON marshaller defaults (int becomes float64, bool becomes string, etc, etc). In place of this JSON encoding, the mapstructure library allows for a direct conversion between the Metadata struct and map[string]interface{} needed to leverage the stores.Flatten and stores.Unflatten functions. In addition this adds mapstructure tags to the metadata structures to allow backwards compatibility with the JSON encoding. Resolves getsops#879 & resolves getsops#857 This is a re-submission of @acastle's getsops#1009 with mapstructure updated to v1.5.0 and unused imports removed applied to getsops/sops/main HEAD.
These changes remove the JSON encoding/decoding steps that are performed during the serialization of ini and dotenv files. This roundtrip loses type information during the transformation which causes values to be incorrectly converted to the JSON marshaller defaults (int becomes float64, bool becomes string, etc, etc). In place of this JSON encoding, the mapstructure library allows for a direct conversion between the Metadata struct and map[string]interface{} needed to leverage the stores.Flatten and stores.Unflatten functions. In addition this adds mapstructure tags to the metadata structures to allow backwards compatibility with the JSON encoding. Resolves getsops#879 & resolves getsops#857 This is a re-submission of @acastle's getsops#1009 with mapstructure updated to v1.5.0 and unused imports removed applied to getsops/sops/main HEAD.
#1394 should fix this ( |
These changes remove the JSON encoding/decoding steps that are performed during the serialization of ini and dotenv files. This roundtrip loses type information during the transformation which causes values to be incorrectly converted to the JSON marshaller defaults (int becomes float64, bool becomes string, etc, etc). In place of this JSON encoding, the mapstructure library allows for a direct conversion between the Metadata struct and map[string]interface{} needed to leverage the stores.Flatten and stores.Unflatten functions. In addition this adds mapstructure tags to the metadata structures to allow backwards compatibility with the JSON encoding. Resolves getsops#879 & resolves getsops#857 This is a re-submission of @acastle's getsops#1009 with mapstructure updated to v1.5.0 and unused imports removed applied to getsops/sops/main HEAD.
sops: 3.7.1 (ubuntu)
.sops.yaml
command:
sops example.env
produces:
The text was updated successfully, but these errors were encountered: