go-tools

module
v0.2.3 Latest Latest
Warning

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

Go to latest
Published: May 27, 2019 License: Apache-2.0

README

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/...

Directories

Path Synopsis
pkg
extensions
Package extensions contains some generic tools and helpers that are missing from the go's standard library
Package extensions contains some generic tools and helpers that are missing from the go's standard library
extensions/net
Package net contains some generic tools and helpers that are missing from the go's standard library
Package net contains some generic tools and helpers that are missing from the go's standard library
extensions/os
Package os contains some generic tools and helpers that are missing from the go's standard library
Package os contains some generic tools and helpers that are missing from the go's standard library
extensions/strings
Package strings contains some generic tools and helpers that are missing from the go's standard library
Package strings contains some generic tools and helpers that are missing from the go's standard library
extensions/time
Package time contains some generic tools and helpers that are missing from the go's standard library
Package time contains some generic tools and helpers that are missing from the go's standard library
linux
Package linux provides different utilities for Linux features not available through standard library
Package linux provides different utilities for Linux features not available through standard library
nettools
Package nettools includes a set of helpers that operate on raw system commands related to networking.
Package nettools includes a set of helpers that operate on raw system commands related to networking.

Jump to

Keyboard shortcuts

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