From c882bebfb4687fc851fcf62a37a35711866c83ae Mon Sep 17 00:00:00 2001 From: Jacob Kozol Date: Thu, 7 Nov 2019 15:10:28 +0100 Subject: [PATCH] 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. --- cmd/osbuild-composer/main.go | 7 +------ internal/weldr/api.go | 11 +++++------ internal/weldr/api_test.go | 9 ++------- 3 files changed, 8 insertions(+), 19 deletions(-) diff --git a/cmd/osbuild-composer/main.go b/cmd/osbuild-composer/main.go index 0088a8cf7..3322c497e 100644 --- a/cmd/osbuild-composer/main.go +++ b/cmd/osbuild-composer/main.go @@ -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) diff --git a/internal/weldr/api.go b/internal/weldr/api.go index 79f5dd101..df97766f6 100644 --- a/internal/weldr/api.go +++ b/internal/weldr/api.go @@ -32,15 +32,14 @@ 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, + store: store, + rpmmd: rpmmd, + repo: repo, + logger: logger, } api.router = httprouter.New() diff --git a/internal/weldr/api_test.go b/internal/weldr/api_test.go index e2b7d3ba2..b9c903f39 100644 --- a/internal/weldr/api_test.go +++ b/internal/weldr/api_test.go @@ -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) {