This project has been merged into the Flogo Microgateway.
You can find the latest version of the source code inside the Flogo Microgateway repository where it will continue to be developed.
Project Mashling
You can find the latest version of the source code inside the Flogo Microgateway repository where it will continue to be developed.
Flogo CLI upcoming app dependency mgmt is not compatible with mashling layer's recipe mgmt. Thus, an update is needed to keep the behavior in mashling consistent and functioning until the migration to the new Flogo CLI's dep mgmt is ready. Mashling to maintain GB based implementation at this time.
For tunable support, inputParams is added to event_links but the schema is missing that.
if you run the command:
mashling create testApp
the mashling.json that is created contains a superfluous configuration for a kafka server ... is this for a reason or just wrong ? The sample on the home page ( https://github.com/TIBCOSoftware/mashling ) is what would seem logical. But what is generated is the same as the cli documenation page ( https://github.com/TIBCOSoftware/mashling/tree/master/cli )
It also may be worth removing the duplicate documentation as the instructions are 99% identical...
Update mashling publish option names to be consistent with other newly updated options such as areaId, areaDomain etc
Suggested:
-f --> configFile
-k --> apiKey
-s --> apiSecret
-u --> userName
-p --> password
-h --> publicHost
As a Flogo developer who's created a new API
I'd like to easily embed OOTB functionality from Mashling to perform things like rate limiting/authentication/security/circuit breaking
so that I don't need to separate runtime outside of my Flogo application to handle that functionality
See --> https://github.com/TIBCOSoftware/flogo/wiki/Go-App-Api-Proposal
Comment: Should be implemented as an action in Flogo.
Two personas here. The goal here is to implement basic WebSockets support via Mashling via WS & WSS (WebSockets over SSL/TLS)
As an API provider, I want to leverage a microgateway to manage inbound connection requests to my WebSockets stream
As an API consumer, I want to leverage a microgateway to open a connection to a WebSockets stream
As Aaron the developer
I want to implement a microgateway to front my microservices to set up a circuit breaker pattern
so that my microservice does not become a choke-point.
requirement!
The circuit breaker should have three distinct states: Closed, Open, and Half-Open
As an API Provider, I want to control the total number of concurrent connections opened to my WebSockets stream
While hitting the trigger the content-type needs to be set to application/json for the recipes to work with V2
When a service referenced in Dispatches---->Routes--->Steps is not given in the Services array in V2 Mashling.json , the gateway starts without any prompt to the user that the service is missing.
In the below sample "FlogoRestGetFlow" service is given in the steps to be executed , but its not given in the services section.
{ "mashling_schema": "1.0", "gateway": { "name": "MyProxy", "version": "1.0.0", "description": "This is a simple proxy.", "triggers": [ { "name": "MyProxy", "description": "Animals rest trigger - PUT animal details", "type": "github.com/TIBCOSoftware/mashling/ext/flogo/trigger/gorillamuxtrigger", "settings": { "port": "9096", "basicAuthFile": "${env.BASIC_AUTH_FILE}" }, "handlers": [ { "dispatch": "Pets", "settings": { "autoIdReply": "false", "method": "GET", "path": "/pets/{petId}", "useReplyHandler": "false" } } ] } ], "dispatches": [ { "name": "Pets", "routes": [ { "steps": [ { "service": "FlogoRestGetFlow", "input": { "inputs.pathParams": "${payload.pathParams}" } } ], "responses": [ { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not available." } }, { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body": "${FlogoRestGetFlow.response.outputs.data}" } } ] } ] } ], "services": [] } }
Using Make on a Windows machine isn't the best idea from a developer experience point of view. Looking at the contents of the Make file it might be a better idea to use a go
file to execute those commands or leverage Mage
Also, the statement that Windows users can execute above commands as is using git-bash terminal.
is not entirely correct as the latest versions of Git for Windows no longer ship with Make.
Unknown type error: is displayed while using the Tracing mashling jsons.
Run the attached json with the below command:
mashling-gateway-windows-amd64.exe -c rest-gateway-with-tracing.json
{ "mashling_schema": "1.0", "gateway": { "name": "MyProxy", "version": "1.0.0", "description": "This is a simple proxy.", "triggers": [ { "name": "MyProxy", "description": "Animals rest trigger - PUT animal details", "type": "github.com/TIBCOSoftware/mashling/ext/flogo/trigger/gorillamuxtrigger", "settings": { "port": "9096", "tracer": "zipkin", "tracerEndpoint": "http://localhost:9411/api/v1/spans" }, "handlers": [ { "dispatch": "Pets", "settings": { "autoIdReply": "false", "method": "GET", "path": "/pets/{petId}", "useReplyHandler": "false" } } ] } ], "dispatches": [ { "name": "Pets", "routes": [ { "steps": [ { "service": "FlogoRestGetFlow", "input": { "inputs.pathParams": "${payload.pathParams}", "inputs.tracing": "${payload.tracing}" } } ], "responses": [ { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Failure" } }, { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body": "${FlogoRestGetFlow.response.outputs.data}" } } ] } ] } ], "services": [ { "name": "FlogoRestGetFlow", "description": "Make GET calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/Tracing.json" } } ] } }
As Aaron the developer
I want to implement a microgateway to front my microservices to set up a smart circuit breaker pattern
so that failures or outages can be predicted, and proactively addressed via [Load Balancing / DevOps integration / queuing / ??]
As an API Provider, I would like to implement key-based security so that I can authenticate incoming requests to open a new WebSockets connection
The "if": "payload.header.name == 'test'", is always failing ,even if we pass header "name" as "test".Below is the json:
{ "mashling_schema": "1.0", "gateway": { "name": "MyProxy", "version": "1.0.0", "description": "This is a simple proxy.", "triggers": [ { "name": "MyProxy", "description": "Animals rest trigger - PUT animal details", "type": "github.com/TIBCOSoftware/mashling/ext/flogo/trigger/gorillamuxtrigger", "settings": { "port": "9096" }, "handlers": [ { "dispatch": "Pets", "settings": { "autoIdReply": "false", "method": "GET", "path": "/pets/{petId}", "useReplyHandler": "false" } }, { "dispatch": "Pets1", "settings": { "autoIdReply": "false", "method": "PUT", "path": "/pets", "useReplyHandler": "false" } } ] } ], "dispatches": [ { "name": "Pets", "routes": [ { "steps": [ { "service": "FlogoRestGetFlow", "input": { "inputs.pathParams": "${payload.pathParams}" } } ], "responses": [ { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not available." } }, { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body": "${FlogoRestGetFlow.response.outputs.data}" } } ] } ] }, { "name": "Pets1", "routes": [ { "if": "payload.content.name == 'SPARROW'", "steps": [ { "service": "birds_put", "input": { "inputs.content": "${payload.content}" } } ], "responses": [ { "if": "JSON.parse(birds_put.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not added." } }, { "if": "JSON.parse(birds_put.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body.pet": "${birds_put.response.outputs.data}" } } ] }, { "if": "payload.header.name == 'test'", "steps": [ { "service": "mammals_put", "input": { "inputs.content": "${payload.content}" } } ], "responses": [ { "if": "JSON.parse(mammals_put.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not added." } }, { "if": "JSON.parse(mammals_put.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body.pet": "${mammals_put.response.outputs.data}" } } ] }, { "steps": [ { "service": "animals_put", "input": { "inputs.content": "${payload.content}" } } ], "responses": [ { "if": "JSON.parse(animals_put.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not added." } }, { "if": "JSON.parse(animals_put.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body.pet": "${animals_put.response.outputs.data}" } } ] } ] } ], "services": [ { "name": "FlogoRestGetFlow", "description": "Make GET calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestGetActivity.json" } }, { "name": "birds_put", "description": "Make PUT calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestPutActivity.json" } }, { "name": "mammals_put", "description": "Make PUT calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestPutActivity.json" } }, { "name": "animals_put", "description": "Make PUT calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestPutActivity.json" } } ] } }
Getting the below error while installing Mashling with the latest Flogo version.
Command:
go get github.com/TIBCOSoftware/mashling/...
Error:
$ go get github.com/TIBCOSoftware/mashling/...
src\github.com\TIBCOSoftware\mashling\cli\app\api.go:196: cannot use SetupExistingProjectEnv(appDir) (type "github.com/TIBCOSoftware/mashling/cli/env".Project) as type "github.com/TIBCOSoftware/flogo-cli/env".Project in argument to "github.com/TIBCOSoftware/flogo-cli/app".BuildApp:
"github.com/TIBCOSoftware/mashling/cli/env".Project does not implement "github.com/TIBCOSoftware/flogo-cli/env".Project (missing GetAppDir method)
src\github.com\TIBCOSoftware\mashling\cli\app\api.go:367: cannot use SetupExistingProjectEnv(appDir) (type "github.com/TIBCOSoftware/mashling/cli/env".Project) as type "github.com/TIBCOSoftware/flogo-cli/env".Project in argument to "github.com/TIBCOSoftware/flogo-cli/app".BuildApp:
"github.com/TIBCOSoftware/mashling/cli/env".Project does not implement "github.com/TIBCOSoftware/flogo-cli/env".Project (missing GetAppDir method)
src\github.com\TIBCOSoftware\mashling\cli\app\api.go:1223: undefined: "github.com/TIBCOSoftware/flogo-cli/app".ExtractDependencies
src\github.com\TIBCOSoftware\mashling\cli\app\files.go:136: undefined: "github.com/TIBCOSoftware/flogo-cli/app".Dependency
$ mashling create myApp
Getting github.com/TIBCOSoftware/flogo-cli/util
Getting github.com/NodePrime/jsonpath
Getting github.com/TIBCOSoftware/flogo-contrib/action/flow
Getting github.com/Sirupsen/logrus
Getting github.com/Shopify/sarama
Getting github.com/TIBCOSoftware/flogo-cli/env
Getting github.com/TIBCOSoftware/flogo-contrib/activity/reply
Getting github.com/TIBCOSoftware/flogo-contrib/activity/log
Getting github.com/TIBCOSoftware/flogo-contrib/activity/rest
Getting github.com/TIBCOSoftware/flogo-contrib/model/simple
Getting github.com/TIBCOSoftware/flogo-contrib/trigger/rest/cors
Getting github.com/TIBCOSoftware/flogo-lib
Getting github.com/TIBCOSoftware/mashling/ext/flogo/trigger/gorillamuxtrigger
Getting github.com/TIBCOSoftware/mashling/lib/conditions
Getting github.com/TIBCOSoftware/mashling/lib/util
Getting github.com/apache/thrift/lib/go/thrift
Getting github.com/davecgh/go-spew/spew
Getting github.com/eapache/go-resiliency/breaker
Getting github.com/eapache/go-xerial-snappy
Getting github.com/eapache/queue
Getting github.com/go-logfmt/logfmt
Getting github.com/gogo/protobuf/io
Getting github.com/gogo/protobuf/proto
Getting github.com/golang/protobuf/proto
Getting github.com/golang/protobuf/protoc-gen-go/descriptor
Getting github.com/golang/protobuf/ptypes
Getting github.com/golang/protobuf/ptypes/timestamp
Getting github.com/golang/snappy
Getting github.com/gorilla/mux
Getting github.com/japm/goScript
Getting github.com/julienschmidt/httprouter
Getting github.com/lightstep/lightstep-tracer-go
Getting github.com/opentracing-contrib/go-observer
Getting github.com/opentracing/basictracer-go
Getting github.com/opentracing/opentracing-go
Getting github.com/openzipkin/zipkin-go-opentracing
Getting github.com/pierrec/lz4
Getting github.com/pierrec/xxHash/xxHash32
Getting github.com/pkg/errors
Getting github.com/rcrowley/go-metrics
Getting golang.org/x/crypto/ssh/terminal
Getting golang.org/x/net/context
Getting golang.org/x/net/http2
Getting golang.org/x/net/idna
Getting golang.org/x/net/internal/timeseries
Getting golang.org/x/net/lex/httplex
Getting golang.org/x/net/trace
Getting golang.org/x/sys/unix
Getting golang.org/x/sys/windows
Getting golang.org/x/text/secure/bidirule
Getting golang.org/x/text/transform
Getting golang.org/x/text/unicode/bidi
Getting golang.org/x/text/unicode/norm
Getting google.golang.org/genproto/googleapis/api/annotations
Getting google.golang.org/genproto/googleapis/rpc/status
Getting google.golang.org/grpc
Getting sourcegraph.com/sourcegraph/appdash
FATAL: command "restore" failed: could not process dependency: go-import metadata not found
FATAL: command "vendor" failed: exit status 1
Generated mashling Artifacts.
Building mashling Artifacts.
/Users/markmussett/src/mashling/myApp
FATAL: command "build" failed: failed to resolve import path "myapp": import "sourcegraph.com/sourcegraph/appdash": not found: stat /Users/markmussett/src/mashling/myApp/src/sourcegraph.com/sourcegraph/appdash: no such file or directory
As Aaron the developer
I want to implement my microservice gateway to implement a rate-limit policy
so that I can protect my microservice from overload
mashling-cli -N option ignores the json file name passed as a parameter and always looks for the file named mashling.json
The conditions expression in the tunable gateway example starts with env.
. How can I make use of a path parameter in my condition? Basically I want to have one URL /{type}/{name} and use the type parameter to send the request to a specific handler. I tried setting the condition to ${pathParams.type == bla}
but that triggers an error saying condition expressions must start with trigger.content, trigger.header or env
Portal is misleading as a parameter name.
The gateway is starting even if the V2 mashling.json has empty Triggers, empty Handlers , No services or Empty steps in the routes in Dispatches.
No warning message is displayed to the user that the Trigger is missing.
Sample V2 Mashling.json:
{ "mashling_schema": "1.0", "gateway": { "name": "MyProxy", "version": "1.0.0", "description": "This is a simple proxy.", "triggers": [], "dispatches": [ { "name": "Pets", "routes": [ { "steps": [], "responses": [ { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not available." } }, { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body": "${FlogoRestGetFlow.response.outputs.data}" } } ] } ] } ] } }
Allow for placing .mashery file in home directory and using that for credentials. Also allow for different profiles. Properties should include: apikey, secret, username, password, area id (uuid) and default public domain.
package references are broken. see the following errors:
Getting golang.org/x/net/idna
fatal: https://go.googlesource.com/crypto/info/refs not valid: is this a git repository?
fatal: https://go.googlesource.com/net/info/refs not valid: is this a git repository?
fatal: https://go.googlesource.com/net/info/refs not valid: is this a git repository?
fatal: https://go.googlesource.com/net/info/refs not valid: is this a git repository?
Getting golang.org/x/net/internal/timeseries
Getting golang.org/x/net/lex/httplex
Getting golang.org/x/net/trace
fatal: https://go.googlesource.com/net/info/refs not valid: is this a git repository?
fatal: https://go.googlesource.com/net/info/refs not valid: is this a git repository?
fatal: https://go.googlesource.com/net/info/refs not valid: is this a git repository?
Getting golang.org/x/sys/unix
fatal: https://go.googlesource.com/sys/info/refs not valid: is this a git repository?
Missing dependency here https://github.com/NodePrime/jsonpath.
Header from the trigger should be accessible outside of the trigger for conditional evaluation.
During publish process:
Can you please provide documentation and tutorial on how to write a mashling recipe?
Mashling currently supports gb based build. Add a support for go dep available from TIBCOSoftware/flogo-cli#75
Installing the Mashling CLI fails:
command
go get github.com/TIBCOSoftware/mashling/...
result
# github.com/TIBCOSoftware/mashling/lib/util
../../go/src/github.com/TIBCOSoftware/mashling/lib/util/util.go:74:18: cannot call non-function element.Name (type string)
# github.com/TIBCOSoftware/flogo-contrib/action/flow/definition
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/definition_ser.go:82:24: cannot call non-function value.Name (type string)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/definition_ser.go:145:30: cannot call non-function value.Name (type string)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/definition_ser.go:176:31: cannot assign 1 values to 2 variables
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/definition_ser.go:176:66: cannot call non-function attr.Type (type data.Type)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/definition_ser.go:199:32: cannot assign 1 values to 2 variables
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/definition_ser.go:199:67: cannot call non-function attr.Type (type data.Type)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/mapper.go:89:43: cannot call non-function attr.Name (type string)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/mapper.go:92:35: cannot call non-function attr.Name (type string)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/mapper.go:92:48: cannot call non-function attr.Type (type data.Type)
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/mapper.go:92:63: cannot call non-function oAttr.Value (type interface {})
../../go/src/github.com/TIBCOSoftware/flogo-contrib/action/flow/definition/mapper.go:92:63: too many errors
Go version: go version go1.9.2 darwin/amd64
At the start of the process it throws some messages that can only come from it looking/processing all the files in my GOPATH ... it seems odd to say the least...
I know exactly why there are errors but why would Mashling to touching ANY of that code ?
PS D:\Data\Documents\Work\Content\Mashling\test3> mashling build
FATAL: command "fetch" failed: loadPackage("D:\Data\Documents\GoWorkSpace\src\github.com\ayh20\GolangTraining\02_Exercises", "github.com\ayh20\GolangTraining\02_Exercises"): found packages main (main.go) and main2
(main2.go) in D:\Data\Documents\GoWorkSpace\src\github.com\ayh20\GolangTraining\02_Exercises
FATAL: command "vendor" failed: exit status 1
Installing dependencies...
D:\Data\Documents\Work\Content\Mashling\test3
Enhance step's response output mapping when returning the output back to the trigger so that the usage of a flogo trigger in mashling results in a consistent behavior.
go get mashling is not working as expected.
Steps to reproduce:
1)Start the gateway and hit the Get Service.
2)Hit the Put service. The gateway still searches for Pathparams instead of Content and fails.
Note: The same issue is observed if we hit the Put service first and then the Get service.
Used the below rest-conditional-gateway.json:
{ "mashling_schema": "1.0", "gateway": { "name": "MyProxy", "version": "1.0.0", "description": "This is a simple proxy.", "triggers": [ { "name": "MyProxy", "description": "Animals rest trigger - PUT animal details", "type": "github.com/TIBCOSoftware/mashling/ext/flogo/trigger/gorillamuxtrigger", "settings": { "port": "9096" }, "handlers": [ { "dispatch": "Pets", "settings": { "autoIdReply": "false", "method": "GET", "path": "/pets/{petId}", "useReplyHandler": "false" } }, { "dispatch": "Pets1", "settings": { "autoIdReply": "false", "method": "PUT", "path": "/pets", "useReplyHandler": "false" } } ] } ], "dispatches": [ { "name": "Pets", "routes": [ { "steps": [ { "service": "FlogoRestGetFlow", "input": { "inputs.pathParams": "${payload.pathParams}" } } ], "responses": [ { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not available." } }, { "if": "JSON.parse(FlogoRestGetFlow.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body": "${FlogoRestGetFlow.response.outputs.data}" } } ] } ] }, { "name": "Pets1", "routes": [ { "if": "JSON.parse(payload.content.___copy___).name == 'SPARROW'", "steps": [ { "service": "birds_put", "input": { "inputs.content": "${payload.content}" } } ], "responses": [ { "if": "JSON.parse(birds_put.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not added." } }, { "if": "JSON.parse(birds_put.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body.pet": "${birds_put.response.outputs.data}" } } ] }, { "if": "JSON.parse(payload.content.___copy___).name == 'ELEPHANT' || JSON.parse(payload.content.___copy___).name == 'CAT'", "steps": [ { "service": "mammals_put", "input": { "inputs.content": "${payload.content}" } } ], "responses": [ { "if": "JSON.parse(mammals_put.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not added." } }, { "if": "JSON.parse(mammals_put.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body.pet": "${mammals_put.response.outputs.data}" } } ] }, { "steps": [ { "service": "animals_put", "input": { "inputs.content": "${payload.content}" } } ], "responses": [ { "if": "JSON.parse(animals_put.response.outputs.code) != 200", "error": true, "output": { "code": 403, "format": "json", "body": "Pet is not added." } }, { "if": "JSON.parse(animals_put.response.outputs.code) == 200", "error": false, "output": { "code": 200, "format": "json", "body.pet": "${animals_put.response.outputs.data}" } } ] } ] } ], "services": [ { "name": "FlogoRestGetFlow", "description": "Make GET calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestGetActivity.json" } }, { "name": "birds_put", "description": "Make PUT calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestPutActivity.json" } }, { "name": "mammals_put", "description": "Make PUT calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestPutActivity.json" } }, { "name": "animals_put", "description": "Make PUT calls against a remote HTTP service using a Flogo flow.", "type": "flogoFlow", "settings": { "reference": "github.com/TIBCOSoftware/mashling/lib/flow/RestTriggerToRestPutActivity.json" } } ] } }
Hi,
I am trying to play around with mashling and creating my app.
Basically, here is what I've done:
And... This does not work... I get this error message:
FATAL: command "create" failed: open vendor/src/github.com/TIBCOSoftware/mashling/ext/flogo/trigger/gorillamuxtrigger/trigger.json: no such file or directory
I am completely new to GO so maybe I miss something very obvious... Any help appreciated !
Thanks
Below is the output of 'mashling build' for the default recipe:
github.com/TIBCOSoftware/flogo-contrib/activity/log
github.com/TIBCOSoftware/flogo-contrib/activity/reply
# github.com/openzipkin/zipkin-go-opentracing/thrift/gen-go/scribe
scribe.go:286:17: cannot assign 1 values to 2 variables
github.com/TIBCOSoftware/flogo-contrib/activity/rest
github.com/TIBCOSoftware/flogo-contrib/action/flow
FATAL: command "build" failed: exit status 2
Mashling gateway successfully built!
Created from Aha! https://tibco.aha.io/features/MMG-52
Environment variable are not getting resolved for service inputs in steps in V2 model.
"service": "FlogoRestGetFlow", "input": { "inputs.endPoint": "${env.URL}" }
While creating app with mashling-cli.exe create command the binary is getting created in the mashling-custom folder outside the bin folder.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.