Code Monkey home page Code Monkey logo

tentacool's Introduction

tentacool

Build Status Go report

Description

tentacool is a Go server controlled via RESTful API through a Unix Domain Socket.

Goal

Main goal is to manage all under the hood services for a simple "box". All done with a auditable, fast and bulletproof software.

So many software do frontend, backend and system... And finally run in root by easiness.

Configuration

Recommended /etc/network/interfaces config for your default interface (for instance eth0):

auto eth0
iface eth0 inet manual
  pre-up ifconfig $IFACE up
  post-down ifconfig $IFACE down

API

addresses

address object

  • link: interface to manage
  • ip: ip to add (CIDR format)
  • id

GET /addresses

List all current addresses

Response

GET /addresses/:id

Response

POST /addresses

Add a new address to manage.

parameters
Response
  • address
  • headers
    • X-Error: if address is stored in BD but fail to by apply.
Example
  • without id
==>
{
  "link":"eth0",
  "ip":"192.168.32.11/32",
}
<==
{
  "id":"1",
  "link":"eth0",
  "ip":"192.168.32.11/32",
}
  • with id
==>
{
  "id":"foo",
  "link":"eth0",
  "ip":"192.168.32.12/32",
}
<==
{
  "id":"foo",
  "link":"eth0",
  "ip":"192.168.32.12/32",
}

PUT /addresses/:id

Modify an existing address

parameters
Response
  • address
  • headers
    • X-Error: if address is stored in BD but fail to by apply.

dhcp

GET /dhcp

Checks if DHCP is running on the default interface.

Response

{'active': true|false}

POST /dhcp

Activate/deactive DHCP for default interface.

parameters
  • active true or false

tentacool's People

Contributors

guilhem avatar ketouem avatar thavel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tentacool's Issues

Why did you stop?

Hey, I am looking for some sort of api server that would run on linux side and allow me to manage aspects of the system via rest calls. As far as I understand that's what this project was aimed for. I can see that the latest commit was done in 2015. Did you encounter some issue in linux that would not allow you to continue your work? Some kind of limitation? Security concern? I am curious because it seems to me such a natural idea to have a rest managed system - yet nobody does it. Can you share your experience?

GET /addresses returns []

Hi,

I've started it with tentacool -bind=10.0.0.48:3333 -db=/tmp/db -stdout=true.

When trying to get addresses it returns empty array.

Am I missing an option or it only works one way (from tentacool -> system and does not read current state) ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.