Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data Metadata = Metadata {}
- data RuleCheck = RuleCheck {
- metadata :: Metadata
- filename :: Filename
- linenumber :: Linenumber
- success :: Bool
- link :: Metadata -> String
- type Rule = Dockerfile -> [RuleCheck]
- mapInstructions :: Metadata -> (Instruction -> Bool) -> Rule
- instructionRule :: String -> Severity -> String -> (Instruction -> Bool) -> Rule
- dockerfileRule :: String -> Severity -> String -> ([Instruction] -> Bool) -> Rule
- analyze :: [Rule] -> Dockerfile -> [RuleCheck]
- rules :: [Rule]
- commentMetadata :: Comment -> Metadata
- shellcheckBash :: Dockerfile -> [RuleCheck]
- bashCommands :: [String] -> [[String]]
- absoluteWorkdir :: Rule
- hasNoMaintainer :: Rule
- usingProgram :: String -> [String] -> Bool
- multipleCmds :: Rule
- multipleEntrypoints :: Rule
- wgetOrCurl :: Rule
- invalidCmd :: Rule
- noRootUser :: Rule
- noCd :: Rule
- noSudo :: Rule
- noAptGetUpgrade :: Rule
- noUntagged :: Rule
- noLatestTag :: Rule
- aptGetVersionPinned :: Rule
- aptGetPackages :: [String] -> [String]
- aptGetCleanup :: Rule
- dropOptionsWithArg :: [String] -> [String] -> [String]
- noApkUpgrade :: Rule
- isApkAdd :: [String] -> Bool
- apkAddVersionPinned :: Rule
- apkAddPackages :: [String] -> [String]
- apkAddNoCache :: Rule
- useAdd :: Rule
- invalidPort :: Rule
- pipVersionPinned :: Rule
- npmVersionPinned :: Rule
- isAptGetInstall :: [[Char]] -> Bool
- aptGetYes :: Rule
- aptGetNoRecommends :: Rule
- isArchive :: String -> Bool
- isUrl :: String -> Bool
- copyInsteadAdd :: Rule
- useShell :: Rule
Documentation
RuleCheck | |
|
type Rule = Dockerfile -> [RuleCheck] Source #
mapInstructions :: Metadata -> (Instruction -> Bool) -> Rule Source #
instructionRule :: String -> Severity -> String -> (Instruction -> Bool) -> Rule Source #
dockerfileRule :: String -> Severity -> String -> ([Instruction] -> Bool) -> Rule Source #
commentMetadata :: Comment -> Metadata Source #
shellcheckBash :: Dockerfile -> [RuleCheck] Source #
bashCommands :: [String] -> [[String]] Source #
multipleCmds :: Rule Source #
wgetOrCurl :: Rule Source #
invalidCmd :: Rule Source #
noRootUser :: Rule Source #
noUntagged :: Rule Source #
noLatestTag :: Rule Source #
aptGetPackages :: [String] -> [String] Source #
aptGetCleanup :: Rule Source #
noApkUpgrade :: Rule Source #
apkAddPackages :: [String] -> [String] Source #
apkAddNoCache :: Rule Source #
invalidPort :: Rule Source #
npmVersionPinned :: Rule Source #
Rule for pinning NPM packages to version, tag, or commit
supported formats by Hadolint
npm install (with no args, in package dir)
npm install [@scope/]name
npm install [@scope/]nametag
npm install [<
scope>/]name@version
npm install git[+http|+https]:/git-hostgit-user/repo-name[semver:semver]
npm install git+ssh:/git-host:git-userrepo-name[semver:semver]
isAptGetInstall :: [[Char]] -> Bool Source #