diff --git a/languageservice/src/complete.expressions.test.ts b/languageservice/src/complete.expressions.test.ts index 16ac5a4..3496b1e 100644 --- a/languageservice/src/complete.expressions.test.ts +++ b/languageservice/src/complete.expressions.test.ts @@ -1110,7 +1110,7 @@ jobs: `; const result = await complete(...getPositionFromCursor(input), {contextProviderConfig}); - expect(result.map(x => x.label)).toEqual(["container", "services", "status"]); + expect(result.map(x => x.label)).toEqual(["check_run_id", "container", "services", "status"]); }); it("job context is suggested within a job output", async () => { diff --git a/languageservice/src/context-providers/job.ts b/languageservice/src/context-providers/job.ts index ac6ce21..e85ceee 100644 --- a/languageservice/src/context-providers/job.ts +++ b/languageservice/src/context-providers/job.ts @@ -35,6 +35,9 @@ export function getJobContext(workflowContext: WorkflowContext): DescriptionDict // Status jobContext.add("status", new data.Null()); + // Check run ID + jobContext.add("check_run_id", new data.Null()); + return jobContext; } diff --git a/languageservice/src/validate.expressions.test.ts b/languageservice/src/validate.expressions.test.ts index 6b5bc5d..3530290 100644 --- a/languageservice/src/validate.expressions.test.ts +++ b/languageservice/src/validate.expressions.test.ts @@ -417,6 +417,21 @@ jobs: expect(result).toEqual([]); }); + it("job.check_run_id", async () => { + const input = ` +on: push + +jobs: + test: + runs-on: ubuntu-latest + steps: + - run: echo \${{ job.check_run_id }} +`; + const result = await validate(createDocument("wf.yaml", input)); + + expect(result).toEqual([]); + }); + it("job.services.", async () => { const input = ` on: push