function appendDutyCycle()

in index.js [67:89]


function appendDutyCycle({ component, date, triagerName, triagerData }) {
  const filePath = `${DIST_DIR}/${component}.json`;
  if (!fs.existsSync(filePath)) {
    fs.writeFileSync(filePath, '{"triagers":{}, "duty-start-dates":{}}');
  }

  let data = fs.readFileSync(filePath);
  const calendar = JSON.parse(data);
  const triagers = calendar[TRIAGERS_KEY];
  const dutyStartDates = calendar[DUTY_START_DATES_KEY];
  if (!dutyStartDates || !triagers) {
    throw `\nFATAL ERROR: Invalid data in calendar ${component}.json`;
  }

  if (!triagers[triagerName]) {
    triagers[triagerName] = triagerData;
  }

  dutyStartDates[date] = triagerName;

  data = JSON.stringify(calendar, undefined, INDENT);
  fs.writeFileSync(filePath, data);
}