Merge "Debmirror: drop comm section"
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..485dee6
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+.idea
diff --git a/ceilometer/client/nova_control.yml b/ceilometer/client/nova_control.yml
index 252c67e..7ac8f89 100644
--- a/ceilometer/client/nova_control.yml
+++ b/ceilometer/client/nova_control.yml
@@ -3,3 +3,5 @@
     controller:
       notification:
         driver: messagingv2
+        notify_on:
+          state_change: vm_and_task_state
diff --git a/jenkins/client/approved_scripts.yml b/jenkins/client/approved_scripts.yml
index 70aa9e6..d2855d8 100644
--- a/jenkins/client/approved_scripts.yml
+++ b/jenkins/client/approved_scripts.yml
@@ -12,6 +12,7 @@
         - method groovy.json.JsonSlurperClassic parseText java.lang.String
         - method groovy.lang.GString getBytes
         - method groovy.lang.GroovyObject getProperty java.lang.String
+        - method groovy.util.Node get java.lang.String
         - method groovy.util.Node attributes
         - method groovy.util.XmlParser parse java.io.File
         - method groovy.util.XmlParser parseText java.lang.String
diff --git a/jenkins/client/job/oscore/salt_virtual_models.yml b/jenkins/client/job/oscore/salt_virtual_models.yml
index 17c4aa8..180b2da 100644
--- a/jenkins/client/job/oscore/salt_virtual_models.yml
+++ b/jenkins/client/job/oscore/salt_virtual_models.yml
@@ -23,6 +23,10 @@
               default: gerrit
               type: string
               description: "Name of creadentials to use when connecting to gerrit"
+            ARTIFACTORY_CREDENTIALS:
+              type: string
+              default: "artifactory"
+              description: Jenkins credential ID for Artifactory
             HEAT_STACK_ZONE:
               type: string
               description: "Heat stack zone where build stack"
diff --git a/jenkins/client/job/oscore/tests.yml b/jenkins/client/job/oscore/tests.yml
index d06160e..4453dae 100644
--- a/jenkins/client/job/oscore/tests.yml
+++ b/jenkins/client/job/oscore/tests.yml
@@ -378,6 +378,10 @@
                 type: boolean
                 description: Whether to use pepper to connect to salt master
                 default: 'false'
+              USE_RALLY:
+                type: boolean
+                description: Whether to use container with rally
+                default: 'true'
         results-checker-template:
           name: "{{job_prefix}}-{{test_type}}-results-checker"
           template:
