diff --git a/internal/cli/ops_manager_logs.go b/internal/cli/ops_manager_logs.go index 161557088d..e7dd49cd91 100644 --- a/internal/cli/ops_manager_logs.go +++ b/internal/cli/ops_manager_logs.go @@ -26,10 +26,7 @@ func OpsManagerLogsBuilder() *cobra.Command { Short: description.LogCollection, } - cmd.AddCommand(OpsManagerLogsCollectOptsBuilder()) - cmd.AddCommand(OpsManagerLogsListOptsBuilder()) - cmd.AddCommand(OpsManagerLogsDownloadOptsBuilder()) - cmd.AddCommand(OpsManagerLogsDeleteOptsBuilder()) + cmd.AddCommand(OpsManagerLogsJobsBuilder()) return cmd } diff --git a/internal/cli/ops_manager_logs_jobs.go b/internal/cli/ops_manager_logs_jobs.go new file mode 100644 index 0000000000..252a1b8eb9 --- /dev/null +++ b/internal/cli/ops_manager_logs_jobs.go @@ -0,0 +1,35 @@ +// Copyright 2020 MongoDB Inc +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package cli + +import ( + "github.com/mongodb/mongocli/internal/description" + "github.com/spf13/cobra" +) + +func OpsManagerLogsJobsBuilder() *cobra.Command { + cmd := &cobra.Command{ + Use: "jobs", + Aliases: []string{"job"}, + Short: description.LogCollection, + } + + cmd.AddCommand(OpsManagerLogsJobsCollectOptsBuilder()) + cmd.AddCommand(OpsManagerLogsJobsListOptsBuilder()) + cmd.AddCommand(OpsManagerLogsJobsDownloadOptsBuilder()) + cmd.AddCommand(OpsManagerLogsJobsDeleteOptsBuilder()) + + return cmd +} diff --git a/internal/cli/ops_manager_logs_collect.go b/internal/cli/ops_manager_logs_jobs_collect.go similarity index 85% rename from internal/cli/ops_manager_logs_collect.go rename to internal/cli/ops_manager_logs_jobs_collect.go index 491a6962ce..97b1c759c3 100644 --- a/internal/cli/ops_manager_logs_collect.go +++ b/internal/cli/ops_manager_logs_jobs_collect.go @@ -28,7 +28,7 @@ import ( "github.com/spf13/cobra" ) -type opsManagerLogsCollectOpts struct { +type opsManagerLogsJobsCollectOpts struct { globalOpts resourceType string resourceName string @@ -38,13 +38,13 @@ type opsManagerLogsCollectOpts struct { store store.LogCollector } -func (opts *opsManagerLogsCollectOpts) initStore() error { +func (opts *opsManagerLogsJobsCollectOpts) initStore() error { var err error opts.store, err = store.New() return err } -func (opts *opsManagerLogsCollectOpts) Run() error { +func (opts *opsManagerLogsJobsCollectOpts) Run() error { result, err := opts.store.Collect(opts.ProjectID(), opts.newLog()) if err != nil { return err @@ -52,7 +52,7 @@ func (opts *opsManagerLogsCollectOpts) Run() error { return json.PrettyPrint(result) } -func (opts *opsManagerLogsCollectOpts) newLog() *om.LogCollectionJob { +func (opts *opsManagerLogsJobsCollectOpts) newLog() *om.LogCollectionJob { return &om.LogCollectionJob{ ResourceType: opts.resourceType, ResourceName: opts.resourceName, @@ -62,9 +62,9 @@ func (opts *opsManagerLogsCollectOpts) newLog() *om.LogCollectionJob { } } -// mongocli om logs collect resourceType resourceName --sizeRequestedPerFileBytes size --type type --redacted redacted [--projectId projectId] -func OpsManagerLogsCollectOptsBuilder() *cobra.Command { - opts := &opsManagerLogsCollectOpts{} +// mongocli om logs jobs collect resourceType resourceName --sizeRequestedPerFileBytes size --type type --redacted redacted [--projectId projectId] +func OpsManagerLogsJobsCollectOptsBuilder() *cobra.Command { + opts := &opsManagerLogsJobsCollectOpts{} cmd := &cobra.Command{ Use: "collect [resourceType] [resourceName]", Short: description.StartLogCollectionJob, diff --git a/internal/cli/ops_manager_logs_collect_test.go b/internal/cli/ops_manager_logs_jobs_collect_test.go similarity index 96% rename from internal/cli/ops_manager_logs_collect_test.go rename to internal/cli/ops_manager_logs_jobs_collect_test.go index a9e39c7873..99bfac7e42 100644 --- a/internal/cli/ops_manager_logs_collect_test.go +++ b/internal/cli/ops_manager_logs_jobs_collect_test.go @@ -29,7 +29,7 @@ func TestOpsManagerLogsCollectOpts_Run(t *testing.T) { expected := &om.LogCollectionJob{ID: "1"} - listOpts := &opsManagerLogsCollectOpts{ + listOpts := &opsManagerLogsJobsCollectOpts{ redacted: false, sizeRequestedPerFileBytes: 64, resourceType: "CLUSTER", diff --git a/internal/cli/ops_manager_logs_delete.go b/internal/cli/ops_manager_logs_jobs_delete.go similarity index 84% rename from internal/cli/ops_manager_logs_delete.go rename to internal/cli/ops_manager_logs_jobs_delete.go index 243e593809..92b302556f 100644 --- a/internal/cli/ops_manager_logs_delete.go +++ b/internal/cli/ops_manager_logs_jobs_delete.go @@ -22,25 +22,25 @@ import ( "github.com/spf13/cobra" ) -type opsManagerLogsDeleteOpts struct { +type opsManagerLogsJobsDeleteOpts struct { globalOpts deleteOpts store store.LogJobDeleter } -func (opts *opsManagerLogsDeleteOpts) initStore() error { +func (opts *opsManagerLogsJobsDeleteOpts) initStore() error { var err error opts.store, err = store.New() return err } -func (opts *opsManagerLogsDeleteOpts) Run() error { +func (opts *opsManagerLogsJobsDeleteOpts) Run() error { return opts.store.DeleteCollectionJob(opts.ProjectID(), opts.entry) } -// mongocli om logs delete id [--projectId projectId] [--force] -func OpsManagerLogsDeleteOptsBuilder() *cobra.Command { - opts := &opsManagerLogsDeleteOpts{ +// mongocli om logs jobs delete id [--projectId projectId] [--force] +func OpsManagerLogsJobsDeleteOptsBuilder() *cobra.Command { + opts := &opsManagerLogsJobsDeleteOpts{ deleteOpts: deleteOpts{ successMessage: "Log collection entry '%s' deleted\n", failMessage: "Log collection entry not deleted", diff --git a/internal/cli/ops_manager_logs_delete_test.go b/internal/cli/ops_manager_logs_jobs_delete_test.go similarity index 96% rename from internal/cli/ops_manager_logs_delete_test.go rename to internal/cli/ops_manager_logs_jobs_delete_test.go index 13f1257c98..6cfb5a390f 100644 --- a/internal/cli/ops_manager_logs_delete_test.go +++ b/internal/cli/ops_manager_logs_jobs_delete_test.go @@ -27,7 +27,7 @@ func TestOpsManagerWhitelistDelete_Run(t *testing.T) { defer ctrl.Finish() - deleteOpts := &opsManagerLogsDeleteOpts{ + deleteOpts := &opsManagerLogsJobsDeleteOpts{ deleteOpts: deleteOpts{ confirm: true, entry: "test", diff --git a/internal/cli/ops_manager_logs_download.go b/internal/cli/ops_manager_logs_jobs_download.go similarity index 81% rename from internal/cli/ops_manager_logs_download.go rename to internal/cli/ops_manager_logs_jobs_download.go index 83ffa452a8..93eeeb3a2c 100644 --- a/internal/cli/ops_manager_logs_download.go +++ b/internal/cli/ops_manager_logs_jobs_download.go @@ -26,7 +26,7 @@ import ( "github.com/spf13/cobra" ) -type opsManagerLogsDownloadOpts struct { +type opsManagerLogsJobsDownloadOpts struct { globalOpts id string out string @@ -34,13 +34,13 @@ type opsManagerLogsDownloadOpts struct { store store.LogJobsDownloader } -func (opts *opsManagerLogsDownloadOpts) initStore() error { +func (opts *opsManagerLogsJobsDownloadOpts) initStore() error { var err error opts.store, err = store.New() return err } -func (opts *opsManagerLogsDownloadOpts) Run() error { +func (opts *opsManagerLogsJobsDownloadOpts) Run() error { out, err := opts.newWriteCloser() if err != nil { return err @@ -53,16 +53,16 @@ func (opts *opsManagerLogsDownloadOpts) Run() error { return nil } -func (opts *opsManagerLogsDownloadOpts) newWriteCloser() (io.WriteCloser, error) { +func (opts *opsManagerLogsJobsDownloadOpts) newWriteCloser() (io.WriteCloser, error) { // Create file only if is not there already (don't overwrite) ff := os.O_CREATE | os.O_TRUNC | os.O_WRONLY | os.O_EXCL f, err := opts.fs.OpenFile(opts.out, ff, 0777) return f, err } -// mongocli om logs download id [--out out] [--projectId projectId] -func OpsManagerLogsDownloadOptsBuilder() *cobra.Command { - opts := &opsManagerLogsDownloadOpts{ +// mongocli om logs jobs download id [--out out] [--projectId projectId] +func OpsManagerLogsJobsDownloadOptsBuilder() *cobra.Command { + opts := &opsManagerLogsJobsDownloadOpts{ fs: afero.NewOsFs(), } cmd := &cobra.Command{ diff --git a/internal/cli/ops_manager_logs_download_test.go b/internal/cli/ops_manager_logs_jobs_download_test.go similarity index 96% rename from internal/cli/ops_manager_logs_download_test.go rename to internal/cli/ops_manager_logs_jobs_download_test.go index 50aec00aea..8d7123f0cc 100644 --- a/internal/cli/ops_manager_logs_download_test.go +++ b/internal/cli/ops_manager_logs_jobs_download_test.go @@ -28,7 +28,7 @@ func TestOpsManagerLogsDownloadOpts_Run(t *testing.T) { appFS := afero.NewMemMapFs() - opts := &opsManagerLogsDownloadOpts{ + opts := &opsManagerLogsJobsDownloadOpts{ id: "1", fs: appFS, store: mockStore, diff --git a/internal/cli/ops_manager_logs_list.go b/internal/cli/ops_manager_logs_jobs_list.go similarity index 81% rename from internal/cli/ops_manager_logs_list.go rename to internal/cli/ops_manager_logs_jobs_list.go index bc94efa9b8..a4f47bc019 100644 --- a/internal/cli/ops_manager_logs_list.go +++ b/internal/cli/ops_manager_logs_jobs_list.go @@ -24,19 +24,19 @@ import ( "github.com/spf13/cobra" ) -type opsManagerLogsListOpts struct { +type opsManagerLogsJobsListOpts struct { globalOpts verbose bool store store.LogJobLister } -func (opts *opsManagerLogsListOpts) initStore() error { +func (opts *opsManagerLogsJobsListOpts) initStore() error { var err error opts.store, err = store.New() return err } -func (opts *opsManagerLogsListOpts) Run() error { +func (opts *opsManagerLogsJobsListOpts) Run() error { result, err := opts.store.LogCollectionJobs(opts.ProjectID(), opts.newLogListOptions()) if err != nil { return err @@ -44,13 +44,13 @@ func (opts *opsManagerLogsListOpts) Run() error { return json.PrettyPrint(result) } -func (opts *opsManagerLogsListOpts) newLogListOptions() *om.LogListOptions { +func (opts *opsManagerLogsJobsListOpts) newLogListOptions() *om.LogListOptions { return &om.LogListOptions{Verbose: opts.verbose} } -// mongocli om logs list --verbose verbose [--projectId projectId] -func OpsManagerLogsListOptsBuilder() *cobra.Command { - opts := &opsManagerLogsListOpts{} +// mongocli om logs jobs list --verbose verbose [--projectId projectId] +func OpsManagerLogsJobsListOptsBuilder() *cobra.Command { + opts := &opsManagerLogsJobsListOpts{} cmd := &cobra.Command{ Use: "list", Aliases: []string{"ls"}, diff --git a/internal/cli/ops_manager_logs_list_test.go b/internal/cli/ops_manager_logs_jobs_list_test.go similarity index 96% rename from internal/cli/ops_manager_logs_list_test.go rename to internal/cli/ops_manager_logs_jobs_list_test.go index a17d96a26d..06a5aa1c7c 100644 --- a/internal/cli/ops_manager_logs_list_test.go +++ b/internal/cli/ops_manager_logs_jobs_list_test.go @@ -29,7 +29,7 @@ func TestOpsManagerLogsListOpts_Run(t *testing.T) { expected := &om.LogCollectionJobs{} - listOpts := &opsManagerLogsListOpts{ + listOpts := &opsManagerLogsJobsListOpts{ store: mockStore, verbose: true, }