<commit_before>'use strict';

module.exports = (ciDrivers) => {
  return (driverName, settings, jobName, params, cb) => {
    const ciDriver = ciDrivers[driverName];
    if (!ciDriver) return cb(new Error('invalid CI driver'));
    ciDriver(settings, jobName, params, (err, success) => {
      if (err) return cb(err);
      if (!success) return cb(new Error('CI job failed'));
      cb();
    });
  };
};
<commit_msg>Add logs to callCIDrivers<commit_after>'use strict';
const logger = require('../../lib/logger');

module.exports = (ciDrivers) => {
  return (driverName, settings, jobName, params, cb) => {
    const ciDriver = ciDrivers[driverName];
    if (!ciDriver) return cb(new Error('invalid CI driver'));
    ciDriver(settings, jobName, params, (err, success) => {
      const error = !success && !err ? new Error('CI job failed') : err;
      if (error) {
        logger.error('CI job failed', { error, driverName, settings, jobName, params });
        return cb(error);
      }
      cb();
    });
  };
};

{'fraction_non_alphanumeric': 0.16912487708947885, 'fraction_numerical': 0.0, 'mean_word_length': 3.3879310344827585, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2619410', 'n_tokens_mistral': 321, 'n_tokens_neox': 313, 'n_words': 90}