diff --git a/openssh/server/team/members/mcp-scale-jenkins.yml b/openssh/server/team/members/mcp-scale-jenkins.yml
new file mode 100644
index 0000000..3ec3a1c
--- /dev/null
+++ b/openssh/server/team/members/mcp-scale-jenkins.yml
@@ -0,0 +1,23 @@
+parameters:
+  linux:
+    system:
+      user:
+        mcp-scale-jenkins:
+          enabled: true
+          name: mcp-scale-jenkins
+          sudo: ${_param:linux_system_user_sudo}
+          full_name: MCP Scale team
+          home: /home/mcp-scale-jenkins
+          email: mos-scale-jenkins@mirantis.com
+  openssh:
+    server:
+      enabled: true
+      user:
+        mcp-scale-jenkins:
+          enabled: true
+          public_keys: ${public_keys:mcp-scale-jenkins}
+          user: ${linux:system:user:mcp-scale-jenkins}
+  public_keys:
+    mcp-scale-jenkins:
+      - key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDnaV3xTY8bzK9zdsgNgnQMFyMuuM3sjMaC10Lv5nM0Zl4+4r76XMNMN/Vd1FbI3U5StlHo1CHr0Byrufrnzg4YjoqPED4vlyPwwr5oWeqVHWt7pFitu7HB1xyUPdADR4PSqxUsGV6VWvj+mv18jRZj2w006NJvTSN7N2T7F99lUqUIm9FlfliIH9gNepyX4jaN+/aUppAtFMqomUNjWDbdCxedWQRO2f7H+ZbuRq23jhSbnNTrvhCzg+E6yroarkSKv5lASuBS8nOAw233PZzBi7E1boRF9B9yTDYBX1yFjR9iZyFTq+WXQzvxN2HTInSiL6VFnpz2My5fa3J2ZiTZ
+
diff --git a/openssh/server/team/members/mcp-scale.yml b/openssh/server/team/members/mcp-scale.yml
deleted file mode 100644
index d9376ba..0000000
--- a/openssh/server/team/members/mcp-scale.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-parameters:
-  linux:
-    system:
-      user:
-        mos-scale-jenkins:
-          enabled: true
-          name: mos-scale-jenkins
-          sudo: ${_param:linux_system_user_sudo}
-          full_name: MCP Scale team
-          home: /home/mos-scale-jenkins
-          email: mos-scale-jenkins@mirantis.com
-  openssh:
-    server:
-      enabled: true
-      user:
-        mos-scale-jenkins:
-          enabled: true
-          public_keys: ${public_keys:mos-scale-jenkins}
-          user: ${linux:system:user:mos-scale-jenkins}
-  public_keys:
-    mos-scale-jenkins:
-      - key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCp0evjOaK8c8SKYK4r2+0BN7g+8YSvQ2n8nFgOURCyvkJqOHi1qPGZmuN0CclYVdVuZiXbWw3VxRbSW3EH736VzgY1U0JmoTiSamzLHaWsXvEIW8VCi7boli539QJP0ikJiBaNAgZILyCrVPN+A6mfqtacs1KXdZ0zlMq1BPtFciR1JTCRcVs5vP2Wwz5QtY2jMIh3aiwkePjMTQPcfmh1TkOlxYu5IbQyZ3G1ahA0mNKI9a0dtF282av/F6pwB/N1R1nEZ/9VtcN2I1mf1NW/tTHEEcTzXYo1R/8K9vlqAN8QvvGLZtZduGviNVNoNWvoxaXxDt8CPv2B2NCdQFZp
-
diff --git a/openssh/server/team/qa_scale.yml b/openssh/server/team/qa_scale.yml
index 20a4e7d..9415496 100644
--- a/openssh/server/team/qa_scale.yml
+++ b/openssh/server/team/qa_scale.yml
@@ -3,7 +3,7 @@
 - system.openssh.server.team.members.sgalkin
 - system.openssh.server.team.members.obasov
 - system.openssh.server.team.members.mikhailkraynov
-- system.openssh.server.team.members.mcp-scale
+- system.openssh.server.team.members.mcp-scale-jenkins
 
 parameters:
   _param:
diff --git a/postgresql/client/pushkin.yml b/postgresql/client/pushkin.yml
deleted file mode 100644
index c6ec567..0000000
--- a/postgresql/client/pushkin.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-classes:
-  - system.postgresql.client
-parameters:
-  _param:
-    pushkin_db_host: ${_param:haproxy_postgresql_bind_host}
-    pushkin_db_user: pushkin
-    pushkin_db_user_password: pushkin
-  postgresql:
-    client:
-      server:
-        server01:
-          database:
-            pushkin:
-              enabled: true
-              encoding: 'UTF8'
-              locale: 'en_US'
-              users:
-              - name: ${_param:pushkin_db_user}
-                password: ${_param:pushkin_db_user_password}
-                host: ${_param:pushkin_db_host}
-                createdb: true
-                rights: all privileges
-              extension:
-                hstore:
-                  enabled: true
-
diff --git a/postgresql/client/alertmanager.yml b/postgresql/client/pushkin/alertmanager.yml
similarity index 68%
rename from postgresql/client/alertmanager.yml
rename to postgresql/client/pushkin/alertmanager.yml
index 8bd272a..8e413da 100644
--- a/postgresql/client/alertmanager.yml
+++ b/postgresql/client/pushkin/alertmanager.yml
@@ -12,16 +12,7 @@
       server:
         server01:
           database:
-            alertmanager:
-              enabled: true
-              encoding: 'UTF8'
-              locale: 'en_US'
-              users:
-              - name: ${_param:alertmanager_db_user}
-                password: ${_param:alertmanager_db_user_password}
-                host: ${_param:alertmanager_db_host}
-                createdb: true
-                rights: all privileges
+            pushkin:
               init:
                 maintenance_db: pushkin
                 force: true
