dfsilva / metamorphosis

Making the world more resilient

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Metamorphosis

Metamorphosis allows you to connect on nats topics, create agents to transform the data and make decisions using Groovy Script.

Contributors Forks Stargazers Issues MIT License LinkedIn

##Features

  • Transform data from a topic using dynamic script
  • Make decisions where the message will be delivered after the transformation using a second dynamic script
  • Configure if the messages will be processed ordered or not.

Running

You need to have the latest version of Docker installed to run this example

Linux/Unix

One node:

./build-container-image.sh
./run-all.sh

Access http://localhost:8081/

Stop

./stop-all.sh

Multiple nodes:

./build-container-image.sh
./run-data.sh
./run-node0.sh
./run-node1.sh
./run-noden.sh

Access http://localhost:8081/ and http://localhost:8082/

Stop

./stop-data.sh
docker rm -f node00
docker rm -f node01

Windows

One node:

build-container-image.bat
run-all.bat

Access http://localhost:8081/

Stop

stop-all.bat

Multiple nodes:

build-container-image.bat
run-data.bat
run-node0.bat
run-node1.bat
run-noden.bat

Access http://localhost:8081/ and http://localhost:8082/

Stop

./stop-data.sh
docker rm -f node00
docker rm -f node01

Release History

  • 0.0.1
    • Work in progress

Meta

Diego Silva – @diegosinfdiego@diegosilva.com.br

Distributed under the MIT license. See LICENSE for more information.

https://github.com/dfsilva/metamorphosis

Contributing

  1. Fork it (https://github.com/yourname/yourproject/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

About

Making the world more resilient

License:MIT License


Languages

Language:Dart 43.6%Language:Scala 38.2%Language:CMake 5.1%Language:C++ 2.9%Language:Ruby 2.9%Language:HTML 2.2%Language:Shell 1.2%Language:Batchfile 1.1%Language:Swift 0.9%Language:Groovy 0.7%Language:Python 0.6%Language:C 0.5%Language:Kotlin 0.1%Language:Objective-C 0.0%