ibmjstart/web-dependencies-checker

Name: web-dependencies-checker

Owner: IBM jStart

Description: A tool for checking the availability of web dependencies

Created: 2016-12-09 14:39:40.0

Updated: 2016-12-09 15:54:38.0

Pushed: 2016-12-09 16:41:00.0

Homepage: null

Size: 24191

Language: Go

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

web-dependencies-checker

standard-readme compliant

A tool for checking the availability of web dependencies

Table of Contents
Background

Numerous programs and services require the ability to talk to the web in order to get their jobs done. Sometimes, firewall settings or other environmental constraints can prevent this communication from happening. This tool can be used to see if a service's web dependencies are reachable from your machine. Anyone maintaining a project with web dependencies can create a simple yaml file that the web-dependencies-checker can run against.

Install

You can download the web-dependencies-checker executable for your system from the releases page. Once downloaded, navigate to the executable's destination and run it as detailed in the following section.

Usage

This tool is invoked as follows:

./wdc [-t seconds] [-r retries] [-q] [-c] YAML_file_location [YAML_file_location...]

YAML File

The YAML_file_location argument can be either a path to a local YAML file or the url of a remote one. Urls must begin with http(s). One or more YAML files can be provided as arguments and they can be a combination of local paths and urls.

The format of the YAML file must be as follows:


ices:
ame: firstService
ites:
- site1
- site2
ame: secondService
ites:
- site3
- site4

It can include any number of services, and each service can contain any number of urls. Multiple services can contain the same url. All urls will use TCP by default. If a url requires http(s) be sure to prepend the url with http(s)://. Wildcard subdomains are not supported. Any url with wildcards will be stripped of them before testing. IP addresses are supported.

The included YAML file test_yaml.yml is a sample list of services and urls. The following command can be used to check the services listed in that file.

c yaml/test_yaml.yml

The following is the results of running the above command on my machine. Note that your machine may not produce the exact same results as mine.

ice: firstService
 URL: gmail.com:80 TCP Dial OK
 URL: http://youtu.be 200 OK
 Available
ice: secondService
 URL: slack.com:80 TCP Dial OK
 URL: http://github.com/ibmjstart/404 404 Not Found
 URL: http://facebook.com 200 OK
 Unavailable
ice: thirdSerivce
 URL: gmail.com:80 TCP Dial OK
 URL: 172.217.4.238:80 TCP Dial OK
 Available

lable Services
tService
dSerivce

ailable Services
ndService

tesy of IBM jStart - www.ibm.com/jstart
Options

Name | Flag | Description — | — | — Timeout | -t | HTTP request timeout in seconds (defaults to 60) Retries | -r | Number of HTTP request retries (defaults to 0) Quiet | -q | Only display status for failed requests No Color | -c | Disable color output

Contribute

PRs accepted.

Small note: If editing the README, please conform to the standard-readme specification.

License

Apache 2.0 © IBM jStart


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.