useNightly: getQodanaBooleanArg()

in gitlab/src/utils.ts [53:99]


    useNightly: getQodanaBooleanArg('USE_NIGHTLY', false),
    postComment: getQodanaBooleanArg('PUBLISH_COMMENT', true),
    useCaches: getQodanaBooleanArg('USE_CACHES', true),
    // not used by GitLab
    uploadSarif: false,
    useAnnotations: false,
    additionalCacheKey: '',
    primaryCacheKey: '',
    cacheDefaultBranchOnly: false,
    githubToken: '',
    artifactName: '',
    workingDirectory: ''
  }
}

function baseDir(): string {
  const basePath = process.env.CI_BUILDS_DIR || os.tmpdir()
  return `${basePath}/.qodana`
}

function getQodanaStringArg(name: string, def: string): string {
  return process.env[`QODANA_${name}`] || def
}

function getQodanaBooleanArg(name: string, def: boolean): boolean {
  return def
    ? process.env[`QODANA_${name}`] !== 'false'
    : process.env[`QODANA_${name}`] === 'true'
}

function getQodanaInputArg(name: string): string | undefined {
  return process.env[`INPUT_${name}`]
}

interface CommandOutput {
  returnCode: number
  stdout: string
  stderr: string
}

export async function execAsync(
  executable: string,
  args: string[],
  ignoreReturnCode: boolean
): Promise<CommandOutput> {
  const command = `${executable} ${args.join(' ')}`
  return new Promise((resolve, reject) => {