(A Golang implementation of the Nulecule spec)
- A version of docker that supports the
--format flagfordocker -V. - You will likely want a working version of Kubernetes installed on your system:
- Go-yaml-v1
yum install golang-gopkg-yaml-devel.noarch
- Sirupsen's Logrus
yum install golang-github-Sirupsen-logrus-devel.noarch
- Codegangsta's CLI
yum install golang-github-codegangsta-cli-devel.noarch
Note that if you are installing these dependencies through yum, you will need to add /usr/share/gocode to your $GOPATH:
export GOPATH=$GOPATH:/usr/share/gocode
Clone the repository to within your $GOPATH and build the binary using the included makefile
Then, move the resulting binary somewhere within your $PATH
The program can now be invoked with atomicgo
- Make a directory in which your application will be installed in and
cdinto it. - install a valid projectatomic app -- for example, any of the following will work:
atomicgo install projectatomic/guestbookgo-appatomicgo install projectatomic/helloapache --destination=/home/alecbenson/Desktop/testproject- If no
--destinationflag is provided, the current working directory is implicitly used
- If no
Simply deploy the application: atomicgo run
You may also specify where to run the project from by specifying a directory after run:
atomicgo run /home/alecbenson/Desktop/testproject
Before running your application, you will notice that there is now an answers.conf.sample file. It contains default values for all parameters provided in the Nulecule file that is also within your installation directory. You may edit any of the values within this file. By renaming the sample file to answers.conf, these values will be implicitly provided when the application is run.
By running the project with the --ask flag, the program will prompt the user for any parameters that are not specified in the answers.conf file (if it exists):
atomicgo run /home/alecbenson/Desktop/testproject --ask
You may also provide the --write flag to tell the program where to look for your answers.conf file. This is useful if you already have an answers file somewhere on your system. For example, both of the following are valid:
atomicgo run . --write=/home/abenson/Desktop/atomicgo run . --write=/home/abenson/Desktop/answers.confIf no--writeflag is provided, the program looks for the answers file in the installation directory by default.
Verify that your application is running: kubectl get pods
When you are done with your application, simply run atomicgo stop in your installation directory
You may run the project tests with make test
The following providers are currently supported:
- Docker
- Kubernetes
Openshift will be available to use as a provider soon.