Skip to content

A set of golang utils missing in std lib. Mainly around linux networking tools.

License

Notifications You must be signed in to change notification settings

infrastlabs/go-tools

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go tools

GoDoc Go Report Card Build Status Coverage Status

This repository includes various tools and extensions that seemed to be missing in the standard go library and well known open source projects. Dependencies are managed with dep.

Content

  • pkg/extensions
    • collections - extensions for operations on collections
    • net - utilities to convert and operate on structures returned by the standard go's net package
    • os - improvements to go's os package, currently mostly about loading env vars with defaults
    • strings - to operate on slices of strings
    • time - a refresher utility to periodically execute a callback function
  • pkg/linux/command - execute linux commands and capture full output info: stdOut, stdErr and exitCode
  • nettools - various utilities that wrap basic Linux network configuration commands, including
    • conntrack - currently only supports removing entries from conntrack
    • interfaces - allows for abstract implementation of net package interface info
    • iproute - management of ip route route table entries and ip rule routing rules
    • ipset - management of ipset: sets and set entries
    • iptables - management of iptables rules based on unique rule comments

Getting started - contributing

  1. Install dep
  2. Clone this repository to $GOPATH/src/github.com/DevFactory/go-tools
  3. Install dependencies with dep: dep ensure -v --vendor-only
  4. Everything ready, you can run unit tests: go test -cover ./pkg/...

About

A set of golang utils missing in std lib. Mainly around linux networking tools.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 100.0%