File ardana-monasca-transform-9.0+git.1557220073.7e88cfa.obscpio of Package ardana-monasca-transform

070701000E4FCD000081A40000000000000000000000015CD14AE900000084000000FD0000000200000000000000000000003F00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/.gitreview[gerrit]
host=gerrit.prv.suse.net
port=29418
project=ardana/monasca-transform-ansible.git
defaultremote=ardana
defaultbranch=master
070701000E4FCC000081A40000000000000000000000015CD14AE90000000C000000FD0000000200000000000000000000004200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/.rsync-filter- ardana-ci
070701000E4F9B000081A40000000000000000000000015CD14AE90000279F000000FD0000000200000000000000000000003C00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/LICENSE
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

070701000E500B000081A40000000000000000000000015CD14AE90000049C000000FD0000000200000000000000000000003E00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/README.md<!--
(c) Copyright 2016 Hewlett Packard Enterprise Development LP
(c) Copyright 2017 SUSE LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
-->

MONASCA-TRANSFORM-ANSIBLE
=========================

This repo contains the following roles

 - MON-TRA:         Monasca-transform service

The verbs:

  - configure - configure the service/role
  - install   - install the service/role
  - start     - start the service/role
  - stop      - stop the service/role

The operations:

  - deploy       - deploy the service (install, configure and start)
  - upgrade      - upgrade the service
                    (install new packages, re-configure, re-start)
  - reconfigure  - re-configure the service, re-start
070701000E4FD0000081A40000000000000000000000015CD14AE9000002ED000000FD0000000200000000000000000000005C00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/_monasca-transform-schedule-restart.yml#
# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# Schedule a restart of all monasca-transform services
# using ardana_notify_... variables
- hosts: all
  tasks:
    - include: roles/MON-TRA/tasks/_schedule_restart.yml070701000E4FFE000041ED0000000000000000000000045CD14AE900000000000000FD0000000200000000000000000000003E00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci070701000E4FFF000041ED0000000000000000000000035CD14AE900000000000000FD0000000200000000000000000000004600000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/project070701000E5000000041ED0000000000000000000000035CD14AE900000000000000FD0000000200000000000000000000005200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/project/input-model070701000E5001000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000005700000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/project/input-model/data070701000E5002000081A40000000000000000000000015CD14AE900000CBB000000FD0000000200000000000000000000006900000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/project/input-model/data/control_plane.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
  product:
    version: 2

  control-planes:
    - name: ccp
      control-plane-prefix: ccp
      region-name: region1
      failure-zones:
        - AZ1
        - AZ2
        - AZ3

      common-service-components:
        - lifecycle-manager-target
        - monasca-agent

      clusters:
        - name: cluster0
          cluster-prefix: c0
          server-role:
            - SERVER1-ROLE
          member-count: 1
          allocation-policy: strict
          service-components:
            - lifecycle-manager
            - tempest
            - ntp-client

            # Required for testing in (run-test.sh)
            - openstack-client


        - name: cluster1
          cluster-prefix: c1
          server-role:
            - SERVER2-ROLE
          member-count: 1
          allocation-policy: strict
          service-components:
            - ntp-client

            # Monasca server
            - kafka
            - zookeeper
            - vertica
            - monasca-api
            - monasca-persister
            - spark
            - monasca-transform


        - name: cluster2
          cluster-prefix: c2
          server-role:
            - SERVER3-ROLE
          member-count: 1
          allocation-policy: strict
          service-components:
            - ntp-server

            - mysql
            - rabbitmq

            - keystone-api


        - name: cluster3
          cluster-prefix: c3
          server-role:
            - SERVER4-ROLE
            - SERVER5-ROLE
            - SERVER6-ROLE
          member-count: 1
          allocation-policy: strict
          service-components:
            - ntp-client

            - ip-cluster

            - glance-api:
                ha_mode: false
                glance_stores: 'file'
                glance_default_store: 'file'
            - glance-registry

            - nova-api
            - nova-scheduler
            - nova-conductor
            - nova-console-auth
            - nova-novncproxy

            - neutron-server
            - neutron-ml2-plugin
            - neutron-vpn-agent
            - neutron-dhcp-agent
            - neutron-metadata-agent
            - neutron-openvswitch-agent


      resources:
        - name: resource
          resource-prefix: res
          server-role:
            - SERVER7-ROLE
          allocation-policy: any
          service-components:
            - ntp-client

            - nova-compute-kvm
            - nova-compute

            - neutron-l3-agent
            - neutron-metadata-agent
            - neutron-openvswitch-agent
            - neutron-lbaasv2-agent
070701000E5003000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests070701000E5004000081A40000000000000000000000015CD14AE9000004A3000000FD0000000200000000000000000000005300000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests/test-plan.yaml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
- name: Validate monasca-transform-up
  logfile: testsuite-test_up.log
  exec:
    - validate-monasca-transform-up.bash

- name: Validate stop-start monasca-transform
  logfile: testsuite-test_stop-start.log
  exec:
    - validate-monasca-transform-stop-start.bash

- name: Validate monasca-transform-upgrade
  logfile: testsuite-test_upgrade.log
  exec:
    - validate-monasca-transform-upgrade.bash

- name: Validate monasca-transform-reconfigure
  logfile: testsuite-test_reconfigure.log
  exec:
    - validate-monasca-transform-reconfigure.bash070701000E5005000081ED0000000000000000000000015CD14AE900000402000000FD0000000200000000000000000000005500000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests/update-conf.bash#!/bin/bash
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
set -vxe
echo "Changing $1 in $2"
pushd ~/openstack/my_cloud/config
sed -e "$1" -i "$2" --follow-symlinks
git add -A
git commit --allow-empty -m "My Config Change"
pushd ~/openstack/ardana/ansible/
ansible-playbook -i hosts/localhost config-processor-run.yml -e encrypt="" \
                     -e rekey=""
ansible-playbook -i hosts/localhost ready-deployment.yml
popd
popd
070701000E5006000081ED0000000000000000000000015CD14AE900000465000000FD0000000200000000000000000000007000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests/validate-monasca-transform-reconfigure.bash#!/bin/bash
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
ansible-playbook -i hosts/verb_hosts monasca-transform-reconfigure.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform reconfigure"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi

ansible-playbook -i hosts/verb_hosts monasca-transform-status.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Status is $MONASCA_TRANSFORM_STATUS"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi
070701000E5009000081ED0000000000000000000000015CD14AE900000635000000FD0000000200000000000000000000006F00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests/validate-monasca-transform-stop-start.bash#!/bin/bash
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
ansible-playbook -i hosts/verb_hosts monasca-transform-stop.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Stop"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi

ansible-playbook -i hosts/verb_hosts monasca-transform-status.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Status is $MONASCA_TRANSFORM_STATUS"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Fail"
  exit 1
else
  echo "Ok"
fi

ansible-playbook -i hosts/verb_hosts monasca-transform-start.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Start"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi

ansible-playbook -i hosts/verb_hosts monasca-transform-status.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Status is $MONASCA_TRANSFORM_STATUS"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi070701000E5008000081ED0000000000000000000000015CD14AE900000385000000FD0000000200000000000000000000006700000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests/validate-monasca-transform-up.bash#!/bin/bash
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
ansible-playbook -i hosts/verb_hosts monasca-transform-status.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Status is $MONASCA_TRANSFORM_STATUS"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi
070701000E5007000081ED0000000000000000000000015CD14AE90000045D000000FD0000000200000000000000000000006C00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/ardana-ci/tests/validate-monasca-transform-upgrade.bash#!/bin/bash
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
ansible-playbook -i hosts/verb_hosts monasca-transform-upgrade.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform upgrade"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi

