Add tox.ini

wait for jjb

Issue-ID: INT-1460

Signed-off-by: mrichomme <morgan.richomme@orange.com>
Change-Id: Ie15f025912ced4da38c4508e571cbaf6704c97f1
Signed-off-by: mrichomme <morgan.richomme@orange.com>
diff --git a/.coafile b/.coafile
new file mode 100644
index 0000000..37b4252
--- /dev/null
+++ b/.coafile
@@ -0,0 +1,29 @@
+[yaml]
+bears = YAMLLintBear
+yamllint_config = .yamllint
+ignore =
+  .tox/**,
+
+[json]
+bears = JSONFormatBear
+json_sort = False
+indent_size = 2
+ignore =
+  .tox/**,
+
+[py]
+bears = PyLintBear
+pylint_disable = all
+pylint_enable =
+  bad-indentation, trailing-whitespace, unused-wildcard-import, unused-import,
+  unnecessary-semicolon, unnecessary-semicolon, undefined-variable,
+  syntax-error, unused-variable, using-constant-test,unused-argument,
+  len-as-condition, trailing-newlines, missing-final-newline, reimported,
+  too-many-function-args, singleton-comparison
+ignore =
+  .tox/**
+
+[md]
+bears = MarkdownBear
+ignore =
+  .tox/**
diff --git a/.yamllint b/.yamllint
new file mode 100644
index 0000000..ab5bdc3
--- /dev/null
+++ b/.yamllint
@@ -0,0 +1,16 @@
+---
+
+extends: default
+
+rules:
+  line-length: disable
+  truthy: disable
+  braces:
+    max-spaces-inside: 1
+  brackets:
+    max-spaces-inside: 1
+  comments-indentation: disable
+  comments: disable
+  document-start: disable
+  indentation:
+    indent-sequences: whatever
diff --git a/tox.ini b/tox.ini
new file mode 100644
index 0000000..9a019f4
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,44 @@
+[tox]
+minversion = 3.2.0
+envlist = json,yaml,py,md
+skipsdist = true
+requires = pip >= 8
+
+[testenv]
+basepython = python3
+whitelist_externals =
+  git
+  bash
+deps =
+  coala-bears
+  nodeenv
+
+[testenv:json]
+commands_pre =
+    /bin/sh -c "git --no-pager diff HEAD HEAD^ --name-only '*.json' > /tmp/.coalist_json"
+commands =
+# '\ ' at the end of command is needed for a case where above command returns empty list (it adds empty file
+# parameter to '--files' opt
+    /bin/bash -c "coala --non-interactive --disable-caching --no-autoapply-warn json --files $(</tmp/.coalist_json) \ "
+
+[testenv:yaml]
+commands_pre =
+    /bin/sh -c "git --no-pager diff HEAD HEAD^ --name-only '*.yaml' '*.yml' > /tmp/.coalist_yaml"
+commands =
+# '\ ' at the end of command is needed for a case where above command returns empty list (it adds empty file
+# parameter to '--files' opt
+    /bin/bash -c "coala --non-interactive --disable-caching --no-autoapply-warn yaml --files $(</tmp/.coalist_yaml) \ "
+
+[testenv:py]
+commands_pre =
+    /bin/sh -c "git --no-pager diff HEAD HEAD^ --name-only '*.py' > /tmp/.coalist_py"
+commands =
+    /bin/bash -c "coala --non-interactive --disable-caching --no-autoapply-warn py --files $(</tmp/.coalist_py) \ "
+
+[testenv:md]
+commands_pre =
+    nodeenv -p --verbose
+    npm install --global remark-cli
+    /bin/sh -c "git --no-pager diff HEAD HEAD^ --name-only '*.md' > /tmp/.coalist_md"
+commands =
+    /bin/bash -c "coala --non-interactive --disable-caching --no-autoapply-warn md --files $(</tmp/.coalist_md) \ "