Repository navigation
Add PR Checks CI workflow (shellcheck, hadolint, compose-validate, markdown-lint) - #13
Merged
Merged
Conversation
Co-authored-by: itscooleric <25490177+itscooleric@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add GitHub Actions workflow for PR checks
Add PR Checks CI workflow (shellcheck, hadolint, compose-validate, markdown-lint)
Mar 3, 2026
- setup_lts.x → setup_22.x (prevents surprise LTS major jumps) - ttyd /latest/ → pinned 1.7.7 (current stable) - Replace wget with curl throughout (DL4001) - Add --no-install-recommends to all apt-get install (DL3015) - Add SHELL pipefail before pipe commands (DL4006) - Add .hadolint.yaml ignoring DL3008/DL3016 (npm/apt tools intentionally unpinned) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Dockerfile: quote $(uname -m) via ARCH variable to fix SC2046 - Workflow: add config: .hadolint.yaml so hadolint picks up ignore rules - Workflow: cp .env.example .env before compose-validate to provide env file - Add .markdownlint.yaml: disable MD013/022/031/032 (style-only rules) - DEPLOY.md: remove stray closing fence with no matching open Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Workflow: add ignore: DL3008 DL3016 to hadolint step (config file path wasn't being resolved correctly inside the action container) - README.md: add language specifier to env code fences (MD040) - .markdownlint.yaml: disable MD034 (bare URLs in technical docs) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The hadolint-action ignore input and .hadolint.yaml config file were not being applied. Inline directives are the most reliable approach. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
itscooleric
approved these changes
Mar 3, 2026
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.
No CI existed for this repo. This adds a lightweight GitHub Actions workflow that runs four linting/validation jobs in parallel on every PR targeting
main.Workflow:
.github/workflows/pr-checks.ymlshellcheck— lintsclideandentrypoint.shvialudeeus/action-shellcheck@masterhadolint— enforces Dockerfile best practices viahadolint/hadolint-action@v3.1.0compose-validate— validatesdocker-compose.ymlwithdocker compose config --quietmarkdown-lint— lints Markdown docs viaDavidAnson/markdownlint-cli2-action@v19All jobs run in parallel on
ubuntu-latestwith no inter-job dependencies. A top-levelpermissions: contents: readblock is included to enforce least-privilege onGITHUB_TOKEN.Original prompt
This pull request was created from Copilot chat.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.