github / github/vscode-github-actions

Unable to find reusable workflow

未關閉
#254 23 則留言 82 個 reaction 已指派 0 人 在 GitHub 檢視
bug
主要語言
TypeScript
星號
660
分支
213
PR 合併指標
30 天內沒有已合併 PR

描述

**Describe the bug**
When leveraging local reusable workflows, i.e. referencing other workflows inside of the `.github/workflows/` directory, the extension claims that it cannot find the reusable workflow. The reusable workflow is indeed in the right place, and it executes successfully by Github Actions.

**To Reproduce**
Steps to reproduce the behavior:
1. With the following directory structure:
```dir
.github/workflows/
- base.yml
- reusable.yml
```
And the following workflows:
```yml
# base.yml
name: base
on:
pull_request:

permissions:
contents: read
id-token: write

jobs:
reusable:
uses: ./.github/workflows/reusable.yml
with:
EXAMPEL: example
```
```yml
# reusable.yml
name: reusable
on:
workflow_call:
inputs:
EXAMPLE:
description: Example.
type: string
required: true

permissions:
contents: read
id-token: write

jobs:
reusable:
name: Example
runs-on: ubuntu-latest
steps:
- name: Example step
run: echo "${{ inputs.EXAMPLE }}"
```
2. Go to `base.yml` in VS Code.
3. The linting error `Unable to find reusable workflow` is presented. In addition, this is the output from `Github Actions Language`:
```
[Error - 09:26:39] Request textDocument/documentLink failed.
Message: Request textDocument/documentLink failed with message: Invalid file reference: .github/workflows/reusable.yml
Code: -32603
```

**Expected behavior**
As this is indeed a valid file reference according to [github documentation](https://docs.github.com/en/actions/using-workflows/reusing-workflows#calling-a-reusable-workflow), and since it does indeed execute successfully, this error should not occur.

**Screenshots**
![Screenshot 2023-09-01 at 09 39 51](https://github.com/github/vscode-github-actions/assets/11174653/860cbc0f-b501-47ea-9c87-63dbf94475f5)

**Extension Version**
`v0.26.1`

貢獻指南

開啟貢獻指南

研究方向

Reproduce the failure in VS Code using base.yml and .github/workflows/reusable.yml, then inspect the documentLink request and the reusable-workflow reference handling. Confirm that the local path is accepted, the linting error disappears, and the document link resolves without an Invalid file reference error.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
github-actions, typescript, vscode
領域
ci-cd, tooling
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。