export async function fetchIterations()

in src/server/queryUtils.ts [400:439]


export async function fetchIterations(): Promise<IterationLookup> {
  return new Promise((resolve, reject) => {
    try {
      request(
        {
          uri: BZ_ITERATIONS_URI,
          method: "GET",
          headers: process.env.BUGZY_BZ_API_KEY
            ? { "X-BUGZILLA-API-KEY": process.env.BUGZY_BZ_API_KEY }
            : {},
        },
        (error, resp, body) => {
          if (error) {
            console.log(error);
            reject(error);
            return;
          }
          let parsed: FieldsResponse;
          try {
            parsed = JSON.parse(body);
          } catch (e) {
            console.log(body);
            console.error(e);
            reject(e);
            return;
          }
          resolve(
            lookupIterations(
              parsed.fields
                .find(f => f.name === ITERATION_FIELD_NAME)
                ?.values.map(v => v.name)
            )
          );
        }
      );
    } catch (e) {
      reject(e);
    }
  });
}