Initial JJB configuration
Push the initial basic JJB configuration
Change-Id: I9590b20a31d94c4dbadb20781fb15b685538deed
Signed-off-by: Linux Foundation Administrators <collab-it+onlab@linuxfoundation.org>
diff --git a/.coafile b/.coafile
new file mode 100644
index 0000000..3f6f8f4
--- /dev/null
+++ b/.coafile
@@ -0,0 +1,33 @@
+[GitCommit]
+bears = GitCommitBear
+ignore_length_regex = Signed-off-by,
+ Also-by,
+ Co-authored-by,
+ http://,
+ https://
+
+[JSON]
+bears = JSONFormatBear
+files = **/*.json
+ignore = .*/**
+indent_size = 2
+
+[YAML]
+bears = YAMLLintBear
+files = jjb/**/*.yaml
+document_start = True
+yamllint_config = yamllint.conf
+
+[ShellCheck]
+bears = ShellCheckBear,SpaceConsistencyBear
+files = jenkins-scripts/**/*.sh,
+ jjb/**/*.sh,
+ scripts/**/*.sh
+ignore = jenkins-scripts/*-local-env.sh,
+ jjb/global-jjb/shell/*.sh,
+ jjb/include-docker-push.sh,
+ jjb/include-update-pom-versions.sh,
+ jjb/testsuite/testsuite-docker.sh,
+shell = bash
+indent_size = 4
+use_spaces = yeah
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..5eb4e67
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,25 @@
+root = true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+trim_trailing_whitespace = true
+indent_style = space
+
+[*.json]
+indent_size = 2
+
+[*.rst]
+indent_size = 4
+
+[*.markdown]
+indent_size = 4
+max_line_length = 80
+
+[*.sh]
+indent_size = 4
+max_line_length = 80
+
+[*.yaml]
+indent_size = 4
+
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..bffd428
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "jjb/global-jjb"]
+ path = jjb/global-jjb
+ url = https://github.com/lfit/releng-global-jjb.git
diff --git a/jenkins.ini.example b/jenkins.ini.example
new file mode 100644
index 0000000..959f06b
--- /dev/null
+++ b/jenkins.ini.example
@@ -0,0 +1,13 @@
+[job_builder]
+ignore_cache=True
+keep_descriptions=False
+include_path=.:scripts:~/git/
+recursive=True
+
+[jenkins]
+query_plugins_info=False
+#user=jenkins
+#password=1234567890abcdef1234567890abcdef
+url=http://localhost:8080
+##### This is deprecated, use job_builder section instead
+#ignore_cache=True
diff --git a/jjb/ci-management/ci-management.yaml b/jjb/ci-management/ci-management.yaml
new file mode 100644
index 0000000..cc187c2
--- /dev/null
+++ b/jjb/ci-management/ci-management.yaml
@@ -0,0 +1,15 @@
+---
+- project:
+ archive-artifacts: '**/*.log'
+ branch: 'master'
+ build-timeout: '60'
+ build-node: 'centos7-basebuild-1c-1g'
+
+ jobs:
+ - '{project-name}-ci-jobs'
+
+ name: ci-management-jobs
+ project: 'ci-management'
+ project-name: 'ci-management'
+
+ jjb-version: 2.0.0
diff --git a/jjb/defaults.yaml b/jjb/defaults.yaml
new file mode 100644
index 0000000..90de0f0
--- /dev/null
+++ b/jjb/defaults.yaml
@@ -0,0 +1,41 @@
+---
+# GLOBAL jenkins defaults
+
+- defaults:
+ name: global
+
+ # lftools
+ lftools-version: <1.0.0
+
+ # lf-infra-defaults
+ jenkins-ssh-credential: 'cord-jenkins-ssh'
+
+ # build discards
+ build-days-to-keep: 30
+
+ # Timeout in minutes
+ # TODO deprecate this (should be project template specific)
+ build-timeout: 360
+ # TODO this should be the most common executor
+ build-node: centos7-basebuild-1c-1g
+
+ # default gerrit server definition
+ gerrit-server-name: 'CORD Gerrit'
+
+ archive-artifacts: ''
+
+ # Set default maven version used for everything
+ mvn-version: 'mvn33'
+
+ # Default maven goals
+ mvn-goals: 'clean install'
+ mvn-opts: ''
+
+ # Maven / Java
+ cord-infra-mvn-opts: |
+ --show-version
+ --batch-mode
+ -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
+ -Djenkins
+ -Dmaven.repo.local=/tmp/r
+ -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
diff --git a/jjb/global-jjb b/jjb/global-jjb
new file mode 160000
index 0000000..779110b
--- /dev/null
+++ b/jjb/global-jjb
@@ -0,0 +1 @@
+Subproject commit 779110b5cd63f3eabb63598a1be79d9b9ba85464
diff --git a/tox.ini b/tox.ini
new file mode 100644
index 0000000..dbeedd8
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,21 @@
+[tox]
+minversion = 1.6
+envlist = coala,docs,pep8
+skipsdist = true
+
+[testenv:coala]
+basepython = python3
+deps =
+ coala
+ coala-bears
+commands =
+ python3 -m nltk.downloader punkt maxent_treebank_pos_tagger averaged_perceptron_tagger
+ coala --non-interactive
+
+# [testenv:docs]
+# deps = sphinx
+# commands = sphinx-build -b html -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+
+[testenv:pep8]
+deps = flake8
+commands = flake8 scripts/
diff --git a/yamllint.conf b/yamllint.conf
new file mode 100644
index 0000000..32d76ab
--- /dev/null
+++ b/yamllint.conf
@@ -0,0 +1,8 @@
+extends: default
+
+rules:
+ empty-lines:
+ max-end: 1
+ line-length:
+ max: 120
+