Rewrite snapshot pull to use PackageList.Filter instead of homebrew algorithm.

pull/88/head
Andrey Smirnov 2014-07-14 19:02:15 +04:00
parent fb660efeb5
commit ed6e261bd0
6 changed files with 166 additions and 217 deletions

View File

@ -3,6 +3,7 @@ package cmd
import (
"fmt"
"github.com/smira/aptly/deb"
"github.com/smira/aptly/query"
"github.com/smira/commander"
"github.com/smira/flag"
"sort"
@ -76,84 +77,58 @@ func aptlySnapshotPull(cmd *commander.Command, args []string) error {
return fmt.Errorf("unable to determine list of architectures, please specify explicitly")
}
// Initial dependencies out of arguments
initialDependencies := make([]deb.Dependency, len(args)-3)
for i, arg := range args[3:] {
initialDependencies[i], err = deb.ParseDependency(arg)
if err != nil {
return fmt.Errorf("unable to parse argument: %s", err)
}
}
// Perform pull
// Build architecture query: (arch == "i386" | arch == "amd64" | ...)
var archQuery deb.PackageQuery = &deb.FieldQuery{Field: "$Architecture"}
for _, arch := range architecturesList {
dependencies := make([]deb.Dependency, len(initialDependencies), 2*len(initialDependencies))
for i := range dependencies {
dependencies[i] = initialDependencies[i]
dependencies[i].Architecture = arch
}
// Go over list of initial dependencies + list of dependencies found
for i := 0; i < len(dependencies); i++ {
dep := dependencies[i]
// Search for package that can satisfy dependencies
searchResults := sourcePackageList.Search(dep, allMatches)
if searchResults == nil {
context.Progress().ColoredPrintf("@y[!]@| @!Dependency %s can't be satisfied with source %s@|", &dep, source)
continue
}
if !noRemove {
// Remove all packages with the same name and architecture
for _, pkg := range searchResults {
pS := packageList.Search(deb.Dependency{Architecture: pkg.Architecture, Pkg: pkg.Name}, true)
for _, p := range pS {
packageList.Remove(p)
context.Progress().ColoredPrintf("@r[-]@| %s removed", p)
}
}
}
// Add new discovered package
for _, pkg := range searchResults {
packageList.Add(pkg)
context.Progress().ColoredPrintf("@g[+]@| %s added", pkg)
}
if noDeps {
continue
}
// Find missing dependencies, for each added package
for _, pkg := range searchResults {
pL := deb.NewPackageList()
pL.Add(pkg)
var missing []deb.Dependency
missing, err = pL.VerifyDependencies(context.DependencyOptions(), []string{arch}, packageList, nil)
if err != nil {
context.Progress().ColoredPrintf("@y[!]@| @!Error while verifying dependencies for pkg %s: %s@|", pkg, err)
}
// Append missing dependencies to the list of dependencies to satisfy
for _, misDep := range missing {
found := false
for _, d := range dependencies {
if d == misDep {
found = true
break
}
}
if !found {
dependencies = append(dependencies, misDep)
}
}
}
}
archQuery = &deb.OrQuery{L: &deb.FieldQuery{"$Architecture", deb.VersionEqual, arch}, R: archQuery}
}
// Initial queries out of arguments
queries := make([]deb.PackageQuery, len(args)-3)
for i, arg := range args[3:] {
queries[i], err = query.Parse(arg)
if err != nil {
return fmt.Errorf("unable to parse query: %s", err)
}
// Add architecture filter
queries[i] = &deb.AndQuery{queries[i], archQuery}
}
// Filter with dependencies as requested
result, err := sourcePackageList.Filter(initialQueries, !noDeps, packageList, context.DependencyOptions(), architecturesList)
if err != nil {
return fmt.Errorf("unable to pull: %s", err)
}
result.PrepareIndex()
alreadySeen := map[string]bool{}
result.ForEachIndexed(func(pkg *deb.Package) error {
key := pkg.Architecture + "_" + pkg.Name
_, seen := alreadySeen[key]
// If we haven't seen such name-architecture pair and were instructed to remove, remove it
if !noRemove && !seen {
// Remove all packages with the same name and architecture
pS := packageList.Search(deb.Dependency{Architecture: pkg.Architecture, Pkg: pkg.Name}, true)
for _, p := range pS {
packageList.Remove(p)
context.Progress().ColoredPrintf("@r[-]@| %s removed", p)
}
}
// If !allMatches, add only first matching name-arch package
if !seen || allMatches {
packageList.Add(pkg)
context.Progress().ColoredPrintf("@g[+]@| %s added", pkg)
}
alreadySeen[key] = true
return nil
})
alreadySeen = nil
if context.flags.Lookup("dry-run").Value.Get().(bool) {
context.Progress().Printf("\nNot creating snapshot, as dry run was requested.\n")
} else {

View File

@ -5,27 +5,27 @@ from snapshot:
and result would be saved as new snapshot snap3.
Loading packages (78838)...
Building indexes...
[-] rsyslog_5.8.11-3_amd64 removed
[+] rsyslog_7.6.3-2~bpo70+1_amd64 added
[-] libestr0_0.1.1-2_amd64 removed
[+] libestr0_0.1.9-1~bpo70+1_amd64 added
[+] libjson-c2_0.11-3~bpo7+1_amd64 added
[+] liblogging-stdlog0_1.0.4-1~bpo70+1_amd64 added
[+] init-system-helpers_1.18~bpo70+1_all added
[-] rsyslog_5.8.11-3_source removed
[+] rsyslog_7.6.3-2~bpo70+1_source added
[-] libestr_0.1.1-2_source removed
[+] libestr_0.1.9-1~bpo70+1_source added
[+] init-system-helpers_1.18~bpo70+1_source added
[-] json-c_0.10-1.2_source removed
[+] json-c_0.11-3~bpo7+1_source added
[+] liblogging_1.0.4-1~bpo70+1_source added
[+] init-system-helpers_1.18~bpo70+1_source added
[-] rsyslog_5.8.11-3_i386 removed
[+] rsyslog_7.6.3-2~bpo70+1_i386 added
[-] libestr_0.1.1-2_source removed
[+] libestr_0.1.9-1~bpo70+1_source added
[-] libestr0_0.1.1-2_amd64 removed
[+] libestr0_0.1.9-1~bpo70+1_amd64 added
[-] libestr0_0.1.1-2_i386 removed
[+] libestr0_0.1.9-1~bpo70+1_i386 added
[+] libjson-c2_0.11-3~bpo7+1_amd64 added
[+] libjson-c2_0.11-3~bpo7+1_i386 added
[+] liblogging_1.0.4-1~bpo70+1_source added
[+] liblogging-stdlog0_1.0.4-1~bpo70+1_amd64 added
[+] liblogging-stdlog0_1.0.4-1~bpo70+1_i386 added
[-] rsyslog_5.8.11-3_amd64 removed
[+] rsyslog_7.6.3-2~bpo70+1_amd64 added
[-] rsyslog_5.8.11-3_i386 removed
[+] rsyslog_7.6.3-2~bpo70+1_i386 added
[-] rsyslog_5.8.11-3_source removed
[+] rsyslog_7.6.3-2~bpo70+1_source added
Snapshot snap3 successfully created.
You can run 'aptly publish snapshot snap3' to publish snapshot as Debian repository.

View File

@ -6,159 +6,159 @@ and result would be saved as new snapshot destination.
Loading packages (154)...
Building indexes...
[+] sensu_0.12.6-5_amd64 added
[+] sensu_0.12.6-4_amd64 added
[+] sensu_0.12.6-3_amd64 added
[+] sensu_0.12.6-2_amd64 added
[+] sensu_0.12.6-1_amd64 added
[+] sensu_0.12.5-1_amd64 added
[+] sensu_0.12.4-1_amd64 added
[+] sensu_0.12.3-1_amd64 added
[+] sensu_0.12.2-1_amd64 added
[+] sensu_0.12.1-1_amd64 added
[+] sensu_0.12.0-1_amd64 added
[+] sensu_0.11.3-1_amd64 added
[+] sensu_0.11.1-1_amd64 added
[+] sensu_0.11.0.beta.4-1_amd64 added
[+] sensu_0.11.0.beta.3-1_amd64 added
[+] sensu_0.11.0.beta.2-1_amd64 added
[+] sensu_0.11.0.beta.1-1_amd64 added
[+] sensu_0.11.0.beta-1_amd64 added
[+] sensu_0.11.0-1_amd64 added
[+] sensu_0.10.2-1_amd64 added
[+] sensu_0.10.1-1_amd64 added
[+] sensu_0.10.0-2_amd64 added
[+] sensu_0.10.0-1_amd64 added
[+] sensu_0.9.13.beta.1-1_amd64 added
[+] sensu_0.9.13.beta-2_amd64 added
[+] sensu_0.9.13.beta-1_amd64 added
[+] sensu_0.9.13-1_amd64 added
[+] sensu_0.9.12.beta.6-2_amd64 added
[+] sensu_0.9.12.beta.6-1_amd64 added
[+] sensu_0.9.12.beta.5-5_amd64 added
[+] sensu_0.9.12.beta.5-4_amd64 added
[+] sensu_0.9.12.beta.5-3_amd64 added
[+] sensu_0.9.12.beta.5-2_amd64 added
[+] sensu_0.9.12.beta.5-1_amd64 added
[+] sensu_0.9.12.beta.4-1_amd64 added
[+] sensu_0.9.12.beta.3-3_amd64 added
[+] sensu_0.9.12.beta.3-2_amd64 added
[+] sensu_0.9.12.beta.3-1_amd64 added
[+] sensu_0.9.12.beta.2-1_amd64 added
[+] sensu_0.9.12.beta.1-1_amd64 added
[+] sensu_0.9.12.beta-1_amd64 added
[+] sensu_0.9.12-3_amd64 added
[+] sensu_0.9.12-2_amd64 added
[+] sensu_0.9.12-1_amd64 added
[+] sensu_0.9.11-1_amd64 added
[+] sensu_0.9.10-1_amd64 added
[+] sensu_0.9.9.beta.4-1_amd64 added
[+] sensu_0.9.9.beta.3-2_amd64 added
[+] sensu_0.9.9.beta.3-1_amd64 added
[+] sensu_0.9.9.beta.2-1_amd64 added
[+] sensu_0.9.9.beta.1-1_amd64 added
[+] sensu_0.9.9.beta-1_amd64 added
[+] sensu_0.9.9-1_amd64 added
[+] sensu_0.9.8.beta.4-1_amd64 added
[+] sensu_0.9.8.beta.3-1_amd64 added
[+] sensu_0.9.8.beta.2-1_amd64 added
[+] sensu_0.9.8.beta.1-1_amd64 added
[+] sensu_0.9.8.beta-1_amd64 added
[+] sensu_0.9.8-1_amd64 added
[+] sensu_0.9.7.beta.4-1_amd64 added
[+] sensu_0.9.7.beta.3-1_amd64 added
[+] sensu_0.9.7.beta.2-1_amd64 added
[+] sensu_0.9.7.beta.1-1_amd64 added
[+] sensu_0.9.7.beta-1_amd64 added
[+] sensu_0.9.7-1_amd64 added
[+] sensu_0.9.6.beta.7-1_amd64 added
[+] sensu_0.9.6.beta.6-1_amd64 added
[+] sensu_0.9.6.beta.3-1_amd64 added
[+] sensu_0.9.6.beta.2-1_amd64 added
[+] sensu_0.9.6-4_amd64 added
[+] sensu_0.9.6-3_amd64 added
[+] sensu_0.9.6-2_amd64 added
[+] sensu_0.9.6-1_amd64 added
[+] sensu_0.9.5-36_amd64 added
[+] sensu_0.9.5-35_amd64 added
[+] sensu_0.9.5-34_amd64 added
[+] sensu_0.9.5-30_amd64 added
[+] sensu_0.12.6-5_i386 added
[+] sensu_0.12.6-4_amd64 added
[+] sensu_0.12.6-4_i386 added
[+] sensu_0.12.6-3_amd64 added
[+] sensu_0.12.6-3_i386 added
[+] sensu_0.12.6-2_amd64 added
[+] sensu_0.12.6-2_i386 added
[+] sensu_0.12.6-1_amd64 added
[+] sensu_0.12.6-1_i386 added
[+] sensu_0.12.5-1_amd64 added
[+] sensu_0.12.5-1_i386 added
[+] sensu_0.12.4-1_amd64 added
[+] sensu_0.12.4-1_i386 added
[+] sensu_0.12.3-1_amd64 added
[+] sensu_0.12.3-1_i386 added
[+] sensu_0.12.2-1_amd64 added
[+] sensu_0.12.2-1_i386 added
[+] sensu_0.12.1-1_amd64 added
[+] sensu_0.12.1-1_i386 added
[+] sensu_0.12.0-1_amd64 added
[+] sensu_0.12.0-1_i386 added
[+] sensu_0.11.3-1_amd64 added
[+] sensu_0.11.3-1_i386 added
[+] sensu_0.11.1-1_amd64 added
[+] sensu_0.11.1-1_i386 added
[+] sensu_0.11.0.beta.4-1_amd64 added
[+] sensu_0.11.0.beta.4-1_i386 added
[+] sensu_0.11.0.beta.3-1_amd64 added
[+] sensu_0.11.0.beta.3-1_i386 added
[+] sensu_0.11.0.beta.2-1_amd64 added
[+] sensu_0.11.0.beta.2-1_i386 added
[+] sensu_0.11.0.beta.1-1_amd64 added
[+] sensu_0.11.0.beta.1-1_i386 added
[+] sensu_0.11.0.beta-1_amd64 added
[+] sensu_0.11.0.beta-1_i386 added
[+] sensu_0.11.0-1_amd64 added
[+] sensu_0.11.0-1_i386 added
[+] sensu_0.10.2-1_amd64 added
[+] sensu_0.10.2-1_i386 added
[+] sensu_0.10.1-1_amd64 added
[+] sensu_0.10.1-1_i386 added
[+] sensu_0.10.0-2_amd64 added
[+] sensu_0.10.0-2_i386 added
[+] sensu_0.10.0-1_amd64 added
[+] sensu_0.10.0-1_i386 added
[+] sensu_0.9.13.beta.1-1_amd64 added
[+] sensu_0.9.13.beta.1-1_i386 added
[+] sensu_0.9.13.beta-2_amd64 added
[+] sensu_0.9.13.beta-2_i386 added
[+] sensu_0.9.13.beta-1_amd64 added
[+] sensu_0.9.13.beta-1_i386 added
[+] sensu_0.9.13-1_amd64 added
[+] sensu_0.9.13-1_i386 added
[+] sensu_0.9.12.beta.6-2_amd64 added
[+] sensu_0.9.12.beta.6-2_i386 added
[+] sensu_0.9.12.beta.6-1_amd64 added
[+] sensu_0.9.12.beta.6-1_i386 added
[+] sensu_0.9.12.beta.5-5_amd64 added
[+] sensu_0.9.12.beta.5-5_i386 added
[+] sensu_0.9.12.beta.5-4_amd64 added
[+] sensu_0.9.12.beta.5-4_i386 added
[+] sensu_0.9.12.beta.5-3_amd64 added
[+] sensu_0.9.12.beta.5-3_i386 added
[+] sensu_0.9.12.beta.5-2_amd64 added
[+] sensu_0.9.12.beta.5-2_i386 added
[+] sensu_0.9.12.beta.5-1_amd64 added
[+] sensu_0.9.12.beta.5-1_i386 added
[+] sensu_0.9.12.beta.4-1_amd64 added
[+] sensu_0.9.12.beta.4-1_i386 added
[+] sensu_0.9.12.beta.3-3_amd64 added
[+] sensu_0.9.12.beta.3-3_i386 added
[+] sensu_0.9.12.beta.3-2_amd64 added
[+] sensu_0.9.12.beta.3-2_i386 added
[+] sensu_0.9.12.beta.3-1_amd64 added
[+] sensu_0.9.12.beta.3-1_i386 added
[+] sensu_0.9.12.beta.2-1_amd64 added
[+] sensu_0.9.12.beta.2-1_i386 added
[+] sensu_0.9.12.beta.1-1_amd64 added
[+] sensu_0.9.12.beta.1-1_i386 added
[+] sensu_0.9.12.beta-1_amd64 added
[+] sensu_0.9.12.beta-1_i386 added
[+] sensu_0.9.12-3_amd64 added
[+] sensu_0.9.12-3_i386 added
[+] sensu_0.9.12-2_amd64 added
[+] sensu_0.9.12-2_i386 added
[+] sensu_0.9.12-1_amd64 added
[+] sensu_0.9.12-1_i386 added
[+] sensu_0.9.11-1_amd64 added
[+] sensu_0.9.11-1_i386 added
[+] sensu_0.9.10-1_amd64 added
[+] sensu_0.9.10-1_i386 added
[+] sensu_0.9.9.beta.4-1_amd64 added
[+] sensu_0.9.9.beta.4-1_i386 added
[+] sensu_0.9.9.beta.3-2_amd64 added
[+] sensu_0.9.9.beta.3-2_i386 added
[+] sensu_0.9.9.beta.3-1_amd64 added
[+] sensu_0.9.9.beta.3-1_i386 added
[+] sensu_0.9.9.beta.2-1_amd64 added
[+] sensu_0.9.9.beta.2-1_i386 added
[+] sensu_0.9.9.beta.1-1_amd64 added
[+] sensu_0.9.9.beta.1-1_i386 added
[+] sensu_0.9.9.beta-1_amd64 added
[+] sensu_0.9.9.beta-1_i386 added
[+] sensu_0.9.9-1_amd64 added
[+] sensu_0.9.9-1_i386 added
[+] sensu_0.9.8.beta.4-1_amd64 added
[+] sensu_0.9.8.beta.4-1_i386 added
[+] sensu_0.9.8.beta.3-1_amd64 added
[+] sensu_0.9.8.beta.3-1_i386 added
[+] sensu_0.9.8.beta.2-1_amd64 added
[+] sensu_0.9.8.beta.2-1_i386 added
[+] sensu_0.9.8.beta.1-1_amd64 added
[+] sensu_0.9.8.beta.1-1_i386 added
[+] sensu_0.9.8.beta-1_amd64 added
[+] sensu_0.9.8.beta-1_i386 added
[+] sensu_0.9.8-1_amd64 added
[+] sensu_0.9.8-1_i386 added
[+] sensu_0.9.7.beta.4-1_amd64 added
[+] sensu_0.9.7.beta.4-1_i386 added
[+] sensu_0.9.7.beta.3-1_amd64 added
[+] sensu_0.9.7.beta.3-1_i386 added
[+] sensu_0.9.7.beta.2-1_amd64 added
[+] sensu_0.9.7.beta.2-1_i386 added
[+] sensu_0.9.7.beta.1-1_amd64 added
[+] sensu_0.9.7.beta.1-1_i386 added
[+] sensu_0.9.7.beta-1_amd64 added
[+] sensu_0.9.7.beta-1_i386 added
[+] sensu_0.9.7-1_amd64 added
[+] sensu_0.9.7-1_i386 added
[+] sensu_0.9.6.beta.7-1_amd64 added
[+] sensu_0.9.6.beta.7-1_i386 added
[+] sensu_0.9.6.beta.6-1_amd64 added
[+] sensu_0.9.6.beta.6-1_i386 added
[+] sensu_0.9.6.beta.3-1_amd64 added
[+] sensu_0.9.6.beta.3-1_i386 added
[+] sensu_0.9.6.beta.2-1_amd64 added
[+] sensu_0.9.6.beta.2-1_i386 added
[+] sensu_0.9.6-4_amd64 added
[+] sensu_0.9.6-4_i386 added
[+] sensu_0.9.6-3_amd64 added
[+] sensu_0.9.6-3_i386 added
[+] sensu_0.9.6-2_amd64 added
[+] sensu_0.9.6-2_i386 added
[+] sensu_0.9.6-1_amd64 added
[+] sensu_0.9.6-1_i386 added
[+] sensu_0.9.5-36_amd64 added
[+] sensu_0.9.5-36_i386 added
[+] sensu_0.9.5-35_amd64 added
[+] sensu_0.9.5-35_i386 added
[+] sensu_0.9.5-34_amd64 added
[+] sensu_0.9.5-34_i386 added
[+] sensu_0.9.5-32_i386 added
[+] sensu_0.9.5-30_amd64 added
Snapshot destination successfully created.
You can run 'aptly publish snapshot destination' to publish snapshot as Debian repository.

View File

@ -6,57 +6,35 @@ and result would be saved as new snapshot destination.
Loading packages (154)...
Building indexes...
[+] sensu_0.12.6-5_amd64 added
[+] sensu_0.12.6-4_amd64 added
[+] sensu_0.12.6-3_amd64 added
[+] sensu_0.12.6-2_amd64 added
[+] sensu_0.12.6-1_amd64 added
[+] sensu_0.12.5-1_amd64 added
[+] sensu_0.12.4-1_amd64 added
[+] sensu_0.12.3-1_amd64 added
[+] sensu_0.12.2-1_amd64 added
[+] sensu_0.12.1-1_amd64 added
[+] sensu_0.12.0-1_amd64 added
[-] sensu_0.12.6-5_amd64 removed
[-] sensu_0.12.6-4_amd64 removed
[-] sensu_0.12.6-3_amd64 removed
[-] sensu_0.12.6-2_amd64 removed
[-] sensu_0.12.6-1_amd64 removed
[-] sensu_0.12.5-1_amd64 removed
[-] sensu_0.12.4-1_amd64 removed
[-] sensu_0.12.3-1_amd64 removed
[-] sensu_0.12.2-1_amd64 removed
[-] sensu_0.12.1-1_amd64 removed
[-] sensu_0.12.0-1_amd64 removed
[+] sensu_0.9.5-36_amd64 added
[+] sensu_0.9.5-35_amd64 added
[+] sensu_0.9.5-34_amd64 added
[+] sensu_0.9.5-30_amd64 added
[+] sensu_0.12.6-5_i386 added
[+] sensu_0.12.6-4_amd64 added
[+] sensu_0.12.6-4_i386 added
[+] sensu_0.12.6-3_amd64 added
[+] sensu_0.12.6-3_i386 added
[+] sensu_0.12.6-2_amd64 added
[+] sensu_0.12.6-2_i386 added
[+] sensu_0.12.6-1_amd64 added
[+] sensu_0.12.6-1_i386 added
[+] sensu_0.12.5-1_amd64 added
[+] sensu_0.12.5-1_i386 added
[+] sensu_0.12.4-1_amd64 added
[+] sensu_0.12.4-1_i386 added
[+] sensu_0.12.3-1_amd64 added
[+] sensu_0.12.3-1_i386 added
[+] sensu_0.12.2-1_amd64 added
[+] sensu_0.12.2-1_i386 added
[+] sensu_0.12.1-1_amd64 added
[+] sensu_0.12.1-1_i386 added
[+] sensu_0.12.0-1_amd64 added
[+] sensu_0.12.0-1_i386 added
[-] sensu_0.12.6-5_i386 removed
[-] sensu_0.12.6-4_i386 removed
[-] sensu_0.12.6-3_i386 removed
[-] sensu_0.12.6-2_i386 removed
[-] sensu_0.12.6-1_i386 removed
[-] sensu_0.12.5-1_i386 removed
[-] sensu_0.12.4-1_i386 removed
[-] sensu_0.12.3-1_i386 removed
[-] sensu_0.12.2-1_i386 removed
[-] sensu_0.12.1-1_i386 removed
[-] sensu_0.12.0-1_i386 removed
[+] sensu_0.9.5-36_amd64 added
[+] sensu_0.9.5-36_i386 added
[+] sensu_0.9.5-35_amd64 added
[+] sensu_0.9.5-35_i386 added
[+] sensu_0.9.5-34_amd64 added
[+] sensu_0.9.5-34_i386 added
[+] sensu_0.9.5-32_i386 added
[+] sensu_0.9.5-30_amd64 added
Snapshot destination successfully created.
You can run 'aptly publish snapshot destination' to publish snapshot as Debian repository.

View File

@ -5,10 +5,6 @@ from snapshot:
and result would be saved as new snapshot snap3.
Loading packages (56782)...
Building indexes...
[!] Dependency lunar-landing [amd64] can't be satisfied with source [snap2]: Snapshot from mirror [wheezy-non-free]: http://mirror.yandex.ru/debian/ wheezy
[!] Dependency mars-landing (>= 1.0) [amd64] can't be satisfied with source [snap2]: Snapshot from mirror [wheezy-non-free]: http://mirror.yandex.ru/debian/ wheezy
[!] Dependency lunar-landing [i386] can't be satisfied with source [snap2]: Snapshot from mirror [wheezy-non-free]: http://mirror.yandex.ru/debian/ wheezy
[!] Dependency mars-landing (>= 1.0) [i386] can't be satisfied with source [snap2]: Snapshot from mirror [wheezy-non-free]: http://mirror.yandex.ru/debian/ wheezy
Snapshot snap3 successfully created.
You can run 'aptly publish snapshot snap3' to publish snapshot as Debian repository.

View File

@ -5,24 +5,24 @@ from snapshot:
and result would be saved as new snapshot snap3.
Loading packages (61671)...
Building indexes...
[-] rsyslog_5.8.11-3_amd64 removed
[+] rsyslog_7.6.3-2~bpo70+1_amd64 added
[+] init-system-helpers_1.18~bpo70+1_all added
[+] init-system-helpers_1.18~bpo70+1_source added
[+] json-c_0.11-3~bpo7+1_source added
[+] libestr_0.1.9-1~bpo70+1_source added
[-] libestr0_0.1.1-2_amd64 removed
[+] libestr0_0.1.9-1~bpo70+1_amd64 added
[+] libjson-c2_0.11-3~bpo7+1_amd64 added
[+] liblogging-stdlog0_1.0.4-1~bpo70+1_amd64 added
[+] init-system-helpers_1.18~bpo70+1_all added
[+] rsyslog_7.6.3-2~bpo70+1_source added
[+] libestr_0.1.9-1~bpo70+1_source added
[+] json-c_0.11-3~bpo7+1_source added
[+] liblogging_1.0.4-1~bpo70+1_source added
[+] init-system-helpers_1.18~bpo70+1_source added
[-] rsyslog_5.8.11-3_i386 removed
[+] rsyslog_7.6.3-2~bpo70+1_i386 added
[-] libestr0_0.1.1-2_i386 removed
[+] libestr0_0.1.9-1~bpo70+1_i386 added
[+] libjson-c2_0.11-3~bpo7+1_amd64 added
[+] libjson-c2_0.11-3~bpo7+1_i386 added
[+] liblogging_1.0.4-1~bpo70+1_source added
[+] liblogging-stdlog0_1.0.4-1~bpo70+1_amd64 added
[+] liblogging-stdlog0_1.0.4-1~bpo70+1_i386 added
[-] rsyslog_5.8.11-3_amd64 removed
[+] rsyslog_7.6.3-2~bpo70+1_amd64 added
[-] rsyslog_5.8.11-3_i386 removed
[+] rsyslog_7.6.3-2~bpo70+1_i386 added
[+] rsyslog_7.6.3-2~bpo70+1_source added
Snapshot snap3 successfully created.
You can run 'aptly publish snapshot snap3' to publish snapshot as Debian repository.