diff --git a/actions-languageserver/src/index.ts b/actions-languageserver/src/index.ts index 2c84793..19839e2 100644 --- a/actions-languageserver/src/index.ts +++ b/actions-languageserver/src/index.ts @@ -93,7 +93,11 @@ documents.onDidChangeContent((change) => { async function validateTextDocument(textDocument: TextDocument): Promise { const result = await validate( textDocument, - valueProviders(sessionToken, repoWorkspaceMap) + valueProviders( + sessionToken, + repos.find((repo) => textDocument.uri.startsWith(repo.workspaceUri)), + cache + ) ); connection.sendDiagnostics({ uri: textDocument.uri, diagnostics: result }); diff --git a/actions-languageserver/src/value-providers.ts b/actions-languageserver/src/value-providers.ts index dbbb60b..fc537be 100644 --- a/actions-languageserver/src/value-providers.ts +++ b/actions-languageserver/src/value-providers.ts @@ -9,9 +9,13 @@ import { getRunnerLabels } from "./value-providers/runs-on"; export function valueProviders( sessionToken: string | undefined, - repoContext: RepositoryContext, + repoContext: RepositoryContext | undefined, cache: TTLCache ): ValueProviderConfig { + if (!repoContext) { + return {}; + } + return { "job-environment": passOctoKit( sessionToken, diff --git a/actions-languageserver/src/value-providers/runs-on.ts b/actions-languageserver/src/value-providers/runs-on.ts index d6cdf29..ed869fb 100644 --- a/actions-languageserver/src/value-providers/runs-on.ts +++ b/actions-languageserver/src/value-providers/runs-on.ts @@ -29,9 +29,11 @@ export async function getRunnerLabels( undefined, () => fetchRunnerLabels(client, owner, name) ); + for (const label of defaultLabels) { repoLabels.add(label); } + return Array.from(repoLabels).map((label) => ({ label })); }