Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ns1/waitron
Server installations made easy
https://github.com/ns1/waitron
bare-metal maas netboot pixiecore provisioning pxe pxe-boot waitron
Last synced: 2 months ago
JSON representation
Server installations made easy
- Host: GitHub
- URL: https://github.com/ns1/waitron
- Owner: ns1
- License: other
- Created: 2015-09-15T15:03:15.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-08-04T14:49:09.000Z (over 3 years ago)
- Last Synced: 2024-08-02T02:15:02.857Z (5 months ago)
- Topics: bare-metal, maas, netboot, pixiecore, provisioning, pxe, pxe-boot, waitron
- Language: Go
- Homepage:
- Size: 141 KB
- Stars: 112
- Watchers: 32
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.txt
- License: LICENSE
Awesome Lists containing this project
- awesome-repositories - ns1/waitron - Server installations made easy (Go)
README
### Historical info and credits
The original Waitron, found on the version 1.0.0 branch in this repo, was originally written by [jhaals](https://github.com/jhaals).
We at NS1 needed an internal build system that would allow us to meet a specific set of requirements and found [pixiecore](https://github.com/danderson/pixiecore), and eventually Waitron in an unmaintained state. Jhaals was kind enough to let NS1 take over the project, and we've continued maintaining it since.The 2.0.0 branch of this repo still has a large portion of the original from Jhaals, with a few additions we needed at the time. However, the current main branch (representing post 2.0.0) is an almost complete rewrite of the original Waitron code, but the spirit of the original Waitron lives on!
# Waitron
> This project is in [maintenance](https://github.com/ns1/community/blob/master/project_status/MAINTENANCE.md) status.[![Build Status](https://travis-ci.org/ns1/waitron.svg?branch=master)](https://travis-ci.org/ns1/waitron)
Waitron is used to build machines (primarily bare-metal, but anything that understands PXE booting will work) based on definitions from any number of specified inventory sources.
When a server is set in _build mode_, Waitron will deliver a kernel/initrd/commandline that can be used by [pixiecore](https://github.com/danderson/pixiecore) (in API mode) to boot and install the machine.
Try it out in a docker:
```
docker build -t waitron . && docker-compose -f ./docker-compose.yml up
``````
$ curl -X PUT http://localhost/build/dns02.example.com
{"Token":"fb300739-b4ce-4740-af26-80a99326ee05"$ curl -X GET http://localhost/status/dns02.example.com
pendingcurl -X PUT http://localhost/cancel/dns02.example.com/fb300739-b4ce-4740-af26-80a99326ee05
{"State":"OK"}```
### Config file
See the example [config](examples/config.yml) for descriptions and examples of configuration options.### API
See [API.md](API.md) file in the repo
Contributions
---
Pull Requests and issues are welcome. See the [NS1 Contribution Guidelines](https://github.com/ns1/community) for more information.