mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-01-11 03:11:50 +00:00
* aptly can sign and verify without issues with GnuPG 1.x and 2.x * aptly auto-detects GnuPG version and adapts accordingly * aptly automatically finds suitable GnuPG version Majority of the work was to get unit-tests which can work with GnuPG 1.x & 2.x. Locally I've verified that aptly supports GnuPG 1.4.x & 2.2.x. Travis CI environment is based on trusty, so it runs gpg2 tests with GnuPG 2.0.x. Configuration parameter gpgProvider now supports three values for GnuPG: * gpg (same as before, default): use GnuPG 1.x if available (checks gpg, gpg1), otherwise uses GnuPG 2.x; for aptly users who already have GnuPG 1.x environment (as it was the only supported version) nothing should change; new users might start with GnuPG 2.x if that's their installed version * gpg1 looks for GnuPG 1.x only, fails otherwise * gpg2 looks for GnuPG 2.x only, fails otherwise
43 lines
924 B
Go
43 lines
924 B
Go
package pgp
|
|
|
|
import (
|
|
. "gopkg.in/check.v1"
|
|
)
|
|
|
|
type GoVerifierSuite struct {
|
|
VerifierSuite
|
|
}
|
|
|
|
var _ = Suite(&GoVerifierSuite{})
|
|
|
|
func (s *GoVerifierSuite) SetUpTest(c *C) {
|
|
s.verifier = &GoVerifier{}
|
|
s.verifier.AddKeyring("./trusted.gpg")
|
|
|
|
c.Assert(s.verifier.InitKeyring(), IsNil)
|
|
}
|
|
|
|
type GoSignerSuite struct {
|
|
SignerSuite
|
|
}
|
|
|
|
var _ = Suite(&GoSignerSuite{})
|
|
|
|
func (s *GoSignerSuite) SetUpTest(c *C) {
|
|
s.keyringNoPassphrase = [2]string{"keyrings/aptly.pub", "keyrings/aptly.sec"}
|
|
s.keyringPassphrase = [2]string{"keyrings/aptly_passphrase.pub", "keyrings/aptly_passphrase.sec"}
|
|
s.passphraseKey = "F30E8CB9CDDE2AF8"
|
|
s.noPassphraseKey = "21DBB89C16DB3E6D"
|
|
|
|
s.signer = &GoSigner{}
|
|
s.signer.SetBatch(true)
|
|
|
|
s.verifier = &GoVerifier{}
|
|
s.verifier.AddKeyring("./keyrings/aptly.pub")
|
|
s.verifier.AddKeyring("./keyrings/aptly_passphrase.pub")
|
|
|
|
c.Assert(s.verifier.InitKeyring(), IsNil)
|
|
|
|
s.SignerSuite.SetUpTest(c)
|
|
}
|