def get_results_from_colin_labels_image(target, parent_target=None): return colin.run(target=target.target_name, parent_target=parent_target, target_type=target.target_type, ruleset_name="fedora", logging_level=logging.DEBUG, pull=False)
def test_ostree_target(ruleset): image_name = "colin-labels" ostree_path = convert_image_to_ostree(image_name=image_name) skopeo_target = get_skopeo_path(image_name=image_name, ostree_path=ostree_path) results = colin.run(skopeo_target, "ostree", ruleset=ruleset, logging_level=10, pull=False) assert results.ok assert results.results_per_check["url_label"].ok
def test_docker_image_target(ruleset): results = colin.run(LABELS_IMAGE, "image", ruleset=ruleset, logging_level=10, pull=False) assert results.ok
def get_results_from_colin_labels_image(ruleset_name=None, ruleset_file=None, ruleset=None): return colin.run("colin-labels", ruleset_name=ruleset_name, ruleset_file=ruleset_file, ruleset=ruleset)
def test_podman_image_target(ruleset): results = colin.run(LABELS_IMAGE, "image", ruleset=ruleset, logging_level=10, pull=False) assert results.ok assert results.results_per_check["url_label"].ok
def get_results_from_colin_labels_image(image, ruleset_name=None, ruleset_file=None, ruleset=None): return colin.run(image.target_name, image.target_type, ruleset_name=ruleset_name, ruleset_file=ruleset_file, ruleset=ruleset)
def help_file_or_readme_test(ruleset, image, should_pass): """ verify that help_file_or_readme check works well """ results = colin.run(target=image.target_name, target_type=image.target_type, ruleset=ruleset, logging_level=10, pull=False) assert results.ok assert results.fail is not should_pass
def test_help_file_or_readme(ruleset, image_name, should_pass): """ verify that help_file_or_readme check works well """ results = colin.run(image_name, "image", ruleset=ruleset, logging_level=10, pull=False) assert results.ok assert results.fail is not should_pass
def test_missing_from(dockerfile_with_missing_from, ruleset_from_tag_not_latest): result = colin.run(target=dockerfile_with_missing_from, target_type="dockerfile", ruleset=ruleset_from_tag_not_latest) assert result assert not result.ok assert result.results_per_check['from_tag_not_latest'] assert not result.results_per_check['from_tag_not_latest'].ok assert result.results_per_check['from_tag_not_latest'].status == 'ERROR' assert result.results_per_check['from_tag_not_latest'].logs[ 0] == 'Cannot find FROM instruction.'
def test_dockertar_target(tmpdir, ruleset): tb = tmpdir.join("colin-labels.tar") cmd = [ "skopeo", "copy", "docker-daemon:" + LABELS_IMAGE, "docker-archive:/" + str(tb) ] subprocess.check_call(cmd) results = colin.run(str(tb), "dockertar", ruleset=ruleset, logging_level=10, pull=False) assert results.ok
def test_ostree_target(ruleset): # /tmp is tmpfs and ostree can't do its magic there tmpdir_path = tempfile.mkdtemp(prefix="pytest-", dir="/var/tmp") ostree_path = os.path.join(tmpdir_path, "os3") os.makedirs(ostree_path) image_name = 'colin-labels' skopeo_target = "ostree:%s@%s" % (image_name, ostree_path) subprocess.check_call( ["ostree", "init", "--mode", "bare-user-only", "--repo", ostree_path]) cmd = ["skopeo", "copy", "docker-daemon:" + LABELS_IMAGE, skopeo_target] subprocess.check_call(cmd) results = colin.run(skopeo_target, "ostree", ruleset=ruleset, logging_level=10, pull=False) assert results.ok
def run_linter(self): """ Run colin linter and set results """ logger.debug('Run colin linting') self.colin_result = colin.run(target=self.dockerfile_path, ruleset_name="fedora", target_type='dockerfile') self.colin_logs = self.colin_result.get_pretty_string(stat=False, verbose=False) self._set_result_status() if not self.colin_logs: raise Exception('Output of linter empty') logger.debug( self.colin_result.get_pretty_string(stat=False, verbose=True)) logger.debug('Linters ended with status: %s', self.colin_result_status)
def get_results_from_colin_labels_image(): return colin.run("colin-labels", ruleset_name="fedora", logging_level=logging.DEBUG)
def test_dynamic_check_bash(ruleset): results = colin.run(target=BASH_IMAGE, ruleset=ruleset, logging_level=10) assert results.ok
def get_results_from_colin_labels_image(): return colin.run("colin-labels", ruleset_name="fedora")
def get_results_from_colin_labels_image(): return colin.run(LABELS_IMAGE, "image", ruleset_name="fedora", logging_level=logging.DEBUG, pull=False)
import colin result = colin.run("image") assert result.ok assert result.status == "passed" print(result.logs())
def test_multiple_labels_check(check, result, empty_ruleset): new_ruleset = dict(empty_ruleset) new_ruleset["checks"] = [check] check_result = colin.run("colin-labels", ruleset=new_ruleset) assert check_result assert list(check_result.results)[0].status == result
import colin result = colin.run(target="my-image", target_type="image") assert result.ok print(result.results) print(result.get_pretty_string(stat=True, verbose=True)) print(result.json)
def test_dynamic_check_ls(ruleset): results = colin.run(target=LS_IMAGE, ruleset=ruleset, logging_level=10) assert not results.ok