mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-01-11 03:11:50 +00:00
Fix up other code to support new GPG provider structure
This commit is contained in:
@@ -26,7 +26,7 @@ func getSigner(options *SigningOptions) (pgp.Signer, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
signer := &pgp.GpgSigner{}
|
||||
signer := context.GetSigner()
|
||||
signer.SetKey(options.GpgKey)
|
||||
signer.SetKeyRing(options.Keyring, options.SecretKeyring)
|
||||
signer.SetPassphrase(options.Passphrase, options.PassphraseFile)
|
||||
|
||||
@@ -9,7 +9,6 @@ import (
|
||||
"github.com/smira/aptly/aptly"
|
||||
"github.com/smira/aptly/database"
|
||||
"github.com/smira/aptly/deb"
|
||||
"github.com/smira/aptly/pgp"
|
||||
"github.com/smira/aptly/utils"
|
||||
)
|
||||
|
||||
@@ -297,7 +296,7 @@ func apiReposPackageFromDir(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
|
||||
verifier := &pgp.GpgVerifier{}
|
||||
verifier := context.GetVerifier()
|
||||
|
||||
var (
|
||||
sources []string
|
||||
|
||||
@@ -15,7 +15,7 @@ func getVerifier(flags *flag.FlagSet) (pgp.Verifier, error) {
|
||||
|
||||
keyRings := flags.Lookup("keyring").Value.Get().([]string)
|
||||
|
||||
verifier := &pgp.GpgVerifier{}
|
||||
verifier := context.GetVerifier()
|
||||
for _, keyRing := range keyRings {
|
||||
verifier.AddKeyring(keyRing)
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func getSigner(flags *flag.FlagSet) (pgp.Signer, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
signer := &pgp.GpgSigner{}
|
||||
signer := context.GetSigner()
|
||||
signer.SetKey(flags.Lookup("gpg-key").Value.String())
|
||||
signer.SetKeyRing(flags.Lookup("keyring").Value.String(), flags.Lookup("secret-keyring").Value.String())
|
||||
signer.SetPassphrase(flags.Lookup("passphrase").Value.String(), flags.Lookup("passphrase-file").Value.String())
|
||||
|
||||
@@ -6,7 +6,6 @@ import (
|
||||
|
||||
"github.com/smira/aptly/aptly"
|
||||
"github.com/smira/aptly/deb"
|
||||
"github.com/smira/aptly/pgp"
|
||||
"github.com/smira/aptly/utils"
|
||||
"github.com/smira/commander"
|
||||
"github.com/smira/flag"
|
||||
@@ -21,7 +20,7 @@ func aptlyRepoAdd(cmd *commander.Command, args []string) error {
|
||||
|
||||
name := args[0]
|
||||
|
||||
verifier := &pgp.GpgVerifier{}
|
||||
verifier := context.GetVerifier()
|
||||
|
||||
repo, err := context.CollectionFactory().LocalRepoCollection().ByName(name)
|
||||
if err != nil {
|
||||
|
||||
@@ -9,7 +9,6 @@ import (
|
||||
|
||||
"github.com/smira/aptly/aptly"
|
||||
"github.com/smira/aptly/deb"
|
||||
"github.com/smira/aptly/pgp"
|
||||
"github.com/smira/aptly/query"
|
||||
"github.com/smira/aptly/utils"
|
||||
"github.com/smira/commander"
|
||||
@@ -29,7 +28,7 @@ func aptlyRepoInclude(cmd *commander.Command, args []string) error {
|
||||
}
|
||||
|
||||
if verifier == nil {
|
||||
verifier = &pgp.GpgVerifier{}
|
||||
verifier = context.GetVerifier()
|
||||
}
|
||||
|
||||
forceReplace := context.Flags().Lookup("force-replace").Value.Get().(bool)
|
||||
|
||||
@@ -18,6 +18,7 @@ import (
|
||||
"github.com/smira/aptly/deb"
|
||||
"github.com/smira/aptly/files"
|
||||
"github.com/smira/aptly/http"
|
||||
"github.com/smira/aptly/pgp"
|
||||
"github.com/smira/aptly/s3"
|
||||
"github.com/smira/aptly/swift"
|
||||
"github.com/smira/aptly/utils"
|
||||
@@ -373,6 +374,46 @@ func (context *AptlyContext) UploadPath() string {
|
||||
return filepath.Join(context.Config().RootDir, "upload")
|
||||
}
|
||||
|
||||
func (context *AptlyContext) pgpProvider() string {
|
||||
var provider string
|
||||
|
||||
if context.globalFlags.IsSet("gpg-provider") {
|
||||
provider = context.globalFlags.Lookup("gpg-provider").Value.String()
|
||||
} else {
|
||||
provider = context.config().GpgProvider
|
||||
}
|
||||
|
||||
if !(provider == "gpg" || provider == "internal") {
|
||||
Fatal(fmt.Errorf("unknown gpg provider: %v", provider))
|
||||
}
|
||||
|
||||
return provider
|
||||
}
|
||||
|
||||
// GetSigner returns Signer with respect to provider
|
||||
func (context *AptlyContext) GetSigner() pgp.Signer {
|
||||
context.Lock()
|
||||
defer context.Unlock()
|
||||
|
||||
if context.pgpProvider() == "gpg" {
|
||||
return &pgp.GpgSigner{}
|
||||
}
|
||||
|
||||
return &pgp.GoSigner{}
|
||||
}
|
||||
|
||||
// GetVerifier returns Verifier with respect to provider
|
||||
func (context *AptlyContext) GetVerifier() pgp.Verifier {
|
||||
context.Lock()
|
||||
defer context.Unlock()
|
||||
|
||||
if context.pgpProvider() == "gpg" {
|
||||
return &pgp.GpgVerifier{}
|
||||
}
|
||||
|
||||
return &pgp.GoVerifier{}
|
||||
}
|
||||
|
||||
// UpdateFlags sets internal copy of flags in the context
|
||||
func (context *AptlyContext) UpdateFlags(flags *flag.FlagSet) {
|
||||
context.Lock()
|
||||
|
||||
@@ -2,6 +2,7 @@ package deb
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
@@ -80,7 +81,7 @@ func (c *Changes) VerifyAndParse(acceptUnsigned, ignoreSignature bool, verifier
|
||||
c.SignatureKeys = keyInfo.GoodKeys
|
||||
}
|
||||
|
||||
var text *os.File
|
||||
var text io.ReadCloser
|
||||
|
||||
if isClearSigned {
|
||||
text, err = verifier.ExtractClearsigned(input)
|
||||
|
||||
@@ -90,7 +90,7 @@ func GetControlFileFromDsc(dscFile string, verifier pgp.Verifier) (Stanza, error
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var text *os.File
|
||||
var text io.ReadCloser
|
||||
|
||||
if isClearSigned {
|
||||
text, err = verifier.ExtractClearsigned(file)
|
||||
|
||||
@@ -39,7 +39,7 @@ func (s *DebSuite) TestGetControlFileFromDeb(c *C) {
|
||||
}
|
||||
|
||||
func (s *DebSuite) TestGetControlFileFromDsc(c *C) {
|
||||
verifier := &pgp.GpgVerifier{}
|
||||
verifier := &pgp.GoVerifier{}
|
||||
|
||||
_, err := GetControlFileFromDsc("/no/such/file", verifier)
|
||||
c.Check(err, ErrorMatches, ".*no such file or directory")
|
||||
|
||||
@@ -290,7 +290,7 @@ func (repo *RemoteRepo) Fetch(d aptly.Downloader, verifier pgp.Verifier) error {
|
||||
return err
|
||||
}
|
||||
|
||||
err = verifier.VerifyDetachedSignature(releasesig, release)
|
||||
err = verifier.VerifyDetachedSignature(releasesig, release, true)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ func (n *NullVerifier) InitKeyring() error {
|
||||
func (n *NullVerifier) AddKeyring(keyring string) {
|
||||
}
|
||||
|
||||
func (n *NullVerifier) VerifyDetachedSignature(signature, cleartext io.Reader) error {
|
||||
func (n *NullVerifier) VerifyDetachedSignature(signature, cleartext io.Reader, hint bool) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user