This release is marked more by what it doesn't do than what it actually does do. So, to avoid any further disappointment, let's first get out of the way what it doesn't do:
- No Scheduling
Currently, every job you want to start has to be started manually. Better set your own watch.
- No Version Control
There's no integration with version control systems like Git or SVN yet. However, nothing is stopping you from making your own clone or checkout in the mission workspace and issuing a git pull or svn up at the start of a mission.
- No Security
Right now everything is publicly accessible, so anyone who can reach the server can do whatever he likes with it. So don't connect C.I. Joe to the internet just yet.
- No Slave Configuration
C.I. Joe comes with a single local slave pre-configured. If you edit the configuration, you can add additional slaves, but there's no UI for this yet, and only local slaves are supported thus far.
- No Artifact Storage
So far, every job you run will run in the same workspace, and no artifacts are kept from previous jobs. Console output from jobs is stored only in memory, so as soon as the server is restarted, all output is gone.
Having said all that, this very first release marks an important milestone in the development of C.I. Joe. Even though not yet fully featured, a functional master-slave architecture has been developed. There's an HTML5 web frontend that automatically updates in real-time. There's the beginning of a REST API which is already used for configuring missions and starting jobs. The master communicates with slaves as well as the web frontend through Socket.io connections. There is a testing framework and the first integration test has been written to test whether a mission can be configured and ran. The release process has been automated, including a build process that optimizes sources and removes development artifacts before distribution.
All of this means that from here on, development should speed up, and there can now be an actual prioritization of the features to develop next.
If you are interested to see what's next, check out the project page: https://github.com/arendjr/CI-Joe. Feel free to file issues for suggestions about where you would like this project to go next.
Finally, if you want to try out this very limited alpha yourself, here is the download link: https://github.com/arendjr/CI-Joe/raw/master/dist/ci-joe-0.0.1.tar.gz
Happy New Year!