Neo Workflow for local deployment

This commit is contained in:
mr 2024-10-15 11:03:27 +02:00
parent 57906e481c
commit 9c8b11d356
8 changed files with 153 additions and 100 deletions

View File

@ -3,6 +3,7 @@ package controllers
import ( import (
"encoding/json" "encoding/json"
"errors" "errors"
"fmt"
oclib "cloud.o-forge.io/core/oc-lib" oclib "cloud.o-forge.io/core/oc-lib"
"cloud.o-forge.io/core/oc-lib/tools" "cloud.o-forge.io/core/oc-lib/tools"
@ -16,15 +17,15 @@ type WorkflowController struct {
var paths = map[tools.DataType]map[tools.METHOD]string{ // paths to call other OC services var paths = map[tools.DataType]map[tools.METHOD]string{ // paths to call other OC services
tools.BOOKING: { tools.BOOKING: {
tools.POST: "/oc/booking/", tools.POST: "/booking/",
tools.DELETE: "/oc/booking/:id", tools.DELETE: "/booking/:id",
}, },
tools.PEER: { tools.PEER: {
tools.POST: "/oc/peer", tools.POST: "/status/",
}, },
tools.WORKFLOW: { tools.WORKFLOW: {
tools.PUT: "/oc/workflow/:id?is_remote=true", tools.PUT: "/:id?is_remote=true",
tools.DELETE: "/oc/workflow/:id?is_remote=true", tools.DELETE: "/:id?is_remote=true",
}, },
} }
@ -151,13 +152,14 @@ func (o *WorkflowController) Check() {
workflow := res.ToWorkflow() workflow := res.ToWorkflow()
caller := tools.NewHTTPCaller(map[tools.DataType]map[tools.METHOD]string{ // paths to call other OC services caller := tools.NewHTTPCaller(map[tools.DataType]map[tools.METHOD]string{ // paths to call other OC services
tools.PEER: { tools.PEER: {
tools.POST: "/oc/peer", tools.POST: "/status/",
}, },
tools.BOOKING: { tools.BOOKING: {
tools.GET: "/oc/booking/check/:id/" + o.Ctx.Input.Param(":start_date") + "/" + o.Ctx.Input.Param(":end_date"), tools.GET: "/booking/check/:id/" + o.Ctx.Input.Param(":start_date") + "/" + o.Ctx.Input.Param(":end_date"),
}, },
}) })
isAvailable, err := workflow.CheckBooking(caller) // check booking isAvailable, err := workflow.CheckBooking(caller) // check booking
fmt.Println("isAvailable", isAvailable, o.Ctx.Input.Param(":start_date"), o.Ctx.Input.Param(":end_date"))
code := 200 code := 200
if !isAvailable { // if not available then its a conflict if !isAvailable { // if not available then its a conflict
code = 409 code = 409

16
go.mod
View File

@ -5,7 +5,7 @@ go 1.22.0
toolchain go1.22.4 toolchain go1.22.4
require ( require (
cloud.o-forge.io/core/oc-lib v0.0.0-20241002120813-a09a04e1a71e cloud.o-forge.io/core/oc-lib v0.0.0-20241015083538-9f5e6d60185a
github.com/beego/beego/v2 v2.3.1 github.com/beego/beego/v2 v2.3.1
github.com/nats-io/nats.go v1.37.0 github.com/nats-io/nats.go v1.37.0
github.com/smartystreets/goconvey v1.7.2 github.com/smartystreets/goconvey v1.7.2
@ -16,7 +16,7 @@ require (
github.com/beorn7/perks v1.0.1 // indirect github.com/beorn7/perks v1.0.1 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/gabriel-vasile/mimetype v1.4.5 // indirect github.com/gabriel-vasile/mimetype v1.4.6 // indirect
github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/locales v0.14.1 // indirect
github.com/go-playground/universal-translator v0.18.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect
github.com/go-playground/validator/v10 v10.22.1 // indirect github.com/go-playground/validator/v10 v10.22.1 // indirect
@ -26,7 +26,7 @@ require (
github.com/goraz/onion v0.1.3 // indirect github.com/goraz/onion v0.1.3 // indirect
github.com/hashicorp/golang-lru v1.0.2 // indirect github.com/hashicorp/golang-lru v1.0.2 // indirect
github.com/jtolds/gls v4.20.0+incompatible // indirect github.com/jtolds/gls v4.20.0+incompatible // indirect
github.com/klauspost/compress v1.17.10 // indirect github.com/klauspost/compress v1.17.11 // indirect
github.com/kr/text v0.2.0 // indirect github.com/kr/text v0.2.0 // indirect
github.com/leodido/go-urn v1.4.0 // indirect github.com/leodido/go-urn v1.4.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect github.com/mattn/go-colorable v0.1.13 // indirect
@ -51,11 +51,11 @@ require (
github.com/xdg-go/stringprep v1.0.4 // indirect github.com/xdg-go/stringprep v1.0.4 // indirect
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
go.mongodb.org/mongo-driver v1.17.1 // indirect go.mongodb.org/mongo-driver v1.17.1 // indirect
golang.org/x/crypto v0.27.0 // indirect golang.org/x/crypto v0.28.0 // indirect
golang.org/x/net v0.29.0 // indirect golang.org/x/net v0.30.0 // indirect
golang.org/x/sync v0.8.0 // indirect golang.org/x/sync v0.8.0 // indirect
golang.org/x/sys v0.25.0 // indirect golang.org/x/sys v0.26.0 // indirect
golang.org/x/text v0.18.0 // indirect golang.org/x/text v0.19.0 // indirect
google.golang.org/protobuf v1.34.2 // indirect google.golang.org/protobuf v1.35.1 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
) )

56
go.sum
View File

@ -32,6 +32,46 @@ cloud.o-forge.io/core/oc-lib v0.0.0-20241002102322-c309d9762350 h1:ybK3Qz1inr9xg
cloud.o-forge.io/core/oc-lib v0.0.0-20241002102322-c309d9762350/go.mod h1:FIJD0taWLJ5pjQLJ6sfE2KlTkvbmk5SMcyrxdjsaVz0= cloud.o-forge.io/core/oc-lib v0.0.0-20241002102322-c309d9762350/go.mod h1:FIJD0taWLJ5pjQLJ6sfE2KlTkvbmk5SMcyrxdjsaVz0=
cloud.o-forge.io/core/oc-lib v0.0.0-20241002120813-a09a04e1a71e h1:77QHk5JSf0q13B/Ai3xjcsGSS7nX+9AfxcsYz5oDo/A= cloud.o-forge.io/core/oc-lib v0.0.0-20241002120813-a09a04e1a71e h1:77QHk5JSf0q13B/Ai3xjcsGSS7nX+9AfxcsYz5oDo/A=
cloud.o-forge.io/core/oc-lib v0.0.0-20241002120813-a09a04e1a71e/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8= cloud.o-forge.io/core/oc-lib v0.0.0-20241002120813-a09a04e1a71e/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241004084230-c083ce748cb2 h1:SMMnV8jKaJ4RPi5E4EHX8FX4+bfvu0KvBRgiB8OBuEw=
cloud.o-forge.io/core/oc-lib v0.0.0-20241004084230-c083ce748cb2/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007064434-6dfd6058ef1a h1:87Hv4QbD4VGjpmacRgSxnw6hPVkbAAfYSI7Z+OMRtuk=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007064434-6dfd6058ef1a/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007070853-0efb8528399c h1:zQ1b42CNi1hBFohDiXf4qtdjvjqZovS5thSuATrfDEM=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007070853-0efb8528399c/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007073204-e28b87ce7b9e h1:Ao+g0MT17LeTKzVIptsVIjz3bF+mKqZnxtTTx+ydo1s=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007073204-e28b87ce7b9e/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007075414-c5bdc9654295 h1:0bqpk8J6V/oYFrXQwgAG+E6LE6LUKemNHRI1/HbnjwY=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007075414-c5bdc9654295/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007082021-7b2da3ba941b h1:SzKi7gNHoj0X5L8n7+0OkfU3HMgfsZrhwJ2RGP26Nd0=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007082021-7b2da3ba941b/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007090612-1d0b06ac4ae2 h1:ge8aI6bykcPRvpAYIXDdsGpQVvNEHM8virtH2KO3i28=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007090612-1d0b06ac4ae2/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007093737-c09994fd84f9 h1:SbdU6gHIVhI/549dCqT9vNod263fAXU3Gi+XDMMPSsQ=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007093737-c09994fd84f9/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007100233-6724ff38fe86 h1:SjbMhW9hOis0d7nXrcdoOq70sMHUjn/VZa9n8WoY+E0=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007100233-6724ff38fe86/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007103346-a39f5394268a h1:535N+HvvMKEb8mh+5vWiOJZnRbW0sVI4iq9yuaFE8Uo=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007103346-a39f5394268a/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007120705-e69d5b3351b6 h1:EooKXYLMWC4AIIo7aYliooAQ63GMdJXcSFnGYa4voag=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007120705-e69d5b3351b6/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007123902-03e066c297c9 h1:Ef1O1zo3IqqVHtkj49/YcfX5g3fjL0TrCLwLj952FiY=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007123902-03e066c297c9/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007130706-65668f5beee1 h1:asQ6C59usq/RITnUQCyEdaoc0volY0TYMlLcMck8IPc=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007130706-65668f5beee1/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007131244-3bbde50f96cf h1:R77NCnagJFQKAlHDlY4pdI5AOo8WDqggmTlr4nptM/c=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007131244-3bbde50f96cf/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007140203-208f69ae7e4b h1:v/F9IsaJ1yilZOnmAGhP2FdoMq4332hJD9yaWco9UIk=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007140203-208f69ae7e4b/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007144703-5d9c922b26ff h1:pCeT3Ag0dt/y5cFxPjYk+0PM+XIT1oJ2W7LyNWY3WJc=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007144703-5d9c922b26ff/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007153821-ba6ac86bffaf h1:eFl+srvxX+SvVlTae14MC4o6f33oi0zsDDKyvoecPYA=
cloud.o-forge.io/core/oc-lib v0.0.0-20241007153821-ba6ac86bffaf/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241009072916-ae49c40ea5e9 h1:UgN+WEjEJnQ1FFmSdRL7ilj0AfRQRhGQBeEqNRq+ly4=
cloud.o-forge.io/core/oc-lib v0.0.0-20241009072916-ae49c40ea5e9/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241009111931-84024a143e67 h1:0CMdmukFqTrGv8smRCBYG2pVAFdZj4AEcyBhltyyqYM=
cloud.o-forge.io/core/oc-lib v0.0.0-20241009111931-84024a143e67/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
cloud.o-forge.io/core/oc-lib v0.0.0-20241015083538-9f5e6d60185a h1:2mBMc36WKh1/Dpomktx9dVXGxK0agFr7RdgvHTtyn2w=
cloud.o-forge.io/core/oc-lib v0.0.0-20241015083538-9f5e6d60185a/go.mod h1:t+zpCTVKVdHH/BImwtMYY2QIWLMXKgY4n/JhFm3Vpu8=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/beego/beego/v2 v2.3.0 h1:iECVwzm6egw6iw6tkWrEDqXG4NQtKLQ6QBSYqlM6T/I= github.com/beego/beego/v2 v2.3.0 h1:iECVwzm6egw6iw6tkWrEDqXG4NQtKLQ6QBSYqlM6T/I=
github.com/beego/beego/v2 v2.3.0/go.mod h1:Ob/5BJ9fIKZLd4s9ZV3o9J6odkkIyL83et+p98gyYXo= github.com/beego/beego/v2 v2.3.0/go.mod h1:Ob/5BJ9fIKZLd4s9ZV3o9J6odkkIyL83et+p98gyYXo=
@ -55,6 +95,8 @@ github.com/etcd-io/etcd v3.3.17+incompatible/go.mod h1:cdZ77EstHBwVtD6iTgzgvogwc
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/gabriel-vasile/mimetype v1.4.5 h1:J7wGKdGu33ocBOhGy0z653k/lFKLFDPJMG8Gql0kxn4= github.com/gabriel-vasile/mimetype v1.4.5 h1:J7wGKdGu33ocBOhGy0z653k/lFKLFDPJMG8Gql0kxn4=
github.com/gabriel-vasile/mimetype v1.4.5/go.mod h1:ibHel+/kbxn9x2407k1izTA1S81ku1z/DlgOW2QE0M4= github.com/gabriel-vasile/mimetype v1.4.5/go.mod h1:ibHel+/kbxn9x2407k1izTA1S81ku1z/DlgOW2QE0M4=
github.com/gabriel-vasile/mimetype v1.4.6 h1:3+PzJTKLkvgjeTbts6msPJt4DixhT4YtFNf1gtGe3zc=
github.com/gabriel-vasile/mimetype v1.4.6/go.mod h1:JX1qVKqZd40hUPpAfiNTe0Sne7hdfKSbOqqmkq8GCXc=
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
@ -87,6 +129,8 @@ github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2
github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw= github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
github.com/klauspost/compress v1.17.10 h1:oXAz+Vh0PMUvJczoi+flxpnBEPxoER1IaAnU/NMPtT0= github.com/klauspost/compress v1.17.10 h1:oXAz+Vh0PMUvJczoi+flxpnBEPxoER1IaAnU/NMPtT0=
github.com/klauspost/compress v1.17.10/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= github.com/klauspost/compress v1.17.10/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0=
github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc=
github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0=
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
@ -175,6 +219,8 @@ golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw=
golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54=
golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0= golang.org/x/mod v0.20.0 h1:utOm6MM3R3dnawAiJgn0y+xvuYRsm1RKM/4giyfDgV0=
golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/mod v0.20.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
@ -187,6 +233,8 @@ golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo=
golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0=
golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4=
golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
@ -203,6 +251,8 @@ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@ -211,6 +261,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ= golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
@ -218,6 +270,10 @@ golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
google.golang.org/protobuf v1.35.0 h1:5FHv5qHqN8bh7EFIRK0/nQppniyPd5pqKgCXFCbGkTs=
google.golang.org/protobuf v1.35.0/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=

View File

@ -1,9 +1,7 @@
package main package main
import ( import (
"fmt"
_ "oc-workflow/routers" _ "oc-workflow/routers"
"os"
oclib "cloud.o-forge.io/core/oc-lib" oclib "cloud.o-forge.io/core/oc-lib"
beego "github.com/beego/beego/v2/server/web" beego "github.com/beego/beego/v2/server/web"
@ -19,7 +17,6 @@ func main() {
o := oclib.GetConfLoader() o := oclib.GetConfLoader()
// feed the library with the loaded config // feed the library with the loaded config
fmt.Println("Config file:", os.Getenv("MONGO_URL"))
oclib.SetConfig( oclib.SetConfig(
o.GetStringDefault("MONGO_URL", "mongodb://127.0.0.1:27017"), o.GetStringDefault("MONGO_URL", "mongodb://127.0.0.1:27017"),
o.GetStringDefault("MONGO_DATABASE", "DC_myDC"), o.GetStringDefault("MONGO_DATABASE", "DC_myDC"),

Binary file not shown.

View File

@ -15,10 +15,8 @@ import (
func init() { func init() {
ns := beego.NewNamespace("/oc/", ns := beego.NewNamespace("/oc/",
beego.NSNamespace("/workflow", beego.NSInclude(
beego.NSInclude( &controllers.WorkflowController{},
&controllers.WorkflowController{},
),
), ),
beego.NSNamespace("/version", beego.NSNamespace("/version",
beego.NSInclude( beego.NSInclude(

View File

@ -15,38 +15,10 @@
}, },
"basePath": "/oc/", "basePath": "/oc/",
"paths": { "paths": {
"/version/": { "/": {
"get": { "get": {
"tags": [ "tags": [
"version" "oc-workflow/controllersWorkflowController"
],
"description": "get version\n\u003cbr\u003e",
"operationId": "VersionController.GetAll",
"responses": {
"200": {
"description": ""
}
}
}
},
"/version/status": {
"get": {
"tags": [
"version"
],
"description": "get status\n\u003cbr\u003e",
"operationId": "VersionController.Status",
"responses": {
"200": {
"description": ""
}
}
}
},
"/workflow/": {
"get": {
"tags": [
"workflow"
], ],
"description": "find workflow by workflowid\n\u003cbr\u003e", "description": "find workflow by workflowid\n\u003cbr\u003e",
"operationId": "WorkflowController.GetAll", "operationId": "WorkflowController.GetAll",
@ -58,7 +30,7 @@
}, },
"post": { "post": {
"tags": [ "tags": [
"workflow" "oc-workflow/controllersWorkflowController"
], ],
"description": "create workflows\n\u003cbr\u003e", "description": "create workflows\n\u003cbr\u003e",
"operationId": "WorkflowController.Create", "operationId": "WorkflowController.Create",
@ -83,10 +55,10 @@
} }
} }
}, },
"/workflow/check/{id}/{start_date}/{end_date}": { "/check/{id}/{start_date}/{end_date}": {
"get": { "get": {
"tags": [ "tags": [
"workflow" "oc-workflow/controllersWorkflowController"
], ],
"description": "check booking\n\u003cbr\u003e", "description": "check booking\n\u003cbr\u003e",
"operationId": "WorkflowController.Check", "operationId": "WorkflowController.Check",
@ -121,10 +93,10 @@
} }
} }
}, },
"/workflow/publish/{id}": { "/publish/{id}": {
"post": { "post": {
"tags": [ "tags": [
"workflow" "oc-workflow/controllersWorkflowController"
], ],
"description": "create workflows\n\u003cbr\u003e", "description": "create workflows\n\u003cbr\u003e",
"operationId": "WorkflowController.Publish", "operationId": "WorkflowController.Publish",
@ -147,10 +119,10 @@
} }
} }
}, },
"/workflow/search/{search}": { "/search/{search}": {
"get": { "get": {
"tags": [ "tags": [
"workflow" "oc-workflow/controllersWorkflowController"
], ],
"description": "search workspace\n\u003cbr\u003e", "description": "search workspace\n\u003cbr\u003e",
"operationId": "WorkflowController.Search", "operationId": "WorkflowController.Search",
@ -170,10 +142,38 @@
} }
} }
}, },
"/workflow/{id}": { "/version/": {
"get": { "get": {
"tags": [ "tags": [
"workflow" "version"
],
"description": "get version\n\u003cbr\u003e",
"operationId": "VersionController.GetAll",
"responses": {
"200": {
"description": ""
}
}
}
},
"/version/status": {
"get": {
"tags": [
"version"
],
"description": "get status\n\u003cbr\u003e",
"operationId": "VersionController.Status",
"responses": {
"200": {
"description": ""
}
}
}
},
"/{id}": {
"get": {
"tags": [
"oc-workflow/controllersWorkflowController"
], ],
"description": "find workflow by workflowid\n\u003cbr\u003e", "description": "find workflow by workflowid\n\u003cbr\u003e",
"operationId": "WorkflowController.Get", "operationId": "WorkflowController.Get",
@ -194,7 +194,7 @@
}, },
"put": { "put": {
"tags": [ "tags": [
"workflow" "oc-workflow/controllersWorkflowController"
], ],
"description": "create workflows\n\u003cbr\u003e", "description": "create workflows\n\u003cbr\u003e",
"operationId": "WorkflowController.Update", "operationId": "WorkflowController.Update",
@ -227,7 +227,7 @@
}, },
"delete": { "delete": {
"tags": [ "tags": [
"workflow" "oc-workflow/controllersWorkflowController"
], ],
"description": "delete the workflow\n\u003cbr\u003e", "description": "delete the workflow\n\u003cbr\u003e",
"operationId": "WorkflowController.Delete", "operationId": "WorkflowController.Delete",
@ -264,7 +264,7 @@
}, },
"tags": [ "tags": [
{ {
"name": "workflow", "name": "oc-workflow/controllersWorkflowController",
"description": "Operations about workflow\n" "description": "Operations about workflow\n"
}, },
{ {

View File

@ -12,32 +12,10 @@ info:
url: https://opensource.org/license/mit url: https://opensource.org/license/mit
basePath: /oc/ basePath: /oc/
paths: paths:
/version/: /:
get: get:
tags: tags:
- version - oc-workflow/controllersWorkflowController
description: |-
get version
<br>
operationId: VersionController.GetAll
responses:
"200":
description: ""
/version/status:
get:
tags:
- version
description: |-
get status
<br>
operationId: VersionController.Status
responses:
"200":
description: ""
/workflow/:
get:
tags:
- workflow
description: |- description: |-
find workflow by workflowid find workflow by workflowid
<br> <br>
@ -47,7 +25,7 @@ paths:
description: '{workflow} models.workflow' description: '{workflow} models.workflow'
post: post:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
create workflows create workflows
<br> <br>
@ -64,10 +42,10 @@ paths:
description: "" description: ""
schema: schema:
$ref: '#/definitions/models.workflow' $ref: '#/definitions/models.workflow'
/workflow/{id}: /{id}:
get: get:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
find workflow by workflowid find workflow by workflowid
<br> <br>
@ -83,7 +61,7 @@ paths:
description: '{workflow} models.workflow' description: '{workflow} models.workflow'
put: put:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
create workflows create workflows
<br> <br>
@ -107,7 +85,7 @@ paths:
$ref: '#/definitions/models.workflow' $ref: '#/definitions/models.workflow'
delete: delete:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
delete the workflow delete the workflow
<br> <br>
@ -121,10 +99,10 @@ paths:
responses: responses:
"200": "200":
description: '{string} delete success!' description: '{string} delete success!'
/workflow/check/{id}/{start_date}/{end_date}: /check/{id}/{start_date}/{end_date}:
get: get:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
check booking check booking
<br> <br>
@ -148,10 +126,10 @@ paths:
description: "" description: ""
schema: schema:
$ref: '#/definitions/models.object' $ref: '#/definitions/models.object'
/workflow/publish/{id}: /publish/{id}:
post: post:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
create workflows create workflows
<br> <br>
@ -167,10 +145,10 @@ paths:
description: "" description: ""
schema: schema:
$ref: '#/definitions/models.workflow' $ref: '#/definitions/models.workflow'
/workflow/search/{search}: /search/{search}:
get: get:
tags: tags:
- workflow - oc-workflow/controllersWorkflowController
description: |- description: |-
search workspace search workspace
<br> <br>
@ -184,6 +162,28 @@ paths:
responses: responses:
"200": "200":
description: '{workspace} models.workspace' description: '{workspace} models.workspace'
/version/:
get:
tags:
- version
description: |-
get version
<br>
operationId: VersionController.GetAll
responses:
"200":
description: ""
/version/status:
get:
tags:
- version
description: |-
get status
<br>
operationId: VersionController.Status
responses:
"200":
description: ""
definitions: definitions:
json: json:
title: json title: json
@ -195,7 +195,7 @@ definitions:
title: workflow title: workflow
type: object type: object
tags: tags:
- name: workflow - name: oc-workflow/controllersWorkflowController
description: | description: |
Operations about workflow Operations about workflow
- name: version - name: version