Commit Graph

22 Commits

Author SHA1 Message Date
Lin Jen-Shin bb5f79d43e Don't include EmailHelpers manually, pick with rspec
`:mailer` is needed to pick it easily, while
`type: :mailer` is needed for picking it automatically for
tests located in spec/mailers/*_spec.rb

It's a bit complicated in spec/services/notification_service_spec.rb
but we'll leave it alone for now.
2017-08-03 21:55:48 +08:00
Alexis Reigel f1ccecc997 improve gpg key validation
when omitting the end part of the key ('-----END PGP PUBLIC KEY
BLOCK-----') the error message was not about the key anymore, but about
the missing fingerprint and primary_keyid, which was confusing for the
user.
the new validation checks that the end also matches the expected format.
2017-07-27 15:46:04 +02:00
Alexis Reigel 843b1de0de simplify nil handling 2017-07-27 15:46:03 +02:00
Alexis Reigel cd01e82873 store gpg user name and email on the signature 2017-07-27 15:44:39 +02:00
Alexis Reigel 027309eb2a user may now revoke a gpg key
other than just removing a key, which doesn't affect the verified state
of a commit, revoking a key unverifies all signed commits.
2017-07-27 15:43:37 +02:00
Alexis Reigel e79e2ae1f4 validate presence of user on gpg_key 2017-07-27 15:43:37 +02:00
Alexis Reigel d9fd3709ab use hash instead of 2d array 2017-07-27 15:43:37 +02:00
Alexis Reigel e9515dff84 remove the :gpg rspec tag
since everything (except the CurrentKeyChain method) operates on a
tempoary keychain anyway we don't need this anymore.
2017-07-27 15:43:37 +02:00
Alexis Reigel 7b616d39ef gpg signature is only valid when key is verified 2017-07-27 15:42:53 +02:00
Alexis Reigel 3c42d73098 add primary keyid attribute to gpg keys 2017-07-27 15:42:53 +02:00
Alexis Reigel 7e13d96715 don't sync to keychain file 2017-07-27 15:42:53 +02:00
Alexis Reigel 8bd94a7304 remove gpg from keychain when user's email changes 2017-07-27 15:42:04 +02:00
Alexis Reigel c1281982bd notification email on add new gpg key 2017-07-27 15:40:41 +02:00
Alexis Reigel f0fe1b9d43 gpg email verification 2017-07-27 15:40:41 +02:00
Alexis Reigel 0668521b2b move current keychain methods to namespace 2017-07-27 15:40:41 +02:00
Alexis Reigel 41c96c45f2 test with a gpg key with multiple emails 2017-07-27 15:40:41 +02:00
Alexis Reigel 5ce61120b1 use example gpg key instead of my own 2017-07-27 15:40:41 +02:00
Alexis Reigel eb77e1068c add second gpg key for specs 2017-07-27 15:40:41 +02:00
Alexis Reigel 87c0fd3455 add / remove gpg keys to / from system keychain 2017-07-27 15:40:41 +02:00
Alexis Reigel ab4120de31 only validate gpg_key#fingerprint "internally" 2017-07-27 15:40:40 +02:00
Alexis Reigel 7b7cd6f69d add emails method to GgpKey 2017-07-27 15:40:40 +02:00
Alexis Reigel fbf1fd1a20 add gpg key model 2017-07-27 15:40:40 +02:00