/* ------------------------------------------------------------------------------------------------------------------------ ####### main ####### Copyright (c) 2021 mls-361 #################################################### MIT License ####### ------------------------------------------------------------------------------------------------------------------------ */ package main import ( "time" "forge.chapril.org/armen/factory" "forge.chapril.org/armen/memory" "forge.chapril.org/armen/model" "forge.chapril.org/armen/runner" "forge.chapril.org/armen/workers" "forge.chapril.org/mls-361/logger" "forge.chapril.org/mls-361/uuid" ) var ( _version string _builtAt string ) func main() { logger, _ := logger.New(uuid.New(), "armen", "trace", logger.NewStderrOutput()) logger.Trace("armen", "version", _version, "builtAt", _builtAt) m, _ := model.New(&model.Config{ Logger: logger, Storage: memory.New(), }) f := factory.New(m) r := runner.New("namespace", m) _ = r.AddJobHandler("type", runner.JHF(func(job *runner.Job) { //panic("just a test") job.Pending().SetDuration(2 * time.Second).SetError("une simple erreur") })) pool, err := workers.NewPool(&workers.Config{ Logger: logger, PoolSize: 3, Model: m, }) if err != nil { logger.Fatal(err.Error()) return } _ = pool.AddRunner(r) pool.Start() time.Sleep(1 * time.Second) _, _ = f.NewJob("namespace", "type"). SetName("name"). SetOrigin("origin"). SetPriorityLow(). SetRetries(1). CreateJob() time.Sleep(5 * time.Second) pool.Stop() time.Sleep(1 * time.Second) } /* ######################################################################################################## @(°_°)@ ####### */