mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-05-06 22:18:28 +00:00
Publishing repository without signer (no signed files).
This commit is contained in:
Vendored
+9
-7
@@ -232,14 +232,16 @@ func (p *PublishedRepo) Publish(repo *Repository, packageCollection *PackageColl
|
|||||||
releaseFilename := releaseFile.Name()
|
releaseFilename := releaseFile.Name()
|
||||||
releaseFile.Close()
|
releaseFile.Close()
|
||||||
|
|
||||||
err = signer.DetachedSign(releaseFilename, releaseFilename+".gpg")
|
if signer != nil {
|
||||||
if err != nil {
|
err = signer.DetachedSign(releaseFilename, releaseFilename+".gpg")
|
||||||
return fmt.Errorf("unable to sign Release file: %s", err)
|
if err != nil {
|
||||||
}
|
return fmt.Errorf("unable to sign Release file: %s", err)
|
||||||
|
}
|
||||||
|
|
||||||
err = signer.ClearSign(releaseFilename, filepath.Join(filepath.Dir(releaseFilename), "InRelease"))
|
err = signer.ClearSign(releaseFilename, filepath.Join(filepath.Dir(releaseFilename), "InRelease"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("unable to sign Release file: %s", err)
|
return fmt.Errorf("unable to sign Release file: %s", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
|||||||
Vendored
+24
-13
@@ -8,8 +8,25 @@ import (
|
|||||||
"path/filepath"
|
"path/filepath"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type pathExistsChecker struct {
|
||||||
|
*CheckerInfo
|
||||||
|
}
|
||||||
|
|
||||||
|
var PathExists = &pathExistsChecker{
|
||||||
|
&CheckerInfo{Name: "PathExists", Params: []string{"path"}},
|
||||||
|
}
|
||||||
|
|
||||||
|
func (checker *pathExistsChecker) Check(params []interface{}, names []string) (result bool, error string) {
|
||||||
|
_, err := os.Stat(params[0].(string))
|
||||||
|
return err == nil, ""
|
||||||
|
}
|
||||||
|
|
||||||
type NullSigner struct{}
|
type NullSigner struct{}
|
||||||
|
|
||||||
|
func (n *NullSigner) Init() error {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func (n *NullSigner) SetKey(keyRef string) {
|
func (n *NullSigner) SetKey(keyRef string) {
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -165,6 +182,13 @@ func (s *PublishedRepoSuite) TestPublish(c *C) {
|
|||||||
c.Assert(err, IsNil)
|
c.Assert(err, IsNil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *PublishedRepoSuite) TestPublishNoSigner(c *C) {
|
||||||
|
err := s.repo.Publish(s.packageRepo, s.packageCollection, nil)
|
||||||
|
c.Assert(err, IsNil)
|
||||||
|
|
||||||
|
c.Check(filepath.Join(s.packageRepo.RootPath, "public/ppa/dists/squeeze/Release"), PathExists)
|
||||||
|
}
|
||||||
|
|
||||||
func (s *PublishedRepoSuite) TestString(c *C) {
|
func (s *PublishedRepoSuite) TestString(c *C) {
|
||||||
c.Check(s.repo.String(), Equals,
|
c.Check(s.repo.String(), Equals,
|
||||||
"ppa/squeeze (main) publishes [snap]: Snapshot from mirror [yandex]: http://mirror.yandex.ru/debian/ squeeze")
|
"ppa/squeeze (main) publishes [snap]: Snapshot from mirror [yandex]: http://mirror.yandex.ru/debian/ squeeze")
|
||||||
@@ -304,19 +328,6 @@ func (s *PublishedRepoCollectionSuite) TestBySnapshot(c *C) {
|
|||||||
c.Check(s.collection.BySnapshot(s.snap2), DeepEquals, []*PublishedRepo{s.repo2})
|
c.Check(s.collection.BySnapshot(s.snap2), DeepEquals, []*PublishedRepo{s.repo2})
|
||||||
}
|
}
|
||||||
|
|
||||||
type pathExistsChecker struct {
|
|
||||||
*CheckerInfo
|
|
||||||
}
|
|
||||||
|
|
||||||
var PathExists = &pathExistsChecker{
|
|
||||||
&CheckerInfo{Name: "PathExists", Params: []string{"path"}},
|
|
||||||
}
|
|
||||||
|
|
||||||
func (checker *pathExistsChecker) Check(params []interface{}, names []string) (result bool, error string) {
|
|
||||||
_, err := os.Stat(params[0].(string))
|
|
||||||
return err == nil, ""
|
|
||||||
}
|
|
||||||
|
|
||||||
type PublishedRepoRemoveSuite struct {
|
type PublishedRepoRemoveSuite struct {
|
||||||
PackageListMixinSuite
|
PackageListMixinSuite
|
||||||
db database.Storage
|
db database.Storage
|
||||||
|
|||||||
Reference in New Issue
Block a user