Compare commits

...

6 Commits

Author SHA1 Message Date
Edoardo Pirovano b9c5f2f342 Test workflow with feature flag and hardcoded in single DB 2022-06-15 16:00:17 +01:00
Edoardo Pirovano bd765a4851 Update default CodeQL version to 2.9.4 2022-06-15 14:06:17 +01:00
Andrew Eisenberg 81b419c908 Merge pull request #1097 from github/aeisenberg/js-yaml-typings 2022-06-15 05:56:07 +02:00
Andrew Eisenberg 0efcf74ce0 Add typings for js-yaml 2022-06-14 07:50:47 -07:00
Andrew Eisenberg 29a2159db1 Merge pull request #1095 from github/aeisenberg/use-del
Avoid use of rmdir
2022-06-14 02:55:00 +02:00
Andrew Eisenberg f7c46e5cbc Avoid use of rmdir
This is a deprecated method on node v16.
2022-06-13 22:40:09 +00:00
24 changed files with 311 additions and 84 deletions
+9 -47
View File
@@ -13,6 +13,7 @@ on:
- main - main
- releases/v1 - releases/v1
- releases/v2 - releases/v2
- edoardo/test-workflow
pull_request: pull_request:
types: types:
- opened - opened
@@ -25,30 +26,8 @@ jobs:
strategy: strategy:
matrix: matrix:
include: include:
- os: ubuntu-latest
version: stable-20210308
- os: macos-latest
version: stable-20210308
- os: ubuntu-latest
version: stable-20210319
- os: macos-latest
version: stable-20210319
- os: ubuntu-latest
version: stable-20210809
- os: macos-latest
version: stable-20210809
- os: ubuntu-latest
version: cached
- os: macos-latest
version: cached
- os: ubuntu-latest
version: latest
- os: macos-latest - os: macos-latest
version: latest version: latest
- os: ubuntu-latest
version: nightly-latest
- os: macos-latest
version: nightly-latest
name: Debug artifact upload name: Debug artifact upload
timeout-minutes: 45 timeout-minutes: 45
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
@@ -63,34 +42,17 @@ jobs:
- uses: ./../action/init - uses: ./../action/init
with: with:
tools: ${{ steps.prepare-test.outputs.tools-url }} tools: ${{ steps.prepare-test.outputs.tools-url }}
debug: true languages: csharp, go
debug-artifact-name: my-debug-artifacts
debug-database-name: my-db
- name: Build code - name: Build code
shell: bash shell: bash
run: ./build.sh run: ./build.sh
- uses: ./../action/analyze - uses: ./../action/analyze
id: analysis id: analysis
- uses: actions/download-artifact@v3 timeout-minutes: 1
env:
SEMMLE_DEBUG_TRACER: 10000
- uses: actions/upload-artifact@v3
if: always()
with: with:
name: my-debug-artifacts-${{ matrix.os }}-${{ matrix.version }} name: debug-artifact-log
- shell: bash path: /Users/runner/work/_temp/codeql_databases/
run: |
LANGUAGES="cpp csharp go java javascript python"
for language in $LANGUAGES; do
echo "Checking $language"
if [[ ! -f "$language.sarif" ]] ; then
echo "Missing a SARIF file for $language"
exit 1
fi
if [[ ! -f "my-db-$language.zip" ]] ; then
echo "Missing a database bundle for $language"
exit 1
fi
if [[ ! -d "$language/log" ]] ; then
echo "Missing logs for $language"
exit 1
fi
done
env:
INTERNAL_CODEQL_ACTION_DEBUG_LOC: true
+1 -1
View File
@@ -2,7 +2,7 @@
## [UNRELEASED] ## [UNRELEASED]
No user facing changes. - Update default CodeQL bundle version to 2.9.4. [#1100](https://github.com/github/codeql-action/pull/1100)
## 2.1.12 - 01 Jun 2022 ## 2.1.12 - 01 Jun 2022
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+5 -6
View File
@@ -18,11 +18,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
__setModuleDefault(result, mod); __setModuleDefault(result, mod);
return result; return result;
}; };
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
exports.runCleanup = exports.runFinalize = exports.runQueries = exports.CodeQLAnalysisError = void 0; exports.runCleanup = exports.runFinalize = exports.runQueries = exports.CodeQLAnalysisError = void 0;
const fs = __importStar(require("fs")); const fs = __importStar(require("fs"));
const path = __importStar(require("path")); const path = __importStar(require("path"));
const toolrunner = __importStar(require("@actions/exec/lib/toolrunner")); const toolrunner = __importStar(require("@actions/exec/lib/toolrunner"));
const del_1 = __importDefault(require("del"));
const yaml = __importStar(require("js-yaml")); const yaml = __importStar(require("js-yaml"));
const analysisPaths = __importStar(require("./analysis-paths")); const analysisPaths = __importStar(require("./analysis-paths"));
const codeql_1 = require("./codeql"); const codeql_1 = require("./codeql");
@@ -244,13 +248,8 @@ async function runFinalize(outputDir, threadsFlag, memoryFlag, config, logger) {
// Delete the tracer config env var to avoid tracing ourselves // Delete the tracer config env var to avoid tracing ourselves
delete process.env[sharedEnv.ODASA_TRACER_CONFIGURATION]; delete process.env[sharedEnv.ODASA_TRACER_CONFIGURATION];
} }
// After switching to Node16, this entire block can be replaced with `await fs.promises.rm(outputDir, { recursive: true, force: true });`.
try { try {
await fs.promises.rmdir(outputDir, { await (0, del_1.default)(outputDir, { force: true });
recursive: true,
maxRetries: 5,
retryDelay: 2000,
});
} }
catch (error) { catch (error) {
if ((error === null || error === void 0 ? void 0 : error.code) !== "ENOENT") { if ((error === null || error === void 0 ? void 0 : error.code) !== "ENOENT") {
+1 -1
View File
File diff suppressed because one or more lines are too long
Generated
+1
View File
@@ -538,6 +538,7 @@ async function getCodeQLForCmd(cmd, checkVersion) {
"database", "database",
"trace-command", "trace-command",
...getExtraOptionsFromEnv(["database", "trace-command"]), ...getExtraOptionsFromEnv(["database", "trace-command"]),
"--internal-use-lua-tracing",
databasePath, databasePath,
"--", "--",
traceCommand, traceCommand,
+1 -1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,3 +1,3 @@
{ {
"bundleVersion": "codeql-bundle-20220527" "bundleVersion": "codeql-bundle-20220615"
} }
+6
View File
@@ -469,6 +469,12 @@
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
"dev": true "dev": true
}, },
"node_modules/@types/js-yaml": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz",
"integrity": "sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==",
"dev": true
},
"node_modules/@types/json-schema": { "node_modules/@types/json-schema": {
"version": "7.0.8", "version": "7.0.8",
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz",
Generated Vendored Executable
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) Microsoft Corporation.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE
Generated Vendored Executable
+16
View File
@@ -0,0 +1,16 @@
# Installation
> `npm install --save @types/js-yaml`
# Summary
This package contains type definitions for js-yaml (https://github.com/nodeca/js-yaml).
# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/js-yaml.
### Additional Details
* Last updated: Fri, 19 Nov 2021 18:01:12 GMT
* Dependencies: none
* Global values: `jsyaml`
# Credits
These definitions were written by [Bart van der Schoor](https://github.com/Bartvds), [Sebastian Clausen](https://github.com/sclausen), [ExE Boss](https://github.com/ExE-Boss), [Armaan Tobaccowalla](https://github.com/ArmaanT), and [Linus Unnebäck](https://github.com/LinusU).
Generated Vendored Executable
+2
View File
@@ -0,0 +1,2 @@
export * from "./index.js";
export { default } from "./index.js";
Generated Vendored Executable
+154
View File
@@ -0,0 +1,154 @@
// Type definitions for js-yaml 4.0
// Project: https://github.com/nodeca/js-yaml
// Definitions by: Bart van der Schoor <https://github.com/Bartvds>
// Sebastian Clausen <https://github.com/sclausen>
// ExE Boss <https://github.com/ExE-Boss>
// Armaan Tobaccowalla <https://github.com/ArmaanT>
// Linus Unnebäck <https://github.com/LinusU>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.2
export as namespace jsyaml;
export function load(str: string, opts?: LoadOptions): unknown;
export class Type {
constructor(tag: string, opts?: TypeConstructorOptions);
kind: 'sequence' | 'scalar' | 'mapping' | null;
resolve(data: any): boolean;
construct(data: any, type?: string): any;
instanceOf: object | null;
predicate: ((data: object) => boolean) | null;
represent: ((data: object) => any) | { [x: string]: (data: object) => any } | null;
representName: ((data: object) => any) | null;
defaultStyle: string | null;
multi: boolean;
styleAliases: { [x: string]: any };
}
export class Schema {
constructor(definition: SchemaDefinition | Type[] | Type);
extend(types: SchemaDefinition | Type[] | Type): Schema;
}
export function loadAll(str: string, iterator?: null, opts?: LoadOptions): unknown[];
export function loadAll(str: string, iterator: (doc: unknown) => void, opts?: LoadOptions): void;
export function dump(obj: any, opts?: DumpOptions): string;
export interface LoadOptions {
/** string to be used as a file path in error/warning messages. */
filename?: string | undefined;
/** function to call on warning messages. */
onWarning?(this: null, e: YAMLException): void;
/** specifies a schema to use. */
schema?: Schema | undefined;
/** compatibility with JSON.parse behaviour. */
json?: boolean | undefined;
/** listener for parse events */
listener?(this: State, eventType: EventType, state: State): void;
}
export type EventType = 'open' | 'close';
export interface State {
input: string;
filename: string | null;
schema: Schema;
onWarning: (this: null, e: YAMLException) => void;
json: boolean;
length: number;
position: number;
line: number;
lineStart: number;
lineIndent: number;
version: null | number;
checkLineBreaks: boolean;
kind: string;
result: any;
implicitTypes: Type[];
}
export interface DumpOptions {
/** indentation width to use (in spaces). */
indent?: number | undefined;
/** when true, will not add an indentation level to array elements */
noArrayIndent?: boolean | undefined;
/** do not throw on invalid types (like function in the safe schema) and skip pairs and single values with such types. */
skipInvalid?: boolean | undefined;
/** specifies level of nesting, when to switch from block to flow style for collections. -1 means block style everwhere */
flowLevel?: number | undefined;
/** Each tag may have own set of styles. - "tag" => "style" map. */
styles?: { [x: string]: any } | undefined;
/** specifies a schema to use. */
schema?: Schema | undefined;
/** if true, sort keys when dumping YAML. If a function, use the function to sort the keys. (default: false) */
sortKeys?: boolean | ((a: any, b: any) => number) | undefined;
/** set max line width. (default: 80) */
lineWidth?: number | undefined;
/** if true, don't convert duplicate objects into references (default: false) */
noRefs?: boolean | undefined;
/** if true don't try to be compatible with older yaml versions. Currently: don't quote "yes", "no" and so on, as required for YAML 1.1 (default: false) */
noCompatMode?: boolean | undefined;
/**
* if true flow sequences will be condensed, omitting the space between `key: value` or `a, b`. Eg. `'[a,b]'` or `{a:{b:c}}`.
* Can be useful when using yaml for pretty URL query params as spaces are %-encoded. (default: false).
*/
condenseFlow?: boolean | undefined;
/** strings will be quoted using this quoting style. If you specify single quotes, double quotes will still be used for non-printable characters. (default: `'`) */
quotingType?: "'" | '"' | undefined;
/** if true, all non-key strings will be quoted even if they normally don't need to. (default: false) */
forceQuotes?: boolean | undefined;
/** callback `function (key, value)` called recursively on each key/value in source object (see `replacer` docs for `JSON.stringify`). */
replacer?: ((key: string, value: any) => any) | undefined;
}
export interface TypeConstructorOptions {
kind?: 'sequence' | 'scalar' | 'mapping' | undefined;
resolve?: ((data: any) => boolean) | undefined;
construct?: ((data: any, type?: string) => any) | undefined;
instanceOf?: object | undefined;
predicate?: ((data: object) => boolean) | undefined;
represent?: ((data: object) => any) | { [x: string]: (data: object) => any } | undefined;
representName?: ((data: object) => any) | undefined;
defaultStyle?: string | undefined;
multi?: boolean | undefined;
styleAliases?: { [x: string]: any } | undefined;
}
export interface SchemaDefinition {
implicit?: Type[] | undefined;
explicit?: Type[] | undefined;
}
/** only strings, arrays and plain objects: http://www.yaml.org/spec/1.2/spec.html#id2802346 */
export let FAILSAFE_SCHEMA: Schema;
/** only strings, arrays and plain objects: http://www.yaml.org/spec/1.2/spec.html#id2802346 */
export let JSON_SCHEMA: Schema;
/** same as JSON_SCHEMA: http://www.yaml.org/spec/1.2/spec.html#id2804923 */
export let CORE_SCHEMA: Schema;
/** all supported YAML types */
export let DEFAULT_SCHEMA: Schema;
export interface Mark {
buffer: string;
column: number;
line: number;
name: string;
position: number;
snippet: string;
}
export class YAMLException extends Error {
constructor(reason?: string, mark?: Mark);
toString(compact?: boolean): string;
name: string;
reason: string;
message: string;
mark: Mark;
}
Generated Vendored Executable
+53
View File
@@ -0,0 +1,53 @@
{
"name": "@types/js-yaml",
"version": "4.0.5",
"description": "TypeScript definitions for js-yaml",
"homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/js-yaml",
"license": "MIT",
"contributors": [
{
"name": "Bart van der Schoor",
"url": "https://github.com/Bartvds",
"githubUsername": "Bartvds"
},
{
"name": "Sebastian Clausen",
"url": "https://github.com/sclausen",
"githubUsername": "sclausen"
},
{
"name": "ExE Boss",
"url": "https://github.com/ExE-Boss",
"githubUsername": "ExE-Boss"
},
{
"name": "Armaan Tobaccowalla",
"url": "https://github.com/ArmaanT",
"githubUsername": "ArmaanT"
},
{
"name": "Linus Unnebäck",
"url": "https://github.com/LinusU",
"githubUsername": "LinusU"
}
],
"main": "",
"types": "index.d.ts",
"repository": {
"type": "git",
"url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git",
"directory": "types/js-yaml"
},
"scripts": {},
"dependencies": {},
"typesPublisherContentHash": "6f40877154edac83ffa22d53a6aca74f151a0d094074c81ce7fb21df57ea5725",
"typeScriptVersion": "3.8",
"exports": {
".": {
"types": {
"import": "./index.d.mts",
"default": "./index.d.ts"
}
}
}
}
+13
View File
@@ -38,6 +38,7 @@
}, },
"devDependencies": { "devDependencies": {
"@ava/typescript": "3.0.1", "@ava/typescript": "3.0.1",
"@types/js-yaml": "^4.0.5",
"@types/long": "4.0.1", "@types/long": "4.0.1",
"@types/node": "16.11.22", "@types/node": "16.11.22",
"@types/semver": "^7.3.8", "@types/semver": "^7.3.8",
@@ -521,6 +522,12 @@
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
"dev": true "dev": true
}, },
"node_modules/@types/js-yaml": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz",
"integrity": "sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==",
"dev": true
},
"node_modules/@types/json-schema": { "node_modules/@types/json-schema": {
"version": "7.0.8", "version": "7.0.8",
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz",
@@ -5885,6 +5892,12 @@
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
"dev": true "dev": true
}, },
"@types/js-yaml": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz",
"integrity": "sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==",
"dev": true
},
"@types/json-schema": { "@types/json-schema": {
"version": "7.0.8", "version": "7.0.8",
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz",
+1
View File
@@ -53,6 +53,7 @@
], ],
"devDependencies": { "devDependencies": {
"@ava/typescript": "3.0.1", "@ava/typescript": "3.0.1",
"@types/js-yaml": "^4.0.5",
"@types/long": "4.0.1", "@types/long": "4.0.1",
"@types/node": "16.11.22", "@types/node": "16.11.22",
"@types/semver": "^7.3.8", "@types/semver": "^7.3.8",
+12 -12
View File
@@ -269,7 +269,7 @@ test("getWorkflowErrors() when on.push is correct with empty objects", (t) => {
on: on:
push: push:
pull_request: pull_request:
`) `) as actionsutil.Workflow
); );
t.deepEqual(...errorCodes(errors, [])); t.deepEqual(...errorCodes(errors, []));
@@ -441,7 +441,7 @@ on:
push: push:
branches: ["main"] branches: ["main"]
pull_request: pull_request:
`) `) as actionsutil.Workflow
); );
t.deepEqual( t.deepEqual(
@@ -559,7 +559,7 @@ test("getWorkflowErrors() when branches contain dots", (t) => {
pull_request: pull_request:
# The branches below must be a subset of the branches above # The branches below must be a subset of the branches above
branches: [4.1, master] branches: [4.1, master]
`) `) as actionsutil.Workflow
); );
t.deepEqual(...errorCodes(errors, [])); t.deepEqual(...errorCodes(errors, []));
@@ -575,7 +575,7 @@ on:
pull_request: pull_request:
# The branches below must be a subset of the branches above # The branches below must be a subset of the branches above
branches: [master] branches: [master]
`) `) as actionsutil.Workflow
); );
t.deepEqual(...errorCodes(errors, [])); t.deepEqual(...errorCodes(errors, []));
@@ -604,7 +604,7 @@ jobs:
test3: test3:
steps: [] steps: []
`) `) as actionsutil.Workflow
); );
t.deepEqual( t.deepEqual(
@@ -635,7 +635,7 @@ jobs:
test3: test3:
steps: [] steps: []
`) `) as actionsutil.Workflow
); );
t.deepEqual(...errorCodes(errors, [])); t.deepEqual(...errorCodes(errors, []));
@@ -645,7 +645,7 @@ test("getWorkflowErrors() when on is missing", (t) => {
const errors = actionsutil.getWorkflowErrors( const errors = actionsutil.getWorkflowErrors(
yaml.load(` yaml.load(`
name: "CodeQL" name: "CodeQL"
`) `) as actionsutil.Workflow
); );
t.deepEqual(...errorCodes(errors, [])); t.deepEqual(...errorCodes(errors, []));
@@ -658,7 +658,7 @@ test("getWorkflowErrors() with a different on setup", (t) => {
yaml.load(` yaml.load(`
name: "CodeQL" name: "CodeQL"
on: "workflow_dispatch" on: "workflow_dispatch"
`) `) as actionsutil.Workflow
), ),
[] []
) )
@@ -670,7 +670,7 @@ on: "workflow_dispatch"
yaml.load(` yaml.load(`
name: "CodeQL" name: "CodeQL"
on: [workflow_dispatch] on: [workflow_dispatch]
`) `) as actionsutil.Workflow
), ),
[] []
) )
@@ -683,7 +683,7 @@ on: [workflow_dispatch]
name: "CodeQL" name: "CodeQL"
on: on:
workflow_dispatch: {} workflow_dispatch: {}
`) `) as actionsutil.Workflow
), ),
[] []
) )
@@ -699,7 +699,7 @@ name: "CodeQL"
on: on:
push: push:
branches: [master] branches: [master]
`) `) as actionsutil.Workflow
), ),
[] []
) )
@@ -711,7 +711,7 @@ on:
yaml.load(` yaml.load(`
name: "CodeQL" name: "CodeQL"
on: ["push"] on: ["push"]
`) `) as actionsutil.Workflow
), ),
[] []
) )
+2 -2
View File
@@ -191,7 +191,7 @@ interface WorkflowTriggers {
pull_request?: WorkflowTrigger | null; pull_request?: WorkflowTrigger | null;
} }
interface Workflow { export interface Workflow {
jobs?: { [key: string]: WorkflowJob }; jobs?: { [key: string]: WorkflowJob };
on?: string | string[] | WorkflowTriggers; on?: string | string[] | WorkflowTriggers;
} }
@@ -411,7 +411,7 @@ export async function getWorkflow(): Promise<Workflow> {
relativePath relativePath
); );
return yaml.load(fs.readFileSync(absolutePath, "utf-8")); return yaml.load(fs.readFileSync(absolutePath, "utf-8")) as Workflow;
} }
/** /**
+3 -7
View File
@@ -2,6 +2,7 @@ import * as fs from "fs";
import * as path from "path"; import * as path from "path";
import * as toolrunner from "@actions/exec/lib/toolrunner"; import * as toolrunner from "@actions/exec/lib/toolrunner";
import del from "del";
import * as yaml from "js-yaml"; import * as yaml from "js-yaml";
import * as analysisPaths from "./analysis-paths"; import * as analysisPaths from "./analysis-paths";
@@ -151,7 +152,7 @@ function dbIsFinalized(
try { try {
const dbInfo = yaml.load( const dbInfo = yaml.load(
fs.readFileSync(path.resolve(dbPath, "codeql-database.yml"), "utf8") fs.readFileSync(path.resolve(dbPath, "codeql-database.yml"), "utf8")
); ) as { inProgress?: boolean };
return !("inProgress" in dbInfo); return !("inProgress" in dbInfo);
} catch (e) { } catch (e) {
logger.warning( logger.warning(
@@ -435,13 +436,8 @@ export async function runFinalize(
delete process.env[sharedEnv.ODASA_TRACER_CONFIGURATION]; delete process.env[sharedEnv.ODASA_TRACER_CONFIGURATION];
} }
// After switching to Node16, this entire block can be replaced with `await fs.promises.rm(outputDir, { recursive: true, force: true });`.
try { try {
await fs.promises.rmdir(outputDir, { await del(outputDir, { force: true });
recursive: true,
maxRetries: 5,
retryDelay: 2000,
} as any);
} catch (error: any) { } catch (error: any) {
if (error?.code !== "ENOENT") { if (error?.code !== "ENOENT") {
throw error; throw error;
+1
View File
@@ -829,6 +829,7 @@ async function getCodeQLForCmd(
"database", "database",
"trace-command", "trace-command",
...getExtraOptionsFromEnv(["database", "trace-command"]), ...getExtraOptionsFromEnv(["database", "trace-command"]),
"--internal-use-lua-tracing",
databasePath, databasePath,
"--", "--",
traceCommand, traceCommand,
+4 -2
View File
@@ -1448,7 +1448,7 @@ function getLocalConfig(configFile: string, workspacePath: string): UserConfig {
throw new Error(getConfigFileDoesNotExistErrorMessage(configFile)); throw new Error(getConfigFileDoesNotExistErrorMessage(configFile));
} }
return yaml.load(fs.readFileSync(configFile, "utf8")); return yaml.load(fs.readFileSync(configFile, "utf8")) as UserConfig;
} }
async function getRemoteConfig( async function getRemoteConfig(
@@ -1483,7 +1483,9 @@ async function getRemoteConfig(
throw new Error(getConfigFileFormatInvalidMessage(configFile)); throw new Error(getConfigFileFormatInvalidMessage(configFile));
} }
return yaml.load(Buffer.from(fileContents, "base64").toString("binary")); return yaml.load(
Buffer.from(fileContents, "base64").toString("binary")
) as UserConfig;
} }
/** /**
+1 -1
View File
@@ -1,3 +1,3 @@
{ {
"bundleVersion": "codeql-bundle-20220527" "bundleVersion": "codeql-bundle-20220615"
} }