docs: function SpectreportGithub(options, reporter, done) {
      var failStatus = reporter.constructor.Test.TEST_FAIL;
      var summary = reporter.summary();
      var results = reporter.results;
      var reportUrl = options.ghReportUrl;
  
      if (summary.failures === 0 && options.ghOnlyFail) {
          if (!options.ghQuiet) {
              console.log('Github: No failures reported.');
          }
          return false;
      }
  
      var post = {
          method: 'POST',
          headers: {
              'Content-Type': 'application/json',
              'User-Agent': 'git CL - node'
          },
          json: {
              body: buildGithubBody(summary, results, reportUrl, failStatus)
          }
      };
  
      if (Object.keys(options).indexOf('ghNetrc') !== -1) {
          options = parseNetrc(options);
      }
  
      if (options.ghApiKey) {
          post.headers.Authorization = 'token ' + options.ghApiKey;
      } else if (!(options.ghUser && options.ghPass)) {
          throw new Error('Github: No valid credentials specified.');
      }
  
      post.uri = buildRepoUrl(options);
  
      request(post, function (error) {
          if(error) {
              throw new Error('Github: Error while posting results\n' + error);
          }
  
          if (!options.ghQuiet) {
              console.log('Github: Results reported to github!');
          }
          done();
      });
  }