remove packages from weldr API initialization

The package list is generated on each request for a package so there is
no longer a need to generate the package list in main or to store these
packages in the API object.
This commit is contained in:
Jacob Kozol 2019-11-07 15:10:28 +01:00 committed by Tom Gundersen
parent 6f4a7bacd2
commit c882bebfb4
3 changed files with 8 additions and 19 deletions

View file

@ -40,11 +40,6 @@ func main() {
rpm := rpmmd.NewRPMMD()
packages, err := rpm.FetchPackageList([]rpmmd.RepoConfig{repo})
if err != nil {
panic(err)
}
var logger *log.Logger
if verbose {
logger = log.New(os.Stdout, "", 0)
@ -58,7 +53,7 @@ func main() {
store := store.New(&stateFile)
jobAPI := jobqueue.New(logger, store)
weldrAPI := weldr.New(rpm, repo, packages, logger, store)
weldrAPI := weldr.New(rpm, repo, logger, store)
go jobAPI.Serve(jobListener)
weldrAPI.Serve(weldrListener)

View file

@ -32,14 +32,13 @@ type API struct {
router *httprouter.Router
}
func New(rpmmd rpmmd.RPMMD, repo rpmmd.RepoConfig, packages rpmmd.PackageList, logger *log.Logger, store *store.Store) *API {
func New(rpmmd rpmmd.RPMMD, repo rpmmd.RepoConfig, logger *log.Logger, store *store.Store) *API {
// This needs to be shared with the worker API so that they can communicate with each other
// builds := make(chan queue.Build, 200)
api := &API{
store: store,
rpmmd: rpmmd,
repo: repo,
packages: packages,
logger: logger,
}

View file

@ -16,7 +16,7 @@ import (
"testing"
"time"
"github.com/osbuild/osbuild-composer/internal/mocks/rpmmd"
rpmmd_mock "github.com/osbuild/osbuild-composer/internal/mocks/rpmmd"
"github.com/osbuild/osbuild-composer/internal/rpmmd"
"github.com/osbuild/osbuild-composer/internal/store"
"github.com/osbuild/osbuild-composer/internal/weldr"
@ -159,13 +159,8 @@ func testRoute(t *testing.T, api *weldr.API, external bool, method, path, body s
func createWeldrAPI(fixture rpmmd_mock.Fixture) (*weldr.API, *store.Store) {
s := store.New(nil)
rpm := rpmmd_mock.NewRPMMDMock(fixture)
packageList, err := rpm.FetchPackageList([]rpmmd.RepoConfig{repo})
if err != nil {
panic(err)
}
return weldr.New(rpm, repo, packageList, nil, s), s
return weldr.New(rpm, repo, nil, s), s
}
func TestBasic(t *testing.T) {