diff --git a/postgresql/client/pushkin/init.yml b/postgresql/client/pushkin/init.yml
new file mode 100644
index 0000000..5677646
--- /dev/null
+++ b/postgresql/client/pushkin/init.yml
@@ -0,0 +1,54 @@
+classes:
+  - system.postgresql.client
+parameters:
+  _param:
+    pushkin_db_host: ${_param:haproxy_postgresql_bind_host}
+    pushkin_db_user: pushkin
+    pushkin_db_user_password: pushkin
+  postgresql:
+    client:
+      server:
+        server01:
+          database:
+            pushkin:
+              enabled: true
+              encoding: 'UTF8'
+              locale: 'en_US'
+              users:
+              - name: ${_param:pushkin_db_user}
+                password: ${_param:pushkin_db_user_password}
+                host: ${_param:pushkin_db_host}
+                createdb: true
+                rights: all privileges
+              init:
+                maintenance_db: pushkin
+                queries:
+                - ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO public;
+                - CREATE TABLE IF NOT EXISTS login (id int8 NOT NULL, language_id int2, PRIMARY KEY (id));
+                - CREATE TABLE IF NOT EXISTS device (id serial NOT NULL, login_id int8 NOT NULL, platform_id int2 NOT NULL, device_token text NOT NULL, device_token_new text, application_version int4, unregistered_ts timestamp, device_id text, PRIMARY KEY(id));
+                - CREATE INDEX IF NOT EXISTS idx_device_login_id ON device (login_id);
+                - ALTER TABLE device DROP CONSTRAINT IF EXISTS Ref_device_to_login;
+                - ALTER TABLE device ADD CONSTRAINT Ref_device_to_login FOREIGN KEY (login_id) REFERENCES login(id) MATCH SIMPLE ON DELETE CASCADE ON UPDATE NO ACTION NOT DEFERRABLE;
+                - CREATE TABLE IF NOT EXISTS message (id serial NOT NULL, name text NOT NULL, cooldown_ts int8, trigger_event_id int4, screen text NOT NULL DEFAULT '', PRIMARY KEY (id), CONSTRAINT c_message_unique_name UNIQUE(name));
+                - CREATE TABLE IF NOT EXISTS message_localization (id serial NOT NULL, message_id int4 NOT NULL, language_id int2 NOT NULL, message_title text NOT NULL, message_text text NOT NULL, PRIMARY KEY(id), CONSTRAINT c_message_loc_unique_message_language UNIQUE(message_id, language_id));
+                - ALTER TABLE message_localization DROP CONSTRAINT IF EXISTS ref_message_id_to_message;
+                - ALTER TABLE message_localization ADD CONSTRAINT ref_message_id_to_message FOREIGN KEY (message_id) REFERENCES message(id) MATCH SIMPLE ON DELETE CASCADE ON UPDATE NO ACTION NOT DEFERRABLE;
+                - CREATE TABLE IF NOT EXISTS user_message_last_time_sent (id serial NOT NULL, login_id int8 NOT NULL, message_id int4 NOT NULL, last_time_sent_ts_bigint int8 NOT NULL, PRIMARY KEY (id), CONSTRAINT c_user_unique_message UNIQUE(login_id, message_id));
+                - ALTER TABLE user_message_last_time_sent DROP CONSTRAINT IF EXISTS ref_login_id_to_login
+                - ALTER TABLE user_message_last_time_sent ADD CONSTRAINT ref_login_id_to_login FOREIGN KEY (login_id) REFERENCES login(id) MATCH SIMPLE ON DELETE CASCADE ON UPDATE NO ACTION NOT DEFERRABLE;
+                - ALTER TABLE user_message_last_time_sent DROP CONSTRAINT IF EXISTS ref_message_id_to_message
+                - ALTER TABLE user_message_last_time_sent ADD CONSTRAINT ref_message_id_to_message FOREIGN KEY (message_id) REFERENCES message(id) MATCH SIMPLE ON DELETE CASCADE ON UPDATE NO ACTION NOT DEFERRABLE;
+                - ALTER TABLE login OWNER TO ${_param:pushkin_db_user};
+                - ALTER TABLE device OWNER TO ${_param:pushkin_db_user};
+                - ALTER TABLE message OWNER TO ${_param:pushkin_db_user};
+                - ALTER TABLE message_localization OWNER TO ${_param:pushkin_db_user};
+                - ALTER TABLE user_message_last_time_sent OWNER TO ${_param:pushkin_db_user};
+                - GRANT ALL PRIVILEGES ON TABLE login TO ${_param:pushkin_db_user};
+                - GRANT ALL PRIVILEGES ON TABLE device TO ${_param:pushkin_db_user};
+                - GRANT ALL PRIVILEGES ON TABLE message TO ${_param:pushkin_db_user};
+                - GRANT ALL PRIVILEGES ON TABLE message_localization TO ${_param:pushkin_db_user};
+                - GRANT ALL PRIVILEGES ON TABLE user_message_last_time_sent TO ${_param:pushkin_db_user};
+              extension:
+                hstore:
+                  enabled: true
+
diff --git a/postgresql/client/janitor_monkey.yml b/postgresql/client/pushkin/janitor_monkey.yml
similarity index 68%
rename from postgresql/client/janitor_monkey.yml
rename to postgresql/client/pushkin/janitor_monkey.yml
index def9a06..b56d098 100644
--- a/postgresql/client/janitor_monkey.yml
+++ b/postgresql/client/pushkin/janitor_monkey.yml
@@ -12,16 +12,7 @@
       server:
         server01:
           database:
