From 9d926e37c73162f4e34eaaa47732cec1d2ed8a99 Mon Sep 17 00:00:00 2001
From: Vladimir Kozhukalov <vkozhukalov@mirantis.com>
Date: Fri, 16 Oct 2015 12:41:21 +0300
Subject: [PATCH] Create network-checker project

This project is to provide functionality for network
connectivity health check. First we need to describe a network
connectivity graph (e.g. some nodes can send data to others via
tagged VLAN). We then can use this graph to check if network
equipment is configured according to the graph (i.e. we can
send probe data from one node and then to try to catch these
data on the other one).

Change-Id: I579c166aea07c7d52910a2723e740e16b0a7c052
---
 gerrit/acls/openstack/network-checker.config | 20 ++++++++++++++++++++
 gerrit/projects.yaml                         |  6 ++++++
 gerritbot/channels.yaml                      |  1 +
 jenkins/jobs/projects.yaml                   |  9 ++++++++-
 zuul/layout.yaml                             | 12 ++++++++++++
 5 files changed, 47 insertions(+), 1 deletion(-)
 create mode 100644 gerrit/acls/openstack/network-checker.config

diff --git a/gerrit/acls/openstack/network-checker.config b/gerrit/acls/openstack/network-checker.config
new file mode 100644
index 0000000000..eeed63af9e
--- /dev/null
+++ b/gerrit/acls/openstack/network-checker.config
@@ -0,0 +1,20 @@
+[access "refs/heads/*"]
+abandon = group network-checker-core
+create = group fuel-release
+label-Code-Review = -2..+2 group network-checker-core
+label-Verified = -1..+1 group fuel-ci
+label-Workflow = -1..+1 group network-checker-core
+
+[access "refs/heads/stable/*"]
+exclusiveGroupPermissions = label-Workflow
+label-Workflow = -1..+1 group fuel-stable-core
+
+[access "refs/tags/*"]
+pushSignedTag = group fuel-release
+
+[receive]
+requireChangeId = true
+requireContributorAgreement = true
+
+[submit]
+mergeContent = true
diff --git a/gerrit/projects.yaml b/gerrit/projects.yaml
index dc0a100215..31596d9d59 100755
--- a/gerrit/projects.yaml
+++ b/gerrit/projects.yaml
@@ -1786,6 +1786,12 @@
   description: Nerd Reviewer bot reviews patches and checks that they pass common
     project rules e.g. unit test coverage, max amount of loc, well written commit
     message... So core reviews can concentrate on other more important stuff.
+- project: openstack/network-checker
+  groups:
+    - fuel
+  description: Network connectivity health check tool.
+  docimpact-group: fuel
+  upstream: https://github.com/kozhukalov/network-checker.git
 - project: openstack/networking-6wind
   description: Neutron support for fast path stack
 - project: openstack/networking-ale-omniswitch
diff --git a/gerritbot/channels.yaml b/gerritbot/channels.yaml
index e19eabca7e..0528b8083f 100755
--- a/gerritbot/channels.yaml
+++ b/gerritbot/channels.yaml
@@ -146,6 +146,7 @@ fuel-tracker:
     - openstack/fuel-stats
     - openstack/fuel-upgrade
     - openstack/fuel-web
+    - openstack/network-checker
     - openstack/python-fuelclient
     - stackforge/fuel-provision
     - stackforge/fuel-tasklib
diff --git a/jenkins/jobs/projects.yaml b/jenkins/jobs/projects.yaml
index bff348d8cb..8973069593 100644
--- a/jenkins/jobs/projects.yaml
+++ b/jenkins/jobs/projects.yaml
@@ -2588,6 +2588,14 @@
       - pypi-jobs
       - hook-{name}-rtfd
 
+- project:
+    name: network-checker
+    node: 'bare-precise || bare-trusty'
+    tarball-site: tarballs.openstack.org
+
+    jobs:
+      - python-jobs
+
 - project:
     name: networking-6wind
     node: 'bare-precise || bare-trusty'
@@ -7349,4 +7357,3 @@
       - python-jobs
       - pypi-jobs
       - infra-publish-jobs
-
diff --git a/zuul/layout.yaml b/zuul/layout.yaml
index 2c33a0ea06..02f55cf00f 100644
--- a/zuul/layout.yaml
+++ b/zuul/layout.yaml
@@ -1722,6 +1722,9 @@ jobs:
   - name: ^gate-fuel-web.*$
     voting: false
 
+  - name: ^gate-network-checker.*$
+    voting: false
+
   # NOTE(jroll): This job was not working at Juno release.
   - name: ^gate-tempest-dsvm-ironic-agent_ssh$
     branch: ^(?!stable/juno).*$
@@ -5727,6 +5730,15 @@ projects:
     check:
       - nerd-reviewer-coverage
 
+  - name: openstack/network-checker
+    template:
+      - name: merge-check
+    check:
+      - gate-network-checker-pep8
+      - gate-network-checker-python27
+    gate:
+      - noop
+
   - name: openstack/networking-6wind
     template:
       - name: merge-check