ansible-playbook -i hosts/verb_hosts monasca-transform-status.yml
MONASCA_TRANSFORM_STATUS=$?
echo "Monasca-transform Service Status is $MONASCA_TRANSFORM_STATUS"
if [ $MONASCA_TRANSFORM_STATUS -eq 0 ]
then
  echo "Ok"
else
  echo "Fail"
  exit 1
fi
070701000E4FC8000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000003B00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/config070701000E4FC9000081A40000000000000000000000015CD14AE900000417000000FD0000000200000000000000000000005A00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/config/monasca-transform-symlinks.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#

# The following relative symlinks are created under the
# my_cloud/config directory.
---
symlinks:
  "monasca-transform/monasca-transform.conf.j2": "roles/MON-TRA/templates/monasca-transform.conf.j2"
  "monasca-transform/pre_transform_specs.json.j2": "roles/MON-TRA/templates/pre_transform_specs.json.j2"
  "monasca-transform/transform_specs.json.j2": "roles/MON-TRA/templates/transform_specs.json.j2"
070701000E500A000081A40000000000000000000000015CD14AE9000003C2000000FD0000000200000000000000000000006200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-deploy-monitoring-agent.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- hosts: MON-TRA
  roles:
    - {role: monasca-agent, run_mode: Use}
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/monasca_configure.yml

# Creating monitoring checks for monasca-transform Services
# Monitoring checks need service to be running for which
# to be created ande hence need to run post start.
070701000E4FCB000081A40000000000000000000000015CD14AE90000057D000000FD0000000200000000000000000000005900000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-deploy-service.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# get the admin project details for the service configuration
- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/discover_admin_project.yml
      ansible_python_interpreter: >
        {{ KEY_CLI.vars.keystone_client_python_interpreter }}

- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/install.yml
    - include: roles/MON-TRA/tasks/configure.yml
    # task delegated to kafka node as kafka deploys the script required
    - include: roles/MON-TRA/tasks/create_kafka_topics.yml
    - include: roles/MON-TRA/tasks/start.yml

# Creating monitoring checks for monasca-transform Services
# Monitoring checks need service to be running for which
# to be created ande hence need to run post start.
070701000E4FCF000081A40000000000000000000000015CD14AE9000003C6000000FD0000000200000000000000000000005100000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-deploy.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- include: pbstart.yml
  vars:
    playbook_name: "monasca-transform-deploy.yml"

# deploy the service
- include: monasca-transform-deploy-service.yml

# deploy the monitoring agent
- include: monasca-transform-deploy-monitoring-agent.yml

- include: pbfinish.yml
  vars:
    playbook_name: "monasca-transform-deploy.yml"
070701000E4FD2000081A40000000000000000000000015CD14AE90000044D000000FD0000000200000000000000000000005600000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-reconfigure.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# get the admin project details for the service configuration
- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/discover_admin_project.yml
      ansible_python_interpreter: >
        {{ KEY_CLI.vars.keystone_client_python_interpreter }}

- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/stop.yml
    - include: roles/MON-TRA/tasks/configure.yml
    - include: roles/MON-TRA/tasks/start.yml070701000E4F9C000081A40000000000000000000000015CD14AE90000029F000000FD0000000200000000000000000000005200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-restart.yml#
# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- include: _monasca-transform-schedule-restart.yml

- include: monasca-transform-start.yml
070701000E4FFD000081A40000000000000000000000015CD14AE9000002E0000000FD0000000200000000000000000000005000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/start.yml070701000E4FD1000081A40000000000000000000000015CD14AE9000002FA000000FD0000000200000000000000000000005100000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: MON-TRA
  max_fail_percentage: 0
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/status.yml070701000E4FCE000081A40000000000000000000000015CD14AE9000002DF000000FD0000000200000000000000000000004F00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/stop.yml070701000E4F9A000081A40000000000000000000000015CD14AE90000041D000000FD0000000200000000000000000000005200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/monasca-transform-upgrade.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
# get the admin project details for the service configuration
- hosts: MON-TRA
  roles:
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/discover_admin_project.yml
      ansible_python_interpreter: >
        {{ KEY_CLI.vars.keystone_client_python_interpreter }}

- hosts: MON-TRA
  roles:
    - {role: monasca-agent, run_mode: Use}
    - MON-TRA
  tasks:
    - include: roles/MON-TRA/tasks/upgrade.yml070701000E4F9D000041ED0000000000000000000000035CD14AE900000000000000FD0000000200000000000000000000003A00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles070701000E4F9E000041ED0000000000000000000000085CD14AE900000000000000FD0000000200000000000000000000004200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA070701000E4FC6000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004B00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/defaults070701000E4FC7000081A40000000000000000000000015CD14AE90000128A000000FD0000000200000000000000000000005400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/defaults/main.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
mon_tra_component_name: "monasca-transform"
mon_tra_spark_component_name: "spark"
mon_tra_spark_group_name: "spark"
mon_tra_app_dir: "/opt/monasca/{{ mon_tra_component_name }}"
mon_tra_configuration_file: "monasca-transform.conf"
mon_tra_service_name: "monasca-transform"
mon_tra_monasca_run_dir: "/var/run/monasca"
mon_tra_service_run_dir: "{{ mon_tra_monasca_run_dir }}/{{ mon_tra_component_name }}"
mon_tra_service_pid_file: "{{ mon_tra_service_run_dir }}/{{ mon_tra_service_name }}.pid"
mon_tra_monasca_log_dir: "/var/log/monasca"
mon_tra_service_log_dir: "{{ mon_tra_monasca_log_dir }}/{{ mon_tra_component_name }}"
mon_tra_service_log_filename: "{{ mon_tra_component_name }}.log"
mon_tra_event_logging_enabled: "false"
mon_tra_service_user: "monasca-transform"
mon_tra_service_group: "{{ mon_tra_service_user }}"
mon_tra_monasca_group: "monasca"
mon_tra_service_start_levels: "2 3 4 5"
mon_tra_virtualenv_location: "/opt/stack/service/monasca-transform/venv/"
mon_tra_service_dir: "{{ mon_tra_app_dir }}/lib"
mon_tra_tools_dir: "{{ mon_tra_app_dir }}/tools"
mon_tra_service_file: "service_runner.py"
mon_tra_bin_dir: "{{ mon_tra_component_name | bin_dir() }}"
mon_tra_lib_dir: "{{ mon_tra_component_name | jar_dir() }}"
mon_tra_zip_filename: monasca_transform.zip


mon_tra_admin_project:  "{{ KEY_API.vars.keystone_admin_tenant }}"
mon_tra_region: "region1"
mon_tra_keystone_url: "{{ MON_TRA.consumes_KEY_API.vips.private[0].url }}/v3"
mon_tra_keystone_admin: "{{ KEY_API.vars.keystone_admin_user }}"
mon_tra_keystone_admin_project: "{{ KEY_API.vars.keystone_admin_tenant }}"
mon_tra_keystone_admin_password: "{{ KEY_API.vars.keystone_admin_pwd | quote }}"
mon_tra_keystone_default_domain_name: "{{ KEY_API.vars.keystone_default_domain }}"

# the following value will be populated in the 'discover_admin_tenant' play
# in time for the 'configure' where the config template is processed
mon_tra_admin_project_id: "{{ mon_tra_project_result.result.id }}"
mon_tra_stream_interval: 600

mon_tra_kafka_target_host: "{{ groups[verb_hosts.FND_KFK][0] }}"

