{"id":28646755,"url":"https://github.com/harisekhon/devops-golang-tools","last_synced_at":"2026-03-01T03:01:30.346Z","repository":{"id":41189986,"uuid":"260246138","full_name":"HariSekhon/DevOps-Golang-tools","owner":"HariSekhon","description":"DevOps Golang tools","archived":false,"fork":false,"pushed_at":"2025-11-06T22:24:23.000Z","size":579,"stargazers_count":56,"open_issues_count":0,"forks_count":19,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-11-07T00:17:56.780Z","etag":null,"topics":["devops","go","golang","hacktoberfest","http"],"latest_commit_sha":null,"homepage":"https://www.linkedin.com/in/HariSekhon","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HariSekhon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-04-30T15:16:51.000Z","updated_at":"2025-11-06T22:24:28.000Z","dependencies_parsed_at":"2024-08-19T08:24:57.254Z","dependency_job_id":"d37f8c81-88d9-42dd-a01c-4ef0cb0bf3be","html_url":"https://github.com/HariSekhon/DevOps-Golang-tools","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/HariSekhon/DevOps-Golang-tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HariSekhon%2FDevOps-Golang-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HariSekhon%2FDevOps-Golang-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HariSekhon%2FDevOps-Golang-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HariSekhon%2FDevOps-Golang-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HariSekhon","download_url":"https://codeload.github.com/HariSekhon/DevOps-Golang-tools/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HariSekhon%2FDevOps-Golang-tools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29959284,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T01:47:18.291Z","status":"online","status_checked_at":"2026-03-01T02:00:07.437Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devops","go","golang","hacktoberfest","http"],"created_at":"2025-06-13T02:06:49.607Z","updated_at":"2026-03-01T03:01:30.335Z","avatar_url":"https://github.com/HariSekhon.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hari Sekhon - DevOps Golang Tools\n\n[![GitHub stars](https://img.shields.io/github/stars/harisekhon/devops-golang-tools?logo=github)](https://github.com/HariSekhon/DevOps-Golang-tools/stargazers)\n[![GitHub forks](https://img.shields.io/github/forks/harisekhon/devops-golang-tools?logo=github)](https://github.com/HariSekhon/DevOps-Golang-tools/network)\n[![LineCount](https://sloc.xyz/github/HariSekhon/DevOps-Golang-tools/?badge-bg-color=2081C2)](https://github.com/boyter/scc/)\n[![Cocomo](https://sloc.xyz/github/HariSekhon/DevOps-Golang-tools/?badge-bg-color=2081C2\u0026category=cocomo)](https://github.com/boyter/scc/)\n[![License](https://img.shields.io/github/license/HariSekhon/DevOps-Golang-tools)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/LICENSE)\n[![My LinkedIn](https://img.shields.io/badge/LinkedIn%20Profile-HariSekhon-blue?logo=data:image/svg%2bxml;base64,PHN2ZyByb2xlPSJpbWciIGZpbGw9IiNmZmZmZmYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48dGl0bGU+TGlua2VkSW48L3RpdGxlPjxwYXRoIGQ9Ik0yMC40NDcgMjAuNDUyaC0zLjU1NHYtNS41NjljMC0xLjMyOC0uMDI3LTMuMDM3LTEuODUyLTMuMDM3LTEuODUzIDAtMi4xMzYgMS40NDUtMi4xMzYgMi45Mzl2NS42NjdIOS4zNTFWOWgzLjQxNHYxLjU2MWguMDQ2Yy40NzctLjkgMS42MzctMS44NSAzLjM3LTEuODUgMy42MDEgMCA0LjI2NyAyLjM3IDQuMjY3IDUuNDU1djYuMjg2ek01LjMzNyA3LjQzM2MtMS4xNDQgMC0yLjA2My0uOTI2LTIuMDYzLTIuMDY1IDAtMS4xMzguOTItMi4wNjMgMi4wNjMtMi4wNjMgMS4xNCAwIDIuMDY0LjkyNSAyLjA2NCAyLjA2MyAwIDEuMTM5LS45MjUgMi4wNjUtMi4wNjQgMi4wNjV6bTEuNzgyIDEzLjAxOUgzLjU1NVY5aDMuNTY0djExLjQ1MnpNMjIuMjI1IDBIMS43NzFDLjc5MiAwIDAgLjc3NCAwIDEuNzI5djIwLjU0MkMwIDIzLjIyNy43OTIgMjQgMS43NzEgMjRoMjAuNDUxQzIzLjIgMjQgMjQgMjMuMjI3IDI0IDIyLjI3MVYxLjcyOUMyNCAuNzc0IDIzLjIgMCAyMi4yMjIgMGguMDAzeiIvPjwvc3ZnPgo=)](https://www.linkedin.com/in/HariSekhon/)\n[![GitHub Last Commit](https://img.shields.io/github/last-commit/HariSekhon/DevOps-Golang-tools?logo=github)](https://github.com/HariSekhon/DevOps-Golang-tools/commits/master)\n\u003c!-- doesn't include /tests?/ or comments\n[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=HariSekhon_DevOps-Golang-tools\u0026metric=ncloc)](https://sonarcloud.io/dashboard?id=HariSekhon_DevOps-Golang-tools)\n\n[![Lines of Code](https://img.shields.io/badge/lines%20of%20code-26k-lightgrey)](https://github.com/HariSekhon/DevOps-Golang-tools)\n--\u003e\n\n[![Codacy](https://app.codacy.com/project/badge/Grade/7b64fbfcff2240b9b18c6754c22d39bb)](https://www.codacy.com/gh/HariSekhon/DevOps-Golang-tools/dashboard)\n[![CodeFactor](https://www.codefactor.io/repository/github/harisekhon/DevOps-Golang-tools/badge)](https://www.codefactor.io/repository/github/harisekhon/DevOps-Golang-tools)\n[![Language grade: Golang](https://img.shields.io/lgtm/grade/golang/g/HariSekhon/DevOps-Golang-tools.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/HariSekhon/DevOps-Golang-tools/context:golang)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=HariSekhon_DevOps-Golang-tools\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=HariSekhon_DevOps-Golang-tools)\n[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=HariSekhon_DevOps-Golang-tools\u0026metric=sqale_rating)](https://sonarcloud.io/dashboard?id=HariSekhon_DevOps-Golang-tools)\n[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=HariSekhon_DevOps-Golang-tools\u0026metric=reliability_rating)](https://sonarcloud.io/dashboard?id=HariSekhon_DevOps-Golang-tools)\n[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=HariSekhon_DevOps-Golang-tools\u0026metric=security_rating)](https://sonarcloud.io/dashboard?id=HariSekhon_DevOps-Golang-tools)\n[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=HariSekhon_DevOps-Golang-tools\u0026metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=HariSekhon_DevOps-Golang-tools)\n[![Total alerts](https://img.shields.io/lgtm/alerts/g/HariSekhon/DevOps-Golang-tools.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/HariSekhon/DevOps-Golang-tools/alerts/)\n\n\u003c!-- site broken\n[![PyUp](https://pyup.io/repos/github/HariSekhon/DevOps-Golang-tools/shield.svg)](https://pyup.io/account/repos/github/HariSekhon/DevOps-Golang-tools/)\n[![Golang 3](https://pyup.io/repos/github/HariSekhon/DevOps-Golang-tools/golang-3-shield.svg)](https://pyup.io/repos/github/HariSekhon/DevOps-Golang-tools/)\n--\u003e\n\n[![Linux](https://img.shields.io/badge/OS-Linux-blue?logo=linux)](https://github.com/HariSekhon/DevOps-Golang-tools)\n[![Mac](https://img.shields.io/badge/OS-Mac-blue?logo=apple)](https://github.com/HariSekhon/DevOps-Golang-tools)\n[![Docker](https://img.shields.io/badge/container-Docker-blue?logo=docker\u0026logoColor=white)](https://hub.docker.com/r/harisekhon/github/)\n[![Dockerfile](https://img.shields.io/badge/repo-Dockerfiles-blue?logo=docker\u0026logoColor=white)](https://github.com/HariSekhon/Dockerfiles)\n[![DockerHub Pulls](https://img.shields.io/docker/pulls/harisekhon/centos-github?label=DockerHub%20pulls\u0026logo=docker\u0026logoColor=white)](https://hub.docker.com/r/harisekhon/github)\n\u003c!-- these badges don't work any more\n[![DockerHub Build Automated](https://img.shields.io/docker/automated/harisekhon/go-tools?logo=docker\u0026logoColor=white)](https://hub.docker.com/r/harisekhon/go-tools/)\n[![Docker Build Status](https://img.shields.io/docker/build/harisekhon/go-tools?logo=docker\u0026logoColor=white)](https://hub.docker.com/r/harisekhon/go-tools/builds)\n[![MicroBadger](https://images.microbadger.com/badges/image/harisekhon/go-tools.svg)](http://microbadger.com/#/images/harisekhon/go-tools)\n--\u003e\n\n[![CI Builds Overview](https://img.shields.io/badge/CI%20Builds-Overview%20Page-blue?logo=circleci)](https://harisekhon.github.io/CI-CD/)\n[![Jenkins](https://img.shields.io/badge/Jenkins-ready-blue?logo=jenkins\u0026logoColor=white)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/Jenkinsfile)\n[![Concourse](https://img.shields.io/badge/Concourse-ready-blue?logo=concourse)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/cicd/.concourse.yml)\n[![GoCD](https://img.shields.io/badge/GoCD-ready-blue?logo=go)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/cicd/.gocd.yml)\n[![TeamCity](https://img.shields.io/badge/TeamCity-ready-blue?logo=teamcity)](https://github.com/HariSekhon/TeamCity-CI)\n\n[![CircleCI](https://circleci.com/gh/HariSekhon/DevOps-Golang-tools.svg?style=svg)](https://circleci.com/gh/HariSekhon/DevOps-Golang-tools)\n[![BuildKite](https://img.shields.io/buildkite/e2deddfa45087ac7984c456cb93319ef434ac996c7c1006833/master?label=BuildKite\u0026logo=buildkite)](https://buildkite.com/hari-sekhon/devops-golang-tools)\n[![AppVeyor](https://img.shields.io/appveyor/build/harisekhon/DevOps-Golang-tools/master?logo=appveyor\u0026label=AppVeyor)](https://ci.appveyor.com/project/HariSekhon/DevOps-Golang-tools/branch/master)\n[![Drone](https://img.shields.io/drone/build/HariSekhon/DevOps-Golang-tools/master?logo=drone\u0026label=Drone)](https://cloud.drone.io/HariSekhon/DevOps-Golang-tools)\n[![Codefresh](https://g.codefresh.io/api/badges/pipeline/harisekhon/GitHub%2FDevOps-Golang-tools?key=eyJhbGciOiJIUzI1NiJ9.NWU1MmM5OGNiM2FiOWUzM2Y3ZDZmYjM3.O69674cW7vYom3v5JOGKXDbYgCVIJU9EWhXUMHl3zwA\u0026date=1609528430541)](https://g.codefresh.io/pipelines/edit/new/builds?id=5fef73e62e168ebc6dd24d07\u0026pipeline=DevOps-Golang-tools\u0026projects=GitHub\u0026projectId=5fef73e62e168ebc6dd24d07\u0026context=github\u0026filter=page:1;pageSize:10;timeFrameStart:week)\n[![Cirrus CI](https://img.shields.io/cirrus/github/HariSekhon/DevOps-Golang-tools/master?logo=Cirrus%20CI\u0026label=Cirrus%20CI)](https://cirrus-ci.com/github/HariSekhon/DevOps-Golang-tools)\n[![Semaphore](https://harisekhon.semaphoreci.com/badges/DevOps-Golang-tools.svg)](https://harisekhon.semaphoreci.com/projects/DevOps-Golang-tools)\n[![Buddy](https://img.shields.io/badge/Buddy-ready-1A86FD?logo=buddy)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/buddy.yml)\n[![Shippable](https://img.shields.io/badge/Shippable-legacy-lightgrey?logo=jfrog\u0026label=Shippable)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/shippable.yml)\n[![Travis CI](https://img.shields.io/badge/TravisCI-ready-blue?logo=travis\u0026label=Travis%20CI)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/.travis.yml)\n\n[![Azure DevOps Pipeline](https://dev.azure.com/harisekhon/GitHub/_apis/build/status/DevOps-Golang-tools?branchName=master)](https://dev.azure.com/harisekhon/GitHub/_build/latest?definitionId=13\u0026branchName=master)\n[![GitLab Pipeline](https://img.shields.io/badge/GitLab%20CI-legacy-lightgrey?logo=gitlab)](https://gitlab.com/HariSekhon/DevOps-Golang-tools/pipelines)\n[![BitBucket Pipeline](https://img.shields.io/badge/Bitbucket%20CI-legacy-lightgrey?logo=bitbucket)](https://bitbucket.org/harisekhon/devops-golang-tools/addon/pipelines/home#!/)\n[![AWS CodeBuild](https://img.shields.io/badge/AWS%20CodeBuild-ready-blue?logo=amazon%20aws)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/cicd/buildspec.yml)\n[![GCP Cloud Build](https://img.shields.io/badge/GCP%20Cloud%20Build-ready-blue?logo=google%20cloud\u0026logoColor=white)](https://github.com/HariSekhon/DevOps-Golang-tools/blob/master/cicd/cloudbuild.yaml)\n\n[![Repo on GitHub](https://img.shields.io/badge/repo-GitHub-2088FF?logo=github)](https://github.com/HariSekhon/DevOps-Golang-tools)\n[![Repo on GitLab](https://img.shields.io/badge/repo-GitLab-FCA121?logo=gitlab)](https://gitlab.com/HariSekhon/DevOps-Golang-tools)\n[![Repo on Azure DevOps](https://img.shields.io/badge/repo-Azure%20DevOps-0078D7?logo=azure%20devops)](https://dev.azure.com/harisekhon/GitHub/_git/DevOps-Golang-tools)\n[![Repo on BitBucket](https://img.shields.io/badge/repo-BitBucket-0052CC?logo=bitbucket)](https://bitbucket.org/HariSekhon/DevOps-Golang-tools)\n[![ShellCheck](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/shellcheck.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/shellcheck.yaml)\n[![JSON](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/json.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/json.yaml)\n[![YAML](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/yaml.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/yaml.yaml)\n[![XML](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/xml.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/xml.yaml)\n[![Markdown](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/markdown.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/markdown.yaml)\n[![Validation](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/validate.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/validate.yaml)\n[![Kics](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/kics.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/kics.yaml)\n[![Grype](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/grype.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/grype.yaml)\n[![Semgrep](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/semgrep.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/semgrep.yaml)\n[![Semgrep Cloud](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/semgrep-cloud.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/semgrep-cloud.yaml)\n[![Trivy](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/trivy.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/trivy.yaml)\n\n[![GitHub Actions Ubuntu](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/GitHub%20Actions%20Ubuntu/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22GitHub+Actions+Ubuntu%22)\n[![Mac](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/mac.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/mac.yaml)\n[![Mac 11](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/mac_11.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/mac_11.yaml)\n[![Mac 12](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/mac_12.yaml/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions/workflows/mac_12.yaml)\n[![Ubuntu](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Ubuntu/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Ubuntu%22)\n[![Ubuntu 20.04](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Ubuntu%2020.04/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Ubuntu+20.04%22)\n[![Ubuntu 22.04](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Ubuntu%2022.04/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Ubuntu+22.04%22)\n[![Debian](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Debian/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Debian%22)\n[![Debian 10](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Debian%2010/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Debian+10%22)\n[![Debian 11](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Debian%2011/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Debian+11%22)\n[![Debian 12](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Debian%2012/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Debian+12%22)\n[![CentOS](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/CentOS/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22CentOS%22)\n[![CentOS 7](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/CentOS%207/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22CentOS+7%22)\n[![CentOS 8](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/CentOS%208/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22CentOS+8%22)\n[![Fedora](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Fedora/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Fedora%22)\n[![Alpine](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Alpine/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Alpine%22)\n[![Alpine 3](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Alpine%203/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Alpine+3%22)\n\n[![Golang versions](https://img.shields.io/badge/Golang-1.9+-00ADD8?logo=go)](https://github.com/HariSekhon/DevOps-Golang-tools)\n[![Golang](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+latest%22)\n[![Golang 1.9](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.9/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.9%22)\n[![Golang 1.10](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.10/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.10%22)\n[![Golang 1.11](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.11/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.11%22)\n[![Golang 1.12](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.12/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.12%22)\n[![Golang 1.13](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.13/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.13%22)\n[![Golang 1.14](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.14/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.14%22)\n[![Golang 1.15](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.15/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.15%22)\n[![Golang 1.16](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.16/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.16%22)\n[![Golang 1.17](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.17/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.17%22)\n[![Golang 1.18](https://github.com/HariSekhon/DevOps-Golang-tools/workflows/Golang%201.18/badge.svg)](https://github.com/HariSekhon/DevOps-Golang-tools/actions?query=workflow%3A%22Golang+1.18%22)\n\n[git.io/go-tools](https://git.io/go-tools)\n\n## DevOps Golang Tools\n\nAll programs have `--help` to list the available options.\n\nHari Sekhon\n\nCloud \u0026 Big Data Contractor, United Kingdom\n\n[https://www.linkedin.com/in/HariSekhon](https://www.linkedin.com/in/HariSekhon)\n\u003cbr\u003e*(you're welcome to connect with me on LinkedIn)*\n\n**Make sure you run `make update` if updating and not just `git pull` as you will often need the latest library submodule and possibly new upstream libraries**\n\n## Quick Start\n\n### Ready to run Docker image\n\nAll programs and their pre-compiled dependencies can be found ready to run on [DockerHub](https://hub.docker.com/r/harisekhon/go-tools/).\n\nList all programs:\n\n```shell\ndocker run harisekhon/go-tools\n```\n\nRun any given program:\n\n```shell\ndocker run harisekhon/go-tools \u003cprogram\u003e \u003cargs\u003e\n```\n\n### Automated Build from source\n\ninstalls git, make, pulls the repo and build the binaries:\n\n```shell\ncurl -L https://git.io/go-bootstrap | sh\n```\n\nor manually:\n\n```shell\ngit clone https://github.com/HariSekhon/DevOps-Golang-tools go-tools\ncd go-tools\nmake\n```\n\nThe `make` command automates building the go binaries which can then be copied around to other systems of the same\nfamily, eg. Linux or Mac.\n\nAlternatively there is shebang magic which means each `.go` program can be called directly like a script and it'll\nruntime compile and execute instantly like a scripted language. This is a neat trick for quick usage and testing built\non `go run`, but for frequent use the compiled binaries are usually the way to go.\n\n[Detailed Build Instructions](https://github.com/HariSekhon/DevOps-Golang-tools#detailed-build-instructions) are available further down.\n\n### Usage\n\nAll programs come with a `--help` switch which includes a program description and the list of command line options.\n\nEnvironment variables are supported for convenience and also to hide credentials from being exposed in the process list\neg. `$PASSWORD`, `$TRAVIS_TOKEN`. These are indicated in the `--help` descriptions in brackets next to each option and\noften have more specific overrides with higher precedence eg. `$AMBARI_HOST`, `$HBASE_HOST` take priority over `$HOST`.\n\n### DevOps Golang Tools - Inventory\n\n- Linux:\n  - `uniq2.go` - like `uniq` but you don't have to sort first and it preserves the ordering\n  - `diffnet.go` - simplifies diff output to show only lines added/removed, not moved, from patch files or stdin\n    (pipe from standard `diff` or `git diff` commands)\n  - `httpfirst.go` - returns the first http/https url address argument to respond (fastest multi-threaded reply using\n    go channels). More sophisticated version is `find_active_server.py` in the [DevOps Python tools](https://github.com/HariSekhon/DevOps-Python-tools) repo which can\n    handle multi-master clusters, tcp sockets, regex etc.\n  - `pldd.go` - parses `/proc` on Linux to show the runtime `.so` loaded dynamic shared libraries a program pid is\n    using. Runtime equivalent of the classic static `ldd` command and because the system `pldd` command often fails to\n    attach to a process\n  - `colors.go` - prints a table of terminal colors and their escape codes for doing fancy shell stuff\n  - `welcome.go` - cool spinning welcome message greeting your username and showing last login time and user to put in\n    your shell's `.profile` (there are also Python and Perl versions in my\n    [DevOps Python Tools](https://github.com/HariSekhon/DevOps-Python-tools) and\n    [DevOps Perl Tools](https://github.com/HariSekhon/DevOps-Perl-tools) repos)\n\n### Detailed Build Instructions\n\n#### Manual Setup\n\nEnter the go-tools directory and run git submodule init and git submodule update to fetch my library repo:\n\n```shell\ngit clone https://github.com/HariSekhon/DevOps-Golang-tools go-tools\ncd go-tools\ngit submodule update --init\n./compile.sh\n```\n\n##### Mac OS X\n\nThe automated build also works on Mac OS X but you'll need to install [Apple XCode](https://developer.apple.com/download/) (on recent Macs just typing\n`git` is enough to trigger Xcode install).\n\nI also recommend you get [HomeBrew](https://brew.sh/) to install other useful tools and libraries you may need like OpenSSL for\ndevelopment headers and tools such as wget (these are installed automatically if Homebrew is detected on Mac OS X):\n\n```shell\nbash-tools/install/install_homebrew.sh\n```\n\n### Updating\n\nRun `make update`. This will git pull and then git submodule update which is necessary to pick up corresponding library\nupdates.\n\n### Contributions\n\nPatches, improvements and even general feedback are welcome in the form of GitHub pull requests and issue tickets.\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=HariSekhon/DevOps-Golang-tools\u0026type=Date)](https://star-history.com/#HariSekhon/DevOps-Golang-tools\u0026Date)\n\n[git.io/go-tools](https://git.io/go-tools)\n\n## More Core Repos\n\n\u003c!-- OTHER_REPOS_START --\u003e\n\n### Knowledge\n\n[![Knowledge-Base](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Knowledge-Base\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Knowledge-Base)\n[![Diagrams-as-Code](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Diagrams-as-Code\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Diagrams-as-Code)\n\n\u003c!--\n\nNot support on GitHub Markdown:\n\n\u003ciframe src=\"https://raw.githubusercontent.com/HariSekhon/HariSekhon/main/knowledge.md\" width=\"100%\" height=\"500px\"\u003e\u003c/iframe\u003e\n\nDoes nothing:\n\n\u003cembed src=\"https://raw.githubusercontent.com/HariSekhon/HariSekhon/main/knowledge.md\" width=\"100%\" height=\"500px\" /\u003e\n\n--\u003e\n\n### DevOps Code\n\n[![DevOps-Bash-tools](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=DevOps-Bash-tools\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/DevOps-Bash-tools)\n[![DevOps-Python-tools](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=DevOps-Python-tools\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/DevOps-Python-tools)\n[![DevOps-Perl-tools](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=DevOps-Perl-tools\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/DevOps-Perl-tools)\n[![DevOps-Golang-tools](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=DevOps-Golang-tools\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/DevOps-Golang-tools)\n\n\u003c!--\n[![Gist Card](https://github-readme-stats-fast.vercel.app/api/gist?id=f8f551332440f1ca8897ff010e363e03)](https://gist.github.com/HariSekhon/f8f551332440f1ca8897ff010e363e03)\n--\u003e\n\n### Containerization\n\n[![Kubernetes-configs](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Kubernetes-configs\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Kubernetes-configs)\n[![Dockerfiles](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Dockerfiles\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Dockerfiles)\n\n### CI/CD\n\n[![GitHub-Actions](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=GitHub-Actions\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/GitHub-Actions)\n[![Jenkins](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Jenkins\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Jenkins)\n\n### Databases - DBA - SQL\n\n[![SQL-scripts](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=SQL-scripts\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/SQL-scripts)\n\n### DevOps Reloaded\n\n[![HAProxy-configs](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=HAProxy-configs\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/HAProxy-configs)\n[![Terraform](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Terraform\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Terraform)\n[![Packer](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Packer\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Packer)\n[![Ansible](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Ansible\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Ansible)\n[![Environments](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Environments\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Environments)\n\n### Monitoring\n\n[![Nagios-Plugins](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Nagios-Plugins\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Nagios-Plugins)\n[![Nagios-Plugin-Kafka](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Nagios-Plugin-Kafka\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Nagios-Plugin-Kafka)\n[![Prometheus](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Prometheus\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Prometheus)\n\n### Templates\n\n[![Templates](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Templates\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Templates)\n[![Template-repo](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Template-repo\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Template-repo)\n\n### Desktop\n\n[![TamperMonkey](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=TamperMonkey\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/TamperMonkey)\n[![Hammerspoon](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Hammerspoon\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Hammerspoon)\n[![MPV-Scripts](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=MPV-Scripts\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/MPV-Scripts)\n\n### Spotify\n\n[![Spotify-tools](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Spotify-tools\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Spotify-tools)\n[![Spotify-playlists](https://github-readme-stats-fast.vercel.app/api/pin/?username=HariSekhon\u0026repo=Spotify-playlists\u0026theme=ambient_gradient\u0026description_lines_count=3)](https://github.com/HariSekhon/Spotify-playlists)\n\nThe rest of my original source repos are\n[here](https://github.com/HariSekhon?tab=repositories\u0026q=\u0026type=source\u0026language=\u0026sort=stargazers).\n\nPre-built Docker images are available on my [DockerHub](https://hub.docker.com/u/harisekhon/)\nand can be re-generated using the my [Dockerfiles](https://github.com/HariSekhon/Dockerfiles) repo.\n\n\u003c!-- OTHER_REPOS_END --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharisekhon%2Fdevops-golang-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharisekhon%2Fdevops-golang-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharisekhon%2Fdevops-golang-tools/lists"}