github / github/vscode-github-actions
Workflow dispatch fails for workflows in git submodules
- Dominant language
- TypeScript
- Stars
- 660
- Forks
- 213
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the bug**
When attempting to trigger a GitHub Actions workflow located in a git submodule (e.g., `host/.github/workflows/deploy.yml`), the extension fails with a 404 "Not Found" error. The extension incorrectly attempts to dispatch the workflow to the parent repository instead of the submodule's separate GitHub repository.
**To Reproduce**
Steps to reproduce the behavior:
1. Have a git repository with a submodule that has its own separate GitHub repository
2. The submodule contains GitHub Actions workflows in `.github/workflows/`
3. Open the workflow file in VSCode
4. Right-click and select "Trigger Run" or use the GitHub Actions explorer
5. See error: `404 Not Found` or similar repository not found error
**Expected behavior**
The extension should:
1. Detect that the workflow is located in a git submodule
2. Identify the correct GitHub repository for that submodule
3. Dispatch the workflow to the correct repository, not the parent
**Screenshots**
The error appears in the VSCode debug console when attempting to dispatch a workflow in the web submodule:
The extension is attempting to dispatch to the parent repository instead of the submodule's separate GitHub repository.
A user-facing error notification is displayed:
**Note:** Request IDs and repository names in the screenshot have been redacted for privacy.
**Extension Version**
`v0.31.5`
**Additional context**
This occurs in monorepo setups where submodules are separate GitHub repositories with their own workflows.
```
monorepo/ (Parent repo: github.com/owner/monorepo)
└── submodule/ (Submodule: github.com/owner/submodule)
└── .github/workflows/
└── deploy.yml ← Should dispatch to submodule repo
```
The extension's workflow dispatch logic needs to be aware of git submodules and route dispatch requests to the appropriate repository.
Contributor guide
Research direction
Reproduce the failure with a parent repository containing a submodule workflow at .github/workflows/deploy.yml, using Trigger Run or the GitHub Actions explorer. Trace the workflow-dispatch path and how the opened file's repository is identified. Done means dispatching targets the submodule repository and the 404 no longer occurs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- git, github-actions, typescript, vscode
- Domain
- ci-cd, devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100