Coder Social home page Coder Social logo

Labctl command line utility

For information on ho to use Labctl, see the user documentation at https://labctl.net.

This README file contains info on the labctl internals and should be the starting point if you want to contribute to the project. The following repositories form part of the labctl project:

Config Engine

Labctl uses the Config Engine from containerlab to process magic variables and render templates

The go text/template library is extended with user defined functions from:

Config Engine Issues

Feel free to open any Config Engine related issue on labctl. You can also view open issues on containerlab here

labctl serve Web API

The server paths are defined in cmd_serve.go and used by the labctl-frontend

path Description
/ws Websocket for commands, updates, rendering, etc
/wspty PTY via Websocket, for SSH/terminal sessions
/topo The Topology file for the graph
/vars
/templates
/files
/error

Websocket messages

The websocket messages used on the /ws API endpoint are defined in ws_message.go

code sent by description
error, warn server Display messages in the frontend
template both Render a template on the server as&when requested by the frontend
uidata both The frontend uses this msg to save persistent data in the local labctl yml file file
config both Execute a config command on the server and return the results to the frontend
fschange server Notify the frontend of file updates (README, topology, etc.)

Labctl's Projects

labctl icon labctl

Labctl command line utility - https://labctl.net

labctl-frontend icon labctl-frontend

Labctl web frontend - https://labctl.net - the compiled frontend is pushed to the labctl/labctl repo and included in the binary release

sros_yang icon sros_yang

SR OS MD-CLI & YANG path finder source repo

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.