flitter

module
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2014 License: Apache-2.0, BSD-3-Clause, Zlib

README

flitter

GoDoc Build Status

A minimal platform-as-a-service using CoreOS, fleet, vulcand, and docker-havok.

Flitter is made up of many parts from many different authors. Where possible all existing code is kept under the terms of the license it came from. Any new projects inside this repository are under the highly permissive Zlib license:

Copyright (C) 2014 Sam Dodrill <xena@yolo-swag.com> All rights reserved.

This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.

Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:

1. The origin of this software must not be misrepresented; you must not
   claim that you wrote the original software. If you use this software
   in a product, an acknowledgment in the product documentation would be
   appreciated but is not required.

2. Altered source versions must be plainly marked as such, and must not be
   misrepresented as being the original software.

3. This notice may not be removed or altered from any source
   distribution.

If you find a program is incorrectly licensed please open a github issue so it can be fixed as soon as possible. These kinds of issues are critical and will be treated as such.

Installing

Use ./deploy.sh. Future tooling to automate the editing of the units for custom deployments will be present in a future release.

Havok

You must set a domain on the flitter host using:

$ etcdctl set /flitter/domain flitter.xeserv.us

If you are using Vagrant (contrib/vagrant) to test Flitter, you can use flitter.xeserv.us as your domain setting. Everything will be forwarded properly.

Port Forwarding

Allow ports 80, 22, and 2232 from any IP address.

Support

Flitter is PRE-ALPHA software. It may eat your hamster. If you use this in production as is, the authors take NO fault whatsoever.

At this stage Flitter is known to be able to do git push deploys to a cluster of servers running fleet.


A public project by XeServ.

Directories

Path Synopsis
Command builder is the flitter Docker image builder.
Command builder is the flitter Docker image builder.
cloudchaser
Command cloudchaser is a minimal build sentry for Flitter.
Command cloudchaser is a minimal build sentry for Flitter.
execd
Command execd is a simple SSH server that allows a user to run single commands on a remote server, suitable for things like git deploys.
Command execd is a simple SSH server that allows a user to run single commands on a remote server, suitable for things like git deploys.
Command havok is a docker container publisher for flitter.
Command havok is a docker container publisher for flitter.
Command lagann is Flitter's controller.
Command lagann is Flitter's controller.
constants
Package constants is a set of constants for Lagann.
Package constants is a set of constants for Lagann.
datatypes
Package datatypes is a set of simple structs for lagann and other applications that communicate with it.
Package datatypes is a set of simple structs for lagann and other applications that communicate with it.
lib
deployment
Package deployment is a set of interfaces and wrappers around Docker, Fleet and other scheduling backends to allow for a generic method of submitting jobs.
Package deployment is a set of interfaces and wrappers around Docker, Fleet and other scheduling backends to allow for a generic method of submitting jobs.
deployment/mock
Package mock is a mock Backend for Flitter.
Package mock is a mock Backend for Flitter.
etcdconfig
Package etcdconfig provides a method for programs to scrape configuration from etcd as well as continously update it.
Package etcdconfig provides a method for programs to scrape configuration from etcd as well as continously update it.
middlewares
Package middlewares is a collection of middlewares for Negroni used by Flitter projects.
Package middlewares is a collection of middlewares for Negroni used by Flitter projects.
middlewares/_deprecated/auth
Package auth is a middleware handler for Lagann to authenticate users over the SSH key they specified in the X-Lagann-Auth header.
Package auth is a middleware handler for Lagann to authenticate users over the SSH key they specified in the X-Lagann-Auth header.
middlewares/auth
Package auth is a middleware handler for Lagann to authenticate users over the UUID they specified in the X-Lagann-Auth header.
Package auth is a middleware handler for Lagann to authenticate users over the UUID they specified in the X-Lagann-Auth header.
output
Package output defines some simple output filters for text.
Package output defines some simple output filters for text.
utils
Package utils is for various "other" functions that things in Flitter use that may be useful in other places but are not unique or special enough to be in their own package.
Package utils is for various "other" functions that things in Flitter use that may be useful in other places but are not unique or special enough to be in their own package.
Command proxy is a small TCP proxy used by flitter.
Command proxy is a small TCP proxy used by flitter.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL