A simple tool to validate if a repository adhears to specified rules.
Project description
cmply
Installation
python3 -m pip install --upgrade cmply
Introduction
Cmply is a tool used to run a set of rules against a repository.
The output will show the result of what rules fail or pass.
There is provision for different levels of failures. These levels are info, warning, fail and security.
The target can be a local folder or a git repository.
If a git repository is specified, the local git is used with any configure authentication relative to the local system.
Usage
usage: cmply run [-h] [-r RULES] [-v] [-f] [--no-error] [-t TAGS] [-e ENV] [--output {json}] [-b BRANCH] target
positional arguments:
target the target folder or git repo to run the compliance check on
options:
-h, --help show this help message and exit
-r RULES, --rules RULES
glob of rule files
-v, --verbose increase output verbosity
-f, --hide-fail hide failure out information
--no-error dont exit 1 if security and fails are found
-t TAGS, --tags TAGS project tags
-e ENV, --env ENV environmental variables
--output {json} output type
-b BRANCH, --branch BRANCH
the branch to use if target is a git repo
Rule file
The rules files are YAML files with the following format:
name: sonarcube-setup # Name your rule here
description: | # This is a verbose description
All projects must be registered in sonarcube
image: node:16 # Your steps are executed in this docker container
type: fail # The type of rule info, warning, fail or security
tags: # A list of tags. These then matched to the tags passed in from the command line for your execution.
- all
steps: # A list of commands executed. When a command has a non 0 response- the test is considered failed
- test -f sonar-project.properties
Run using docker
To use the docker image of cmply it is important to pass through the hosts docker socket.
docker run \
-v //var/run/docker.sock:/var/run/docker.sock
-v ./rules:/opt/rules
-v ./target:/opt/target
-ti pselibas/cmply \
run -r /opt/rules \
/opt/target
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cmply-0.1.5.tar.gz.
File metadata
- Download URL: cmply-0.1.5.tar.gz
- Upload date:
- Size: 6.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.9.6 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a78e7cb7bc318a515e414bb41df1370feb82d0f77720b9053a3a6dc66f2c12cf
|
|
| MD5 |
3182fc188ae865aafb7fda6ad754e8bd
|
|
| BLAKE2b-256 |
501a3e9f7286f0be8aa6f6c0fefd4b75011899a09a1dde1334e1f1e385a6fd0f
|
File details
Details for the file cmply-0.1.5-py3-none-any.whl.
File metadata
- Download URL: cmply-0.1.5-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.2.2 CPython/3.9.6 Windows/10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
edd1a2b84b81cbe6df3252166d542a9821705cade0390a143d8ac10e01f2ba15
|
|
| MD5 |
77364ed43d469c734d3edc8d374c69bf
|
|
| BLAKE2b-256 |
ba09e8d05cb3d1ea84ce37d322efe05ea427e12493f8b7b94645f5eb5cb5b09e
|