mon_tra_kafka_nodes: "{{ MON_TRA.consumes_FND_KFK.members.private }}"
mon_tra_kafka_node_count: "{{ MON_TRA.consumes_FND_KFK.members.private | length }}"
mon_tra_kafka_replicas: "{% if mon_tra_kafka_node_count | int > 3 %}3{% else %}{{ mon_tra_kafka_node_count }}{% endif %}"
mon_tra_kafka_brokers: "{% for node in mon_tra_kafka_nodes %}{{ node.host }}:{{ node.port }}{% if not loop.last %},{% endif %}{% endfor %}"
mon_tra_zookeeper_nodes: "{{ MON_TRA.consumes_FND_ZOO.members.private }}"
mon_tra_zookeeper_hosts: "{% for node in mon_tra_zookeeper_nodes %}{{ node.host }}:{{ node.port }}{% if not loop.last %},{% endif %}{% endfor %}"
mon_tra_spark_masters: "{% for node in FND_SPA.members.master %}{{ node.host }}:{{ node.port }}{% if not loop.last %},{% endif %}{% endfor %}"
mon_tra_spark_home: "/usr/share/spark"
mon_tra_jdbc_server_type: "mysql"
# systemd
mon_tra_systemd_service: /etc/systemd/system/monasca-transform.service
mon_tra_init_dir: /etc/monasca/transform/init

# database related vars
mon_tra_database_root_dir: "{{ mon_tra_app_dir }}/schema_files"
mon_tra_mysql_user: "{{ MON_TRA.consumes_FND_MDB.vars.mysql_monasca_transform_user }}"
mon_tra_mysql_password: "{{ MON_TRA.consumes_FND_MDB.vars.mysql_monasca_transform_password }}"
mon_tra_mysql_target_host: "{{ MON_TRA.consumes_FND_MDB.vips.private[0].host }}"
# specs source
mon_tra_specs_source_dir: /etc/monasca/transform

# database ssl
mon_tra_db_use_ssl: "{{ MON_TRA.consumes_FND_MDB.vips.private[0].use_tls }}"

mon_tra_ca_file: "{{ trusted_ca_bundle }}"
# schema and data to populate
mon_tra_schema_file: "{{ mon_tra_database_root_dir }}/monasca-transform_mysql.sql"
mon_tra_pre_transform_specs_file: "{{ mon_tra_database_root_dir }}/pre_transform_specs.sql"
mon_tra_transform_specs_file: "{{ mon_tra_database_root_dir }}/transform_specs.sql"

# monitoring
mon_tra_agent_detection_plugin_dir: "{{ monasca_agent_detection_plugin_dir }}"
mon_tra_deferred_start_monitored_processes:
    - "pyspark"
    - "org.apache.spark.executor.CoarseGrainedExecutorBackend"
070701000E4FA4000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004800000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files070701000E4FAA000081A40000000000000000000000015CD14AE9000005A0000000FD0000000200000000000000000000006200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/MonascaTransformDetect.py#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#

import logging

import monasca_setup.detection

log = logging.getLogger(__name__)


class MonascaTransformDetect(monasca_setup.detection.ServicePlugin):

    """Detect Monasca Transform daemons and setup configuration to
    monitor them."""

    def __init__(self, template_dir, overwrite=True, args=None):
        log.info("\tWatching the monasca transform processes.")
        service_params = {
            'args': {},
            'template_dir': template_dir,
            'overwrite': overwrite,
            'service_name': 'monasca-transform',
            'process_names': [
                'monasca-transform',
                'pyspark',
                'org.apache.spark.executor.CoarseGrainedExecutorBackend']
        }

        super(MonascaTransformDetect, self).__init__(service_params)

070701000E4FA5000081ED0000000000000000000000015CD14AE9000002DD000000FD0000000200000000000000000000006000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/create_ghost_process.sh#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#!/usr/bin/env bash
echo Ghosting process for $1, duration $2
bash ghost_process.sh $1 $2 &


070701000E4FA6000081A40000000000000000000000015CD14AE900000DA8000000FD0000000200000000000000000000005800000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/generate_ddl.py#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
"""Generator for ddl
-t type of output to generate - either 'pre_transform_spec' or 'transform_spec'
-o output path
-i path to template file
"""

import getopt
import json
import os.path
import sys


class Generator(object):

    key_name = None

    def generate(self, template_path, source_json_path, output_path):
        print("Generating content at %s with template at %s, using key %s" % (
            output_path, template_path, self.key_name))
        data = []
        with open(source_json_path) as f:
            for line in f:
                json_line = json.loads(line)
                data_line = '(\'%s\',\n\'%s\')' % (
                    json_line[self.key_name], json.dumps(json_line))
                data.append(str(data_line))
        print(data)
        with open(template_path) as f:
            template = f.read()
        with open(output_path, 'w') as write_file:
            write_file.write(template)
            for record in data:
                write_file.write(record)
                write_file.write(',\n')
            write_file.seek(-2, 1)
            write_file.truncate()
            write_file.write(';')


class TransformSpecsGenerator(Generator):

    key_name = 'metric_id'


class PreTransformSpecsGenerator(Generator):

    key_name = 'event_type'


def main():
    # parse command line options
    try:
        opts, args = getopt.getopt(sys.argv[1:], "ht:o:i:s:")
        print('Opts = %s' % opts)
        print('Args = %s' % args)
    except getopt.error as msg:
        print(msg)
        print("for help use --help")
        sys.exit(2)
    script_type = None
    template_path = None
    source_json_path = None
    output_path = None
    # process options
    for o, a in opts:
        if o in ("-h", "--help"):
            print(__doc__)
            sys.exit(0)
        elif o == "-t":
            script_type = a
            if a not in ('pre_transform_spec', 'transform_spec'):
                print('Incorrect output type specified: \'%s\'.\n %s' % (
                    a, __doc__))
                sys.exit(1)
        elif o == "-i":
            template_path = a
            if not os.path.isfile(a):
                print('Cannot find template file at %s' % a)
                sys.exit(1)
        elif o == "-o":
            output_path = a
        elif o == "-s":
            source_json_path = a

    print("Called with type = %s, template_path = %s, source_json_path %s"
          " and output_path = %s" % (
              script_type, template_path, source_json_path, output_path))
    generator = None
    if script_type == 'pre_transform_spec':
        generator = PreTransformSpecsGenerator()
    elif script_type == 'transform_spec':
        generator = TransformSpecsGenerator()
    generator.generate(template_path, source_json_path, output_path)

if __name__ == '__main__':
    main()
070701000E4FA8000081ED0000000000000000000000015CD14AE9000002C3000000FD0000000200000000000000000000005900000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/ghost_process.sh#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#!/usr/bin/env bash
echo Ghost process for $1, duration $2
sleep $2
070701000E4FA9000081A40000000000000000000000015CD14AE9000006D6000000FD0000000200000000000000000000006400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/monasca-transform_mysql.sql#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#

CREATE DATABASE IF NOT EXISTS `monasca_transform` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE `monasca_transform`;

SET foreign_key_checks = 0;