-            janmonkey:
-              enabled: true
-              encoding: 'UTF8'
-              locale: 'en_US'
-              users:
-              - name: ${_param:janmonkey_db_user}
-                password: ${_param:janmonkey_db_user_password}
-                host: ${_param:janmonkey_db_host}
-                createdb: true
-                rights: all privileges
+            pushkin:
               init:
                 maintenance_db: pushkin
                 force: true
diff --git a/postgresql/client/pushkin/security_monkey.yml b/postgresql/client/pushkin/security_monkey.yml
new file mode 100644
index 0000000..18154cd
--- /dev/null
+++ b/postgresql/client/pushkin/security_monkey.yml
@@ -0,0 +1,19 @@
+classes:
+  - system.postgresql.client
+parameters:
+  _param:
+    secmonkey_db_host: ${_param:haproxy_postgresql_bind_host}
+    secmonkey_db_user: secmonkey
+    secmonkey_db_user_password: secmonkey
+  postgresql:
+    client:
+      server:
+        server01:
+          database:
+           pushkin:
+              init:
+                maintenance_db: pushkin
+                force: true
+                queries:
+                - INSERT INTO login VALUES (${_param:secmonkey_login_id}, ${_param:secmonkey_application_id}) ON CONFLICT (id) DO UPDATE SET id = excluded.id;
+                - INSERT INTO device VALUES (${_param:secmonkey_application_id}, ${_param:secmonkey_login_id}, 42, 'security_audit_service', NULL, 1, NULL) ON CONFLICT (id) DO UPDATE SET id = excluded.id;
diff --git a/postgresql/client/sfdc.yml b/postgresql/client/pushkin/sfdc.yml
similarity index 68%
rename from postgresql/client/sfdc.yml
rename to postgresql/client/pushkin/sfdc.yml
index bafd9c9..57af7fe 100644
--- a/postgresql/client/sfdc.yml
+++ b/postgresql/client/pushkin/sfdc.yml
@@ -12,16 +12,7 @@
       server:
         server01:
           database:
-            sfdc:
-              enabled: true
-              encoding: 'UTF8'
-              locale: 'en_US'
-              users:
-              - name: ${_param:sfdc_db_user}
-                password: ${_param:sfdc_db_user_password}
-                host: ${_param:sfdc_db_host}
-                createdb: true
-                rights: all privileges
+            pushkin:
               init:
                 maintenance_db: pushkin
                 force: true
diff --git a/postgresql/client/security_monkey.yml b/postgresql/client/security_monkey.yml
index c47e241..ab7a4c8 100644
--- a/postgresql/client/security_monkey.yml
+++ b/postgresql/client/security_monkey.yml
@@ -20,9 +20,3 @@
                 host: ${_param:secmonkey_db_host}
                 createdb: true
                 rights: all privileges
-              init:
-                maintenance_db: pushkin
-                force: true
-                queries:
-                - INSERT INTO login VALUES (${_param:secmonkey_login_id}, ${_param:secmonkey_application_id}) ON CONFLICT (id) DO UPDATE SET id = excluded.id;
-                - INSERT INTO device VALUES (${_param:secmonkey_application_id}, ${_param:secmonkey_login_id}, 42, 'security_audit_service', NULL, 1, NULL) ON CONFLICT (id) DO UPDATE SET id = excluded.id;