├── .gitignore ├── .travis.yml ├── Dockerfile ├── LICENSE ├── README.md ├── bin ├── dockerfile_lint └── functions.js ├── changelog.txt ├── config ├── base_rules.yaml ├── config.js └── default_rules.yaml ├── index.js ├── lib ├── extendify.js ├── image-linter.js ├── inspect-to-dockerfile.js ├── linter-utils.js ├── linter.js ├── logger.js ├── parser.js ├── rulefile-loader.js └── rulefile-validator.js ├── package.json ├── sample_rules ├── basic_rules.yaml ├── basic_rules_atomic.yaml ├── default_rules.yaml ├── label_rules.yaml ├── modules.yaml ├── openshift.yaml ├── osbs.yaml ├── recommended_label_rules.yaml └── security_rules.yaml └── test ├── data ├── dockerfiles │ ├── EmptyFile │ ├── TestComments │ └── TestLabels └── rules │ ├── basic.yaml │ ├── loader_test_combine_1.yaml │ ├── loader_test_combine_2.yaml │ ├── loader_test_combine_main.expected.json │ ├── loader_test_combine_main.yaml │ ├── loader_test_include_a.yaml │ ├── loader_test_include_b.yaml │ ├── loader_test_include_chain.expected.json │ ├── loader_test_include_chain.yaml │ ├── loader_test_include_cyclic.yaml │ └── loader_test_include_non_exist.yaml ├── integration └── exec.spec.js ├── mocha.opts └── unit ├── dockerfile_from_inspect.spec.js ├── linter-utils.spec.js ├── linter.spec.js ├── parser.spec.js └── rulefile-loader.spec.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .idea 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/.travis.yml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/README.md -------------------------------------------------------------------------------- /bin/dockerfile_lint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/bin/dockerfile_lint -------------------------------------------------------------------------------- /bin/functions.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/bin/functions.js -------------------------------------------------------------------------------- /changelog.txt: -------------------------------------------------------------------------------- 1 | VERSION 0.1.0 - Added enhanced support for LABEL, ENV, ARG name/value arguments. -------------------------------------------------------------------------------- /config/base_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/config/base_rules.yaml -------------------------------------------------------------------------------- /config/config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/config/config.js -------------------------------------------------------------------------------- /config/default_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/config/default_rules.yaml -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/index.js -------------------------------------------------------------------------------- /lib/extendify.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/extendify.js -------------------------------------------------------------------------------- /lib/image-linter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/image-linter.js -------------------------------------------------------------------------------- /lib/inspect-to-dockerfile.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/inspect-to-dockerfile.js -------------------------------------------------------------------------------- /lib/linter-utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/linter-utils.js -------------------------------------------------------------------------------- /lib/linter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/linter.js -------------------------------------------------------------------------------- /lib/logger.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/logger.js -------------------------------------------------------------------------------- /lib/parser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/parser.js -------------------------------------------------------------------------------- /lib/rulefile-loader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/rulefile-loader.js -------------------------------------------------------------------------------- /lib/rulefile-validator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/lib/rulefile-validator.js -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/package.json -------------------------------------------------------------------------------- /sample_rules/basic_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/basic_rules.yaml -------------------------------------------------------------------------------- /sample_rules/basic_rules_atomic.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/basic_rules_atomic.yaml -------------------------------------------------------------------------------- /sample_rules/default_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/default_rules.yaml -------------------------------------------------------------------------------- /sample_rules/label_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/label_rules.yaml -------------------------------------------------------------------------------- /sample_rules/modules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/modules.yaml -------------------------------------------------------------------------------- /sample_rules/openshift.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/openshift.yaml -------------------------------------------------------------------------------- /sample_rules/osbs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/osbs.yaml -------------------------------------------------------------------------------- /sample_rules/recommended_label_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/recommended_label_rules.yaml -------------------------------------------------------------------------------- /sample_rules/security_rules.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/sample_rules/security_rules.yaml -------------------------------------------------------------------------------- /test/data/dockerfiles/EmptyFile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/dockerfiles/EmptyFile -------------------------------------------------------------------------------- /test/data/dockerfiles/TestComments: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/dockerfiles/TestComments -------------------------------------------------------------------------------- /test/data/dockerfiles/TestLabels: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/dockerfiles/TestLabels -------------------------------------------------------------------------------- /test/data/rules/basic.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/basic.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_combine_1.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_combine_1.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_combine_2.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_combine_2.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_combine_main.expected.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_combine_main.expected.json -------------------------------------------------------------------------------- /test/data/rules/loader_test_combine_main.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_combine_main.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_include_a.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_include_a.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_include_b.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_include_b.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_include_chain.expected.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_include_chain.expected.json -------------------------------------------------------------------------------- /test/data/rules/loader_test_include_chain.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_include_chain.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_include_cyclic.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_include_cyclic.yaml -------------------------------------------------------------------------------- /test/data/rules/loader_test_include_non_exist.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/data/rules/loader_test_include_non_exist.yaml -------------------------------------------------------------------------------- /test/integration/exec.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/integration/exec.spec.js -------------------------------------------------------------------------------- /test/mocha.opts: -------------------------------------------------------------------------------- 1 | --timeout 5000 -------------------------------------------------------------------------------- /test/unit/dockerfile_from_inspect.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/unit/dockerfile_from_inspect.spec.js -------------------------------------------------------------------------------- /test/unit/linter-utils.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/unit/linter-utils.spec.js -------------------------------------------------------------------------------- /test/unit/linter.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/unit/linter.spec.js -------------------------------------------------------------------------------- /test/unit/parser.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/unit/parser.spec.js -------------------------------------------------------------------------------- /test/unit/rulefile-loader.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/projectatomic/dockerfile_lint/HEAD/test/unit/rulefile-loader.spec.js --------------------------------------------------------------------------------