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