Update error message and remove feature flag preloading

Discussion here https://github.com/github/codeql-action/pull/882#discussion_r789924177
shows that properly handling preloading feature flag errors is complex
and the benefit we get from it does not offset the complexity.
This commit is contained in:
Andrew Eisenberg 2022-01-21 11:20:48 -08:00
parent e175dea369
commit f18151cc59
13 changed files with 16 additions and 71 deletions

14
lib/feature-flags.js generated
View file

@ -43,9 +43,6 @@ class GitHubFeatureFlags {
}
return response;
}
async preloadFeatureFlags() {
await this.getApiResponse();
}
async getApiResponse() {
const loadApiResponse = async () => {
// Do nothing when not running against github.com
@ -62,12 +59,11 @@ class GitHubFeatureFlags {
return response.data;
}
catch (e) {
if (e instanceof Error &&
e.message.includes("Resource not accessible by integration")) {
throw new Error(`Resource not accessible by integration. This usually means that your ` +
`workflow is missing the required security-events write permissions. ` +
`See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions ` +
`for more information.`);
if (util.isHTTPError(e) && e.status === 403) {
this.logger.warning("This run of the CodeQL Action does not have permission to access Code Scanning API endpoints. " +
"As a result, it will not be opted into any experimental features. " +
"This could be because the Action is running on a pull request from a fork. If not, " +
`please ensure the Action has the 'security-events: write' permission. Details: ${e}`);
}
else {
// Some feature flags, such as `ml_powered_queries_enabled` affect the produced alerts.