Fix validate-workflows target: use Docker-based actionlint#8012
Merged
Fix validate-workflows target: use Docker-based actionlint#8012
Conversation
The validate-workflows Makefile target was failing because it tried to run actionlint directly without ensuring it was installed in PATH. This caused the error: "actionlint: not found". Changes: - Add check to ensure actionlint is installed before running - Properly set PATH to include $(go env GOPATH)/bin for actionlint - Provide helpful error message directing users to run 'make tools' - Use || true to allow validation to complete even with linting issues The target now: 1. Checks if actionlint is installed (in PATH or GOPATH/bin) 2. Shows clear error if not: "actionlint not found. Run 'make tools'" 3. Runs actionlint on all .lock.yml files with proper PATH 4. Reports linting issues without failing the build Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
- Document that validate-workflows requires 'make tools' to install actionlint - Remove outdated 'validate' target from help (target doesn't exist) - Clarify actionlint target dependencies Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
All actionlint integration points verified and working: - validate-workflows target: Fixed PATH and installation check - actionlint target: Uses Docker via gh-aw compile (working) - make tools: Successfully installs actionlint binary - gh-aw compile --actionlint: Docker-based linting (working) The root cause was the validate-workflows Makefile target trying to run actionlint without checking if it was installed or setting up PATH correctly. Testing completed: ✅ Unit tests passing ✅ Build succeeds ✅ validate-workflows with and without actionlint ✅ actionlint Docker integration ✅ Help text updated Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Debug and fix actionlint compilation failures
Fix validate-workflows target: actionlint not in PATH
Dec 29, 2025
Changed validate-workflows to use the Docker-based actionlint approach via `./gh-aw compile --actionlint` instead of requiring native binary installation. This ensures consistency with the `make actionlint` target and eliminates the need for separate actionlint installation. Benefits: - No need to run 'make tools' to install actionlint binary - Consistent Docker-based approach across all targets - Cross-platform compatibility - Same behavior as 'make actionlint' The target now: 1. Depends on 'build' to ensure gh-aw binary exists 2. Compiles all workflows with actionlint validation 3. Uses Docker to run actionlint (no separate installation needed) Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Contributor
Author
Changed to use Docker-based actionlint via |
Copilot
AI
changed the title
Fix validate-workflows target: actionlint not in PATH
Fix validate-workflows target: use Docker-based actionlint
Dec 29, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
make validate-workflowstarget failed with "actionlint: not found" because it invokedactionlintdirectly without proper setup.Changes
Makefile (lines 333-337)
./gh-aw compile --actionlintbuilddependency to ensure gh-aw binary existsmake actionlinttargetMakefile help text (line 591)
validatetarget from helpBefore
After
Benefits
make tools)make actionlinttargetThis approach aligns with the project's architecture of using Docker for all external tools (actionlint, zizmor, poutine).
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.