This implementation of Artillery
is the reference implementation for the other languages at present, until another language or language platform can out-perform Crystal
in the wild. Crystal
feels perfect as the language to start from because it's almost designed for writing microservices.
All information about this exists in Issues and code itself primarily, by way of implication; as well as in delimiter chambers discussions. Reach out if you have questions or want to contribute.
-
Add the dependency to your
shard.yml
:dependencies: artillery: github: abstractive/artillery.cr
-
Run
shards install
-
If not running containerized: Setup ZeroMQ
Artillery
can be invoked several ways; here are three:
From within a clone of a projectile repository you want to activate run this commands:
$ bin/artillery --bazooka
In artillery.yml
, include the following:
projectile:
environment:
production:
domains:
- artillery.cloud
launchers: 3
development:
launchers: 3
Then, run the following in the root of the repository, wherever it is checked out:
$ sudo artillery
In artillery.yml
, include the following:
projectile:
environment:
development:
launchers: 3
Then, run the following in the root directory of your local environment:
$ sudo artillery development
More details coming...
Right now the
Docker
cluster configurations are broken, but it is mostly there. Once resolved, the remaining invokation styles will be available quickly thereafter, and will provide reduncancy, load-balancing, etc. TheBazooka
demonstrates the concept, then down the line it will remain as the primary means of doing local development using the exact infrastructureShot
instances are deployed to in public.
Currently and foreseeably MIT licensed, because if you want code without people, and you want to run off with the benefit of community work, good riddance anyway. I guess that's one version of decentrality. Most people are just busy and trying to get ahead. So do what you're going to do, and if you've got too much going on to contribute, you're probably making a contribution to the world some other way. But don't be a stranger. This code is intended to bring people together and raise the bar.
Developed by digitalextremist // in partnership with abstractive labs, facilitated by delimiter chambers.