Repository navigation
Fix the 2026-10-17 review's medium findings (docs, Dockerfile lint in CI) - #4
Merged
Merged
Conversation
CLAUDE.md's gotchas said the vendor files are covered by META-INF/MANIFEST.MF and the bump procedure replaced META-INF/*, while its repository structure and .gitignore say META-INF/ is untracked; the changelog listed it among the refreshed recipe files. The docs now agree with .gitignore and say how to verify the vendor files against the signed recipe zip. Co-Authored-By: Claude <noreply@anthropic.com>
A full image build cannot run in CI: the final stage copies the MID installer that the first stage downloads from install.service-now.com. scripts/check_dockerfile.sh runs docker build --call=check instead, which executes no RUN step, with the checks frontend pinned by digest (docker/dockerfile 1.27.1). It accepts only the three known findings, the deliberate linux/amd64 FROM pin and the vendor recipe's empty password ENV placeholders, and fails on any other finding or on a Dockerfile it cannot check. A new CI job runs it; tests/check_dockerfile_test.sh covers it with a stubbed docker, and shellcheck now covers scripts/*.sh and tests/*.sh. Co-Authored-By: Claude <noreply@anthropic.com>
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 two medium findings from the 2026-10-17 repository review that this repo can fix without an owner decision. A re-check on 2026-10-20 found 4 of the 12 mediums already fixed by #2. The remaining ones need an owner decision, an instance, or changes to vendor files; they're listed below and not applied.
META-INF/(CLAUDE.md:56 vs :107, CHANGELOG).gitignoreandgit ls-files), and how to check the vendor files against the signed recipe zip. Whether it's tracked is unchangedscripts/check_dockerfile.shplus a CI job. It runs BuildKit's build checks (docker build --call=check) without building, so it needs no instance and no installer download. The checks frontenddocker/dockerfile:1.27.1(2026-09-30) is pinned by digestcomm -23). A second--platformconstant, or a repeated password ENV, now failsA full build can't run in CI: the final stage copies the MID installer, which the first stage downloads from install.service-now.com and signature-checks.
Verified locally:
get_mid_url_test.sh28/28 andcheck_dockerfile_test.sh13/13 pass, both with a stubbeddocker/curl.FROM --platform=linux/amd64andENV MID_INSTANCE_PASSWORD=abc.docker buildx imagetools inspect docker/dockerfile:1.27.1.asset/,DockerfilevsDockerfile.unmodified).Not verified before this PR's CI: the new job on ubuntu-latest. It pulls the frontend and base-image metadata anonymously from Docker Hub, so a rate limit can fail it intermittently. Dependabot won't update the digest-pinned frontend.
Owner decisions (not applied)
--env-filein the quickstart (README.md:122-126).MID_SECRETS_FILEis already supported at Dockerfile:94.itom_adminanddiscovery_admin(README.md:115) rather thanmid_serveralone. It needs a MID host and a PDI to prove the minimum.META-INF/.asset/validate_signature.sh:27-32, a vendor file): add a check outsideasset/, and/or report it upstream.asset/calculate_mid_env_hash.sh:27-30,asset/init:349, vendor files): work around it outsideasset/(for example withMID_SECRETS_FILE), or report it upstream.