From 8cd53eb71fcdbae3e6b0ff95155ed0cb5ca3cbe2 Mon Sep 17 00:00:00 2001 From: mls-361 Date: Wed, 18 Aug 2021 18:39:48 +0200 Subject: [PATCH] =?UTF-8?q?En=20cours=20de=20d=C3=A9veloppement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- go.mod | 2 +- go.sum | 4 ++-- internal/api/api.go | 6 ++++++ internal/cli/cli.go | 16 ++++++++++++++++ internal/cli/jobs.go | 11 +---------- internal/cli/loggers.go | 29 +++++++++++++++++++++++++++++ internal/cli/requestor.go | 3 +-- 7 files changed, 56 insertions(+), 15 deletions(-) create mode 100644 internal/cli/loggers.go diff --git a/go.mod b/go.mod index 26b420a..5bf79dd 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( forge.chapril.org/armen/jw v0.0.0-20210818151220-edd8f137c57a forge.chapril.org/armen/memory v0.0.0-20210818151319-7833375304b3 forge.chapril.org/armen/model v0.0.0-20210818151340-5240fd23add0 - forge.chapril.org/armen/requestor v0.0.0-20210818152630-57a59637bb94 + forge.chapril.org/armen/requestor v0.0.0-20210818162048-0aff3c672ef4 forge.chapril.org/armen/runner v0.0.0-20210818151447-f3652512c45d forge.chapril.org/armen/workers v0.0.0-20210818151509-2e23246740d1 forge.chapril.org/mls-361/application v0.0.0-20210805205753-c663b93b7e1a diff --git a/go.sum b/go.sum index 5597cef..f7a6ca7 100644 --- a/go.sum +++ b/go.sum @@ -6,8 +6,8 @@ forge.chapril.org/armen/memory v0.0.0-20210818151319-7833375304b3 h1:u48zZxALcdS forge.chapril.org/armen/memory v0.0.0-20210818151319-7833375304b3/go.mod h1:xyl3FV9dHJficKKFfN2CUXYs9tCMmaqsYxxQNuBwE9E= forge.chapril.org/armen/model v0.0.0-20210818151340-5240fd23add0 h1:wVhb7mYJkZrx/Xtk9b9/DWV2fDS45+Yj2JgKHe9j/tQ= forge.chapril.org/armen/model v0.0.0-20210818151340-5240fd23add0/go.mod h1:vboGfVFhFMfEonHWaOkQqiEGbODOBbNWr0I4Dp3R3O4= -forge.chapril.org/armen/requestor v0.0.0-20210818152630-57a59637bb94 h1:DUulTDYG/b6M+t6TPzHuyJPpgypJt/j1G0WtL/wpx/w= -forge.chapril.org/armen/requestor v0.0.0-20210818152630-57a59637bb94/go.mod h1:mzGQhobQAY4mxaULS9gDL04Fi/yIwPijmW3CIopujjw= +forge.chapril.org/armen/requestor v0.0.0-20210818162048-0aff3c672ef4 h1:nd56YmxR7wbW8ksyoRRe4dCvrw+yVJX062qmkurSHnk= +forge.chapril.org/armen/requestor v0.0.0-20210818162048-0aff3c672ef4/go.mod h1:mzGQhobQAY4mxaULS9gDL04Fi/yIwPijmW3CIopujjw= forge.chapril.org/armen/runner v0.0.0-20210818151447-f3652512c45d h1:/X+rSbB043fdImXZ4PW4XsjrbmUbxk2lYGcj2ZKd6ec= forge.chapril.org/armen/runner v0.0.0-20210818151447-f3652512c45d/go.mod h1:UElsW53JSF14TlZWr+Z1WYlRTXf90UNSBCq6WOzE8cE= forge.chapril.org/armen/workers v0.0.0-20210818151509-2e23246740d1 h1:gpTGo6Abo4BrXFr9BZxHuNyyGMchI33hGvKVeUPbkr8= diff --git a/internal/api/api.go b/internal/api/api.go index 612c21d..a903996 100644 --- a/internal/api/api.go +++ b/internal/api/api.go @@ -13,6 +13,7 @@ import ( "forge.chapril.org/armen/model" "forge.chapril.org/mls-361/errors" "forge.chapril.org/mls-361/jsonapi" + "forge.chapril.org/mls-361/logger" "forge.chapril.org/mls-361/uuid" "forge.chapril.org/armen/armen/internal/components" @@ -49,6 +50,10 @@ func (api *api) trace(hf jsonapi.HandlerFunc) jsonapi.Handler { ) } +func (api *api) loggers(r *jsonapi.Request) { + r.RenderJSON(http.StatusOK, logger.GetAll(), api.logger) +} + func (api *api) createJob(r *jsonapi.Request) { job := new(jw.Job) @@ -141,6 +146,7 @@ func Build(ccs *components.Components) { api := newAPI(ccs) router := ccs.Router + router.GetJSON("/api/loggers", api.debug(api.loggers)) router.PostJSON("/api/job/create", api.debug(api.createJob)) router.GetJSON("/api/job/next/:namespace", api.trace(api.nextJob)) router.PutJSON("/api/job/update", api.debug(api.updateJob)) diff --git a/internal/cli/cli.go b/internal/cli/cli.go index ef6b038..62268ec 100644 --- a/internal/cli/cli.go +++ b/internal/cli/cli.go @@ -7,6 +7,7 @@ package cli import ( + "encoding/json" "flag" "fmt" "io" @@ -26,6 +27,18 @@ func newFlagSet(ccs *components.Components) *flag.FlagSet { return fs } +func displayResult(result interface{}) error { + data, err := json.MarshalIndent(result, "", "\t") + if err != nil { + fmt.Printf("%+v\n\n", result) + return err + } + + fmt.Println(string(data)) + + return nil +} + func decrypt(args []string, ccs *components.Components) error { if len(args) != 1 { help() @@ -89,6 +102,7 @@ The commands are: -run_after (RFC3339) -retries -category + loggers version --@(°_°)@------------------------------- @@ -104,6 +118,8 @@ func Run(args []string, ccs *components.Components) error { return encrypt(args[1:], ccs) case "jobs": return jobs(args[1:], ccs) + case "loggers": + return loggers(args[1:], ccs) case "version": version(ccs) default: diff --git a/internal/cli/jobs.go b/internal/cli/jobs.go index d01a7b4..3b5140f 100644 --- a/internal/cli/jobs.go +++ b/internal/cli/jobs.go @@ -9,7 +9,6 @@ package cli import ( "encoding/json" "errors" - "fmt" "time" "forge.chapril.org/armen/jw" @@ -77,15 +76,7 @@ func jobCreate(args []string, ccs *components.Components) error { return err } - data, err := json.MarshalIndent(job, "", " ") - if err != nil { - fmt.Printf("%+v\n\n", job) - return err - } - - fmt.Println(string(data)) - - return nil + return displayResult(job) } func jobs(args []string, ccs *components.Components) error { diff --git a/internal/cli/loggers.go b/internal/cli/loggers.go new file mode 100644 index 0000000..0606a01 --- /dev/null +++ b/internal/cli/loggers.go @@ -0,0 +1,29 @@ +/* +------------------------------------------------------------------------------------------------------------------------ +####### cli ####### Copyright (c) 2021 mls-361 ##################################################### MIT License ####### +------------------------------------------------------------------------------------------------------------------------ +*/ + +package cli + +import ( + "forge.chapril.org/armen/armen/internal/components" +) + +func loggers(_ []string, ccs *components.Components) error { + requestor, err := newRequestor(ccs) + if err != nil { + return err + } + + loggers, err := requestor.Loggers() + if err != nil { + return err + } + + return displayResult(loggers) +} + +/* +######################################################################################################## @(°_°)@ ####### +*/ diff --git a/internal/cli/requestor.go b/internal/cli/requestor.go index d0f664e..e1e3401 100644 --- a/internal/cli/requestor.go +++ b/internal/cli/requestor.go @@ -9,14 +9,13 @@ package cli import ( "fmt" - "forge.chapril.org/armen/jw" "forge.chapril.org/armen/requestor" "forge.chapril.org/mls-361/errors" "forge.chapril.org/armen/armen/internal/components" ) -func newRequestor(ccs *components.Components) (jw.Model, error) { +func newRequestor(ccs *components.Components) (requestor.Requestor, error) { username := "cli" password, err := ccs.Crypto.EncryptString(username) if err != nil {