CREATE TABLE IF NOT EXISTS `kafka_offsets` (
  `id` INTEGER AUTO_INCREMENT NOT NULL,
  `topic` varchar(128) NOT NULL,
  `until_offset` BIGINT NULL,
  `from_offset` BIGINT NULL,
  `app_name` varchar(128) NOT NULL,
  `partition` integer NOT NULL,
  `batch_time` varchar(20) NOT NULL,
  `last_updated` varchar(20) NOT NULL,
  `revision` integer NOT NULL,
  PRIMARY KEY (`id`, `app_name`, `topic`, `partition`, `revision`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

CREATE TABLE IF NOT EXISTS `transform_specs` (
  `metric_id` varchar(128) NOT NULL,
  `transform_spec` varchar(2048) NOT NULL,
  PRIMARY KEY (`metric_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

CREATE TABLE IF NOT EXISTS `pre_transform_specs` (
  `event_type` varchar(128) NOT NULL,
  `pre_transform_spec` varchar(2048) NOT NULL,
  PRIMARY KEY (`event_type`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


070701000E4FA7000081A40000000000000000000000015CD14AE900000320000000FD0000000200000000000000000000006900000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/pre_transform_specs_template.sql#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
DELETE FROM `monasca_transform`.`pre_transform_specs`;

INSERT IGNORE INTO `monasca_transform`.`pre_transform_specs`
(`event_type`,
`pre_transform_spec`)
VALUES
070701000E4FAB000081A40000000000000000000000015CD14AE900000313000000FD0000000200000000000000000000006500000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/files/transform_specs_template.sql#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
DELETE FROM `monasca_transform`.`transform_specs`;

INSERT IGNORE INTO `monasca_transform`.`transform_specs`
(`metric_id`,
`transform_spec`)
VALUES
070701000E4FA2000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004700000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/meta070701000E4FA3000081A40000000000000000000000015CD14AE900000263000000FD0000000200000000000000000000005000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/meta/main.yml# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
dependencies:
  - role: tls-vars
070701000E4FAC000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004800000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks070701000E4FB0000081A40000000000000000000000015CD14AE900000327000000FD0000000200000000000000000000005E00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/_schedule_restart.yml#
# (c) Copyright 2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: MON-TRA | _schedule_restart | Schedule a restart for all services
  debug:
    msg: "Trigger a change notification in monasca-transform"
  changed_when: true
  register: ardana_notify_monasca_transform_restart_required
070701000E4FB9000081A40000000000000000000000015CD14AE900000D5C000000FD0000000200000000000000000000005600000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/configure.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- include: populate_db.yml

- name: MON-TRA | configure | Copy service_runner.py template
  become: yes
  template:
    src: "{{ mon_tra_service_file }}.j2"
    dest: "{{ mon_tra_service_dir }}/{{ mon_tra_service_file }}"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0644

- name: MON-TRA | configure | Copy configuration file
  become: yes
  template:
    src: "{{ mon_tra_configuration_file }}.j2"
    dest: /etc/{{ mon_tra_configuration_file }}
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0644

- name: MON-TRA | configure | Deploy the driver script
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  template:
    src: driver.py.j2
    dest: "{{ mon_tra_service_dir }}/driver.py"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0644

- name: MON-TRA | configure | Update installed packager cache
  become: yes
  install_package:
    cache: update

- name: MON-TRA | configure | Generate the zip for use in spark-submit
  become: yes
  command: |
    "{{ mon_tra_bin_dir }}"/python
    {{ mon_tra_tools_dir }}/create_zip.py

- name: MON-TRA | configure | Chown zipfile to service user
  become: yes
  file:
    path: "{{ mon_tra_service_dir }}/{{ mon_tra_zip_filename }}"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0644

- name: MON-TRA | configure | Create the init directory
  become: yes
  file:
    path: "{{ mon_tra_init_dir }}"
    state: directory
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755

- name: MON-TRA | configure | Create service unit
  become: yes
  template:
    src: monasca-transform.service.j2
    dest: "{{ mon_tra_systemd_service }}"
    owner: root
    group: root
    mode: 0775

- name: MON-TRA | configure | Create monasca-transform start script
  become: yes
  template:
    src: start-monasca-transform.sh.j2
    dest: "{{ mon_tra_init_dir }}/start-monasca-transform.sh"
    owner: root
    group: root
    mode: 0775

# See: http://www.freedesktop.org/software/systemd/man/tmpfiles.d.html
- name: MON-TRA | configure | Create tmpfs monasca-transform.conf
  become: yes
  template:
    src: monasca-transform-tmpfsdirs.conf.j2
    dest: "/usr/lib/tmpfiles.d/monasca-transform.conf"
    owner: root
    group: root
    mode: 0644

- name: MON-TRA | configure | Reload systemctl
  become: yes
  command: /bin/systemctl daemon-reload

- name: MON-TRA | configure | Create log file with appropriate permissions
  become: yes
  file:
    path: "{{ mon_tra_service_log_dir }}/{{ mon_tra_service_log_filename }}"
    owner: "{{ mon_tra_service_user }}"
    group: "adm"
    mode: 0666
    state: touch
070701000E4FAD000081A40000000000000000000000015CD14AE9000006A5000000FD0000000200000000000000000000006000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/create_kafka_topics.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: MON-TRA | create_kafka_topics | include kafka vars
  include_vars: ../../kafka/vars/main.yml

- name: MON-TRA | create_kafka_topics | Check metrics pre hourly topic
  become: yes
  delegate_to: "{{ mon_tra_kafka_target_host }}"
  shell: >
    {{ kafka_bin_dir }}/kafka-topics.sh
    --list
    --zookeeper {{ mon_tra_zookeeper_hosts }}
    --topic metrics_pre_hourly
  changed_when: false
  register: check_metrics_pre_hourly_topic_result
  run_once: true

- name: MON-TRA | create_kafka_topics | Create metrics pre hourly topic
  become: yes
  delegate_to: "{{ mon_tra_kafka_target_host }}"
  command: >
    {{ kafka_bin_dir }}/kafka-topics.sh
    --create
    --zookeeper {{ mon_tra_zookeeper_hosts }}
    --replication-factor {{ mon_tra_kafka_replicas }}
    --partitions 64
    --topic metrics_pre_hourly
  when: (not (check_metrics_pre_hourly_topic_result.stdout |
              search('metrics_pre_hourly')))
  register: create_metrics_pre_hourly_result
  failed_when: "'Error' in create_metrics_pre_hourly_result.stdout"
  run_once: true
070701000E4FAF000081A40000000000000000000000015CD14AE9000006FF000000FD0000000200000000000000000000006300000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/discover_admin_project.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | discover_admin_project | Get a domain scoped token
  no_log: True
  keystone_v3:
    endpoint: "{{ mon_tra_keystone_url }}"
    login_username: "{{ mon_tra_keystone_admin }}"
    login_password: "{{ mon_tra_keystone_admin_password }}"
    login_user_domain_name: "{{ mon_tra_keystone_default_domain_name }}"
    login_domain_name: "{{ mon_tra_keystone_default_domain_name }}"
    action: "token_get"
  register: mon_tra_domain_scoped_token_result
  run_once: True

# retrieve the admin project details from keystone so that the lazy init
# of the mon_tra_admin_project_id variable can be fulfilled
- name: MON-TRA | discover_admin_project | Get admin project details
  no_log: True
  keystone_v3:
    endpoint: "{{ mon_tra_keystone_url }}"
    login_token: "{{ mon_tra_domain_scoped_token_result.result }}"
    project_name: "{{ mon_tra_keystone_admin_project }}"
    project_domain_name: "{{ mon_tra_keystone_default_domain_name }}"
    action: find_project
  run_once: True
  register: mon_tra_project_result
  failed_when: >
    mon_tra_project_result.result is undefined or
    mon_tra_project_result.result.id is undefined

070701000E4FB7000081A40000000000000000000000015CD14AE90000040D000000FD0000000200000000000000000000005400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/drop_db.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | drop_db | drop the monasca_transform db
  run_once: true
  no_log: true
  shell: >
    mysql {{ "--ssl-ca=" + mon_tra_ca_file if mon_tra_db_use_ssl else "" }} -u
    {{ mon_tra_mysql_user }}
    {% if mon_tra_mysql_password is defined %} -p{{ mon_tra_mysql_password }}
    {% endif %} -h {{ mon_tra_mysql_target_host }} -A -e
    'drop database if exists monasca_transform;'
070701000E4FB8000081A40000000000000000000000015CD14AE900000515000000FD0000000200000000000000000000005C00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/ghost_processes.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | ghost_processes | Copy ghosting script
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  copy:
    src: "{{ item }}"
    dest: "{{ mon_tra_tools_dir }}/{{ item }}"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755
  with_items:
    - "create_ghost_process.sh"
    - "ghost_process.sh"

- name: MON-TRA | ghost_processes | Ghost processes with deferred start
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  shell: ./create_ghost_process.sh {{ item }} 100
  args:
    chdir: "{{ mon_tra_tools_dir }}"
  with_items:
    "{{ mon_tra_deferred_start_monitored_processes }}"



070701000E4FB6000081A40000000000000000000000015CD14AE9000010DC000000FD0000000200000000000000000000005400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/install.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | install | include OS specific variables
  include_vars: "{{ ansible_os_family | lower }}.yml"

- name: MON-TRA | install | Setup group
  become: yes
  group:
    name: "{{ mon_tra_service_group }}"
    system: yes

- name: MON-TRA | install | Setup user
  become: yes
  user:
    name: "{{ mon_tra_service_user }}"
    createhome: no
    home: /var/nonexistent
    shell: /sbin/nologin
    system: yes
    group: "{{ mon_tra_service_group }}"
    groups: "{{ mon_tra_spark_group_name }},{{ mon_tra_monasca_group }}"
  register: monasca_transform_create_user_result
  failed_when: monasca_transform_create_user_result|failed and
                "user {{ mon_tra_service_user }} is currently used by process"
                not in monasca_transform_create_user_result.msg

- name: MON-TRA | install | Create directories
  become: yes
  file:
    path: "{{ item }}"
    state: directory
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755
  with_items:
    - "{{ mon_tra_service_log_dir }}"
    - "{{ mon_tra_service_dir }}"
    - "{{ mon_tra_service_run_dir }}"
    - "{{ mon_tra_tools_dir }}"
    - "{{ mon_tra_specs_source_dir }}"

- name: MON-TRA | install | Touch logfile
  become: yes
  file:
    path: "{{ mon_tra_service_log_dir }}/{{ mon_tra_service_log_filename }}"
    state: touch
    owner: "{{ mon_tra_service_user }}"
    group: adm
    mode: 0640

- name: MON-TRA | install | Push zip generation script
  become: yes
  template:
    src: create_zip.py.j2
    dest: "{{ mon_tra_tools_dir }}/create_zip.py"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755

- name: MON-TRA | install | Push ddl generation script
  become: yes
  template:
    src: generate_ddl.sh.j2
    dest: "{{ mon_tra_tools_dir }}/generate_ddl.sh"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755

- name: MON-TRA | install | Push ddl generation python module and templates
  become: yes
  copy:
    src: "{{ item }}"
    dest: "{{ mon_tra_tools_dir }}/{{ item }}"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755
  with_items:
    - "generate_ddl.py"
    - "pre_transform_specs_template.sql"
    - "transform_specs_template.sql"

- name: MON-TRA | install | Create database root dir
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  file:
    path: "{{ mon_tra_database_root_dir }}"
    state: directory
    mode: 0755
    recurse: yes

- name: MON-TRA | install | Copy mysql schema to host
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  copy:
    dest: "{{ mon_tra_schema_file }}"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0640
    src: monasca-transform_mysql.sql
  register: copy_result

- name: MON-TRA | install | MySQL client
  become: yes
  package:
    name: "{{ item }}"
    state: present
  with_items: monasca_transform_package_dependencies

- name: MON-TRA | install | Apply mysql schema to db
  run_once: true
  no_log: true
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  shell: >
      mysql
      {{ "--ssl-ca=" + mon_tra_ca_file if mon_tra_db_use_ssl else "" }} -u
      {{ mon_tra_mysql_user }} -p{{ mon_tra_mysql_password }} -h
      {{ mon_tra_mysql_target_host }} < {{ mon_tra_schema_file }}

- name: MON-TRA | install | Update installed packager cache
  become: yes
  install_package:
    cache: update

- name: MON-TRA | install | Install the monasca-transform venv
  become: yes
  install_package:
    name: "monasca"
    service: monasca-transform
    state: present
070701000E4FB5000081A40000000000000000000000015CD14AE9000004E0000000FD0000000200000000000000000000005E00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/monasca_configure.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
- name: MON-TRA | monasca_configure |
    Copy monasca transform Custom plugin for Ardana only
  become: yes
  copy:
    src: MonascaTransformDetect.py
    dest: "{{ mon_tra_agent_detection_plugin_dir }}/MonascaTransformDetect.py"
    owner: root
    group: root
    mode: 0440

# kick off a pyspark and executor dummy process here to fool the detection
# plugin into doing what it's told
- include: ghost_processes.yml

- name: MON-TRA | monasca_configure |
    Run Monasca agent Ardana specific monasca transform detection plugin
  become: yes
  monasca_agent_plugin:
    name: "MonascaTransformDetect"
070701000E4FB2000081A40000000000000000000000015CD14AE900000972000000FD0000000200000000000000000000005800000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/populate_db.yml#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | populate_db | include OS specific variables
  include_vars: "{{ ansible_os_family | lower }}.yml"

- name: MON-TRA | populate_db | Copy pre transform specs
  become: yes
  template:
    src: pre_transform_specs.json.j2
    dest: "{{ mon_tra_specs_source_dir }}/pre_transform_specs.json"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755

- name: MON-TRA | populate_db | Copy transform specs
  become: yes
  template:
    src: transform_specs.json.j2
    dest: "{{ mon_tra_specs_source_dir }}/transform_specs.json"
    owner: "{{ mon_tra_service_user }}"
    group: "{{ mon_tra_service_group }}"
    mode: 0755

- name: MON-TRA | populate_db | Generate ddl
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  command: |
    {{ mon_tra_tools_dir }}/generate_ddl.sh

- name: MON-TRA | populate_db | MySQL client
  become: yes
  package:
    name: "{{ item }}"
    state: present
  with_items: monasca_transform_package_dependencies

- name: MON-TRA | populate_db | Populate transform_specs in db
  run_once: true
  no_log: true
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  shell: >
    mysql {{ "--ssl-ca=" + mon_tra_ca_file if mon_tra_db_use_ssl else "" }} -u
    {{ mon_tra_mysql_user }} -p{{ mon_tra_mysql_password }} -h
    {{ mon_tra_mysql_target_host }} < {{ mon_tra_transform_specs_file }}

- name: MON-TRA | populate_db | Populate pre_transform_specs in db
  run_once: true
  no_log: true
  become_user: "{{ mon_tra_service_user }}"
  become: yes
  shell: >
    mysql {{ "--ssl-ca=" + mon_tra_ca_file if mon_tra_db_use_ssl else "" }} -u
    {{ mon_tra_mysql_user }} -p{{ mon_tra_mysql_password }} -h
    {{ mon_tra_mysql_target_host }} < {{ mon_tra_pre_transform_specs_file }}
070701000E4FB3000081A40000000000000000000000015CD14AE900000437000000FD0000000200000000000000000000005200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/start.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | start | restart "{{ mon_tra_service_name }}"
  become: yes
  service:
    name: "{{ mon_tra_service_name }}"
    state: restarted
  when: ardana_notify_monasca_transform_restart_required is defined and
        ardana_notify_monasca_transform_restart_required.changed

- name: MON-TRA | start | start "{{ mon_tra_service_name }}"
  become: yes
  service:
    name: "{{ mon_tra_service_name }}"
    state: started
070701000E4FB1000081A40000000000000000000000015CD14AE90000053C000000FD0000000200000000000000000000005300000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/status.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | status | Print service being checked
  run_once: true
  debug:
    msg: "Running service check for {{ mon_tra_service_name }}"

- name: MON-TRA | status | Check systemd service running
  command: systemctl status {{ mon_tra_service_name }}
  ignore_errors: yes
  changed_when: false
  register: mon_tra_systemctl_status_result

- name: MON-TRA | status | Report status of "{{ mon_tra_service_name }}"
  fail:
    msg: |
      {{ mon_tra_service_name }} is not running.
      systemctl status {{ mon_tra_service_name }} output:
      {{ mon_tra_systemctl_status_result.stdout }}
      {{ mon_tra_systemctl_status_result.stderr }}
  when: mon_tra_systemctl_status_result | failed
070701000E4FAE000081A40000000000000000000000015CD14AE90000039C000000FD0000000200000000000000000000005100000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/stop.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---

- name: MON-TRA | stop | stop "{{ mon_tra_service_name }}"
  become: yes
  service:
    name: "{{ mon_tra_service_name }}"
    state: stopped
  register: mon_tra_stop_result
  failed_when: >
    mon_tra_stop_result|failed
    and 'service not found' not in mon_tra_stop_result.msg070701000E4FB4000081A40000000000000000000000015CD14AE900000515000000FD0000000200000000000000000000005400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/tasks/upgrade.yml#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
## upgrade is not yet implemented as this is the initial release

- include: stop.yml

- include: drop_db.yml

- name: MON-TRA | upgrade | Remove old scripts from tools dir
  become: True
  file:
    path: "{{ mon_tra_tools_dir }}/{{ item }}"
    state: absent
  with_items:
    - "create_zip.py"
    - "generate_ddl.sh"
    - "generate_ddl.py"
    - "pre_transform_specs_template.sql"
    - "transform_specs_template.sql"

- name: MON-TRA | upgrade | Remove old sql schema
  become: True
  file:
    path: "{{ mon_tra_schema_file }}"
    state: absent

- include: install.yml

- include: configure.yml

- include: start.yml

- include: monasca_configure.yml070701000E4FBA000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004C00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates070701000E4FC0000081A40000000000000000000000015CD14AE9000003AA000000FD0000000200000000000000000000005D00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/create_zip.py.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
from zipfile import PyZipFile


with PyZipFile("{{ mon_tra_service_dir }}/{{ mon_tra_zip_filename }}",
               "w") as spark_submit_zipfile:
    spark_submit_zipfile.writepy(
        "{{ mon_tra_virtualenv_location }}"
        "lib/python2.7/site-packages/monasca_transform"
    )





070701000E4FC1000081A40000000000000000000000015CD14AE900000367000000FD0000000200000000000000000000005900000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/driver.py.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
import sys

activate_this_file = "{{ mon_tra_virtualenv_location }}/bin/activate_this.py"
execfile(activate_this_file, dict(__file__=activate_this_file))

from monasca_transform.driver.mon_metrics_kafka import invoke

invoke()070701000E4FC3000081ED0000000000000000000000015CD14AE9000004A9000000FD0000000200000000000000000000005F00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/generate_ddl.sh.j2#!/usr/bin/env bash
{#
#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
SCRIPT_HOME=$(dirname $(readlink -f $BASH_SOURCE))
pushd $SCRIPT_HOME

{{ mon_tra_bin_dir }}/python ./generate_ddl.py -t pre_transform_spec -i {{ mon_tra_tools_dir }}//pre_transform_specs_template.sql -s {{ mon_tra_specs_source_dir }}/pre_transform_specs.json -o {{ mon_tra_pre_transform_specs_file }}
{{ mon_tra_bin_dir }}/python ./generate_ddl.py -t transform_spec -i {{ mon_tra_tools_dir }}//transform_specs_template.sql -s {{ mon_tra_specs_source_dir }}/transform_specs.json -o {{ mon_tra_transform_specs_file }}

popd
070701000E4FBD000081A40000000000000000000000015CD14AE9000002E1000000FD0000000200000000000000000000007000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/monasca-transform-tmpfsdirs.conf.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
d {{ mon_tra_service_run_dir }} 0755 {{ mon_tra_service_user }} {{ mon_tra_service_group }}
070701000E4FBE000081A40000000000000000000000015CD14AE900000F46000000FD0000000200000000000000000000006600000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/monasca-transform.conf.j2{#
#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[DEFAULTS]

[repositories]
offsets = monasca_transform.mysql_offset_specs:MySQLOffsetSpecs
data_driven_specs = monasca_transform.data_driven_specs.mysql_data_driven_specs_repo:MySQLDataDrivenSpecsRepo
offsets_max_revisions = 10

[database]
server_type = {{ mon_tra_jdbc_server_type }}
host = {{ mon_tra_mysql_target_host }}
database_name = monasca_transform
username = {{ mon_tra_mysql_user }}
password = {{ mon_tra_mysql_password }}
use_ssl = {{ mon_tra_db_use_ssl }}
ca_file = {{ mon_tra_ca_file }}

[messaging]
adapter = monasca_transform.messaging.adapter:KafkaMessageAdapter
topic = metrics
brokers = {{ mon_tra_kafka_brokers }}
publish_kafka_project_id = {{ mon_tra_admin_project_id }}
publish_region = {{ mon_tra_region }}
adapter_pre_hourly = monasca_transform.messaging.adapter:KafkaMessageAdapterPreHourly
topic_pre_hourly = metrics_pre_hourly

[stage_processors]
pre_hourly_processor_enabled = True

[pre_hourly_processor]
late_metric_slack_time = 600
enable_instance_usage_df_cache = True
instance_usage_df_cache_storage_level = MEMORY_ONLY_SER_2
enable_batch_time_filtering = True
data_provider=monasca_transform.processor.pre_hourly_processor:PreHourlyProcessorDataProvider

#
# Configurable values for the monasca-transform service
#
[service]

# The address of the mechanism being used for election coordination
coordinator_address = kazoo://{{ mon_tra_zookeeper_hosts }}

# The name of the coordination/election group
coordinator_group = monasca-transform

# How long the candidate should sleep between election result queries
election_polling_frequency = 15

# Whether debug-level log entries should be included in the application
# log.  If this setting is false, info-level will be used for logging.
enable_debug_log_entries = false

# The path for the monasca-transform Spark driver
spark_driver = {{ mon_tra_service_dir }}/driver.py

# the location for the transform-service log
service_log_path={{ mon_tra_service_log_dir }}

# the filename for the transform-service log
service_log_filename={{ mon_tra_service_log_filename }}

# Whether Spark event logging should be enabled (true/false)
spark_event_logging_enabled = {{ mon_tra_event_logging_enabled }}

# A list of jars which Spark should use
# Note: 0-8 is Kafka version, 2.10 is Scala version, 2.2.3 is Spark version
spark_jars_list = {{ mon_tra_spark_home }}/jars/spark-streaming-kafka-0-8_2.10-2.2.3.jar,{{ mon_tra_spark_home }}/jars/scala-library-2.10.6.jar,{{ mon_tra_spark_home }}/jars/kafka_2.10-0.8.2.1.jar,{{ mon_tra_spark_home }}/jars/metrics-core-2.2.0.jar,{{ mon_tra_spark_home }}/jars/mysql-connector-java.jar

# A list of where the Spark master(s) should run
spark_master_list = spark://{{ mon_tra_spark_masters }}

# spark_home for the environment
spark_home = {{ mon_tra_spark_home }}

# Python files for Spark to use
spark_python_files = {{ mon_tra_service_dir }}/{{ mon_tra_zip_filename }}

# How often the stream should be read (in seconds)
stream_interval = {{ mon_tra_stream_interval }}

# The working directory for monasca-transform
work_dir = {{ mon_tra_service_run_dir }}

# enable caching of record store df
enable_record_store_df_cache = True

# set spark storage level for record store df cache
record_store_df_cache_storage_level = MEMORY_ONLY_SER_2
070701000E4FC4000081A40000000000000000000000015CD14AE900001008000000FD0000000200000000000000000000006100000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/monasca-transform.j2#!/bin/bash
{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
### BEGIN INIT INFO
# Provides:          {{ mon_tra_service_name }}
# Required-Start:
# Required-Stop:
# Default-Start:     {{ mon_tra_service_start_levels }}
# Default-Stop:
# Short-Description: {{ mon_tra_service_name }}
# Description:
### END INIT INFO


service_is_running()
{
  if [ -e {{ mon_tra_service_pid_file }} ]; then
    PID=$(cat {{ mon_tra_service_pid_file }})
    if $(ps $PID > /dev/null 2>&1); then
      return 0
    else
      echo "Found obsolete PID file for {{ mon_tra_service_name }}...deleting it"
      rm {{ mon_tra_service_pid_file }}
      return 1
    fi
  else
    return 1
  fi
}


case $1 in
    start)
      echo "Starting {{ mon_tra_service_name }}..."
      if service_is_running; then
        echo "{{ mon_tra_service_name }} is already running"
        exit 0
      fi

    echo "

      _/_/     _/_/        _/_/_/_/  _/_/      _/  _/_/_/_/  _/_/_/_/  _/_/_/_/  _/_/_/_/
     _/ _/    _/ _/       _/    _/  _/ _/     _/  _/    _/  _/        _/        _/    _/
    _/  _/   _/  _/      _/    _/  _/  _/    _/  _/    _/  _/    _/  _/        _/    _/
   _/   _/  _/   _/     _/    _/  _/   _/   _/  _/_/_/_/  _/_/_/_/  _/        _/_/_/_/  _/_/_/_/
  _/    _/ _/    _/    _/    _/  _/    _/  _/  _/    _/        _/  _/        _/    _/
 _/     _/_/     _/   _/    _/  _/     _/ _/  _/    _/        _/  _/    _/  _/    _/
_/       _/      _/  _/_/_/_/  _/      _/_/  _/    _/  _/_/_/_/  _/_/_/_/  _/    _/


   _/_/_/_/  _/_/_/     _/_/_/_/  _/_/      _/  _/_/_/_/  _/_/_/_/  _/_/_/_/  _/_/_/     _/_/     _/_/
     _/     _/    _/   _/    _/  _/ _/     _/  _/        _/        _/    _/  _/    _/   _/ _/    _/ _/
    _/     _/    _/   _/    _/  _/  _/    _/  _/    _/  _/        _/    _/  _/    _/   _/  _/   _/  _/
   _/     _/   _/    _/_/_/_/  _/   _/   _/  _/_/_/_/  _/_/_/    _/    _/  _/   _/    _/   _/  _/   _/
  _/     _/_/_/     _/    _/  _/    _/  _/        _/  _/        _/    _/  _/_/_/     _/    _/ _/    _/
 _/     _/   _/    _/    _/  _/     _/ _/        _/  _/        _/    _/  _/   _/    _/     _/_/     _/
_/     _/     _/  _/    _/  _/      _/_/  _/_/_/_/  _/        _/_/_/_/  _/     _/  _/       _/      _/

" >> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_name }}.log

      nohup sudo -u {{ mon_tra_service_user }} {{ mon_tra_virtualenv_location }}/bin/python \
                    {{ mon_tra_service_dir }}/{{ mon_tra_service_file }} \
                    >> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_name }}.log \
                    2>> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_name }}.log &
      PID=$(echo $!)
      if [ -z $PID ]; then
        echo "{{ mon_tra_service_name }} failed to start"
      else
        echo $PID > {{ mon_tra_service_pid_file }}
        echo "{{ mon_tra_service_name }} is running"
      fi
    ;;
    stop)
      echo "Stopping {{ mon_tra_service_name }}..."
      if service_is_running; then
        PID=$(cat {{ mon_tra_service_pid_file }})
        sudo kill -- -$(ps -o pgid= $PID | grep -o '[0-9]*')
        rm {{ mon_tra_service_pid_file }}
        echo "{{ mon_tra_service_name }} is stopped"
      else
        echo "{{ mon_tra_service_name }} is not running"
        exit 0
      fi
    ;;
    status)
      if service_is_running; then
        echo "{{ mon_tra_service_name }} is running"
      else
        echo "{{ mon_tra_service_name }} is not running"
      fi
    ;;
    restart)
      $0 stop
      $0 start
    ;;
esac
070701000E4FBF000081A40000000000000000000000015CD14AE90000037D000000FD0000000200000000000000000000006900000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/monasca-transform.service.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
[Unit]
Description=Monasca Transform Daemon
After=zookeeper.service spark-master.service spark-worker.service

[Service]
Type=simple
LimitNOFILE=32768
ExecStart={{ mon_tra_init_dir }}/start-monasca-transform.sh
[Install]
WantedBy=multi-user.target
070701000E4FBC000081A40000000000000000000000015CD14AE900001496000000FD0000000200000000000000000000006800000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/pre_transform_specs.json.j2{#
#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"mem.total_mb","metric_id_list":["mem_total_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"mem.usable_mb","metric_id_list":["mem_usable_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"vm.mem.total_gb","metric_id_list":["vm_mem_total_gb_all","vm_mem_total_gb_project"],"required_raw_fields_list":["creation_time","dimensions#tenant_id","dimensions#resource_id"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"vm.mem.used_gb","metric_id_list":["vm_mem_used_gb_all","vm_mem_used_gb_project"],"required_raw_fields_list":["creation_time","dimensions#tenant_id","dimensions#resource_id"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"nova.vm.mem.total_allocated_mb","metric_id_list":["nova_vm_mem_total_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"disk.total_space_mb","metric_id_list":["disk_total_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"disk.total_used_space_mb","metric_id_list":["disk_usable_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"nova.vm.disk.total_allocated_gb","metric_id_list":["nova_disk_total_allocated_gb_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"vm.disk.allocation","metric_id_list":["vm_disk_allocation_all","vm_disk_allocation_project"],"required_raw_fields_list":["creation_time","dimensions#tenant_id","dimensions#resource_id"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"cpu.total_logical_cores","metric_id_list":["cpu_total_all","cpu_total_host","cpu_util_all","cpu_util_host"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"cpu.idle_perc","metric_id_list":["cpu_util_all","cpu_util_host"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"vcpus","metric_id_list":["vcpus_all","vcpus_project"],"required_raw_fields_list":["creation_time","dimensions#project_id","dimensions#resource_id"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"vm.cpu.utilization_perc","metric_id_list":["vm_cpu_util_perc_project"],"required_raw_fields_list":["creation_time","dimensions#tenant_id","dimensions#resource_id"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"nova.vm.cpu.total_allocated","metric_id_list":["nova_vm_cpu_total_all"],"required_raw_fields_list":["creation_time"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"swiftlm.diskusage.host.val.size","metric_id_list":["swift_total_all","swift_total_host"],"required_raw_fields_list":["creation_time", "dimensions#hostname", "dimensions#mount"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"swiftlm.diskusage.host.val.avail","metric_id_list":["swift_avail_all","swift_avail_host","swift_usage_rate"],"required_raw_fields_list":["creation_time", "dimensions#hostname", "dimensions#mount"]}
{"event_processing_params":{"set_default_zone_to":"1","set_default_geolocation_to":"1","set_default_region_to":"W"},"event_type":"storage.objects.size","metric_id_list":["storage_objects_size_all"],"required_raw_fields_list":["creation_time", "dimensions#project_id"]}
070701000E4FC2000081A40000000000000000000000015CD14AE9000003B8000000FD0000000200000000000000000000006100000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/service_runner.py.j2{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
import sys

activate_this_file = "{{ mon_tra_virtualenv_location }}/bin/activate_this.py"
execfile(activate_this_file, dict(__file__=activate_this_file))

from monasca_transform.service.transform_service import main_service


def main():
    main_service()


if __name__ == "__main__":
    sys.exit(main())
070701000E4FC5000081A40000000000000000000000015CD14AE90000062F000000FD0000000200000000000000000000006A00000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/start-monasca-transform.sh.j2#!/usr/bin/env bash
{#
#
# (c) Copyright 2016 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
{% if ansible_os_family | lower == 'debian' %}
start-stop-daemon -c {{ mon_tra_service_user }}:{{ mon_tra_service_group }} \
    --pidfile /{{ mon_tra_monasca_run_dir }}/{{ mon_tra_component_name }}.pid \
    --start --exec {{ mon_tra_virtualenv_location }}/bin/python {{ mon_tra_service_dir }}/{{ mon_tra_service_file }} \
    >> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_log_filename }} 2>> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_log_filename }}
{% elif ansible_os_family | lower == 'suse' %}
start_daemon -u  {{ mon_tra_service_user }} -g {{ mon_tra_service_group }} \
    -p /{{ mon_tra_monasca_run_dir }}/{{ mon_tra_component_name }}.pid \
    {{ mon_tra_virtualenv_location }}/bin/python {{ mon_tra_service_dir }}/{{ mon_tra_service_file }} \
    >> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_log_filename }} 2>> {{ mon_tra_service_log_dir }}/{{ mon_tra_service_log_filename }}
{% endif %}070701000E4FBB000081A40000000000000000000000015CD14AE900004DAD000000FD0000000200000000000000000000006400000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/templates/transform_specs.json.j2{#
#
# (c) Copyright 2016-2017 Hewlett Packard Enterprise Development LP
# (c) Copyright 2017-2018 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
#}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"mem.total_mb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"mem_total_all","metric_id":"mem_total_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"mem.usable_mb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"mem_usable_all","metric_id":"mem_usable_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.mem.total_gb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_mem_total_gb_all","metric_id":"vm_mem_total_gb_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.mem.total_gb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["tenant_id"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_mem_total_gb_project","metric_id":"vm_mem_total_gb_project"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.mem.used_gb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_mem_used_gb_all","metric_id":"vm_mem_used_gb_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.mem.used_gb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["tenant_id"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_mem_used_gb_project","metric_id":"vm_mem_used_gb_project"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"nova.vm.mem.total_allocated_mb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list": [],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"nova_vm_mem_total_all","metric_id":"nova_vm_mem_total_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"disk.total_space_mb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"disk_total_all","metric_id":"disk_total_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"disk.total_used_space_mb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"disk_usable_all","metric_id":"disk_usable_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"nova.vm.disk.total_allocated_gb_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"nova_disk_total_allocated_gb_all","metric_id":"nova_disk_total_allocated_gb_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.disk.allocation_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_disk_allocation_all","metric_id":"vm_disk_allocation_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.disk.allocation_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["tenant_id"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_disk_allocation_project","metric_id":"vm_disk_allocation_project"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"cpu.total_logical_cores_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list": [],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"cpu_total_all","metric_id":"cpu_total_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"cpu.total_logical_cores_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":["host"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"cpu_total_host","metric_id":"cpu_total_host"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity_util","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"cpu.utilized_logical_cores_agg","aggregation_period":"hourly","aggregation_group_by_list": ["event_type", "host"],"usage_fetch_operation": "avg","usage_fetch_util_quantity_event_type": "cpu.total_logical_cores","usage_fetch_util_idle_perc_event_type": "cpu.idle_perc","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"cpu_util_all","metric_id":"cpu_util_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity_util","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"cpu.utilized_logical_cores_agg","aggregation_period":"hourly","aggregation_group_by_list": ["event_type", "host"],"usage_fetch_operation": "avg","usage_fetch_util_quantity_event_type": "cpu.total_logical_cores","usage_fetch_util_idle_perc_event_type": "cpu.idle_perc","filter_by_list": [{"field_to_filter": "host","filter_expression": "-comp(ute)?[0-9]+-","filter_operation": "include"}],"setter_rollup_group_by_list":["host"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"cpu_util_host","metric_id":"cpu_util_host"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vcpus_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vcpus_all","metric_id":"vcpus_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vcpus_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["tenant_id"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vcpus_project","metric_id":"vcpus_project"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"vm.cpu.utilization_perc_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "tenant_id", "resource_uuid"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["tenant_id"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"vm_cpu_util_perc_project","metric_id":"vm_cpu_util_perc_project"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"nova.vm.cpu.total_allocated_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list": [],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"nova_vm_cpu_total_all","metric_id":"nova_vm_cpu_total_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"swiftlm.diskusage.val.size_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "dimensions#mount"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"swift_total_all","metric_id":"swift_total_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"swiftlm.diskusage.val.size_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "dimensions#mount"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["host"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"swift_total_host","metric_id":"swift_total_host"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"swiftlm.diskusage.val.avail_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "dimensions#mount"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"swift_avail_all","metric_id":"swift_avail_all"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"swiftlm.diskusage.val.avail_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "dimensions#mount"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":["host"],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"avg","pre_hourly_group_by_list":["default"]},"metric_group":"swift_avail_host","metric_id":"swift_avail_host"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"calculate_rate","setters":["set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"swiftlm.diskusage.rate_agg","aggregation_period":"hourly","aggregation_group_by_list": ["host", "metric_id", "dimensions#mount"],"filter_by_list": [],"setter_rollup_group_by_list": [],"dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"rate","pre_hourly_group_by_list":["default"]},"metric_group":"swift_avail_rate","metric_id":"swift_usage_rate"}
{"aggregation_params_map":{"aggregation_pipeline":{"source":"streaming","usage":"fetch_quantity","setters":["rollup_quantity","set_aggregated_metric_name","set_aggregated_period"],"insert":["prepare_data","insert_data_pre_hourly"]},"aggregated_metric_name":"storage.objects.size_agg","aggregation_period":"hourly","aggregation_group_by_list": ["metric_id", "tenant_id"],"usage_fetch_operation": "avg","filter_by_list": [],"setter_rollup_group_by_list":[],"setter_rollup_operation": "sum","dimension_list":["aggregation_period","host","project_id"],"pre_hourly_operation":"sum","pre_hourly_group_by_list":["default"]},"metric_group":"storage_objects_size_all","metric_id":"storage_objects_size_all"}
070701000E4F9F000041ED0000000000000000000000025CD14AE900000000000000FD0000000200000000000000000000004700000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/vars070701000E4FA0000081A40000000000000000000000015CD14AE900000291000000FD0000000200000000000000000000005200000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/vars/debian.yml#
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
monasca_transform_package_dependencies:
  - percona-xtradb-cluster-client-5.6070701000E4FA1000081A40000000000000000000000015CD14AE9000002BB000000FD0000000200000000000000000000005000000000ardana-monasca-transform-9.0+git.1557220073.7e88cfa/roles/MON-TRA/vars/suse.yml#
# (c) Copyright 2017 SUSE LLC
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
---
monasca_transform_package_dependencies:
  - mariadb-client
  - python-mysql
  - python-PyMySQL
  - python-oslo.service
07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000B00000000TRAILER!!!246 blocks