Merge lp:~veebers/juju-ci-tools/add-dumm-storage-charm into lp:juju-ci-tools
- add-dumm-storage-charm
- Merge into trunk
Status: | Superseded |
---|---|
Proposed branch: | lp:~veebers/juju-ci-tools/add-dumm-storage-charm |
Merge into: | lp:juju-ci-tools |
Diff against target: |
60660 lines (+56124/-0) 815 files modified
bundles-lxc.yaml (+56/-0) bundles-lxd.yaml (+56/-0) centos7/dummy-sink/README (+1/-0) centos7/dummy-sink/config.yaml (+5/-0) centos7/dummy-sink/copyright (+1/-0) centos7/dummy-sink/hooks/source-relation-changed (+3/-0) centos7/dummy-sink/metadata.yaml (+10/-0) centos7/dummy-source/README (+1/-0) centos7/dummy-source/config.yaml (+5/-0) centos7/dummy-source/copyright (+1/-0) centos7/dummy-source/hooks/config-changed (+6/-0) centos7/dummy-source/metadata.yaml (+10/-0) charms-centos/dummy-sink/README (+1/-0) charms-centos/dummy-sink/config.yaml (+5/-0) charms-centos/dummy-sink/copyright (+1/-0) charms-centos/dummy-sink/hooks/install (+4/-0) charms-centos/dummy-sink/hooks/source-relation-changed (+13/-0) charms-centos/dummy-sink/hooks/start (+4/-0) charms-centos/dummy-sink/metadata.yaml (+12/-0) charms-centos/dummy-source/README (+1/-0) charms-centos/dummy-source/config.yaml (+5/-0) charms-centos/dummy-source/copyright (+1/-0) charms-centos/dummy-source/hooks/config-changed (+16/-0) charms-centos/dummy-source/hooks/install (+4/-0) charms-centos/dummy-source/hooks/start (+4/-0) charms-centos/dummy-source/metadata.yaml (+12/-0) charms-win/dummy-sink/README (+1/-0) charms-win/dummy-sink/config.yaml (+5/-0) charms-win/dummy-sink/copyright (+1/-0) charms-win/dummy-sink/hooks/install.ps1 (+2/-0) charms-win/dummy-sink/hooks/source-relation-changed.ps1 (+8/-0) charms-win/dummy-sink/hooks/start.ps1 (+2/-0) charms-win/dummy-sink/metadata.yaml (+21/-0) charms-win/dummy-source/README (+1/-0) charms-win/dummy-source/config.yaml (+5/-0) charms-win/dummy-source/copyright (+1/-0) charms-win/dummy-source/hooks/config-changed.ps1 (+7/-0) charms-win/dummy-source/hooks/install.ps1 (+2/-0) charms-win/dummy-source/hooks/sink-relation-joined.ps1 (+2/-0) charms-win/dummy-source/hooks/start.ps1 (+2/-0) charms-win/dummy-source/metadata.yaml (+21/-0) charms/chaos-monkey/README (+43/-0) charms/chaos-monkey/actions.yaml (+51/-0) charms/chaos-monkey/actions/show-logs (+20/-0) charms/chaos-monkey/actions/show-monkey-ids (+13/-0) charms/chaos-monkey/actions/start (+63/-0) charms/chaos-monkey/config.yaml (+15/-0) charms/chaos-monkey/copyright (+1/-0) charms/chaos-monkey/hooks/config-changed (+1/-0) charms/chaos-monkey/hooks/extract_chaos_monkey.bash (+9/-0) charms/chaos-monkey/hooks/install (+5/-0) charms/chaos-monkey/hooks/start (+1/-0) charms/chaos-monkey/hooks/stop (+1/-0) charms/chaos-monkey/hooks/upgrade-charm (+2/-0) charms/chaos-monkey/icon.svg (+425/-0) charms/chaos-monkey/metadata.yaml (+20/-0) charms/client-forwardproxy/Makefile (+24/-0) charms/client-forwardproxy/README (+21/-0) charms/client-forwardproxy/config.yaml (+13/-0) charms/client-forwardproxy/copyright (+1/-0) charms/client-forwardproxy/hooks/config-changed (+61/-0) charms/client-forwardproxy/hooks/install (+22/-0) charms/client-forwardproxy/hooks/stop (+6/-0) charms/client-forwardproxy/icon.svg (+1163/-0) charms/client-forwardproxy/metadata.yaml (+16/-0) charms/client-forwardproxy/revision (+1/-0) charms/client-forwardproxy/scripts/setup-lxd.sh (+29/-0) charms/dummy-resource/bar.txt (+1/-0) charms/dummy-resource/baz.txt (+1/-0) charms/dummy-resource/config.yaml (+5/-0) charms/dummy-resource/foo.txt (+1/-0) charms/dummy-resource/hooks/config-changed (+16/-0) charms/dummy-resource/hooks/install (+17/-0) charms/dummy-resource/metadata.yaml (+23/-0) charms/dummy-resource/revision (+1/-0) charms/dummy-sink/README (+3/-0) charms/dummy-sink/config.yaml (+5/-0) charms/dummy-sink/copyright (+1/-0) charms/dummy-sink/hooks/config-changed (+1/-0) charms/dummy-sink/hooks/install (+3/-0) charms/dummy-sink/hooks/source-relation-changed (+13/-0) charms/dummy-sink/hooks/start (+3/-0) charms/dummy-sink/metadata.yaml (+18/-0) charms/dummy-source/README (+3/-0) charms/dummy-source/config.yaml (+5/-0) charms/dummy-source/copyright (+1/-0) charms/dummy-source/hooks/config-changed (+16/-0) charms/dummy-source/hooks/install (+3/-0) charms/dummy-source/hooks/start (+3/-0) charms/dummy-source/metadata.yaml (+19/-0) charms/dummy-storage/config.yaml (+10/-0) charms/dummy-storage/hooks/config-changed (+59/-0) charms/dummy-storage/hooks/install (+13/-0) charms/dummy-storage/hooks/multi-fs-storage-attached (+7/-0) charms/dummy-storage/hooks/single-fs-storage-attached (+5/-0) charms/dummy-storage/hooks/start (+5/-0) charms/dummy-storage/metadata.yaml (+26/-0) charms/dummy-storage/revision (+1/-0) charms/fill-logs/README.md (+3/-0) charms/fill-logs/actions.yaml (+25/-0) charms/fill-logs/actions/actions.go (+149/-0) charms/fill-logs/actions/fill-machine (+3/-0) charms/fill-logs/actions/fill-unit (+3/-0) charms/fill-logs/actions/machine-size (+3/-0) charms/fill-logs/actions/unit-size (+3/-0) charms/fill-logs/config.yaml (+1/-0) charms/fill-logs/hooks/install (+5/-0) charms/fill-logs/metadata.yaml (+13/-0) charms/jenkins-juju-ci/README.md (+16/-0) charms/jenkins-juju-ci/config.yaml (+10/-0) charms/jenkins-juju-ci/copyright (+17/-0) charms/jenkins-juju-ci/hooks/config-changed (+141/-0) charms/jenkins-juju-ci/hooks/install (+61/-0) charms/jenkins-juju-ci/hooks/upgrade-charm (+20/-0) charms/jenkins-juju-ci/icon.svg (+596/-0) charms/jenkins-juju-ci/metadata.yaml (+21/-0) charms/jenkins-juju-ci/scripts/place-slave.sh (+30/-0) charms/jenkins-juju-ci/scripts/start-jenkins-slave.sh (+9/-0) charms/jenkins-slave/README.md (+24/-0) charms/jenkins-slave/config.yaml (+20/-0) charms/jenkins-slave/copyright (+17/-0) charms/jenkins-slave/files/default/jenkins-slave (+51/-0) charms/jenkins-slave/files/init/jenkins-slave.conf (+19/-0) charms/jenkins-slave/files/logrotate.d/jenkins-slave (+9/-0) charms/jenkins-slave/files/systemd/system/jenkins-slave.service (+10/-0) charms/jenkins-slave/hooks/config-changed (+64/-0) charms/jenkins-slave/hooks/install (+20/-0) charms/jenkins-slave/hooks/slave-relation-joined (+20/-0) charms/jenkins-slave/hooks/start (+3/-0) charms/jenkins-slave/hooks/stop (+3/-0) charms/jenkins-slave/icon.svg (+596/-0) charms/jenkins-slave/metadata.yaml (+18/-0) charms/jenkins-slave/scripts/place-slave.sh (+30/-0) charms/jenkins-slave/scripts/start-jenkins-slave.sh (+9/-0) charms/mysql/README.md (+99/-0) charms/mysql/config.yaml (+70/-0) charms/mysql/copyright (+17/-0) charms/mysql/exec.d/charm-helper/charm-pre-install (+5/-0) charms/mysql/hooks/common.py (+121/-0) charms/mysql/hooks/config-changed (+356/-0) charms/mysql/hooks/db-relation-broken (+21/-0) charms/mysql/hooks/db-relation-joined (+87/-0) charms/mysql/hooks/ha_relations.py (+146/-0) charms/mysql/hooks/install (+29/-0) charms/mysql/hooks/lib/ceph_utils.py (+268/-0) charms/mysql/hooks/lib/cluster_utils.py (+130/-0) charms/mysql/hooks/lib/utils.py (+283/-0) charms/mysql/hooks/master-relation-changed (+86/-0) charms/mysql/hooks/monitors-relation-broken (+8/-0) charms/mysql/hooks/monitors-relation-departed (+3/-0) charms/mysql/hooks/monitors-relation-joined (+7/-0) charms/mysql/hooks/monitors.common.bash (+8/-0) charms/mysql/hooks/munin-relation-changed (+26/-0) charms/mysql/hooks/munin-relation-joined (+6/-0) charms/mysql/hooks/shared_db_relations.py (+140/-0) charms/mysql/hooks/slave-relation-broken (+9/-0) charms/mysql/hooks/slave-relation-changed (+89/-0) charms/mysql/hooks/slave-relation-joined (+2/-0) charms/mysql/hooks/start (+1/-0) charms/mysql/hooks/stop (+3/-0) charms/mysql/hooks/upgrade-charm (+27/-0) charms/mysql/icon.svg (+335/-0) charms/mysql/keys/repo.percona.com (+30/-0) charms/mysql/metadata.yaml (+45/-0) charms/mysql/monitors.yaml (+13/-0) charms/mysql/revision (+1/-0) charms/mysql/scripts/add_to_cluster (+13/-0) charms/mysql/scripts/remove_from_cluster (+4/-0) charms/peer-xplod/README (+32/-0) charms/peer-xplod/config.yaml (+18/-0) charms/peer-xplod/copyright (+19/-0) charms/peer-xplod/hooks/config-changed (+7/-0) charms/peer-xplod/hooks/install (+4/-0) charms/peer-xplod/hooks/output-relation-changed (+7/-0) charms/peer-xplod/hooks/start (+6/-0) charms/peer-xplod/hooks/stop (+7/-0) charms/peer-xplod/hooks/update.py (+156/-0) charms/peer-xplod/hooks/upgrade-charm (+6/-0) charms/peer-xplod/hooks/xplod-relation-changed (+6/-0) charms/peer-xplod/metadata.yaml (+16/-0) charms/simple-resource-http/README (+1/-0) charms/simple-resource-http/config.yaml (+5/-0) charms/simple-resource-http/copyright (+1/-0) charms/simple-resource-http/files/default-file.txt (+1/-0) charms/simple-resource-http/hooks/config-changed (+21/-0) charms/simple-resource-http/hooks/install (+3/-0) charms/simple-resource-http/hooks/start (+3/-0) charms/simple-resource-http/metadata.yaml (+21/-0) charms/simple-resource-http/scripts/simple-server.py (+38/-0) charms/squid-forwardproxy/Makefile (+24/-0) charms/squid-forwardproxy/README (+24/-0) charms/squid-forwardproxy/config.yaml (+11/-0) charms/squid-forwardproxy/copyright (+1/-0) charms/squid-forwardproxy/hooks/config-changed (+40/-0) charms/squid-forwardproxy/hooks/install (+14/-0) charms/squid-forwardproxy/hooks/start (+6/-0) charms/squid-forwardproxy/hooks/stop (+6/-0) charms/squid-forwardproxy/icon.svg (+1163/-0) charms/squid-forwardproxy/metadata.yaml (+16/-0) charms/squid-forwardproxy/revision (+1/-0) charms/statusstresser/README.md (+52/-0) charms/statusstresser/copyright (+17/-0) charms/statusstresser/hooks/config-changed (+2/-0) charms/statusstresser/hooks/install (+3/-0) charms/statusstresser/icon.svg (+279/-0) charms/statusstresser/metadata.yaml (+15/-0) charms/statusstresser/revision (+1/-0) charms/statusstresser/tests/00-setup.sh (+7/-0) charms/statusstresser/tests/10-deploy-test.py (+71/-0) charms/ubuntu/README.md (+52/-0) charms/ubuntu/copyright (+17/-0) charms/ubuntu/hooks/install (+2/-0) charms/ubuntu/icon.svg (+279/-0) charms/ubuntu/metadata.yaml (+14/-0) charms/ubuntu/revision (+1/-0) charms/ubuntu/tests/00-setup.sh (+7/-0) charms/ubuntu/tests/10-deploy-test.py (+71/-0) charms/wordpress/README.md (+199/-0) charms/wordpress/config.yaml (+20/-0) charms/wordpress/copyright (+17/-0) charms/wordpress/exec.d/charm-helper/charm-pre-install (+5/-0) charms/wordpress/files/_debug/apc.php (+1364/-0) charms/wordpress/files/_debug/info.php (+3/-0) charms/wordpress/files/charm/apache/etc_apache2_conf-d_php5-fpm.conf (+6/-0) charms/wordpress/files/charm/apache/etc_apache2_sites-enabled_loadbalancer (+21/-0) charms/wordpress/files/charm/apache/etc_apache2_sites-enabled_wordpress (+20/-0) charms/wordpress/files/charm/nginx/etc_nginx_nginx.conf (+58/-0) charms/wordpress/files/charm/nginx/etc_nginx_sites-enabled_loadbalancer (+51/-0) charms/wordpress/files/charm/nginx/etc_nginx_sites-enabled_wordpress (+82/-0) charms/wordpress/files/charm/php/php5-fpm_pool.d_www.conf (+42/-0) charms/wordpress/files/charm/php/php5_conf.d_apc.ini (+13/-0) charms/wordpress/files/charm/wordpress/advanced-cache.php (+28/-0) charms/wordpress/hooks/cache-relation-changed (+16/-0) charms/wordpress/hooks/cache-relation-departed (+16/-0) charms/wordpress/hooks/config-changed (+170/-0) charms/wordpress/hooks/db-relation-changed (+102/-0) charms/wordpress/hooks/db-relation-departed (+5/-0) charms/wordpress/hooks/install (+65/-0) charms/wordpress/hooks/loadbalancer-relation-changed (+37/-0) charms/wordpress/hooks/loadbalancer-relation-joined (+173/-0) charms/wordpress/hooks/nfs-relation-changed (+32/-0) charms/wordpress/hooks/nfs-relation-departed (+20/-0) charms/wordpress/hooks/restart (+4/-0) charms/wordpress/hooks/start (+5/-0) charms/wordpress/hooks/stop (+5/-0) charms/wordpress/hooks/upgrade-charm (+23/-0) charms/wordpress/hooks/website-relation-joined (+4/-0) charms/wordpress/icon.svg (+301/-0) charms/wordpress/inc/common (+215/-0) charms/wordpress/metadata.yaml (+28/-0) charms/wordpress/revision (+1/-0) landscape-scalable.yaml (+48/-0) mediawiki-scalable.yaml (+121/-0) openstack-baremetal-7-default.yaml (+335/-0) openstack-base-lxc.yaml (+262/-0) openstack-base-lxd.yaml (+262/-0) precise/dummy-sink/README (+3/-0) precise/dummy-sink/config.yaml (+5/-0) precise/dummy-sink/copyright (+1/-0) precise/dummy-sink/hooks/config-changed (+1/-0) precise/dummy-sink/hooks/install (+3/-0) precise/dummy-sink/hooks/source-relation-changed (+13/-0) precise/dummy-sink/hooks/start (+3/-0) precise/dummy-sink/hooks/stop (+1/-0) precise/dummy-sink/metadata.yaml (+10/-0) precise/dummy-source/README (+3/-0) precise/dummy-source/config.yaml (+5/-0) precise/dummy-source/copyright (+1/-0) precise/dummy-source/hooks/config-changed (+16/-0) precise/dummy-source/hooks/install (+3/-0) precise/dummy-source/hooks/start (+3/-0) precise/dummy-source/hooks/stop (+1/-0) precise/dummy-source/metadata.yaml (+10/-0) precise/mysql/README.md (+99/-0) precise/mysql/config.yaml (+80/-0) precise/mysql/copyright (+17/-0) precise/mysql/hooks/common.py (+119/-0) precise/mysql/hooks/config-changed (+356/-0) precise/mysql/hooks/db-relation-broken (+21/-0) precise/mysql/hooks/db-relation-joined (+87/-0) precise/mysql/hooks/ha_relations.py (+148/-0) precise/mysql/hooks/install (+27/-0) precise/mysql/hooks/lib/ceph_utils.py (+316/-0) precise/mysql/hooks/lib/cluster_utils.py (+130/-0) precise/mysql/hooks/lib/utils.py (+283/-0) precise/mysql/hooks/master-relation-changed (+86/-0) precise/mysql/hooks/monitors-relation-broken (+8/-0) precise/mysql/hooks/monitors-relation-departed (+3/-0) precise/mysql/hooks/monitors-relation-joined (+7/-0) precise/mysql/hooks/monitors.common.bash (+8/-0) precise/mysql/hooks/munin-relation-changed (+26/-0) precise/mysql/hooks/munin-relation-joined (+6/-0) precise/mysql/hooks/shared_db_relations.py (+140/-0) precise/mysql/hooks/slave-relation-broken (+9/-0) precise/mysql/hooks/slave-relation-changed (+89/-0) precise/mysql/hooks/slave-relation-joined (+2/-0) precise/mysql/hooks/start (+1/-0) precise/mysql/hooks/stop (+3/-0) precise/mysql/hooks/upgrade-charm (+27/-0) precise/mysql/icon.svg (+335/-0) precise/mysql/keys/repo.percona.com (+30/-0) precise/mysql/metadata.yaml (+37/-0) precise/mysql/monitors.yaml (+13/-0) precise/mysql/revision (+1/-0) precise/mysql/scripts/add_to_cluster (+13/-0) precise/mysql/scripts/remove_from_cluster (+4/-0) precise/ubuntu/README.md (+52/-0) precise/ubuntu/copyright (+17/-0) precise/ubuntu/hooks/install (+2/-0) precise/ubuntu/icon.svg (+279/-0) precise/ubuntu/metadata.yaml (+7/-0) precise/ubuntu/revision (+1/-0) precise/ubuntu/tests/00-setup.sh (+7/-0) precise/ubuntu/tests/10-deploy-test.py (+71/-0) precise/wordpress/README.md (+199/-0) precise/wordpress/config.yaml (+20/-0) precise/wordpress/copyright (+17/-0) precise/wordpress/files/_debug/apc.php (+1364/-0) precise/wordpress/files/_debug/info.php (+3/-0) precise/wordpress/files/charm/apache/etc_apache2_conf-d_php5-fpm.conf (+6/-0) precise/wordpress/files/charm/apache/etc_apache2_sites-enabled_loadbalancer (+21/-0) precise/wordpress/files/charm/apache/etc_apache2_sites-enabled_wordpress (+20/-0) precise/wordpress/files/charm/nginx/etc_nginx_nginx.conf (+58/-0) precise/wordpress/files/charm/nginx/etc_nginx_sites-enabled_loadbalancer (+51/-0) precise/wordpress/files/charm/nginx/etc_nginx_sites-enabled_wordpress (+82/-0) precise/wordpress/files/charm/php/php5-fpm_pool.d_www.conf (+42/-0) precise/wordpress/files/charm/php/php5_conf.d_apc.ini (+13/-0) precise/wordpress/files/charm/wordpress/advanced-cache.php (+28/-0) precise/wordpress/hooks/cache-relation-changed (+16/-0) precise/wordpress/hooks/cache-relation-departed (+16/-0) precise/wordpress/hooks/config-changed (+164/-0) precise/wordpress/hooks/db-relation-changed (+100/-0) precise/wordpress/hooks/db-relation-departed (+5/-0) precise/wordpress/hooks/install (+51/-0) precise/wordpress/hooks/loadbalancer-relation-changed (+37/-0) precise/wordpress/hooks/loadbalancer-relation-joined (+173/-0) precise/wordpress/hooks/nfs-relation-changed (+32/-0) precise/wordpress/hooks/nfs-relation-departed (+20/-0) precise/wordpress/hooks/restart (+4/-0) precise/wordpress/hooks/start (+5/-0) precise/wordpress/hooks/stop (+5/-0) precise/wordpress/hooks/upgrade-charm (+23/-0) precise/wordpress/hooks/website-relation-joined (+4/-0) precise/wordpress/icon.svg (+301/-0) precise/wordpress/inc/common (+215/-0) precise/wordpress/metadata.yaml (+20/-0) precise/wordpress/revision (+1/-0) scale-lxc.yaml (+31/-0) scale-lxd.yaml (+31/-0) scale2-lxc.yaml (+38/-0) scale2-lxd.yaml (+38/-0) scale2lxd.yaml (+38/-0) simple-scale-bundle-lxc.yaml (+198/-0) simple-scale-bundle-lxd.yaml (+198/-0) trusty/chaos-monkey/README (+43/-0) trusty/chaos-monkey/actions.yaml (+51/-0) trusty/chaos-monkey/actions/show-logs (+20/-0) trusty/chaos-monkey/actions/show-monkey-ids (+13/-0) trusty/chaos-monkey/actions/start (+63/-0) trusty/chaos-monkey/config.yaml (+15/-0) trusty/chaos-monkey/copyright (+1/-0) trusty/chaos-monkey/hooks/config-changed (+1/-0) trusty/chaos-monkey/hooks/extract_chaos_monkey.bash (+9/-0) trusty/chaos-monkey/hooks/install (+5/-0) trusty/chaos-monkey/hooks/start (+1/-0) trusty/chaos-monkey/hooks/stop (+1/-0) trusty/chaos-monkey/hooks/upgrade-charm (+2/-0) trusty/chaos-monkey/icon.svg (+425/-0) trusty/chaos-monkey/metadata.yaml (+12/-0) trusty/dummy-sink/README (+3/-0) trusty/dummy-sink/config.yaml (+5/-0) trusty/dummy-sink/copyright (+1/-0) trusty/dummy-sink/hooks/config-changed (+1/-0) trusty/dummy-sink/hooks/install (+3/-0) trusty/dummy-sink/hooks/source-relation-changed (+13/-0) trusty/dummy-sink/hooks/start (+3/-0) trusty/dummy-sink/hooks/stop (+1/-0) trusty/dummy-sink/metadata.yaml (+10/-0) trusty/dummy-source/README (+3/-0) trusty/dummy-source/config.yaml (+5/-0) trusty/dummy-source/copyright (+1/-0) trusty/dummy-source/hooks/config-changed (+16/-0) trusty/dummy-source/hooks/install (+3/-0) trusty/dummy-source/hooks/start (+3/-0) trusty/dummy-source/hooks/stop (+1/-0) trusty/dummy-source/metadata.yaml (+10/-0) trusty/fill-logs/README.md (+3/-0) trusty/fill-logs/actions.yaml (+25/-0) trusty/fill-logs/actions/actions.go (+149/-0) trusty/fill-logs/actions/fill-machine (+3/-0) trusty/fill-logs/actions/fill-unit (+3/-0) trusty/fill-logs/actions/machine-size (+3/-0) trusty/fill-logs/actions/unit-size (+3/-0) trusty/fill-logs/config.yaml (+1/-0) trusty/fill-logs/hooks/install (+5/-0) trusty/fill-logs/metadata.yaml (+6/-0) trusty/haproxy/.bzrignore (+10/-0) trusty/haproxy/Makefile (+40/-0) trusty/haproxy/README.md (+241/-0) trusty/haproxy/charm-helpers.yaml (+4/-0) trusty/haproxy/cm.py (+193/-0) trusty/haproxy/config-manager.txt (+6/-0) trusty/haproxy/config.yaml (+226/-0) trusty/haproxy/copyright (+17/-0) trusty/haproxy/data/openssl.cnf (+20/-0) trusty/haproxy/files/metrics/haproxy_to_statsd.sh (+27/-0) trusty/haproxy/files/nrpe/check_haproxy.sh (+39/-0) trusty/haproxy/files/nrpe/check_haproxy_queue_depth.sh (+30/-0) trusty/haproxy/hooks/charmhelpers/__init__.py (+38/-0) trusty/haproxy/hooks/charmhelpers/contrib/__init__.py (+15/-0) trusty/haproxy/hooks/charmhelpers/contrib/charmsupport/__init__.py (+15/-0) trusty/haproxy/hooks/charmhelpers/contrib/charmsupport/nrpe.py (+360/-0) trusty/haproxy/hooks/charmhelpers/contrib/charmsupport/volumes.py (+175/-0) trusty/haproxy/hooks/charmhelpers/core/__init__.py (+15/-0) trusty/haproxy/hooks/charmhelpers/core/decorators.py (+57/-0) trusty/haproxy/hooks/charmhelpers/core/fstab.py (+134/-0) trusty/haproxy/hooks/charmhelpers/core/hookenv.py (+683/-0) trusty/haproxy/hooks/charmhelpers/core/host.py (+450/-0) trusty/haproxy/hooks/charmhelpers/core/services/__init__.py (+18/-0) trusty/haproxy/hooks/charmhelpers/core/services/base.py (+329/-0) trusty/haproxy/hooks/charmhelpers/core/services/helpers.py (+267/-0) trusty/haproxy/hooks/charmhelpers/core/strutils.py (+42/-0) trusty/haproxy/hooks/charmhelpers/core/sysctl.py (+56/-0) trusty/haproxy/hooks/charmhelpers/core/templating.py (+68/-0) trusty/haproxy/hooks/charmhelpers/core/unitdata.py (+477/-0) trusty/haproxy/hooks/charmhelpers/fetch/__init__.py (+447/-0) trusty/haproxy/hooks/charmhelpers/fetch/archiveurl.py (+161/-0) trusty/haproxy/hooks/charmhelpers/fetch/bzrurl.py (+78/-0) trusty/haproxy/hooks/charmhelpers/fetch/giturl.py (+71/-0) trusty/haproxy/hooks/hooks.py (+1362/-0) trusty/haproxy/hooks/install (+17/-0) trusty/haproxy/hooks/munin-relation-changed (+29/-0) trusty/haproxy/hooks/tests/test_config_changed_hooks.py (+189/-0) trusty/haproxy/hooks/tests/test_helpers.py (+1023/-0) trusty/haproxy/hooks/tests/test_install.py (+89/-0) trusty/haproxy/hooks/tests/test_metrics.py (+75/-0) trusty/haproxy/hooks/tests/test_nrpe_hooks.py (+24/-0) trusty/haproxy/hooks/tests/test_peer_hooks.py (+292/-0) trusty/haproxy/hooks/tests/test_reverseproxy_hooks.py (+650/-0) trusty/haproxy/hooks/tests/test_statistics_hooks.py (+60/-0) trusty/haproxy/hooks/tests/test_upgrade_charm.py (+22/-0) trusty/haproxy/hooks/tests/test_website_hooks.py (+149/-0) trusty/haproxy/hooks/tests/utils_for_tests.py (+21/-0) trusty/haproxy/icon.svg (+402/-0) trusty/haproxy/metadata.yaml (+30/-0) trusty/haproxy/setup.cfg (+4/-0) trusty/haproxy/tarmac_tests.sh (+6/-0) trusty/haproxy/templates/metrics_cronjob.template (+3/-0) trusty/haproxy/templates/nrpe_service.tmpl (+10/-0) trusty/haproxy/tests/00_setup.sh (+14/-0) trusty/haproxy/tests/10_deploy_test.py (+182/-0) trusty/haproxy/tests/default_apache.tmpl (+41/-0) trusty/jenkins-slave/README.md (+23/-0) trusty/jenkins-slave/config.yaml (+9/-0) trusty/jenkins-slave/copyright (+17/-0) trusty/jenkins-slave/hooks/install (+55/-0) trusty/jenkins-slave/hooks/install.d/README.md (+7/-0) trusty/jenkins-slave/hooks/slave-relation-changed (+28/-0) trusty/jenkins-slave/hooks/slave-relation-departed (+3/-0) trusty/jenkins-slave/hooks/slave-relation-joined (+20/-0) trusty/jenkins-slave/hooks/start (+3/-0) trusty/jenkins-slave/hooks/stop (+3/-0) trusty/jenkins-slave/icon.svg (+596/-0) trusty/jenkins-slave/metadata.yaml (+14/-0) trusty/jenkins-slave/revision (+1/-0) trusty/mysql/README.md (+99/-0) trusty/mysql/config.yaml (+70/-0) trusty/mysql/copyright (+17/-0) trusty/mysql/exec.d/charm-helper/charm-pre-install (+5/-0) trusty/mysql/hooks/common.py (+121/-0) trusty/mysql/hooks/config-changed (+356/-0) trusty/mysql/hooks/db-relation-broken (+21/-0) trusty/mysql/hooks/db-relation-joined (+87/-0) trusty/mysql/hooks/ha_relations.py (+146/-0) trusty/mysql/hooks/install (+29/-0) trusty/mysql/hooks/lib/ceph_utils.py (+268/-0) trusty/mysql/hooks/lib/cluster_utils.py (+130/-0) trusty/mysql/hooks/lib/utils.py (+283/-0) trusty/mysql/hooks/master-relation-changed (+86/-0) trusty/mysql/hooks/monitors-relation-broken (+8/-0) trusty/mysql/hooks/monitors-relation-departed (+3/-0) trusty/mysql/hooks/monitors-relation-joined (+7/-0) trusty/mysql/hooks/monitors.common.bash (+8/-0) trusty/mysql/hooks/munin-relation-changed (+26/-0) trusty/mysql/hooks/munin-relation-joined (+6/-0) trusty/mysql/hooks/shared_db_relations.py (+140/-0) trusty/mysql/hooks/slave-relation-broken (+9/-0) trusty/mysql/hooks/slave-relation-changed (+89/-0) trusty/mysql/hooks/slave-relation-joined (+2/-0) trusty/mysql/hooks/start (+1/-0) trusty/mysql/hooks/stop (+3/-0) trusty/mysql/hooks/upgrade-charm (+27/-0) trusty/mysql/icon.svg (+335/-0) trusty/mysql/keys/repo.percona.com (+30/-0) trusty/mysql/metadata.yaml (+37/-0) trusty/mysql/monitors.yaml (+13/-0) trusty/mysql/revision (+1/-0) trusty/mysql/scripts/add_to_cluster (+13/-0) trusty/mysql/scripts/remove_from_cluster (+4/-0) trusty/statusstresser/README.md (+52/-0) trusty/statusstresser/copyright (+17/-0) trusty/statusstresser/hooks/config-changed (+2/-0) trusty/statusstresser/hooks/install (+3/-0) trusty/statusstresser/icon.svg (+279/-0) trusty/statusstresser/metadata.yaml (+7/-0) trusty/statusstresser/revision (+1/-0) trusty/statusstresser/tests/00-setup.sh (+7/-0) trusty/statusstresser/tests/10-deploy-test.py (+71/-0) trusty/ubuntu/README.md (+52/-0) trusty/ubuntu/copyright (+17/-0) trusty/ubuntu/hooks/install (+2/-0) trusty/ubuntu/icon.svg (+279/-0) trusty/ubuntu/metadata.yaml (+7/-0) trusty/ubuntu/revision (+1/-0) trusty/ubuntu/tests/00-setup.sh (+7/-0) trusty/ubuntu/tests/10-deploy-test.py (+71/-0) trusty/wordpress/README.md (+199/-0) trusty/wordpress/config.yaml (+20/-0) trusty/wordpress/copyright (+17/-0) trusty/wordpress/exec.d/charm-helper/charm-pre-install (+5/-0) trusty/wordpress/files/_debug/apc.php (+1364/-0) trusty/wordpress/files/_debug/info.php (+3/-0) trusty/wordpress/files/charm/apache/etc_apache2_conf-d_php5-fpm.conf (+6/-0) trusty/wordpress/files/charm/apache/etc_apache2_sites-enabled_loadbalancer (+21/-0) trusty/wordpress/files/charm/apache/etc_apache2_sites-enabled_wordpress (+20/-0) trusty/wordpress/files/charm/nginx/etc_nginx_nginx.conf (+58/-0) trusty/wordpress/files/charm/nginx/etc_nginx_sites-enabled_loadbalancer (+51/-0) trusty/wordpress/files/charm/nginx/etc_nginx_sites-enabled_wordpress (+82/-0) trusty/wordpress/files/charm/php/php5-fpm_pool.d_www.conf (+42/-0) trusty/wordpress/files/charm/php/php5_conf.d_apc.ini (+13/-0) trusty/wordpress/files/charm/wordpress/advanced-cache.php (+28/-0) trusty/wordpress/hooks/cache-relation-changed (+16/-0) trusty/wordpress/hooks/cache-relation-departed (+16/-0) trusty/wordpress/hooks/config-changed (+170/-0) trusty/wordpress/hooks/db-relation-changed (+102/-0) trusty/wordpress/hooks/db-relation-departed (+5/-0) trusty/wordpress/hooks/install (+65/-0) trusty/wordpress/hooks/loadbalancer-relation-changed (+37/-0) trusty/wordpress/hooks/loadbalancer-relation-joined (+173/-0) trusty/wordpress/hooks/nfs-relation-changed (+32/-0) trusty/wordpress/hooks/nfs-relation-departed (+20/-0) trusty/wordpress/hooks/restart (+4/-0) trusty/wordpress/hooks/start (+5/-0) trusty/wordpress/hooks/stop (+5/-0) trusty/wordpress/hooks/upgrade-charm (+23/-0) trusty/wordpress/hooks/website-relation-joined (+4/-0) trusty/wordpress/icon.svg (+301/-0) trusty/wordpress/inc/common (+215/-0) trusty/wordpress/metadata.yaml (+20/-0) trusty/wordpress/revision (+1/-0) win2012hvr2/dummy-sink/README (+1/-0) win2012hvr2/dummy-sink/config.yaml (+5/-0) win2012hvr2/dummy-sink/copyright (+1/-0) win2012hvr2/dummy-sink/hooks/source-relation-changed.ps1 (+4/-0) win2012hvr2/dummy-sink/metadata.yaml (+10/-0) win2012hvr2/dummy-source/README (+1/-0) win2012hvr2/dummy-source/config.yaml (+5/-0) win2012hvr2/dummy-source/copyright (+1/-0) win2012hvr2/dummy-source/hooks/config-changed.ps1 (+5/-0) win2012hvr2/dummy-source/hooks/sink-relation-joined.ps1 (+2/-0) win2012hvr2/dummy-source/metadata.yaml (+10/-0) xenial/dummy-sink/README (+3/-0) xenial/dummy-sink/config.yaml (+5/-0) xenial/dummy-sink/copyright (+1/-0) xenial/dummy-sink/hooks/config-changed (+1/-0) xenial/dummy-sink/hooks/install (+3/-0) xenial/dummy-sink/hooks/source-relation-changed (+13/-0) xenial/dummy-sink/hooks/start (+3/-0) xenial/dummy-sink/hooks/stop (+1/-0) xenial/dummy-sink/metadata.yaml (+10/-0) xenial/dummy-source/README (+3/-0) xenial/dummy-source/config.yaml (+5/-0) xenial/dummy-source/copyright (+1/-0) xenial/dummy-source/hooks/config-changed (+16/-0) xenial/dummy-source/hooks/install (+3/-0) xenial/dummy-source/hooks/sink-relation-joined (+16/-0) xenial/dummy-source/hooks/start (+3/-0) xenial/dummy-source/hooks/stop (+1/-0) xenial/dummy-source/metadata.yaml (+10/-0) xenial/jenkins-slave/README.md (+23/-0) xenial/jenkins-slave/config.yaml (+9/-0) xenial/jenkins-slave/copyright (+17/-0) xenial/jenkins-slave/hooks/config-changed (+55/-0) xenial/jenkins-slave/hooks/install (+55/-0) xenial/jenkins-slave/hooks/install.d/README.md (+7/-0) xenial/jenkins-slave/hooks/slave-relation-broken (+3/-0) xenial/jenkins-slave/hooks/slave-relation-changed (+28/-0) xenial/jenkins-slave/hooks/slave-relation-departed (+3/-0) xenial/jenkins-slave/hooks/slave-relation-joined (+20/-0) xenial/jenkins-slave/hooks/start (+3/-0) xenial/jenkins-slave/hooks/stop (+3/-0) xenial/jenkins-slave/hooks/upgrade-charm (+55/-0) xenial/jenkins-slave/icon.svg (+596/-0) xenial/jenkins-slave/metadata.yaml (+14/-0) xenial/jenkins-slave/revision (+1/-0) xenial/mysql/README.md (+99/-0) xenial/mysql/config.yaml (+70/-0) xenial/mysql/copyright (+17/-0) xenial/mysql/exec.d/charm-helper/charm-pre-install (+5/-0) xenial/mysql/hooks/ceph-relation-changed (+146/-0) xenial/mysql/hooks/ceph-relation-joined (+146/-0) xenial/mysql/hooks/cluster-relation-changed (+146/-0) xenial/mysql/hooks/common.py (+119/-0) xenial/mysql/hooks/config-changed (+356/-0) xenial/mysql/hooks/db-admin-relation-joined (+87/-0) xenial/mysql/hooks/db-relation-broken (+21/-0) xenial/mysql/hooks/db-relation-joined (+87/-0) xenial/mysql/hooks/ha-relation-changed (+146/-0) xenial/mysql/hooks/ha-relation-joined (+146/-0) xenial/mysql/hooks/ha_relations.py (+146/-0) xenial/mysql/hooks/install (+27/-0) xenial/mysql/hooks/lib/ceph_utils.py (+268/-0) xenial/mysql/hooks/lib/cluster_utils.py (+130/-0) xenial/mysql/hooks/lib/utils.py (+283/-0) xenial/mysql/hooks/local-monitors-relation-joined (+7/-0) xenial/mysql/hooks/master-relation-broken (+86/-0) xenial/mysql/hooks/master-relation-changed (+86/-0) xenial/mysql/hooks/master-relation-departed (+86/-0) xenial/mysql/hooks/monitors-relation-broken (+8/-0) xenial/mysql/hooks/monitors-relation-departed (+3/-0) xenial/mysql/hooks/monitors-relation-joined (+7/-0) xenial/mysql/hooks/monitors.common.bash (+8/-0) xenial/mysql/hooks/munin-relation-changed (+26/-0) xenial/mysql/hooks/munin-relation-joined (+6/-0) xenial/mysql/hooks/shared-db-relation-changed (+140/-0) xenial/mysql/hooks/shared-db-relation-joined (+140/-0) xenial/mysql/hooks/shared_db_relations.py (+140/-0) xenial/mysql/hooks/slave-relation-broken (+9/-0) xenial/mysql/hooks/slave-relation-changed (+89/-0) xenial/mysql/hooks/slave-relation-departed (+9/-0) xenial/mysql/hooks/slave-relation-joined (+2/-0) xenial/mysql/hooks/start (+1/-0) xenial/mysql/hooks/stop (+3/-0) xenial/mysql/hooks/upgrade-charm (+27/-0) xenial/mysql/icon.svg (+335/-0) xenial/mysql/metadata.yaml (+37/-0) xenial/mysql/monitors.yaml (+13/-0) xenial/mysql/revision (+1/-0) xenial/mysql/scripts/add_to_cluster (+13/-0) xenial/mysql/scripts/remove_from_cluster (+4/-0) xenial/ubuntu/README.md (+52/-0) xenial/ubuntu/copyright (+17/-0) xenial/ubuntu/hooks/install (+2/-0) xenial/ubuntu/icon.svg (+279/-0) xenial/ubuntu/metadata.yaml (+7/-0) xenial/ubuntu/revision (+1/-0) xenial/ubuntu/tests/00-setup.sh (+7/-0) xenial/ubuntu/tests/10-deploy-test.py (+71/-0) xenial/wordpress/README.md (+199/-0) xenial/wordpress/config.yaml (+20/-0) xenial/wordpress/copyright (+17/-0) xenial/wordpress/exec.d/charm-helper/charm-pre-install (+5/-0) xenial/wordpress/files/_debug/apc.php (+1364/-0) xenial/wordpress/files/_debug/info.php (+3/-0) xenial/wordpress/files/charm/apache/etc_apache2_conf-d_php5-fpm.conf (+6/-0) xenial/wordpress/files/charm/apache/etc_apache2_sites-enabled_loadbalancer (+21/-0) xenial/wordpress/files/charm/apache/etc_apache2_sites-enabled_wordpress (+20/-0) xenial/wordpress/files/charm/nginx/etc_nginx_nginx.conf (+58/-0) xenial/wordpress/files/charm/nginx/etc_nginx_sites-enabled_loadbalancer (+51/-0) xenial/wordpress/files/charm/nginx/etc_nginx_sites-enabled_wordpress (+82/-0) xenial/wordpress/files/charm/php/php5-fpm_pool.d_www.conf (+42/-0) xenial/wordpress/files/charm/php/php5_conf.d_apc.ini (+13/-0) xenial/wordpress/files/charm/wordpress/advanced-cache.php (+28/-0) xenial/wordpress/hooks/cache-relation-broken (+16/-0) xenial/wordpress/hooks/cache-relation-changed (+16/-0) xenial/wordpress/hooks/cache-relation-departed (+16/-0) xenial/wordpress/hooks/config-changed (+164/-0) xenial/wordpress/hooks/db-relation-broken (+5/-0) xenial/wordpress/hooks/db-relation-changed (+100/-0) xenial/wordpress/hooks/db-relation-departed (+5/-0) xenial/wordpress/hooks/install (+63/-0) xenial/wordpress/hooks/loadbalancer-rebuild (+173/-0) xenial/wordpress/hooks/loadbalancer-relation-broken (+173/-0) xenial/wordpress/hooks/loadbalancer-relation-changed (+37/-0) xenial/wordpress/hooks/loadbalancer-relation-departed (+173/-0) xenial/wordpress/hooks/loadbalancer-relation-joined (+173/-0) xenial/wordpress/hooks/nfs-relation-broken (+20/-0) xenial/wordpress/hooks/nfs-relation-changed (+32/-0) xenial/wordpress/hooks/nfs-relation-departed (+20/-0) xenial/wordpress/hooks/restart (+4/-0) xenial/wordpress/hooks/start (+5/-0) xenial/wordpress/hooks/stop (+5/-0) xenial/wordpress/hooks/upgrade-charm (+23/-0) xenial/wordpress/hooks/website-relation-joined (+4/-0) xenial/wordpress/icon.svg (+301/-0) xenial/wordpress/inc/common (+215/-0) xenial/wordpress/metadata.yaml (+20/-0) xenial/wordpress/revision (+1/-0) yakkety/dummy-sink/README (+3/-0) yakkety/dummy-sink/config.yaml (+5/-0) yakkety/dummy-sink/copyright (+1/-0) yakkety/dummy-sink/hooks/config-changed (+1/-0) yakkety/dummy-sink/hooks/install (+3/-0) yakkety/dummy-sink/hooks/source-relation-changed (+13/-0) yakkety/dummy-sink/hooks/start (+3/-0) yakkety/dummy-sink/hooks/stop (+1/-0) yakkety/dummy-sink/metadata.yaml (+10/-0) yakkety/dummy-source/README (+3/-0) yakkety/dummy-source/config.yaml (+5/-0) yakkety/dummy-source/copyright (+1/-0) yakkety/dummy-source/hooks/config-changed (+16/-0) yakkety/dummy-source/hooks/install (+3/-0) yakkety/dummy-source/hooks/sink-relation-joined (+16/-0) yakkety/dummy-source/hooks/start (+3/-0) yakkety/dummy-source/hooks/stop (+1/-0) yakkety/dummy-source/metadata.yaml (+10/-0) yakkety/jenkins-slave/README.md (+23/-0) yakkety/jenkins-slave/config.yaml (+9/-0) yakkety/jenkins-slave/copyright (+17/-0) yakkety/jenkins-slave/hooks/config-changed (+55/-0) yakkety/jenkins-slave/hooks/install (+55/-0) yakkety/jenkins-slave/hooks/install.d/README.md (+7/-0) yakkety/jenkins-slave/hooks/slave-relation-broken (+3/-0) yakkety/jenkins-slave/hooks/slave-relation-changed (+28/-0) yakkety/jenkins-slave/hooks/slave-relation-departed (+3/-0) yakkety/jenkins-slave/hooks/slave-relation-joined (+20/-0) yakkety/jenkins-slave/hooks/start (+3/-0) yakkety/jenkins-slave/hooks/stop (+3/-0) yakkety/jenkins-slave/hooks/upgrade-charm (+55/-0) yakkety/jenkins-slave/icon.svg (+596/-0) yakkety/jenkins-slave/metadata.yaml (+14/-0) yakkety/jenkins-slave/revision (+1/-0) yakkety/mysql/README.md (+99/-0) yakkety/mysql/config.yaml (+70/-0) yakkety/mysql/copyright (+17/-0) yakkety/mysql/exec.d/charm-helper/charm-pre-install (+5/-0) yakkety/mysql/hooks/ceph-relation-changed (+146/-0) yakkety/mysql/hooks/ceph-relation-joined (+146/-0) yakkety/mysql/hooks/cluster-relation-changed (+146/-0) yakkety/mysql/hooks/common.py (+119/-0) yakkety/mysql/hooks/config-changed (+356/-0) yakkety/mysql/hooks/db-admin-relation-joined (+87/-0) yakkety/mysql/hooks/db-relation-broken (+21/-0) yakkety/mysql/hooks/db-relation-joined (+87/-0) yakkety/mysql/hooks/ha-relation-changed (+146/-0) yakkety/mysql/hooks/ha-relation-joined (+146/-0) yakkety/mysql/hooks/ha_relations.py (+146/-0) yakkety/mysql/hooks/install (+27/-0) yakkety/mysql/hooks/lib/ceph_utils.py (+268/-0) yakkety/mysql/hooks/lib/cluster_utils.py (+130/-0) yakkety/mysql/hooks/lib/utils.py (+283/-0) yakkety/mysql/hooks/local-monitors-relation-joined (+7/-0) yakkety/mysql/hooks/master-relation-broken (+86/-0) yakkety/mysql/hooks/master-relation-changed (+86/-0) yakkety/mysql/hooks/master-relation-departed (+86/-0) yakkety/mysql/hooks/monitors-relation-broken (+8/-0) yakkety/mysql/hooks/monitors-relation-departed (+3/-0) yakkety/mysql/hooks/monitors-relation-joined (+7/-0) yakkety/mysql/hooks/monitors.common.bash (+8/-0) yakkety/mysql/hooks/munin-relation-changed (+26/-0) yakkety/mysql/hooks/munin-relation-joined (+6/-0) yakkety/mysql/hooks/shared-db-relation-changed (+140/-0) yakkety/mysql/hooks/shared-db-relation-joined (+140/-0) yakkety/mysql/hooks/shared_db_relations.py (+140/-0) yakkety/mysql/hooks/slave-relation-broken (+9/-0) yakkety/mysql/hooks/slave-relation-changed (+89/-0) yakkety/mysql/hooks/slave-relation-departed (+9/-0) yakkety/mysql/hooks/slave-relation-joined (+2/-0) yakkety/mysql/hooks/start (+1/-0) yakkety/mysql/hooks/stop (+3/-0) yakkety/mysql/hooks/upgrade-charm (+27/-0) yakkety/mysql/icon.svg (+335/-0) yakkety/mysql/metadata.yaml (+37/-0) yakkety/mysql/monitors.yaml (+13/-0) yakkety/mysql/revision (+1/-0) yakkety/mysql/scripts/add_to_cluster (+13/-0) yakkety/mysql/scripts/remove_from_cluster (+4/-0) yakkety/ubuntu/README.md (+52/-0) yakkety/ubuntu/copyright (+17/-0) yakkety/ubuntu/hooks/install (+2/-0) yakkety/ubuntu/icon.svg (+279/-0) yakkety/ubuntu/metadata.yaml (+7/-0) yakkety/ubuntu/revision (+1/-0) yakkety/ubuntu/tests/00-setup.sh (+7/-0) yakkety/ubuntu/tests/10-deploy-test.py (+71/-0) yakkety/wordpress/README.md (+199/-0) yakkety/wordpress/config.yaml (+20/-0) yakkety/wordpress/copyright (+17/-0) yakkety/wordpress/exec.d/charm-helper/charm-pre-install (+5/-0) yakkety/wordpress/files/_debug/apc.php (+1364/-0) yakkety/wordpress/files/_debug/info.php (+3/-0) yakkety/wordpress/files/charm/apache/etc_apache2_conf-d_php5-fpm.conf (+6/-0) yakkety/wordpress/files/charm/apache/etc_apache2_sites-enabled_loadbalancer (+21/-0) yakkety/wordpress/files/charm/apache/etc_apache2_sites-enabled_wordpress (+20/-0) yakkety/wordpress/files/charm/nginx/etc_nginx_nginx.conf (+58/-0) yakkety/wordpress/files/charm/nginx/etc_nginx_sites-enabled_loadbalancer (+51/-0) yakkety/wordpress/files/charm/nginx/etc_nginx_sites-enabled_wordpress (+82/-0) yakkety/wordpress/files/charm/php/php5-fpm_pool.d_www.conf (+42/-0) yakkety/wordpress/files/charm/php/php5_conf.d_apc.ini (+13/-0) yakkety/wordpress/files/charm/wordpress/advanced-cache.php (+28/-0) yakkety/wordpress/hooks/cache-relation-broken (+16/-0) yakkety/wordpress/hooks/cache-relation-changed (+16/-0) yakkety/wordpress/hooks/cache-relation-departed (+16/-0) yakkety/wordpress/hooks/config-changed (+164/-0) yakkety/wordpress/hooks/db-relation-broken (+5/-0) yakkety/wordpress/hooks/db-relation-changed (+100/-0) yakkety/wordpress/hooks/db-relation-departed (+5/-0) yakkety/wordpress/hooks/install (+63/-0) yakkety/wordpress/hooks/loadbalancer-rebuild (+173/-0) yakkety/wordpress/hooks/loadbalancer-relation-broken (+173/-0) yakkety/wordpress/hooks/loadbalancer-relation-changed (+37/-0) yakkety/wordpress/hooks/loadbalancer-relation-departed (+173/-0) yakkety/wordpress/hooks/loadbalancer-relation-joined (+173/-0) yakkety/wordpress/hooks/nfs-relation-broken (+20/-0) yakkety/wordpress/hooks/nfs-relation-changed (+32/-0) yakkety/wordpress/hooks/nfs-relation-departed (+20/-0) yakkety/wordpress/hooks/restart (+4/-0) yakkety/wordpress/hooks/start (+5/-0) yakkety/wordpress/hooks/stop (+5/-0) yakkety/wordpress/hooks/upgrade-charm (+23/-0) yakkety/wordpress/hooks/website-relation-joined (+4/-0) yakkety/wordpress/icon.svg (+301/-0) yakkety/wordpress/inc/common (+215/-0) yakkety/wordpress/metadata.yaml (+20/-0) yakkety/wordpress/revision (+1/-0) |
To merge this branch: | bzr merge lp:~veebers/juju-ci-tools/add-dumm-storage-charm |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Juju Release Engineering | Pending | ||
Review via email: mp+319882@code.launchpad.net |
This proposal has been superseded by a proposal from 2017-03-15.
Commit message
Dummy charm that allows storing a token value to storage.
Description of the change
Dummy charm that allows storing a token value to storage.
This is an attempt at making a charm that we can use to test persistent storage.
It will be used to make sure that data persists when detached (either directly or through application removal) and re-attached to an application.
e.g.
- deploy and set token for the single filesystem.
- check token value in the file stored on disk
- remove application
- deploy again, this time using the existing storage unit
- check token values etc.
- 78. By Christopher Lee
-
Remove missleading 'blocked' term from status.
- 79. By Christopher Lee
-
Remove and shuffle series.
- 80. By Christopher Lee
-
Remove revision file.
Unmerged revisions
- 80. By Christopher Lee
-
Remove revision file.
- 79. By Christopher Lee
-
Remove and shuffle series.
- 78. By Christopher Lee
-
Remove missleading 'blocked' term from status.
- 77. By Christopher Lee
-
Change multi-fs limit.
- 76. By Christopher Lee
-
Now able to update the config file.
- 75. By Christopher Lee
-
WIP
- 74. By Christopher Lee
-
First rough pass.
- 73. By Christopher Lee
-
Sets active/maintenance status.
- 72. By Christopher Lee
-
Charm that provides a simple http server that serves a file provided as a charm resouce.
- 71. By Christopher Lee
-
Added peer-xplod charm.
Preview Diff
1 | === added file 'bundles-lxc.yaml' |
2 | --- bundles-lxc.yaml 1970-01-01 00:00:00 +0000 |
3 | +++ bundles-lxc.yaml 2017-03-14 23:38:01 +0000 |
4 | @@ -0,0 +1,56 @@ |
5 | +dense-scaled: |
6 | + services: |
7 | + juju-gui: |
8 | + charm: "cs:trusty/juju-gui-16" |
9 | + num_units: 1 |
10 | + options: |
11 | + "login-help": "null" |
12 | + password: "null" |
13 | + "ssl-cert-contents": "null" |
14 | + "ssl-key-contents": "null" |
15 | + annotations: |
16 | + "gui-x": "425.87542724609375" |
17 | + "gui-y": "25.871253967285156" |
18 | + to: |
19 | + - "0" |
20 | + apache2: |
21 | + charm: "cs:trusty/apache2-1" |
22 | + constraints: mem=2G |
23 | + num_units: 1 |
24 | + annotations: |
25 | + "gui-x": "742.5529174804688" |
26 | + "gui-y": "28.562591552734375" |
27 | + "apache2-reverseproxy": |
28 | + charm: "cs:~abentley/trusty/apache2-reverseproxy-4" |
29 | + num_units: 0 |
30 | + annotations: |
31 | + "gui-x": "737.6683349609375" |
32 | + "gui-y": "318.2304229736328" |
33 | + haproxy: |
34 | + charm: "cs:trusty/haproxy-2" |
35 | + constraints: mem=2G |
36 | + num_units: 1 |
37 | + annotations: |
38 | + "gui-x": "1152.2492065429688" |
39 | + "gui-y": "321.7662353515625" |
40 | + "python-django": |
41 | + charm: "cs:trusty/python-django-12" |
42 | + num_units: 2 |
43 | + options: |
44 | + django_allowed_hosts: "null" |
45 | + django_extra_settings: "null" |
46 | + "unit-config": "null" |
47 | + annotations: |
48 | + "gui-x": "1164.0284423828125" |
49 | + "gui-y": "660.1253356933594" |
50 | + to: |
51 | + - "lxc:haproxy=0" |
52 | + - "lxc:haproxy=0" |
53 | + relations: |
54 | + - - "haproxy:reverseproxy" |
55 | + - "python-django:website" |
56 | + - - "apache2-reverseproxy:website" |
57 | + - "apache2:website" |
58 | + - - "apache2-reverseproxy:website" |
59 | + - "haproxy:website" |
60 | + series: trusty |
61 | |
62 | === added file 'bundles-lxd.yaml' |
63 | --- bundles-lxd.yaml 1970-01-01 00:00:00 +0000 |
64 | +++ bundles-lxd.yaml 2017-03-14 23:38:01 +0000 |
65 | @@ -0,0 +1,56 @@ |
66 | +dense-scaled: |
67 | + services: |
68 | + juju-gui: |
69 | + charm: "cs:trusty/juju-gui-16" |
70 | + num_units: 1 |
71 | + options: |
72 | + "login-help": "null" |
73 | + password: "null" |
74 | + "ssl-cert-contents": "null" |
75 | + "ssl-key-contents": "null" |
76 | + annotations: |
77 | + "gui-x": "425.87542724609375" |
78 | + "gui-y": "25.871253967285156" |
79 | + to: |
80 | + - "0" |
81 | + apache2: |
82 | + charm: "cs:trusty/apache2-1" |
83 | + constraints: mem=2G |
84 | + num_units: 1 |
85 | + annotations: |
86 | + "gui-x": "742.5529174804688" |
87 | + "gui-y": "28.562591552734375" |
88 | + "apache2-reverseproxy": |
89 | + charm: "cs:~abentley/trusty/apache2-reverseproxy-4" |
90 | + num_units: 0 |
91 | + annotations: |
92 | + "gui-x": "737.6683349609375" |
93 | + "gui-y": "318.2304229736328" |
94 | + haproxy: |
95 | + charm: "cs:trusty/haproxy-2" |
96 | + constraints: mem=2G |
97 | + num_units: 1 |
98 | + annotations: |
99 | + "gui-x": "1152.2492065429688" |
100 | + "gui-y": "321.7662353515625" |
101 | + "python-django": |
102 | + charm: "cs:trusty/python-django-12" |
103 | + num_units: 2 |
104 | + options: |
105 | + django_allowed_hosts: "null" |
106 | + django_extra_settings: "null" |
107 | + "unit-config": "null" |
108 | + annotations: |
109 | + "gui-x": "1164.0284423828125" |
110 | + "gui-y": "660.1253356933594" |
111 | + to: |
112 | + - "lxd:haproxy=0" |
113 | + - "lxd:haproxy=0" |
114 | + relations: |
115 | + - - "haproxy:reverseproxy" |
116 | + - "python-django:website" |
117 | + - - "apache2-reverseproxy:website" |
118 | + - "apache2:website" |
119 | + - - "apache2-reverseproxy:website" |
120 | + - "haproxy:website" |
121 | + series: trusty |
122 | |
123 | === added directory 'centos7' |
124 | === added directory 'centos7/dummy-sink' |
125 | === added file 'centos7/dummy-sink/README' |
126 | --- centos7/dummy-sink/README 1970-01-01 00:00:00 +0000 |
127 | +++ centos7/dummy-sink/README 2017-03-14 23:38:01 +0000 |
128 | @@ -0,0 +1,1 @@ |
129 | +CentOS version of basic dummy-sink testing charm. |
130 | |
131 | === added file 'centos7/dummy-sink/config.yaml' |
132 | --- centos7/dummy-sink/config.yaml 1970-01-01 00:00:00 +0000 |
133 | +++ centos7/dummy-sink/config.yaml 2017-03-14 23:38:01 +0000 |
134 | @@ -0,0 +1,5 @@ |
135 | +options: |
136 | + token: |
137 | + type: string |
138 | + default: '' |
139 | + description: Token used to prove that the relation is working |
140 | |
141 | === added file 'centos7/dummy-sink/copyright' |
142 | --- centos7/dummy-sink/copyright 1970-01-01 00:00:00 +0000 |
143 | +++ centos7/dummy-sink/copyright 2017-03-14 23:38:01 +0000 |
144 | @@ -0,0 +1,1 @@ |
145 | +Copyright 2014 Canonical Ltd. |
146 | |
147 | === added directory 'centos7/dummy-sink/hooks' |
148 | === added file 'centos7/dummy-sink/hooks/source-relation-changed' |
149 | --- centos7/dummy-sink/hooks/source-relation-changed 1970-01-01 00:00:00 +0000 |
150 | +++ centos7/dummy-sink/hooks/source-relation-changed 2017-03-14 23:38:01 +0000 |
151 | @@ -0,0 +1,3 @@ |
152 | +#!/bin/bash |
153 | +mkdir -p /var/run/dummy-sink |
154 | +relation-get token > /var/run/dummy-sink/token |
155 | |
156 | === added file 'centos7/dummy-sink/metadata.yaml' |
157 | --- centos7/dummy-sink/metadata.yaml 1970-01-01 00:00:00 +0000 |
158 | +++ centos7/dummy-sink/metadata.yaml 2017-03-14 23:38:01 +0000 |
159 | @@ -0,0 +1,10 @@ |
160 | +name: dummy-sink |
161 | +maintainer: Martin Packman <martin.packman@canonical.com> |
162 | +summary: Dummy charm that accepts data |
163 | +description: | |
164 | + This dummy charm is used to verify that a relationship is created correctly |
165 | +provides: |
166 | + source: |
167 | + interface: dummy-token |
168 | +categories: |
169 | + - misc |
170 | |
171 | === added directory 'centos7/dummy-source' |
172 | === added file 'centos7/dummy-source/README' |
173 | --- centos7/dummy-source/README 1970-01-01 00:00:00 +0000 |
174 | +++ centos7/dummy-source/README 2017-03-14 23:38:01 +0000 |
175 | @@ -0,0 +1,1 @@ |
176 | +CentOS version of basic dummy-source testing charm. |
177 | |
178 | === added file 'centos7/dummy-source/config.yaml' |
179 | --- centos7/dummy-source/config.yaml 1970-01-01 00:00:00 +0000 |
180 | +++ centos7/dummy-source/config.yaml 2017-03-14 23:38:01 +0000 |
181 | @@ -0,0 +1,5 @@ |
182 | +options: |
183 | + token: |
184 | + type: string |
185 | + default: '' |
186 | + description: Token used to prove that the relation is working |
187 | |
188 | === added file 'centos7/dummy-source/copyright' |
189 | --- centos7/dummy-source/copyright 1970-01-01 00:00:00 +0000 |
190 | +++ centos7/dummy-source/copyright 2017-03-14 23:38:01 +0000 |
191 | @@ -0,0 +1,1 @@ |
192 | +Copyright 2014 Canonical Ltd. |
193 | |
194 | === added directory 'centos7/dummy-source/hooks' |
195 | === added file 'centos7/dummy-source/hooks/config-changed' |
196 | --- centos7/dummy-source/hooks/config-changed 1970-01-01 00:00:00 +0000 |
197 | +++ centos7/dummy-source/hooks/config-changed 2017-03-14 23:38:01 +0000 |
198 | @@ -0,0 +1,6 @@ |
199 | +#!/bin/bash |
200 | +set -eux |
201 | +token="$(config-get token)" |
202 | +for relation_id in $(relation-ids sink); do |
203 | + relation-set -r $relation_id token="$token" |
204 | +done |
205 | |
206 | === added symlink 'centos7/dummy-source/hooks/sink-relation-joined' |
207 | === target is u'config-changed' |
208 | === added file 'centos7/dummy-source/metadata.yaml' |
209 | --- centos7/dummy-source/metadata.yaml 1970-01-01 00:00:00 +0000 |
210 | +++ centos7/dummy-source/metadata.yaml 2017-03-14 23:38:01 +0000 |
211 | @@ -0,0 +1,10 @@ |
212 | +name: dummy-source |
213 | +maintainer: Martin Packman <martin.packman@canonical.com> |
214 | +summary: Dummy charm that provides data |
215 | +description: | |
216 | + This dummy charm is used to verify that a relationship is created correctly |
217 | +requires: |
218 | + sink: |
219 | + interface: dummy-token |
220 | +categories: |
221 | + - misc |
222 | |
223 | === added directory 'charms' |
224 | === added directory 'charms-centos' |
225 | === added directory 'charms-centos/dummy-sink' |
226 | === added file 'charms-centos/dummy-sink/README' |
227 | --- charms-centos/dummy-sink/README 1970-01-01 00:00:00 +0000 |
228 | +++ charms-centos/dummy-sink/README 2017-03-14 23:38:01 +0000 |
229 | @@ -0,0 +1,1 @@ |
230 | +CentOS version of basic dummy-sink testing charm. |
231 | |
232 | === added file 'charms-centos/dummy-sink/config.yaml' |
233 | --- charms-centos/dummy-sink/config.yaml 1970-01-01 00:00:00 +0000 |
234 | +++ charms-centos/dummy-sink/config.yaml 2017-03-14 23:38:01 +0000 |
235 | @@ -0,0 +1,5 @@ |
236 | +options: |
237 | + token: |
238 | + type: string |
239 | + default: '' |
240 | + description: Token used to prove that the relation is working |
241 | |
242 | === added file 'charms-centos/dummy-sink/copyright' |
243 | --- charms-centos/dummy-sink/copyright 1970-01-01 00:00:00 +0000 |
244 | +++ charms-centos/dummy-sink/copyright 2017-03-14 23:38:01 +0000 |
245 | @@ -0,0 +1,1 @@ |
246 | +Copyright 2014 Canonical Ltd. |
247 | |
248 | === added directory 'charms-centos/dummy-sink/hooks' |
249 | === added file 'charms-centos/dummy-sink/hooks/install' |
250 | --- charms-centos/dummy-sink/hooks/install 1970-01-01 00:00:00 +0000 |
251 | +++ charms-centos/dummy-sink/hooks/install 2017-03-14 23:38:01 +0000 |
252 | @@ -0,0 +1,4 @@ |
253 | +#!/bin/bash |
254 | +set -eux |
255 | + |
256 | +status-set maintenance "Installed" || true |
257 | |
258 | === added file 'charms-centos/dummy-sink/hooks/source-relation-changed' |
259 | --- charms-centos/dummy-sink/hooks/source-relation-changed 1970-01-01 00:00:00 +0000 |
260 | +++ charms-centos/dummy-sink/hooks/source-relation-changed 2017-03-14 23:38:01 +0000 |
261 | @@ -0,0 +1,13 @@ |
262 | +#!/bin/bash |
263 | +set -eux |
264 | + |
265 | +mkdir -p /var/run/dummy-sink |
266 | +token=$(relation-get token) |
267 | +echo "$token" > /var/run/dummy-sink/token |
268 | +if [[ -z $token ]]; then |
269 | + juju-log -l INFO "Waiting for token" |
270 | + status-set waiting "Waiting for token" || true |
271 | +else |
272 | + juju-log -l INFO "Token is $token" |
273 | + status-set active "Token is $token" || true |
274 | +fi |
275 | |
276 | === added file 'charms-centos/dummy-sink/hooks/start' |
277 | --- charms-centos/dummy-sink/hooks/start 1970-01-01 00:00:00 +0000 |
278 | +++ charms-centos/dummy-sink/hooks/start 2017-03-14 23:38:01 +0000 |
279 | @@ -0,0 +1,4 @@ |
280 | +#!/bin/bash |
281 | +set -eux |
282 | + |
283 | +status-set maintenance "Started" || true |
284 | |
285 | === added file 'charms-centos/dummy-sink/metadata.yaml' |
286 | --- charms-centos/dummy-sink/metadata.yaml 1970-01-01 00:00:00 +0000 |
287 | +++ charms-centos/dummy-sink/metadata.yaml 2017-03-14 23:38:01 +0000 |
288 | @@ -0,0 +1,12 @@ |
289 | +name: dummy-sink |
290 | +maintainer: Martin Packman <martin.packman@canonical.com> |
291 | +summary: Dummy charm that accepts data |
292 | +description: | |
293 | + This dummy charm is used to verify that a relationship is created correctly |
294 | +provides: |
295 | + source: |
296 | + interface: dummy-token |
297 | +categories: |
298 | + - misc |
299 | +series: |
300 | + - centos7 |
301 | |
302 | === added directory 'charms-centos/dummy-source' |
303 | === added file 'charms-centos/dummy-source/README' |
304 | --- charms-centos/dummy-source/README 1970-01-01 00:00:00 +0000 |
305 | +++ charms-centos/dummy-source/README 2017-03-14 23:38:01 +0000 |
306 | @@ -0,0 +1,1 @@ |
307 | +CentOS version of basic dummy-source testing charm. |
308 | |
309 | === added file 'charms-centos/dummy-source/config.yaml' |
310 | --- charms-centos/dummy-source/config.yaml 1970-01-01 00:00:00 +0000 |
311 | +++ charms-centos/dummy-source/config.yaml 2017-03-14 23:38:01 +0000 |
312 | @@ -0,0 +1,5 @@ |
313 | +options: |
314 | + token: |
315 | + type: string |
316 | + default: '' |
317 | + description: Token used to prove that the relation is working |
318 | |
319 | === added file 'charms-centos/dummy-source/copyright' |
320 | --- charms-centos/dummy-source/copyright 1970-01-01 00:00:00 +0000 |
321 | +++ charms-centos/dummy-source/copyright 2017-03-14 23:38:01 +0000 |
322 | @@ -0,0 +1,1 @@ |
323 | +Copyright 2014 Canonical Ltd. |
324 | |
325 | === added directory 'charms-centos/dummy-source/hooks' |
326 | === added file 'charms-centos/dummy-source/hooks/config-changed' |
327 | --- charms-centos/dummy-source/hooks/config-changed 1970-01-01 00:00:00 +0000 |
328 | +++ charms-centos/dummy-source/hooks/config-changed 2017-03-14 23:38:01 +0000 |
329 | @@ -0,0 +1,16 @@ |
330 | +#!/bin/bash |
331 | +set -eux |
332 | + |
333 | +juju-log -l INFO "Getting token" |
334 | +status-set maintenance "Getting token" || true |
335 | +token="$(config-get token)" |
336 | +for relation_id in $(relation-ids sink); do |
337 | + relation-set -r $relation_id token="$token" |
338 | +done |
339 | +if [[ -z $token ]]; then |
340 | + juju-log -l WARNING "Blocked: set the token" |
341 | + status-set blocked "Set the token" || true |
342 | +else |
343 | + juju-log -l INFO "Token is $token" |
344 | + status-set active "Token is $token" || true |
345 | +fi |
346 | |
347 | === added file 'charms-centos/dummy-source/hooks/install' |
348 | --- charms-centos/dummy-source/hooks/install 1970-01-01 00:00:00 +0000 |
349 | +++ charms-centos/dummy-source/hooks/install 2017-03-14 23:38:01 +0000 |
350 | @@ -0,0 +1,4 @@ |
351 | +#!/bin/bash |
352 | +set -eux |
353 | + |
354 | +status-set maintenance "Installed" || true |
355 | |
356 | === added symlink 'charms-centos/dummy-source/hooks/sink-relation-joined' |
357 | === target is u'config-changed' |
358 | === added file 'charms-centos/dummy-source/hooks/start' |
359 | --- charms-centos/dummy-source/hooks/start 1970-01-01 00:00:00 +0000 |
360 | +++ charms-centos/dummy-source/hooks/start 2017-03-14 23:38:01 +0000 |
361 | @@ -0,0 +1,4 @@ |
362 | +#!/bin/bash |
363 | +set -eux |
364 | + |
365 | +status-set maintenance "Started" || true |
366 | |
367 | === added file 'charms-centos/dummy-source/metadata.yaml' |
368 | --- charms-centos/dummy-source/metadata.yaml 1970-01-01 00:00:00 +0000 |
369 | +++ charms-centos/dummy-source/metadata.yaml 2017-03-14 23:38:01 +0000 |
370 | @@ -0,0 +1,12 @@ |
371 | +name: dummy-source |
372 | +maintainer: Martin Packman <martin.packman@canonical.com> |
373 | +summary: Dummy charm that provides data |
374 | +description: | |
375 | + This dummy charm is used to verify that a relationship is created correctly |
376 | +requires: |
377 | + sink: |
378 | + interface: dummy-token |
379 | +categories: |
380 | + - misc |
381 | +series: |
382 | + - centos7 |
383 | |
384 | === added directory 'charms-win' |
385 | === added directory 'charms-win/dummy-sink' |
386 | === added file 'charms-win/dummy-sink/README' |
387 | --- charms-win/dummy-sink/README 1970-01-01 00:00:00 +0000 |
388 | +++ charms-win/dummy-sink/README 2017-03-14 23:38:01 +0000 |
389 | @@ -0,0 +1,1 @@ |
390 | +Windows version of basic dummy-sink testing charm. |
391 | |
392 | === added file 'charms-win/dummy-sink/config.yaml' |
393 | --- charms-win/dummy-sink/config.yaml 1970-01-01 00:00:00 +0000 |
394 | +++ charms-win/dummy-sink/config.yaml 2017-03-14 23:38:01 +0000 |
395 | @@ -0,0 +1,5 @@ |
396 | +options: |
397 | + token: |
398 | + type: string |
399 | + default: '' |
400 | + description: Token used to prove that the relation is working |
401 | |
402 | === added file 'charms-win/dummy-sink/copyright' |
403 | --- charms-win/dummy-sink/copyright 1970-01-01 00:00:00 +0000 |
404 | +++ charms-win/dummy-sink/copyright 2017-03-14 23:38:01 +0000 |
405 | @@ -0,0 +1,1 @@ |
406 | +Copyright 2015 Canonical Ltd. |
407 | |
408 | === added directory 'charms-win/dummy-sink/hooks' |
409 | === added file 'charms-win/dummy-sink/hooks/install.ps1' |
410 | --- charms-win/dummy-sink/hooks/install.ps1 1970-01-01 00:00:00 +0000 |
411 | +++ charms-win/dummy-sink/hooks/install.ps1 2017-03-14 23:38:01 +0000 |
412 | @@ -0,0 +1,2 @@ |
413 | +juju-log.exe "Installed" |
414 | +status-set.exe "waiting" "Installed" |
415 | |
416 | === added file 'charms-win/dummy-sink/hooks/source-relation-changed.ps1' |
417 | --- charms-win/dummy-sink/hooks/source-relation-changed.ps1 1970-01-01 00:00:00 +0000 |
418 | +++ charms-win/dummy-sink/hooks/source-relation-changed.ps1 2017-03-14 23:38:01 +0000 |
419 | @@ -0,0 +1,8 @@ |
420 | +status-set.exe "maintenance" "Updating token" |
421 | +$path = join-path $ENV:ProgramData dummy-sink |
422 | +mkdir $path |
423 | +$tokenpath = join-path $path token |
424 | +relation-get token > $tokenpath |
425 | +$current_token = relation-get token |
426 | +juju-log.exe "Token is $current_token" |
427 | +status-set.exe "active" "Token is $current_token" |
428 | |
429 | === added file 'charms-win/dummy-sink/hooks/start.ps1' |
430 | --- charms-win/dummy-sink/hooks/start.ps1 1970-01-01 00:00:00 +0000 |
431 | +++ charms-win/dummy-sink/hooks/start.ps1 2017-03-14 23:38:01 +0000 |
432 | @@ -0,0 +1,2 @@ |
433 | +juju-log.exe "Started" |
434 | +status-set.exe "waiting" "Started" |
435 | |
436 | === added file 'charms-win/dummy-sink/metadata.yaml' |
437 | --- charms-win/dummy-sink/metadata.yaml 1970-01-01 00:00:00 +0000 |
438 | +++ charms-win/dummy-sink/metadata.yaml 2017-03-14 23:38:01 +0000 |
439 | @@ -0,0 +1,21 @@ |
440 | +name: dummy-sink |
441 | +maintainer: Martin Packman <martin.packman@canonical.com> |
442 | +summary: Dummy charm that accepts data |
443 | +description: | |
444 | + This dummy charm is used to verify that a relationship is created correctly |
445 | +provides: |
446 | + source: |
447 | + interface: dummy-token |
448 | +categories: |
449 | + - misc |
450 | +series: |
451 | + - win2012hvr2 |
452 | + - win2012hv |
453 | + - win2012r2 |
454 | + - win2012 |
455 | + - win2016 |
456 | + - win2016nano |
457 | + - win10 |
458 | + - win8 |
459 | + - win81 |
460 | + - win7 |
461 | |
462 | === added directory 'charms-win/dummy-source' |
463 | === added file 'charms-win/dummy-source/README' |
464 | --- charms-win/dummy-source/README 1970-01-01 00:00:00 +0000 |
465 | +++ charms-win/dummy-source/README 2017-03-14 23:38:01 +0000 |
466 | @@ -0,0 +1,1 @@ |
467 | +Windows version of basic dummy-source testing charm. |
468 | |
469 | === added file 'charms-win/dummy-source/config.yaml' |
470 | --- charms-win/dummy-source/config.yaml 1970-01-01 00:00:00 +0000 |
471 | +++ charms-win/dummy-source/config.yaml 2017-03-14 23:38:01 +0000 |
472 | @@ -0,0 +1,5 @@ |
473 | +options: |
474 | + token: |
475 | + type: string |
476 | + default: '' |
477 | + description: Token used to prove that the relation is working |
478 | |
479 | === added file 'charms-win/dummy-source/copyright' |
480 | --- charms-win/dummy-source/copyright 1970-01-01 00:00:00 +0000 |
481 | +++ charms-win/dummy-source/copyright 2017-03-14 23:38:01 +0000 |
482 | @@ -0,0 +1,1 @@ |
483 | +Copyright 2015 Canonical Ltd. |
484 | |
485 | === added directory 'charms-win/dummy-source/hooks' |
486 | === added file 'charms-win/dummy-source/hooks/config-changed.ps1' |
487 | --- charms-win/dummy-source/hooks/config-changed.ps1 1970-01-01 00:00:00 +0000 |
488 | +++ charms-win/dummy-source/hooks/config-changed.ps1 2017-03-14 23:38:01 +0000 |
489 | @@ -0,0 +1,7 @@ |
490 | +$token = config-get token |
491 | +$relations = relation-ids sink |
492 | +foreach ($relation_id in $relations.split()) { |
493 | + relation-set -r $relation_id token="$token" |
494 | +} |
495 | +juju-log.exe "Token is $token" |
496 | +status-set.exe "active" "Token is $token" |
497 | |
498 | === added file 'charms-win/dummy-source/hooks/install.ps1' |
499 | --- charms-win/dummy-source/hooks/install.ps1 1970-01-01 00:00:00 +0000 |
500 | +++ charms-win/dummy-source/hooks/install.ps1 2017-03-14 23:38:01 +0000 |
501 | @@ -0,0 +1,2 @@ |
502 | +juju-log.exe "Installed" |
503 | +status-set.exe "waiting" "Installed" |
504 | |
505 | === added file 'charms-win/dummy-source/hooks/sink-relation-joined.ps1' |
506 | --- charms-win/dummy-source/hooks/sink-relation-joined.ps1 1970-01-01 00:00:00 +0000 |
507 | +++ charms-win/dummy-source/hooks/sink-relation-joined.ps1 2017-03-14 23:38:01 +0000 |
508 | @@ -0,0 +1,2 @@ |
509 | +$script = join-path $PSScriptRoot config-changed.ps1 |
510 | +& $script |
511 | |
512 | === added file 'charms-win/dummy-source/hooks/start.ps1' |
513 | --- charms-win/dummy-source/hooks/start.ps1 1970-01-01 00:00:00 +0000 |
514 | +++ charms-win/dummy-source/hooks/start.ps1 2017-03-14 23:38:01 +0000 |
515 | @@ -0,0 +1,2 @@ |
516 | +juju-log.exe Started" |
517 | +status-set.exe "waiting" "Started" |
518 | |
519 | === added file 'charms-win/dummy-source/metadata.yaml' |
520 | --- charms-win/dummy-source/metadata.yaml 1970-01-01 00:00:00 +0000 |
521 | +++ charms-win/dummy-source/metadata.yaml 2017-03-14 23:38:01 +0000 |
522 | @@ -0,0 +1,21 @@ |
523 | +name: dummy-source |
524 | +maintainer: Martin Packman <martin.packman@canonical.com> |
525 | +summary: Dummy charm that provides data |
526 | +description: | |
527 | + This dummy charm is used to verify that a relationship is created correctly |
528 | +requires: |
529 | + sink: |
530 | + interface: dummy-token |
531 | +categories: |
532 | + - misc |
533 | +series: |
534 | + - win2012hvr2 |
535 | + - win2012hv |
536 | + - win2012r2 |
537 | + - win2012 |
538 | + - win2016 |
539 | + - win2016nano |
540 | + - win10 |
541 | + - win8 |
542 | + - win81 |
543 | + - win7 |
544 | |
545 | === added directory 'charms/chaos-monkey' |
546 | === added file 'charms/chaos-monkey/README' |
547 | --- charms/chaos-monkey/README 1970-01-01 00:00:00 +0000 |
548 | +++ charms/chaos-monkey/README 2017-03-14 23:38:01 +0000 |
549 | @@ -0,0 +1,43 @@ |
550 | +Overview |
551 | +======== |
552 | +This charm provides tooling for injecting errors, instrumenting degraded |
553 | +conditions or causing outages, in a Juju environment. Once deployed this |
554 | +charm can be put into a relation with any service. Juju actions are used |
555 | +to start a single chaos operation or a series of operations, for a |
556 | +specified time period. Chaos operations can be selected randomly by the |
557 | +tooling or specific operations can be specified when the action is started. |
558 | + |
559 | +Usage |
560 | +===== |
561 | +1. Deploy the charm into an existing Juju environment. |
562 | + |
563 | +2. Add a relation between Chaos Monkey and the service to be affected. |
564 | + |
565 | +3. Call the start action (e.g. juju action do <unit name> start [options]) |
566 | + Run 'juju action defined --schema chaos-monkey' to see the full list of |
567 | + available actions and action parameters. |
568 | + |
569 | +4. Use the show-monkey-ids action to list the identifiers for the Chaos |
570 | + Monkeys that have been run and the location of the logs. |
571 | + For example: |
572 | + 'juju action do chaos-monkey/0 show-monkey-ids' |
573 | + Action queued with id: a7ee2b06-1d75-4a8c-8f4b-aeb27009ce59 |
574 | + |
575 | + 'juju action fetch a7ee2b06-1d75-4a8c-8f4b-aeb27009ce59' |
576 | + |
577 | +5. Use the show-logs action to print the log of operations that were run. |
578 | + 'juju action do chaos-monkey/0 show-logs monkey-id=<ID String>' |
579 | + |
580 | + 'juju action fetch <Action ID> |
581 | + |
582 | +Replay |
583 | +====== |
584 | +Each time Chaos Monkey runs, a replay log is generated and saved in the |
585 | +units log directory. This replay log can be used to reproduce the Chaos |
586 | +operations. For example: |
587 | + /home/ubuntu/chaos-monkey/chaos_monkey.<ID String>/logs/chaos_run_list.log |
588 | + |
589 | +Currently the replay needs to be run from a root shell on the unit itself. |
590 | + 1. 'juju ssh chaos-monkey/0' |
591 | + 2. 'mkdir /home/ubuntu/chaos-monkey/replay_space' |
592 | + 3. python /home/ubuntu/chaos-monkey/chaos_monkey.<ID String>/chaos-monkey/runner.py --replay /home/ubuntu/chaos-monkey/chaos_monkey.<ID String>/log/chaos_run_list.log /home/ubuntu/chaos-monkey/replay_space |
593 | |
594 | === added directory 'charms/chaos-monkey/actions' |
595 | === added file 'charms/chaos-monkey/actions.yaml' |
596 | --- charms/chaos-monkey/actions.yaml 1970-01-01 00:00:00 +0000 |
597 | +++ charms/chaos-monkey/actions.yaml 2017-03-14 23:38:01 +0000 |
598 | @@ -0,0 +1,51 @@ |
599 | +show-logs: |
600 | + description: Stage chaos monkey logs for viewing with 'juju action fetch' |
601 | + params: |
602 | + chaos-dir: |
603 | + type: string |
604 | + description: The base directory in which to search for logs. |
605 | + monkey-id: |
606 | + type: string |
607 | + description: The ID of the monkey-id for which logs should be shown. |
608 | +show-monkey-ids: |
609 | + description: List the monkey-ids that have been run on the service unit. |
610 | + params: |
611 | + chaos-dir: |
612 | + type: string |
613 | + description: The base directory to search for evidence of monkeys. |
614 | +start: |
615 | + description: Start the chaos monkey. |
616 | + params: |
617 | + exclude-command: |
618 | + type: string |
619 | + enum: [deny-all, deny-incoming, deny-outgoing, deny-state-server, |
620 | + deny-api-server, deny-sys-log, kill-jujud, kill-mongod, |
621 | + restart-unit, delay, delay-long, drop, corrupt, duplicate] |
622 | + description: Exclude commands from the test list. |
623 | + exclude-group: |
624 | + type: string |
625 | + enum: [net, kill] |
626 | + description: Exclude groups from the test list. |
627 | + include-command: |
628 | + type: string |
629 | + enum: [deny-all, deny-incoming, deny-outgoing, deny-state-server, |
630 | + deny-api-server, deny-sys-log, kill-jujud, kill-mongod, |
631 | + restart-unit, delay, delay-long, drop, corrupt, duplicate] |
632 | + description: Include only these commands in the test list. |
633 | + include-group: |
634 | + type: string |
635 | + enum: [net, kill] |
636 | + description: Include only these groups in the test list. |
637 | + total-timeout: |
638 | + type: integer |
639 | + description: Timeout in seconds for which the monkey should run. |
640 | + enablement-timeout: |
641 | + type: integer |
642 | + description: Timeout in seconds to run each chaos operation. |
643 | + mode: |
644 | + type: string |
645 | + enum: [single, continuous] |
646 | + description: Execution mode either single or continuous. |
647 | + monkey-id: |
648 | + type: string |
649 | + description: Identifier to track this monkeys actions. |
650 | |
651 | === added file 'charms/chaos-monkey/actions/show-logs' |
652 | --- charms/chaos-monkey/actions/show-logs 1970-01-01 00:00:00 +0000 |
653 | +++ charms/chaos-monkey/actions/show-logs 2017-03-14 23:38:01 +0000 |
654 | @@ -0,0 +1,20 @@ |
655 | +#!/bin/bash -eux |
656 | +monkey_id='*' |
657 | +chaos_dir="$(config-get chaos-dir)" |
658 | +action_chaos_dir="$(action-get chaos-dir)" |
659 | +action_monkey_id="$(action-get monkey-id)" |
660 | +[[ -n ${action_chaos_dir:-} ]] && chaos_dir=${action_chaos_dir} |
661 | +[[ -n ${action_monkey_id:-} ]] && monkey_id=${action_monkey_id} |
662 | +action-set action-parameters.chaos-dir="${chaos_dir}" |
663 | +action-set action-parameters.monkey-id="${monkey_id}" |
664 | + |
665 | +target_dir="${chaos_dir}/chaos_monkey.${monkey_id}" |
666 | +for dir in ${target_dir}; do |
667 | + log="${dir}/log/results.log" |
668 | + key=${dir##*\/chaos_monkey\.} |
669 | + count=1 |
670 | + while read line; do |
671 | + action-set ${key}-run-log.${count}="${line}" |
672 | + count=$((count + 1)) |
673 | + done < ${log} |
674 | +done |
675 | |
676 | === added file 'charms/chaos-monkey/actions/show-monkey-ids' |
677 | --- charms/chaos-monkey/actions/show-monkey-ids 1970-01-01 00:00:00 +0000 |
678 | +++ charms/chaos-monkey/actions/show-monkey-ids 2017-03-14 23:38:01 +0000 |
679 | @@ -0,0 +1,13 @@ |
680 | +#!/bin/bash -eux |
681 | +monkey_id='*' |
682 | +chaos_dir="$(config-get chaos-dir)" |
683 | +action_chaos_dir="$(action-get chaos-dir)" |
684 | +[[ -n ${action_chaos_dir:-} ]] && chaos_dir=${action_chaos_dir} |
685 | +action-set action-parameters.chaos-dir="${chaos_dir}" |
686 | + |
687 | +target_dir="${chaos_dir}/chaos_monkey.${monkey_id}" |
688 | + |
689 | +for dir in ${target_dir}; do |
690 | + key=${dir##*\/chaos_monkey\.} |
691 | + [[ -d $dir ]] && action-set monkey-ids.${key}=${dir} |
692 | +done |
693 | |
694 | === added file 'charms/chaos-monkey/actions/start' |
695 | --- charms/chaos-monkey/actions/start 1970-01-01 00:00:00 +0000 |
696 | +++ charms/chaos-monkey/actions/start 2017-03-14 23:38:01 +0000 |
697 | @@ -0,0 +1,63 @@ |
698 | +#!/bin/bash -eux |
699 | +dry_run="$(config-get dry-run)" |
700 | +chaos_dir="$(config-get chaos-dir)" |
701 | +exclude_command="$(action-get exclude-command)" |
702 | +exclude_group="$(action-get exclude-group)" |
703 | +enablement_timeout="$(action-get enablement-timeout)" |
704 | +include_command="$(action-get include-command)" |
705 | +include_group="$(action-get include-group)" |
706 | +total_timeout="$(action-get total-timeout)" |
707 | +monkey_id="$(action-get monkey-id)" |
708 | +mode="$(action-get mode)" |
709 | +monkey_id=${monkey_id:-${JUJU_ACTION_TAG#action-}} |
710 | +action-set action-parameters.dry-run="${dry_run}" |
711 | +action-set action-parameters.chaos-dir="${chaos_dir}" |
712 | +action-set action-parameters.charm-dir="${CHARM_DIR}" |
713 | +action-set action-parameters.exclude-command="${exclude_command}" |
714 | +action-set action-parameters.exclude-group="${exclude_group}" |
715 | +action-set action-parameters.enablement-timeout="${enablement_timeout}" |
716 | +action-set action-parameters.include-command="${include_command}" |
717 | +action-set action-parameters.include-group="${include_group}" |
718 | +action-set action-parameters.monkey-id=${monkey_id} |
719 | +action-set action-parameters.total-timeout="${total_timeout}" |
720 | +action-set action-parameters.mode="${mode}" |
721 | + |
722 | +# Create a unique directory to run and log this monkeys actions. |
723 | +target_dir=${chaos_dir}/chaos_monkey.${monkey_id} |
724 | +mkdir -p ${target_dir}/log |
725 | +if [[ -d ${CHARM_DIR}/chaos-monkey ]]; then |
726 | + cp -a ${CHARM_DIR}/chaos-monkey ${target_dir} |
727 | +fi |
728 | + |
729 | +# Run the Chaos Monkey |
730 | +cmd="python ${target_dir}/chaos-monkey/runner.py" |
731 | +cmd+=" ${target_dir}" |
732 | +if [[ -n ${exclude_command:-} ]]; then |
733 | + cmd+=" --exclude-command ${exclude_command}" |
734 | +fi |
735 | +if [[ -n ${exclude_group:-} ]]; then |
736 | + cmd+=" --exclude-group ${exclude_group}" |
737 | +fi |
738 | +if [[ -n ${include_command:-} ]]; then |
739 | + cmd+=" --include-command ${include_command}" |
740 | +fi |
741 | +if [[ -n ${include_group:-} ]]; then |
742 | + cmd+=" --include-group ${include_group}" |
743 | +fi |
744 | +if [[ -n ${total_timeout:-} ]]; then |
745 | + cmd+=" --total-timeout ${total_timeout}" |
746 | +fi |
747 | +if [[ -n ${enablement_timeout:-} ]]; then |
748 | + cmd+=" --enablement-timeout ${enablement_timeout}" |
749 | +fi |
750 | +if [[ -n ${mode:-} && "single" == "$mode" ]]; then |
751 | + cmd+=" --run-once" |
752 | +fi |
753 | +action-set action-info.runner-cmd="${cmd}" |
754 | +action-set action-info.runner-log="${target_dir}/log/results.log" |
755 | +if [[ ${dry_run-} != True ]]; then |
756 | + # Start the Chaos runner in a subprocess with nohup and in the background. |
757 | + # In this way it's PPID becomes init and further juju actions are not |
758 | + # blocked. |
759 | + (nohup ${cmd} >> ${target_dir}/log/nohup.out 2>&1 &) |
760 | +fi |
761 | |
762 | === added file 'charms/chaos-monkey/config.yaml' |
763 | --- charms/chaos-monkey/config.yaml 1970-01-01 00:00:00 +0000 |
764 | +++ charms/chaos-monkey/config.yaml 2017-03-14 23:38:01 +0000 |
765 | @@ -0,0 +1,15 @@ |
766 | +options: |
767 | + chaos-dir: |
768 | + type: string |
769 | + default: /home/ubuntu/chaos-monkey |
770 | + description: | |
771 | + The top level directory for storing runtime files and logs. |
772 | + chaos-source: |
773 | + type: string |
774 | + default: https://github.com/juju/chaos-monkey/archive/master.tar.gz |
775 | + description: | |
776 | + The URL to Chaos Monkey source as a gzip'd compressed tar archive. |
777 | + dry-run: |
778 | + type: boolean |
779 | + default: false |
780 | + description: If set to true only log what would happen. |
781 | |
782 | === added file 'charms/chaos-monkey/copyright' |
783 | --- charms/chaos-monkey/copyright 1970-01-01 00:00:00 +0000 |
784 | +++ charms/chaos-monkey/copyright 2017-03-14 23:38:01 +0000 |
785 | @@ -0,0 +1,1 @@ |
786 | +Copyright 2015 Canonical Ltd. |
787 | |
788 | === added directory 'charms/chaos-monkey/hooks' |
789 | === added file 'charms/chaos-monkey/hooks/config-changed' |
790 | --- charms/chaos-monkey/hooks/config-changed 1970-01-01 00:00:00 +0000 |
791 | +++ charms/chaos-monkey/hooks/config-changed 2017-03-14 23:38:01 +0000 |
792 | @@ -0,0 +1,1 @@ |
793 | +#!/bin/sh |
794 | |
795 | === added file 'charms/chaos-monkey/hooks/extract_chaos_monkey.bash' |
796 | --- charms/chaos-monkey/hooks/extract_chaos_monkey.bash 1970-01-01 00:00:00 +0000 |
797 | +++ charms/chaos-monkey/hooks/extract_chaos_monkey.bash 2017-03-14 23:38:01 +0000 |
798 | @@ -0,0 +1,9 @@ |
799 | +#!/bin/bash -eux |
800 | +cd ${CHARM_DIR} |
801 | +chaos_source="$(config-get chaos-source)" |
802 | +wget ${chaos_source} --output-document chaos-monkey.tar.gz |
803 | +# Delete any existing Chaos Monkey directory. |
804 | +[[ -d chaos-monkey ]] && rm -rf chaos-monkey |
805 | +# Extract and rename chaos-monkey-master to chaos-monkey |
806 | +[[ -f chaos-monkey.tar.gz ]] && tar -zxf chaos-monkey.tar.gz && \ |
807 | + mv chaos-monkey-master chaos-monkey |
808 | |
809 | === added file 'charms/chaos-monkey/hooks/install' |
810 | --- charms/chaos-monkey/hooks/install 1970-01-01 00:00:00 +0000 |
811 | +++ charms/chaos-monkey/hooks/install 2017-03-14 23:38:01 +0000 |
812 | @@ -0,0 +1,5 @@ |
813 | +#!/bin/bash -eux |
814 | + |
815 | +apt-get update |
816 | +apt-get install -y python bzr |
817 | +${CHARM_DIR}/hooks/extract_chaos_monkey.bash |
818 | |
819 | === added file 'charms/chaos-monkey/hooks/start' |
820 | --- charms/chaos-monkey/hooks/start 1970-01-01 00:00:00 +0000 |
821 | +++ charms/chaos-monkey/hooks/start 2017-03-14 23:38:01 +0000 |
822 | @@ -0,0 +1,1 @@ |
823 | +#!/bin/sh |
824 | |
825 | === added file 'charms/chaos-monkey/hooks/stop' |
826 | --- charms/chaos-monkey/hooks/stop 1970-01-01 00:00:00 +0000 |
827 | +++ charms/chaos-monkey/hooks/stop 2017-03-14 23:38:01 +0000 |
828 | @@ -0,0 +1,1 @@ |
829 | +#!/bin/sh |
830 | |
831 | === added file 'charms/chaos-monkey/hooks/upgrade-charm' |
832 | --- charms/chaos-monkey/hooks/upgrade-charm 1970-01-01 00:00:00 +0000 |
833 | +++ charms/chaos-monkey/hooks/upgrade-charm 2017-03-14 23:38:01 +0000 |
834 | @@ -0,0 +1,2 @@ |
835 | +#!/bin/bash -eux |
836 | +${CHARM_DIR}/hooks/extract_chaos_monkey.bash |
837 | |
838 | === added file 'charms/chaos-monkey/icon.svg' |
839 | --- charms/chaos-monkey/icon.svg 1970-01-01 00:00:00 +0000 |
840 | +++ charms/chaos-monkey/icon.svg 2017-03-14 23:38:01 +0000 |
841 | @@ -0,0 +1,425 @@ |
842 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
843 | +<!-- Created with Inkscape (http://www.inkscape.org/) --> |
844 | + |
845 | +<svg |
846 | + xmlns:dc="http://purl.org/dc/elements/1.1/" |
847 | + xmlns:cc="http://creativecommons.org/ns#" |
848 | + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
849 | + xmlns:svg="http://www.w3.org/2000/svg" |
850 | + xmlns="http://www.w3.org/2000/svg" |
851 | + xmlns:xlink="http://www.w3.org/1999/xlink" |
852 | + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" |
853 | + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
854 | + width="25.4mm" |
855 | + height="25.4mm" |
856 | + viewBox="0 0 25.4 25.4" |
857 | + id="svg4249" |
858 | + version="1.1" |
859 | + inkscape:version="0.91+devel r" |
860 | + sodipodi:docname="chaos-monkey_colours_squircle.svg"> |
861 | + <defs |
862 | + id="defs4251"> |
863 | + <linearGradient |
864 | + inkscape:collect="always" |
865 | + id="linearGradient4210"> |
866 | + <stop |
867 | + style="stop-color:#000000;stop-opacity:1;" |
868 | + offset="0" |
869 | + id="stop4212" /> |
870 | + <stop |
871 | + style="stop-color:#000000;stop-opacity:0;" |
872 | + offset="1" |
873 | + id="stop4214" /> |
874 | + </linearGradient> |
875 | + <linearGradient |
876 | + inkscape:collect="always" |
877 | + id="linearGradient4173"> |
878 | + <stop |
879 | + style="stop-color:#6b3c2b;stop-opacity:1" |
880 | + offset="0" |
881 | + id="stop4175" /> |
882 | + <stop |
883 | + style="stop-color:#a95d40;stop-opacity:1" |
884 | + offset="1" |
885 | + id="stop4177" /> |
886 | + </linearGradient> |
887 | + <filter |
888 | + style="color-interpolation-filters:sRGB" |
889 | + inkscape:label="Inner Shadow" |
890 | + id="filter1121"> |
891 | + <feFlood |
892 | + flood-opacity="0.59999999999999998" |
893 | + flood-color="rgb(0,0,0)" |
894 | + result="flood" |
895 | + id="feFlood1123" /> |
896 | + <feComposite |
897 | + in="flood" |
898 | + in2="SourceGraphic" |
899 | + operator="out" |
900 | + result="composite1" |
901 | + id="feComposite1125" /> |
902 | + <feGaussianBlur |
903 | + in="composite1" |
904 | + stdDeviation="1" |
905 | + result="blur" |
906 | + id="feGaussianBlur1127" /> |
907 | + <feOffset |
908 | + dx="0" |
909 | + dy="2" |
910 | + result="offset" |
911 | + id="feOffset1129" /> |
912 | + <feComposite |
913 | + in="offset" |
914 | + in2="SourceGraphic" |
915 | + operator="atop" |
916 | + result="composite2" |
917 | + id="feComposite1131" /> |
918 | + </filter> |
919 | + <filter |
920 | + inkscape:collect="always" |
921 | + style="color-interpolation-filters:sRGB" |
922 | + id="filter4200" |
923 | + x="-0.024" |
924 | + width="1.048" |
925 | + y="-0.024" |
926 | + height="1.048"> |
927 | + <feGaussianBlur |
928 | + inkscape:collect="always" |
929 | + stdDeviation="0.087974405" |
930 | + id="feGaussianBlur4202" /> |
931 | + </filter> |
932 | + <filter |
933 | + inkscape:collect="always" |
934 | + style="color-interpolation-filters:sRGB" |
935 | + id="filter4206" |
936 | + x="-0.096" |
937 | + width="1.192" |
938 | + y="-0.096" |
939 | + height="1.192"> |
940 | + <feGaussianBlur |
941 | + inkscape:collect="always" |
942 | + stdDeviation="0.35189762" |
943 | + id="feGaussianBlur4208" /> |
944 | + </filter> |
945 | + <linearGradient |
946 | + inkscape:collect="always" |
947 | + xlink:href="#linearGradient4210" |
948 | + id="linearGradient4216" |
949 | + x1="-421.12213" |
950 | + y1="82.231171" |
951 | + x2="-416.4339" |
952 | + y2="82.231171" |
953 | + gradientUnits="userSpaceOnUse" |
954 | + spreadMethod="reflect" |
955 | + gradientTransform="translate(-0.03059077,0.36458333)" /> |
956 | + <linearGradient |
957 | + inkscape:collect="always" |
958 | + xlink:href="#linearGradient4173" |
959 | + id="linearGradient4219" |
960 | + x1="-423.16037" |
961 | + y1="65.24778" |
962 | + x2="-416.58374" |
963 | + y2="90.473808" |
964 | + gradientUnits="userSpaceOnUse" /> |
965 | + <filter |
966 | + inkscape:collect="always" |
967 | + style="color-interpolation-filters:sRGB" |
968 | + id="filter4309" |
969 | + x="-0.024" |
970 | + width="1.048" |
971 | + y="-0.024" |
972 | + height="1.048"> |
973 | + <feGaussianBlur |
974 | + inkscape:collect="always" |
975 | + stdDeviation="0.087974405" |
976 | + id="feGaussianBlur4311" /> |
977 | + </filter> |
978 | + <linearGradient |
979 | + inkscape:collect="always" |
980 | + id="linearGradient4173-9"> |
981 | + <stop |
982 | + style="stop-color:#7843ad;stop-opacity:1" |
983 | + offset="0" |
984 | + id="stop4175-2" /> |
985 | + <stop |
986 | + style="stop-color:#937fdb;stop-opacity:1" |
987 | + offset="1" |
988 | + id="stop4177-7" /> |
989 | + </linearGradient> |
990 | + <linearGradient |
991 | + gradientTransform="translate(277.6,-625.69077)" |
992 | + inkscape:collect="always" |
993 | + xlink:href="#linearGradient4173-9" |
994 | + id="linearGradient908" |
995 | + x1="-229.44118" |
996 | + y1="636.22839" |
997 | + x2="-229.44118" |
998 | + y2="731.29077" |
999 | + gradientUnits="userSpaceOnUse" /> |
1000 | + <filter |
1001 | + style="color-interpolation-filters:sRGB" |
1002 | + inkscape:label="Inner Shadow" |
1003 | + id="filter1121-5"> |
1004 | + <feFlood |
1005 | + flood-opacity="0.59999999999999998" |
1006 | + flood-color="rgb(0,0,0)" |
1007 | + result="flood" |
1008 | + id="feFlood1123-0" /> |
1009 | + <feComposite |
1010 | + in="flood" |
1011 | + in2="SourceGraphic" |
1012 | + operator="out" |
1013 | + result="composite1" |
1014 | + id="feComposite1125-8" /> |
1015 | + <feGaussianBlur |
1016 | + in="composite1" |
1017 | + stdDeviation="1" |
1018 | + result="blur" |
1019 | + id="feGaussianBlur1127-6" /> |
1020 | + <feOffset |
1021 | + dx="0" |
1022 | + dy="2" |
1023 | + result="offset" |
1024 | + id="feOffset1129-5" /> |
1025 | + <feComposite |
1026 | + in="offset" |
1027 | + in2="SourceGraphic" |
1028 | + operator="atop" |
1029 | + result="composite2" |
1030 | + id="feComposite1131-1" /> |
1031 | + </filter> |
1032 | + </defs> |
1033 | + <sodipodi:namedview |
1034 | + id="base" |
1035 | + pagecolor="#ffffff" |
1036 | + bordercolor="#666666" |
1037 | + borderopacity="1.0" |
1038 | + inkscape:pageopacity="0.0" |
1039 | + inkscape:pageshadow="2" |
1040 | + inkscape:zoom="2.6077032" |
1041 | + inkscape:cx="29.574735" |
1042 | + inkscape:cy="54.068567" |
1043 | + inkscape:document-units="mm" |
1044 | + inkscape:current-layer="layer1" |
1045 | + showgrid="false" |
1046 | + fit-margin-top="0" |
1047 | + fit-margin-left="0" |
1048 | + fit-margin-right="0" |
1049 | + fit-margin-bottom="0" |
1050 | + inkscape:snap-bbox="true" |
1051 | + inkscape:bbox-paths="true" |
1052 | + inkscape:bbox-nodes="true" |
1053 | + inkscape:snap-bbox-edge-midpoints="true" |
1054 | + inkscape:snap-bbox-midpoints="true" |
1055 | + inkscape:object-paths="true" |
1056 | + inkscape:snap-intersection-paths="true" |
1057 | + inkscape:snap-smooth-nodes="true" |
1058 | + inkscape:snap-midpoints="true" |
1059 | + inkscape:snap-object-midpoints="true" |
1060 | + inkscape:snap-center="true" |
1061 | + inkscape:snap-global="true" |
1062 | + inkscape:snap-page="true" |
1063 | + showguides="false" |
1064 | + inkscape:guide-bbox="true"> |
1065 | + <inkscape:grid |
1066 | + type="xygrid" |
1067 | + id="grid4206" /> |
1068 | + <sodipodi:guide |
1069 | + position="12.7,8.5462876" |
1070 | + orientation="1,0" |
1071 | + id="guide4249" |
1072 | + inkscape:label="" |
1073 | + inkscape:color="rgb(0,0,255)" /> |
1074 | + </sodipodi:namedview> |
1075 | + <metadata |
1076 | + id="metadata4254"> |
1077 | + <rdf:RDF> |
1078 | + <cc:Work |
1079 | + rdf:about=""> |
1080 | + <dc:format>image/svg+xml</dc:format> |
1081 | + <dc:type |
1082 | + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> |
1083 | + <dc:title></dc:title> |
1084 | + </cc:Work> |
1085 | + </rdf:RDF> |
1086 | + </metadata> |
1087 | + <g |
1088 | + inkscape:label="Layer 1" |
1089 | + inkscape:groupmode="layer" |
1090 | + id="layer1" |
1091 | + transform="translate(433.76548,-65.073809)"> |
1092 | + <path |
1093 | + style="display:inline;fill:url(#linearGradient908);fill-opacity:1;stroke:none;filter:url(#filter1121-5)" |
1094 | + d="M 9.6000004,74.46486 V 40.73513 C 9.6000004,13.49189 13.48785,9.6000004 40.70302,9.6000004 H 74.4971 c 27.21507,0 31.1029,3.8918896 31.1029,31.1351296 V 74.46486 C 105.6,101.70811 101.71217,105.6 74.4971,105.6 H 40.70302 C 13.48785,105.6 9.6000004,101.70811 9.6000004,74.46486 Z" |
1095 | + id="path6455" |
1096 | + inkscape:connector-curvature="0" |
1097 | + sodipodi:nodetypes="sssssssss" |
1098 | + transform="matrix(0.26458333,0,0,0.26458333,-436.30548,62.533811)" /> |
1099 | + <g |
1100 | + id="g4211"> |
1101 | + <circle |
1102 | + transform="rotate(-120)" |
1103 | + inkscape:transform-center-x="-3.7735543" |
1104 | + inkscape:transform-center-y="-2.17872" |
1105 | + cy="-399.44754" |
1106 | + cx="142.7204" |
1107 | + id="circle4258" |
1108 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#b5baea;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1109 | + r="4.3987203" /> |
1110 | + <path |
1111 | + id="ellipse4298" |
1112 | + d="m -411.74667,75.235464 a 5.6223427,5.6223427 0 0 1 -1.76268,5.038968 2.6723602,2.6723605 60 0 0 2.2288,-0.201021 2.6723602,2.6723605 60 0 0 0.97824,-3.650423 2.6723602,2.6723605 60 0 0 -1.44436,-1.187524 z" |
1113 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#b5baea;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1114 | + inkscape:connector-curvature="0" /> |
1115 | + <path |
1116 | + id="ellipse4300" |
1117 | + d="m -430.41736,75.242698 a 2.6723602,2.6723605 60 0 0 -0.44184,0.202055 2.6723602,2.6723605 60 0 0 -0.97823,3.650423 2.6723602,2.6723605 60 0 0 3.18378,1.189592 5.6488129,5.6488129 0 0 1 -1.76371,-5.04207 z" |
1118 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#b5baea;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1119 | + inkscape:connector-curvature="0" /> |
1120 | + <circle |
1121 | + transform="rotate(120)" |
1122 | + cy="329.85925" |
1123 | + cx="278.34512" |
1124 | + id="circle4302" |
1125 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#b5baea;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1126 | + r="4.3987203" /> |
1127 | + <circle |
1128 | + r="4.3987203" |
1129 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1130 | + id="circle4260" |
1131 | + cx="278.34512" |
1132 | + cy="329.85925" |
1133 | + inkscape:transform-center-y="-2.1786389" |
1134 | + inkscape:transform-center-x="3.7735878" |
1135 | + transform="rotate(120)" /> |
1136 | + <g |
1137 | + id="g4251"> |
1138 | + <ellipse |
1139 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#e93549;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52916664;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1140 | + id="path4214" |
1141 | + cx="-424.09668" |
1142 | + cy="77.69136" |
1143 | + rx="2.873404" |
1144 | + ry="2.6078522" /> |
1145 | + <path |
1146 | + style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#fac82e;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.62029862;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" |
1147 | + d="m -421.07726,76.865803 c -0.51742,-1.228148 -1.71184,-2.130204 -3.12526,-2.110596 -1.63008,0.02261 -3.05795,1.348806 -3.03003,3.021432 0.024,1.440786 1.1986,2.702933 2.67943,2.673759 1.2701,-0.02502 2.38123,-1.062332 2.35124,-2.370197 -0.0256,-1.116744 -0.9395,-2.093655 -2.09196,-2.063225 -0.97951,0.02586 -1.8356,0.8293 -1.80505,1.842692 0.0258,0.857219 0.73098,1.605876 1.62046,1.57546 0.74873,-0.0256 1.40179,-0.642389 1.37171,-1.421981 -0.0252,-0.652969 -0.56437,-1.222818 -1.247,-1.193218 -0.56888,0.02467 -1.0655,0.496438 -1.03647,1.093998 0.0241,0.495457 0.43689,0.92689 0.96027,0.898468 0.42566,-0.02311 0.78988,-0.376833 0.77361,-0.826698 0.002,0.01802 0.0202,0.02969 0.0209,0.04797 0.0181,0.468213 -0.39328,0.856542 -0.86149,0.872553 -0.57877,0.01979 -1.05524,-0.486317 -1.07261,-1.062464 -0.0212,-0.703303 0.59201,-1.279668 1.28994,-1.298097 0.84295,-0.02226 1.52947,0.711494 1.54861,1.546186 0.0229,0.998886 -0.84498,1.809475 -1.83259,1.828933 -1.17235,0.0231 -2.12042,-0.994455 -2.13975,-2.152344 -0.0228,-1.364615 1.16138,-2.465655 2.50819,-2.48434 1.57699,-0.02188 2.84624,1.346793 2.86372,2.902457 0.0177,1.573924 -1.18694,2.933664 -2.72277,3.221011 l 0.0967,0.519959 c 1.7824,-0.33348 3.17562,-1.901645 3.15489,-3.746914 -0.005,-0.459824 -0.10216,-0.90542 -0.27464,-1.314802 z m -3.34606,1.01309 0.0586,0.185969 c -0.0645,0.0068 -0.1024,-0.03159 -0.10651,-0.07541 -0.003,-0.0356 0.0118,-0.05013 0.0291,-0.05158 0.001,-9.2e-5 -0.0128,-0.01359 -0.0139,-0.02874 -10e-4,-0.01334 0.0241,-0.0173 0.0328,-0.03024 z" |
1148 | + id="path4250" |
1149 | + inkscape:connector-curvature="0" /> |
1150 | + <ellipse |
1151 | + ry="2.6078522" |
1152 | + rx="2.8529768" |
1153 | + cy="77.69136" |
1154 | + cx="-418.05707" |
1155 | + id="ellipse4216" |
1156 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#e93549;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52916664;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" /> |
1157 | + <path |
1158 | + style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#fac82e;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.62029862;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" |
1159 | + d="m -421.05722,76.865803 c 0.51742,-1.228148 1.71184,-2.130204 3.12526,-2.110596 1.63008,0.02261 3.05795,1.348806 3.03003,3.021432 -0.024,1.440786 -1.1986,2.702933 -2.67943,2.673759 -1.2701,-0.02502 -2.38123,-1.062332 -2.35124,-2.370197 0.0256,-1.116744 0.9395,-2.093655 2.09196,-2.063225 0.97951,0.02586 1.8356,0.8293 1.80505,1.842692 -0.0258,0.857219 -0.73098,1.605876 -1.62046,1.57546 -0.74873,-0.0256 -1.40179,-0.642389 -1.37171,-1.421981 0.0252,-0.652969 0.56437,-1.222818 1.247,-1.193218 0.56888,0.02467 1.0655,0.496438 1.03647,1.093998 -0.0241,0.495457 -0.43689,0.92689 -0.96027,0.898468 -0.42566,-0.02311 -0.78988,-0.376833 -0.77361,-0.826698 -0.002,0.01802 -0.0202,0.02969 -0.0209,0.04797 -0.0181,0.468213 0.39328,0.856542 0.86149,0.872553 0.57877,0.01979 1.05524,-0.486317 1.07261,-1.062464 0.0212,-0.703303 -0.59201,-1.279668 -1.28994,-1.298097 -0.84295,-0.02226 -1.52947,0.711494 -1.54861,1.546186 -0.0229,0.998886 0.84498,1.809475 1.83259,1.828933 1.17235,0.0231 2.12042,-0.994455 2.13975,-2.152344 0.0228,-1.364615 -1.16138,-2.465655 -2.50819,-2.48434 -1.57699,-0.02188 -2.84624,1.346793 -2.86372,2.902457 -0.0177,1.573924 1.18694,2.933664 2.72277,3.221011 l -0.0967,0.519959 c -1.7824,-0.33348 -3.17562,-1.901645 -3.15489,-3.746914 0.005,-0.459824 0.10216,-0.90542 0.27464,-1.314802 z m 3.34606,1.01309 -0.0586,0.185969 c 0.0645,0.0068 0.1024,-0.03159 0.10651,-0.07541 0.003,-0.0356 -0.0118,-0.05013 -0.0291,-0.05158 -0.001,-9.2e-5 0.0128,-0.01359 0.0139,-0.02874 10e-4,-0.01334 -0.0241,-0.0173 -0.0328,-0.03024 z" |
1160 | + id="path4273" |
1161 | + inkscape:connector-curvature="0" /> |
1162 | + <circle |
1163 | + r="0.49922371" |
1164 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52916682;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1165 | + id="path4275" |
1166 | + cx="-424.49808" |
1167 | + cy="77.942444" /> |
1168 | + <circle |
1169 | + r="0.49922371" |
1170 | + cy="77.942444" |
1171 | + cx="-417.63455" |
1172 | + id="ellipse4279" |
1173 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52916682;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" /> |
1174 | + </g> |
1175 | + </g> |
1176 | + <path |
1177 | + cx="-421.06549" |
1178 | + cy="77.773811" |
1179 | + r="12.7" |
1180 | + id="path4221" |
1181 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:url(#linearGradient4219);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.00264583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" /> |
1182 | + <path |
1183 | + cx="-421.06549" |
1184 | + cy="77.773811" |
1185 | + r="12.7" |
1186 | + id="path4223" |
1187 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:url(#linearGradient4219);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.00264583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" /> |
1188 | + <path |
1189 | + style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.26458332;opacity:0.07" |
1190 | + d="m -421.06548,65.073809 v 25.4 h 4.47053 c 7.20066,0 8.22947,-1.029631 8.22947,-8.23774 v -8.92452 c 0,-7.208107 -1.02881,-8.23774 -8.22947,-8.23774 z" |
1191 | + id="path4245" |
1192 | + inkscape:connector-curvature="0" /> |
1193 | + <g |
1194 | + id="g4254"> |
1195 | + <circle |
1196 | + r="4.3987203" |
1197 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229169;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;filter:url(#filter4200);enable-background:accumulate" |
1198 | + id="circle4186" |
1199 | + cx="-421.06543" |
1200 | + cy="82.924911" |
1201 | + inkscape:transform-center-y="16.625081" |
1202 | + inkscape:transform-center-x="-1.5613089e-05" /> |
1203 | + <circle |
1204 | + inkscape:transform-center-x="-1.5613089e-05" |
1205 | + inkscape:transform-center-y="16.625081" |
1206 | + cy="82.595749" |
1207 | + cx="-421.09598" |
1208 | + id="circle4204" |
1209 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.4;fill:url(#linearGradient4216);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229169;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;filter:url(#filter4206);enable-background:accumulate" |
1210 | + r="4.3987203" /> |
1211 | + <circle |
1212 | + inkscape:transform-center-x="-5.0312501e-05" |
1213 | + inkscape:transform-center-y="4.3573636" |
1214 | + cy="82.824913" |
1215 | + cx="-421.06543" |
1216 | + id="circle4295" |
1217 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.1;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;filter:url(#filter4309);enable-background:accumulate" |
1218 | + r="4.3987203" /> |
1219 | + <circle |
1220 | + r="4.3987203" |
1221 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#dcdef5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1222 | + id="circle4256" |
1223 | + cx="-421.06543" |
1224 | + cy="82.660332" |
1225 | + inkscape:transform-center-y="4.3573636" |
1226 | + inkscape:transform-center-x="-5.0312501e-05" /> |
1227 | + <path |
1228 | + d="m -386.09785,186.03619 a 0.72313833,0.72313839 0 0 1 -0.36156,0.62626 0.72313833,0.72313839 0 0 1 -0.72314,0 0.72313833,0.72313839 0 0 1 -0.36157,-0.62626 l 0.72314,0 z" |
1229 | + sodipodi:end="3.1415927" |
1230 | + sodipodi:start="0" |
1231 | + sodipodi:ry="0.72313839" |
1232 | + sodipodi:rx="0.72313833" |
1233 | + sodipodi:cy="186.03619" |
1234 | + sodipodi:cx="-386.82098" |
1235 | + sodipodi:type="arc" |
1236 | + transform="rotate(15)" |
1237 | + id="ellipse4289" |
1238 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#8866c8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" /> |
1239 | + <path |
1240 | + d="m 427.33816,-31.923328 a 0.72313833,0.72313839 0 0 1 -0.36157,0.626256 0.72313833,0.72313839 0 0 1 -0.72314,0 0.72313833,0.72313839 0 0 1 -0.36157,-0.626256 l 0.72314,0 z" |
1241 | + sodipodi:end="3.1415927" |
1242 | + sodipodi:start="0" |
1243 | + sodipodi:ry="0.72313839" |
1244 | + sodipodi:rx="0.72313833" |
1245 | + sodipodi:cy="-31.923328" |
1246 | + sodipodi:cx="426.61502" |
1247 | + sodipodi:type="arc" |
1248 | + transform="matrix(-0.96592583,0.25881905,0.25881905,0.96592583,0,0)" |
1249 | + id="ellipse4293" |
1250 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#8866c8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" /> |
1251 | + <path |
1252 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:0.3;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.13229167;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1253 | + d="m -421.06536,78.24321 a 4.3987201,4.3987201 0 0 0 -4.39869,4.398698 4.3987201,4.3987201 0 0 0 0.004,0.118339 4.3987201,4.3987201 0 0 1 4.39456,-4.31705 4.3987201,4.3987201 0 0 1 4.39457,4.281393 4.3987201,4.3987201 0 0 0 0.004,-0.08268 4.3987201,4.3987201 0 0 0 -4.3987,-4.398698 z" |
1254 | + id="path4293" |
1255 | + inkscape:connector-curvature="0" /> |
1256 | + <circle |
1257 | + inkscape:transform-center-x="-1.5613089e-05" |
1258 | + style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.06614583;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:1;stroke-opacity:1;marker:none;enable-background:accumulate" |
1259 | + id="ellipse4197" |
1260 | + cx="-421.06543" |
1261 | + cy="84.693413" |
1262 | + inkscape:transform-center-y="4.1562601" |
1263 | + r="1.0996777" /> |
1264 | + </g> |
1265 | + </g> |
1266 | +</svg> |
1267 | |
1268 | === added file 'charms/chaos-monkey/metadata.yaml' |
1269 | --- charms/chaos-monkey/metadata.yaml 1970-01-01 00:00:00 +0000 |
1270 | +++ charms/chaos-monkey/metadata.yaml 2017-03-14 23:38:01 +0000 |
1271 | @@ -0,0 +1,20 @@ |
1272 | +name: chaos-monkey |
1273 | +maintainer: John George <john.george@canonical.com> |
1274 | +summary: Chaos Monkey |
1275 | +description: | |
1276 | + This charm is used to deploy and run the chaos monkey. |
1277 | +requires: |
1278 | + juju-info: |
1279 | + interface: juju-info |
1280 | + scope: container |
1281 | +tags: |
1282 | + - misc |
1283 | +subordinate: true |
1284 | +series: |
1285 | + - trusty |
1286 | + - precise |
1287 | + - utopic |
1288 | + - vivid |
1289 | + - wily |
1290 | + - xenial |
1291 | + |
1292 | |
1293 | === added directory 'charms/client-forwardproxy' |
1294 | === added file 'charms/client-forwardproxy/Makefile' |
1295 | --- charms/client-forwardproxy/Makefile 1970-01-01 00:00:00 +0000 |
1296 | +++ charms/client-forwardproxy/Makefile 2017-03-14 23:38:01 +0000 |
1297 | @@ -0,0 +1,24 @@ |
1298 | +PWD := $(shell pwd) |
1299 | +HOOKS_DIR := $(PWD)/hooks |
1300 | +TEST_DIR := $(PWD)/hooks/tests |
1301 | +CHARM_DIR := $(PWD) |
1302 | + |
1303 | + |
1304 | +build: test proof |
1305 | + |
1306 | +revision: |
1307 | + @test -f revision || echo 0 > revision |
1308 | + |
1309 | +proof: revision |
1310 | + @echo Proofing charm... |
1311 | + @(charm proof $(PWD) || [ $$? -eq 100 ]) && echo OK |
1312 | + @test `cat revision` = 0 && rm revision |
1313 | + |
1314 | +test: |
1315 | + @echo no tests yet... |
1316 | + |
1317 | +clean: |
1318 | + rm -rf .venv |
1319 | + |
1320 | + |
1321 | +.PHONY: revision proof test lint sourcedeps charm-payload |
1322 | |
1323 | === added file 'charms/client-forwardproxy/README' |
1324 | --- charms/client-forwardproxy/README 1970-01-01 00:00:00 +0000 |
1325 | +++ charms/client-forwardproxy/README 2017-03-14 23:38:01 +0000 |
1326 | @@ -0,0 +1,21 @@ |
1327 | +A simple proxy client use for testing closed or restricted network |
1328 | +conditions. |
1329 | + |
1330 | +This client-forwardproxy works in tandem with the squid-forwardproxy |
1331 | +charm, or any charm that provides forwardproxy. Any Juju application or |
1332 | +provisioned machine can be set up to use the forward proxy like so: |
1333 | + |
1334 | + juju deploy squid-forwardproxy |
1335 | + juju deploy xenial/ubuntu x1 |
1336 | + juju deploy client-forwardproxy --to 1 |
1337 | + juju add-relation client-forwardproxy:forwardproxy squid-forwardproxy:forwardproxy |
1338 | + |
1339 | +The local host and containers on the lxdbr0 are automatically in the |
1340 | +no_proxy list. You can configure additional sites to not proxy. |
1341 | + |
1342 | + juju config client-forwardproxy extra-no-proxy="ubuntu.com canonical.com" |
1343 | + |
1344 | +This charm also adds the Ubuntu proposed archive to install and test |
1345 | +optional packages. |
1346 | + |
1347 | + juju config client-forwardproxy proposed-packages="python-boto s3cmd" |
1348 | |
1349 | === added file 'charms/client-forwardproxy/config.yaml' |
1350 | --- charms/client-forwardproxy/config.yaml 1970-01-01 00:00:00 +0000 |
1351 | +++ charms/client-forwardproxy/config.yaml 2017-03-14 23:38:01 +0000 |
1352 | @@ -0,0 +1,13 @@ |
1353 | +options: |
1354 | + proposed-packages: |
1355 | + type: string |
1356 | + default: '' |
1357 | + description: | |
1358 | + A space-separated list of packages to install from the proposed archive. |
1359 | + they will be installed using apt-get install -r. |
1360 | + extra-no-proxy: |
1361 | + type: string |
1362 | + default: '' |
1363 | + description: | |
1364 | + A space-separated list of extra sites to not proxy. localhost and the |
1365 | + lxd bridge are always in the no-proxy list. |
1366 | |
1367 | === added file 'charms/client-forwardproxy/copyright' |
1368 | --- charms/client-forwardproxy/copyright 1970-01-01 00:00:00 +0000 |
1369 | +++ charms/client-forwardproxy/copyright 2017-03-14 23:38:01 +0000 |
1370 | @@ -0,0 +1,1 @@ |
1371 | +Copyright 2016 Canonical Ltd. |
1372 | |
1373 | === added directory 'charms/client-forwardproxy/hooks' |
1374 | === added file 'charms/client-forwardproxy/hooks/config-changed' |
1375 | --- charms/client-forwardproxy/hooks/config-changed 1970-01-01 00:00:00 +0000 |
1376 | +++ charms/client-forwardproxy/hooks/config-changed 2017-03-14 23:38:01 +0000 |
1377 | @@ -0,0 +1,61 @@ |
1378 | +#!/bin/bash |
1379 | +set -eux |
1380 | + |
1381 | +PROXY_IP="" |
1382 | +PROXY_PORT="" |
1383 | + |
1384 | + |
1385 | +status-set maintenance "Checking config" || true |
1386 | +PROPOSED_PACKAGES="$(config-get proposed-packages)" |
1387 | +if [[ "$PROPOSED_PACKAGES" != "" ]]; then |
1388 | + status-set maintenance "Disabling firewall to install packages" || true |
1389 | + UFW_STATUS=$(ufw status | cut -d ' ' -f2) |
1390 | + ufw disable |
1391 | + status-set maintenance "Installing packages from the proposed archive" || true |
1392 | + RELEASE=$(lsb_release -sc) |
1393 | + apt-get update |
1394 | + apt-get install -y -t $RELEASE-proposed $PROPOSED_PACKAGES |
1395 | + status-set maintenance "Packages installed" || true |
1396 | + if [[ $UFW_STATUS == "active" ]]; then |
1397 | + status-set maintenance "Enabling the firewall" || true |
1398 | + ufw --force enable |
1399 | + fi |
1400 | +fi |
1401 | + |
1402 | +status-set maintenance "Checking proxy." || true |
1403 | +set +e |
1404 | +# This is a hack. We don't want to iterate, but we need to |
1405 | +# because we need the state of relations and config to know |
1406 | +# if this charm is active or something else. |
1407 | +for app in $(relation-ids forwardproxy); do |
1408 | + for unit in $(relation-list -r $app); do |
1409 | + PROXY_IP="$(relation-get -r $app ip $unit)" |
1410 | + PROXY_PORT="$(relation-get -r $app port $unit)" |
1411 | + done |
1412 | +done |
1413 | +set -e |
1414 | + |
1415 | +if [[ "$PROXY_IP" == "" || "$PROXY_PORT" == "" ]]; then |
1416 | + status-set maintenance "Removing firewall rules" || true |
1417 | + echo "PATH="$PATH"" > /etc/environment |
1418 | + status-set waiting "Waiting for forwardproxy" || true |
1419 | + exit 0 |
1420 | +fi |
1421 | + |
1422 | +# LXD was given the 10.0.8.* by scripts/setup-lxd.sh |
1423 | +LXD_ADDRESSES="$(echo 10.0.8.{1..255} | sed 's/ /,/g')" |
1424 | +EXTRA_NO_PROXY="$(config-get extra-no-proxy | sed -e 's/ /,/g')" |
1425 | +NO_PROXY="localhost,127.0.0.1,$EXTRA_NO_PROXY,$LXD_ADDRESSES" |
1426 | +status-set maintenance "Updating proxy rules." || true |
1427 | +cat > /etc/environment << EOF |
1428 | +PATH="$PATH" |
1429 | +http_proxy=http://$PROXY_IP:$PROXY_PORT/ |
1430 | +https_proxy=http://$PROXY_IP:$PROXY_PORT/ |
1431 | +ftp_proxy=http://$PROXY_IP:$PROXY_PORT/ |
1432 | +no_proxy=$NO_PROXY |
1433 | +HTTP_PROXY=http://$PROXY_IP:$PROXY_PORT/ |
1434 | +HTTPS_PROXY=http://$PROXY_IP:$PROXY_PORT/ |
1435 | +FTP_PROXY=http://$PROXY_IP:$PROXY_PORT/ |
1436 | +NO_PROXY=$NO_PROXY |
1437 | +EOF |
1438 | +status-set active "Updated proxy rules" || true |
1439 | |
1440 | === added symlink 'charms/client-forwardproxy/hooks/forwardproxy-relation-changed' |
1441 | === target is u'config-changed' |
1442 | === added symlink 'charms/client-forwardproxy/hooks/forwardproxy-relation-departed' |
1443 | === target is u'config-changed' |
1444 | === added symlink 'charms/client-forwardproxy/hooks/forwardproxy-relation-joined' |
1445 | === target is u'config-changed' |
1446 | === added file 'charms/client-forwardproxy/hooks/install' |
1447 | --- charms/client-forwardproxy/hooks/install 1970-01-01 00:00:00 +0000 |
1448 | +++ charms/client-forwardproxy/hooks/install 2017-03-14 23:38:01 +0000 |
1449 | @@ -0,0 +1,22 @@ |
1450 | +#!/bin/bash |
1451 | +set -eux |
1452 | + |
1453 | +status-set maintenance "Installing" || true |
1454 | +if ifconfig lxdbr0 2>&1 | grep -q "HWaddr"; then |
1455 | + status-set maintenance "Configuring LXD" || true |
1456 | + $JUJU_CHARM_DIR/scripts/setup-lxd.sh |
1457 | +fi |
1458 | + |
1459 | +RELEASE=$(lsb_release -sc) |
1460 | + |
1461 | +status-set maintenance "Adding /etc/apt/preferences.d/proposed-updates" || true |
1462 | +cat > /etc/apt/preferences.d/proposed-updates << EOF |
1463 | +Package: * |
1464 | +Pin: release a=$RELEASE-proposed |
1465 | +Pin-Priority: 400 |
1466 | +EOF |
1467 | + |
1468 | +status-set maintenance "installing firewall packages" || true |
1469 | +apt-get update |
1470 | +apt-get install -y ufw |
1471 | +status-set maintenance "Installed" || true |
1472 | |
1473 | === added symlink 'charms/client-forwardproxy/hooks/start' |
1474 | === target is u'config-changed' |
1475 | === added file 'charms/client-forwardproxy/hooks/stop' |
1476 | --- charms/client-forwardproxy/hooks/stop 1970-01-01 00:00:00 +0000 |
1477 | +++ charms/client-forwardproxy/hooks/stop 2017-03-14 23:38:01 +0000 |
1478 | @@ -0,0 +1,6 @@ |
1479 | +#!/bin/bash |
1480 | +set -eux |
1481 | + |
1482 | +status-set maintenance "Stopping" || true |
1483 | +service ufw disable || true |
1484 | +status-set maintenance "Stopped" || true |
1485 | |
1486 | === added file 'charms/client-forwardproxy/icon.svg' |
1487 | --- charms/client-forwardproxy/icon.svg 1970-01-01 00:00:00 +0000 |
1488 | +++ charms/client-forwardproxy/icon.svg 2017-03-14 23:38:01 +0000 |
1489 | @@ -0,0 +1,1163 @@ |
1490 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
1491 | +<!-- Created with Inkscape (http://www.inkscape.org/) --> |
1492 | + |
1493 | +<svg |
1494 | + xmlns:dc="http://purl.org/dc/elements/1.1/" |
1495 | + xmlns:cc="http://creativecommons.org/ns#" |
1496 | + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
1497 | + xmlns:svg="http://www.w3.org/2000/svg" |
1498 | + xmlns="http://www.w3.org/2000/svg" |
1499 | + xmlns:xlink="http://www.w3.org/1999/xlink" |
1500 | + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" |
1501 | + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
1502 | + width="96" |
1503 | + height="96" |
1504 | + id="svg6517" |
1505 | + version="1.1" |
1506 | + inkscape:version="0.48+devel r12505" |
1507 | + sodipodi:docname="squid-cache.svg"> |
1508 | + <defs |
1509 | + id="defs6519"> |
1510 | + <filter |
1511 | + style="color-interpolation-filters:sRGB;" |
1512 | + inkscape:label="Inner Shadow" |
1513 | + id="filter1121"> |
1514 | + <feFlood |
1515 | + flood-opacity="0.59999999999999998" |
1516 | + flood-color="rgb(0,0,0)" |
1517 | + result="flood" |
1518 | + id="feFlood1123" /> |
1519 | + <feComposite |
1520 | + in="flood" |
1521 | + in2="SourceGraphic" |
1522 | + operator="out" |
1523 | + result="composite1" |
1524 | + id="feComposite1125" /> |
1525 | + <feGaussianBlur |
1526 | + in="composite1" |
1527 | + stdDeviation="1" |
1528 | + result="blur" |
1529 | + id="feGaussianBlur1127" /> |
1530 | + <feOffset |
1531 | + dx="0" |
1532 | + dy="2" |
1533 | + result="offset" |
1534 | + id="feOffset1129" /> |
1535 | + <feComposite |
1536 | + in="offset" |
1537 | + in2="SourceGraphic" |
1538 | + operator="atop" |
1539 | + result="composite2" |
1540 | + id="feComposite1131" /> |
1541 | + </filter> |
1542 | + <filter |
1543 | + style="color-interpolation-filters:sRGB;" |
1544 | + inkscape:label="Drop Shadow" |
1545 | + id="filter950"> |
1546 | + <feFlood |
1547 | + flood-opacity="0.25" |
1548 | + flood-color="rgb(0,0,0)" |
1549 | + result="flood" |
1550 | + id="feFlood952" /> |
1551 | + <feComposite |
1552 | + in="flood" |
1553 | + in2="SourceGraphic" |
1554 | + operator="in" |
1555 | + result="composite1" |
1556 | + id="feComposite954" /> |
1557 | + <feGaussianBlur |
1558 | + in="composite1" |
1559 | + stdDeviation="1" |
1560 | + result="blur" |
1561 | + id="feGaussianBlur956" /> |
1562 | + <feOffset |
1563 | + dx="0" |
1564 | + dy="1" |
1565 | + result="offset" |
1566 | + id="feOffset958" /> |
1567 | + <feComposite |
1568 | + in="SourceGraphic" |
1569 | + in2="offset" |
1570 | + operator="over" |
1571 | + result="composite2" |
1572 | + id="feComposite960" /> |
1573 | + </filter> |
1574 | + <filter |
1575 | + inkscape:collect="always" |
1576 | + id="filter891" |
1577 | + inkscape:label="Badge Shadow"> |
1578 | + <feGaussianBlur |
1579 | + inkscape:collect="always" |
1580 | + stdDeviation="0.71999962" |
1581 | + id="feGaussianBlur893" /> |
1582 | + </filter> |
1583 | + <filter |
1584 | + height="1.6591635" |
1585 | + y="-0.32958177" |
1586 | + width="1.7932079" |
1587 | + x="-0.39660394" |
1588 | + id="filter4316" |
1589 | + inkscape:collect="always"> |
1590 | + <feGaussianBlur |
1591 | + id="feGaussianBlur4318" |
1592 | + stdDeviation="1.591987" |
1593 | + inkscape:collect="always" /> |
1594 | + </filter> |
1595 | + <filter |
1596 | + height="1.192" |
1597 | + y="-0.096000001" |
1598 | + width="1.192" |
1599 | + x="-0.096000001" |
1600 | + id="filter4355" |
1601 | + inkscape:collect="always"> |
1602 | + <feGaussianBlur |
1603 | + id="feGaussianBlur4357" |
1604 | + stdDeviation="0.58895659" |
1605 | + inkscape:collect="always" /> |
1606 | + </filter> |
1607 | + <filter |
1608 | + height="1.3296711" |
1609 | + y="-0.16483553" |
1610 | + width="1.188679" |
1611 | + x="-0.094339505" |
1612 | + id="filter4423" |
1613 | + inkscape:collect="always"> |
1614 | + <feGaussianBlur |
1615 | + id="feGaussianBlur4425" |
1616 | + stdDeviation="0.6575494" |
1617 | + inkscape:collect="always" /> |
1618 | + </filter> |
1619 | + <filter |
1620 | + height="1.2081455" |
1621 | + y="-0.10407273" |
1622 | + width="1.1100769" |
1623 | + x="-0.055038461" |
1624 | + id="filter4727" |
1625 | + inkscape:collect="always"> |
1626 | + <feGaussianBlur |
1627 | + id="feGaussianBlur4729" |
1628 | + stdDeviation="1.9449577" |
1629 | + inkscape:collect="always" /> |
1630 | + </filter> |
1631 | + <filter |
1632 | + height="1.2229152" |
1633 | + y="-0.1114576" |
1634 | + width="1.1347936" |
1635 | + x="-0.067396788" |
1636 | + id="filter4756" |
1637 | + inkscape:collect="always"> |
1638 | + <feGaussianBlur |
1639 | + id="feGaussianBlur4758" |
1640 | + stdDeviation="2.4366067" |
1641 | + inkscape:collect="always" /> |
1642 | + </filter> |
1643 | + <filter |
1644 | + height="1.2339238" |
1645 | + y="-0.11696188" |
1646 | + width="1.1310639" |
1647 | + x="-0.065531962" |
1648 | + id="filter4762" |
1649 | + inkscape:collect="always"> |
1650 | + <feGaussianBlur |
1651 | + id="feGaussianBlur4764" |
1652 | + stdDeviation="2.204443" |
1653 | + inkscape:collect="always" /> |
1654 | + </filter> |
1655 | + <filter |
1656 | + height="1.2938571" |
1657 | + y="-0.14692857" |
1658 | + width="1.2396505" |
1659 | + x="-0.11982524" |
1660 | + id="filter4842" |
1661 | + inkscape:collect="always"> |
1662 | + <feGaussianBlur |
1663 | + id="feGaussianBlur4844" |
1664 | + stdDeviation="0.67099002" |
1665 | + inkscape:collect="always" /> |
1666 | + </filter> |
1667 | + <filter |
1668 | + height="1.267661" |
1669 | + y="-0.13383051" |
1670 | + width="1.1496872" |
1671 | + x="-0.074843602" |
1672 | + id="filter4878" |
1673 | + inkscape:collect="always"> |
1674 | + <feGaussianBlur |
1675 | + id="feGaussianBlur4880" |
1676 | + stdDeviation="1.3414907" |
1677 | + inkscape:collect="always" /> |
1678 | + </filter> |
1679 | + <filter |
1680 | + height="1.1367442" |
1681 | + y="-0.068372093" |
1682 | + width="1.0739623" |
1683 | + x="-0.036981132" |
1684 | + id="filter4884" |
1685 | + inkscape:collect="always"> |
1686 | + <feGaussianBlur |
1687 | + id="feGaussianBlur4886" |
1688 | + stdDeviation="0.99898246" |
1689 | + inkscape:collect="always" /> |
1690 | + </filter> |
1691 | + <filter |
1692 | + height="1.2074345" |
1693 | + y="-0.10371727" |
1694 | + width="1.1102768" |
1695 | + x="-0.055138398" |
1696 | + id="filter4928" |
1697 | + inkscape:collect="always"> |
1698 | + <feGaussianBlur |
1699 | + id="feGaussianBlur4930" |
1700 | + stdDeviation="1.8313925" |
1701 | + inkscape:collect="always" /> |
1702 | + </filter> |
1703 | + <filter |
1704 | + height="1.1822857" |
1705 | + y="-0.091142852" |
1706 | + width="1.0894393" |
1707 | + x="-0.044719627" |
1708 | + id="filter4962" |
1709 | + inkscape:collect="always"> |
1710 | + <feGaussianBlur |
1711 | + id="feGaussianBlur4964" |
1712 | + stdDeviation="0.81294741" |
1713 | + inkscape:collect="always" /> |
1714 | + </filter> |
1715 | + <filter |
1716 | + height="1.0684771" |
1717 | + y="-0.034238532" |
1718 | + width="1.0369505" |
1719 | + x="-0.018475248" |
1720 | + id="filter4980" |
1721 | + inkscape:collect="always"> |
1722 | + <feGaussianBlur |
1723 | + id="feGaussianBlur4982" |
1724 | + stdDeviation="0.63404806" |
1725 | + inkscape:collect="always" /> |
1726 | + </filter> |
1727 | + <filter |
1728 | + height="1.1421972" |
1729 | + y="-0.071098591" |
1730 | + width="1.0724593" |
1731 | + x="-0.036229665" |
1732 | + id="filter5014" |
1733 | + inkscape:collect="always"> |
1734 | + <feGaussianBlur |
1735 | + id="feGaussianBlur5016" |
1736 | + stdDeviation="1.2864448" |
1737 | + inkscape:collect="always" /> |
1738 | + </filter> |
1739 | + <filter |
1740 | + height="1.2166729" |
1741 | + y="-0.10833645" |
1742 | + width="1.1078326" |
1743 | + x="-0.053916279" |
1744 | + id="filter5052" |
1745 | + inkscape:collect="always"> |
1746 | + <feGaussianBlur |
1747 | + id="feGaussianBlur5054" |
1748 | + stdDeviation="0.98471128" |
1749 | + inkscape:collect="always" /> |
1750 | + </filter> |
1751 | + <filter |
1752 | + height="1.1101202" |
1753 | + y="-0.055060109" |
1754 | + width="1.0534851" |
1755 | + x="-0.026742554" |
1756 | + id="filter5066" |
1757 | + inkscape:collect="always"> |
1758 | + <feGaussianBlur |
1759 | + id="feGaussianBlur5068" |
1760 | + stdDeviation="0.61627025" |
1761 | + inkscape:collect="always" /> |
1762 | + </filter> |
1763 | + <filter |
1764 | + height="1.3084375" |
1765 | + y="-0.15421875" |
1766 | + width="1.1154386" |
1767 | + x="-0.057719299" |
1768 | + id="filter5128" |
1769 | + inkscape:collect="always"> |
1770 | + <feGaussianBlur |
1771 | + id="feGaussianBlur5130" |
1772 | + stdDeviation="0.34342163" |
1773 | + inkscape:collect="always" /> |
1774 | + </filter> |
1775 | + <filter |
1776 | + height="1.271688" |
1777 | + y="-0.135844" |
1778 | + width="1.1215943" |
1779 | + x="-0.060797153" |
1780 | + id="filter5254" |
1781 | + inkscape:collect="always"> |
1782 | + <feGaussianBlur |
1783 | + id="feGaussianBlur5256" |
1784 | + stdDeviation="0.89657" |
1785 | + inkscape:collect="always" /> |
1786 | + </filter> |
1787 | + <filter |
1788 | + height="1.2861023" |
1789 | + y="-0.14305117" |
1790 | + width="1.2066935" |
1791 | + x="-0.10334677" |
1792 | + id="filter5260" |
1793 | + inkscape:collect="always"> |
1794 | + <feGaussianBlur |
1795 | + id="feGaussianBlur5262" |
1796 | + stdDeviation="1.1813088" |
1797 | + inkscape:collect="always" /> |
1798 | + </filter> |
1799 | + <filter |
1800 | + height="1.1678395" |
1801 | + y="-0.083919731" |
1802 | + width="1.1260905" |
1803 | + x="-0.063045227" |
1804 | + id="filter5314" |
1805 | + inkscape:collect="always"> |
1806 | + <feGaussianBlur |
1807 | + id="feGaussianBlur5316" |
1808 | + stdDeviation="1.0913292" |
1809 | + inkscape:collect="always" /> |
1810 | + </filter> |
1811 | + <filter |
1812 | + height="1.1512575" |
1813 | + y="-0.075628747" |
1814 | + width="1.0994488" |
1815 | + x="-0.049724408" |
1816 | + id="filter5361" |
1817 | + inkscape:collect="always"> |
1818 | + <feGaussianBlur |
1819 | + id="feGaussianBlur5363" |
1820 | + stdDeviation="0.85830939" |
1821 | + inkscape:collect="always" /> |
1822 | + </filter> |
1823 | + <filter |
1824 | + height="1.2177609" |
1825 | + y="-0.10888045" |
1826 | + width="1.4251246" |
1827 | + x="-0.21256228" |
1828 | + id="filter5418" |
1829 | + inkscape:collect="always"> |
1830 | + <feGaussianBlur |
1831 | + id="feGaussianBlur5420" |
1832 | + stdDeviation="1.0803968" |
1833 | + inkscape:collect="always" /> |
1834 | + </filter> |
1835 | + <linearGradient |
1836 | + inkscape:collect="always" |
1837 | + id="linearGradient902"> |
1838 | + <stop |
1839 | + style="stop-color:#ff9200;stop-opacity:1" |
1840 | + offset="0" |
1841 | + id="stop904" /> |
1842 | + <stop |
1843 | + style="stop-color:#ffcc00;stop-opacity:1" |
1844 | + offset="1" |
1845 | + id="stop906" /> |
1846 | + </linearGradient> |
1847 | + <linearGradient |
1848 | + id="Background"> |
1849 | + <stop |
1850 | + id="stop4178" |
1851 | + offset="0" |
1852 | + style="stop-color:#22779e;stop-opacity:1" /> |
1853 | + <stop |
1854 | + id="stop4180" |
1855 | + offset="1" |
1856 | + style="stop-color:#2991c0;stop-opacity:1" /> |
1857 | + </linearGradient> |
1858 | + <clipPath |
1859 | + clipPathUnits="userSpaceOnUse" |
1860 | + id="clipPath873"> |
1861 | + <g |
1862 | + transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)" |
1863 | + id="g875" |
1864 | + inkscape:label="Layer 1" |
1865 | + style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"> |
1866 | + <path |
1867 | + style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline" |
1868 | + d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z" |
1869 | + id="path877" |
1870 | + inkscape:connector-curvature="0" |
1871 | + sodipodi:nodetypes="sssssssss" /> |
1872 | + </g> |
1873 | + </clipPath> |
1874 | + <style |
1875 | + id="style867" |
1876 | + type="text/css"><![CDATA[ |
1877 | + .fil0 {fill:#1F1A17} |
1878 | + ]]></style> |
1879 | + <linearGradient |
1880 | + inkscape:collect="always" |
1881 | + xlink:href="#linearGradient902" |
1882 | + id="linearGradient908" |
1883 | + x1="-220" |
1884 | + y1="731.29077" |
1885 | + x2="-220" |
1886 | + y2="635.29077" |
1887 | + gradientUnits="userSpaceOnUse" /> |
1888 | + <clipPath |
1889 | + id="clipPath16"> |
1890 | + <path |
1891 | + id="path18" |
1892 | + d="m -9,-9 614,0 0,231 -614,0 0,-231 z" /> |
1893 | + </clipPath> |
1894 | + <clipPath |
1895 | + id="clipPath116"> |
1896 | + <path |
1897 | + id="path118" |
1898 | + d="m 91.7368,146.3253 -9.7039,-1.577 -8.8548,-3.8814 -7.5206,-4.7308 -7.1566,-8.7335 -4.0431,-4.282 -3.9093,-1.4409 -1.034,2.5271 1.8079,2.6096 0.4062,3.6802 1.211,-0.0488 1.3232,-1.2069 -0.3569,3.7488 -1.4667,0.9839 0.0445,1.4286 -3.4744,-1.9655 -3.1462,-3.712 -0.6559,-3.3176 1.3453,-2.6567 1.2549,-4.5133 2.5521,-1.2084 2.6847,0.1318 2.5455,1.4791 -1.698,-8.6122 1.698,-9.5825 -1.8692,-4.4246 -6.1223,-6.5965 1.0885,-3.941 2.9002,-4.5669 5.4688,-3.8486 2.9007,-0.3969 3.225,-0.1094 -2.012,-8.2601 7.3993,-3.0326 9.2188,-1.2129 3.1535,2.0619 0.2427,5.5797 3.5178,5.8224 0.2426,4.6094 8.4909,-0.6066 7.8843,0.7279 -7.8843,-4.7307 1.3343,-5.701 4.9731,-7.763 4.8521,-2.0622 3.8814,1.5769 1.577,3.1538 8.1269,6.1861 1.5769,-1.3343 12.7363,-0.485 2.5473,2.0619 0.2426,3.6391 -0.849,1.5767 -0.6066,9.8251 -4.2454,8.4909 0.7276,3.7605 2.5475,-1.3343 7.1566,-6.6716 3.5175,-0.2424 3.8815,1.5769 3.8818,2.9109 1.9406,6.3077 11.4021,-0.7277 6.914,2.6686 5.5797,5.2157 4.0028,7.5206 0.9706,8.8546 -0.8493,10.3105 -2.1832,9.2185 -2.1836,2.9112 -3.0322,0.9706 -5.3373,-5.8224 -4.8518,-1.6982 -4.2455,7.0353 -4.2454,3.8815 -2.3049,1.4556 -9.2185,7.6419 -7.3993,4.0028 -7.3993,0.6066 -8.6119,-1.4556 -7.5206,-2.7899 -5.2158,-4.2454 -4.1241,-4.9734 -4.2454,-1.2129" /> |
1899 | + </clipPath> |
1900 | + <clipPath |
1901 | + id="clipPath128"> |
1902 | + <path |
1903 | + id="path130" |
1904 | + d="m 91.7368,146.3253 -9.7039,-1.577 -8.8548,-3.8814 -7.5206,-4.7308 -7.1566,-8.7335 -4.0431,-4.282 -3.9093,-1.4409 -1.034,2.5271 1.8079,2.6096 0.4062,3.6802 1.211,-0.0488 1.3232,-1.2069 -0.3569,3.7488 -1.4667,0.9839 0.0445,1.4286 -3.4744,-1.9655 -3.1462,-3.712 -0.6559,-3.3176 1.3453,-2.6567 1.2549,-4.5133 2.5521,-1.2084 2.6847,0.1318 2.5455,1.4791 -1.698,-8.6122 1.698,-9.5825 -1.8692,-4.4246 -6.1223,-6.5965 1.0885,-3.941 2.9002,-4.5669 5.4688,-3.8486 2.9007,-0.3969 3.225,-0.1094 -2.012,-8.2601 7.3993,-3.0326 9.2188,-1.2129 3.1535,2.0619 0.2427,5.5797 3.5178,5.8224 0.2426,4.6094 8.4909,-0.6066 7.8843,0.7279 -7.8843,-4.7307 1.3343,-5.701 4.9731,-7.763 4.8521,-2.0622 3.8814,1.5769 1.577,3.1538 8.1269,6.1861 1.5769,-1.3343 12.7363,-0.485 2.5473,2.0619 0.2426,3.6391 -0.849,1.5767 -0.6066,9.8251 -4.2454,8.4909 0.7276,3.7605 2.5475,-1.3343 7.1566,-6.6716 3.5175,-0.2424 3.8815,1.5769 3.8818,2.9109 1.9406,6.3077 11.4021,-0.7277 6.914,2.6686 5.5797,5.2157 4.0028,7.5206 0.9706,8.8546 -0.8493,10.3105 -2.1832,9.2185 -2.1836,2.9112 -3.0322,0.9706 -5.3373,-5.8224 -4.8518,-1.6982 -4.2455,7.0353 -4.2454,3.8815 -2.3049,1.4556 -9.2185,7.6419 -7.3993,4.0028 -7.3993,0.6066 -8.6119,-1.4556 -7.5206,-2.7899 -5.2158,-4.2454 -4.1241,-4.9734 -4.2454,-1.2129" /> |
1905 | + </clipPath> |
1906 | + <filter |
1907 | + height="1.1953982" |
1908 | + y="-0.097699106" |
1909 | + width="1.310986" |
1910 | + x="-0.15549298" |
1911 | + id="filter5476" |
1912 | + inkscape:collect="always"> |
1913 | + <feGaussianBlur |
1914 | + id="feGaussianBlur5478" |
1915 | + stdDeviation="0.48016408" |
1916 | + inkscape:collect="always" /> |
1917 | + </filter> |
1918 | + <linearGradient |
1919 | + id="linearGradient5318" |
1920 | + inkscape:collect="always"> |
1921 | + <stop |
1922 | + id="stop5320" |
1923 | + offset="0" |
1924 | + style="stop-color:#ffffff;stop-opacity:1;" /> |
1925 | + <stop |
1926 | + id="stop5322" |
1927 | + offset="1" |
1928 | + style="stop-color:#ffffff;stop-opacity:0;" /> |
1929 | + </linearGradient> |
1930 | + <linearGradient |
1931 | + id="linearGradient4888" |
1932 | + inkscape:collect="always"> |
1933 | + <stop |
1934 | + id="stop4890" |
1935 | + offset="0" |
1936 | + style="stop-color:#e4ffff;stop-opacity:1;" /> |
1937 | + <stop |
1938 | + style="stop-color:#ffffff;stop-opacity:1" |
1939 | + offset="0.27682471" |
1940 | + id="stop4896" /> |
1941 | + <stop |
1942 | + id="stop4892" |
1943 | + offset="1" |
1944 | + style="stop-color:#3ad3ff;stop-opacity:0.66975307" /> |
1945 | + </linearGradient> |
1946 | + <linearGradient |
1947 | + id="linearGradient4605" |
1948 | + inkscape:collect="always"> |
1949 | + <stop |
1950 | + id="stop4607" |
1951 | + offset="0" |
1952 | + style="stop-color:#00a6ae;stop-opacity:1;" /> |
1953 | + <stop |
1954 | + id="stop4609" |
1955 | + offset="1" |
1956 | + style="stop-color:#30bed6;stop-opacity:1" /> |
1957 | + </linearGradient> |
1958 | + <linearGradient |
1959 | + id="linearGradient4595" |
1960 | + inkscape:collect="always"> |
1961 | + <stop |
1962 | + id="stop4597" |
1963 | + offset="0" |
1964 | + style="stop-color:#fde20a;stop-opacity:1" /> |
1965 | + <stop |
1966 | + style="stop-color:#faac16;stop-opacity:1" |
1967 | + offset="0.478598" |
1968 | + id="stop4603" /> |
1969 | + <stop |
1970 | + id="stop4599" |
1971 | + offset="1" |
1972 | + style="stop-color:#f8921a;stop-opacity:1" /> |
1973 | + </linearGradient> |
1974 | + <clipPath |
1975 | + id="clipPath4296" |
1976 | + clipPathUnits="userSpaceOnUse"> |
1977 | + <path |
1978 | + transform="matrix(1.6953846,0,0,1.6953846,-95.06997,-43.304227)" |
1979 | + d="m 54.179198,62.984692 a 4.3423524,4.3423524 0 1 1 -8.684705,0 4.3423524,4.3423524 0 1 1 8.684705,0 z" |
1980 | + sodipodi:ry="4.3423524" |
1981 | + sodipodi:rx="4.3423524" |
1982 | + sodipodi:cy="62.984692" |
1983 | + sodipodi:cx="49.836845" |
1984 | + id="path4298" |
1985 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
1986 | + sodipodi:type="arc" /> |
1987 | + </clipPath> |
1988 | + <clipPath |
1989 | + id="clipPath4327" |
1990 | + clipPathUnits="userSpaceOnUse"> |
1991 | + <path |
1992 | + transform="matrix(1.6953846,0,0,1.6953846,-95.06997,-43.304227)" |
1993 | + d="m 54.179198,62.984692 a 4.3423524,4.3423524 0 1 1 -8.684705,0 4.3423524,4.3423524 0 1 1 8.684705,0 z" |
1994 | + sodipodi:ry="4.3423524" |
1995 | + sodipodi:rx="4.3423524" |
1996 | + sodipodi:cy="62.984692" |
1997 | + sodipodi:cx="49.836845" |
1998 | + id="path4329" |
1999 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2000 | + sodipodi:type="arc" /> |
2001 | + </clipPath> |
2002 | + <clipPath |
2003 | + id="clipPath4375" |
2004 | + clipPathUnits="userSpaceOnUse"> |
2005 | + <path |
2006 | + sodipodi:type="arc" |
2007 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;stroke:none;stroke-width:1.84735239;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2008 | + id="path4377" |
2009 | + sodipodi:cx="46.179249" |
2010 | + sodipodi:cy="63.803059" |
2011 | + sodipodi:rx="11.440429" |
2012 | + sodipodi:ry="11.440429" |
2013 | + d="m 57.619678,63.803059 a 11.440429,11.440429 0 1 1 -22.880858,0 11.440429,11.440429 0 1 1 22.880858,0 z" |
2014 | + transform="matrix(1.0826305,0,0,1.0826305,-71.853406,-3.5601908)" /> |
2015 | + </clipPath> |
2016 | + <clipPath |
2017 | + id="clipPath4296-4" |
2018 | + clipPathUnits="userSpaceOnUse"> |
2019 | + <path |
2020 | + transform="matrix(1.6953846,0,0,1.6953846,-95.06997,-43.304227)" |
2021 | + d="m 54.179198,62.984692 a 4.3423524,4.3423524 0 1 1 -8.684705,0 4.3423524,4.3423524 0 1 1 8.684705,0 z" |
2022 | + sodipodi:ry="4.3423524" |
2023 | + sodipodi:rx="4.3423524" |
2024 | + sodipodi:cy="62.984692" |
2025 | + sodipodi:cx="49.836845" |
2026 | + id="path4298-0" |
2027 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2028 | + sodipodi:type="arc" /> |
2029 | + </clipPath> |
2030 | + <clipPath |
2031 | + id="clipPath4327-6" |
2032 | + clipPathUnits="userSpaceOnUse"> |
2033 | + <path |
2034 | + transform="matrix(1.6953846,0,0,1.6953846,-95.06997,-43.304227)" |
2035 | + d="m 54.179198,62.984692 a 4.3423524,4.3423524 0 1 1 -8.684705,0 4.3423524,4.3423524 0 1 1 8.684705,0 z" |
2036 | + sodipodi:ry="4.3423524" |
2037 | + sodipodi:rx="4.3423524" |
2038 | + sodipodi:cy="62.984692" |
2039 | + sodipodi:cx="49.836845" |
2040 | + id="path4329-2" |
2041 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2042 | + sodipodi:type="arc" /> |
2043 | + </clipPath> |
2044 | + <clipPath |
2045 | + id="clipPath4375-1" |
2046 | + clipPathUnits="userSpaceOnUse"> |
2047 | + <path |
2048 | + sodipodi:type="arc" |
2049 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;stroke:none;stroke-width:1.84735239;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2050 | + id="path4377-3" |
2051 | + sodipodi:cx="46.179249" |
2052 | + sodipodi:cy="63.803059" |
2053 | + sodipodi:rx="11.440429" |
2054 | + sodipodi:ry="11.440429" |
2055 | + d="m 57.619678,63.803059 a 11.440429,11.440429 0 1 1 -22.880858,0 11.440429,11.440429 0 1 1 22.880858,0 z" |
2056 | + transform="matrix(1.0826305,0,0,1.0826305,-71.853406,-3.5601908)" /> |
2057 | + </clipPath> |
2058 | + <linearGradient |
2059 | + gradientTransform="translate(10,0)" |
2060 | + gradientUnits="userSpaceOnUse" |
2061 | + y2="9.8841219" |
2062 | + x2="142.27451" |
2063 | + y1="61.489723" |
2064 | + x1="66.734573" |
2065 | + id="linearGradient4611" |
2066 | + xlink:href="#linearGradient4605" |
2067 | + inkscape:collect="always" /> |
2068 | + <linearGradient |
2069 | + gradientTransform="translate(-100,50)" |
2070 | + gradientUnits="userSpaceOnUse" |
2071 | + y2="104.79355" |
2072 | + x2="89.565689" |
2073 | + y1="90.777214" |
2074 | + x1="56.214554" |
2075 | + id="linearGradient4619" |
2076 | + xlink:href="#linearGradient4605" |
2077 | + inkscape:collect="always" /> |
2078 | + <linearGradient |
2079 | + gradientTransform="translate(10,0)" |
2080 | + gradientUnits="userSpaceOnUse" |
2081 | + y2="105.84206" |
2082 | + x2="66.504166" |
2083 | + y1="92.78138" |
2084 | + x1="42.143345" |
2085 | + id="linearGradient4627" |
2086 | + xlink:href="#linearGradient4605" |
2087 | + inkscape:collect="always" /> |
2088 | + <clipPath |
2089 | + id="clipPath4744" |
2090 | + clipPathUnits="userSpaceOnUse"> |
2091 | + <path |
2092 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2093 | + d="m -61.36328,5.5722656 c -1.39719,0 -2.5293,1.1321042 -2.5293,2.5292969 0,1.3971927 1.13211,2.5312495 2.5293,2.5312495 1.39719,0 2.5293,-1.1340568 2.5293,-2.5312495 0,-1.3971927 -1.13211,-2.5292969 -2.5293,-2.5292969 z M -70.8125,7.625 c -1.65694,0 -3,1.3430621 -3,3 0,1.656938 1.34306,3 3,3 1.65694,0 3,-1.343062 3,-3 0,-1.6569379 -1.34306,-3 -3,-3 z m -10.304688,2.3085938 c -1.916683,0 -3.470703,1.5540202 -3.470703,3.4707032 0,1.916683 1.55402,3.470703 3.470703,3.470703 1.916688,0 3.470708,-1.55402 3.470708,-3.470703 0,-1.916683 -1.55402,-3.4707032 -3.470708,-3.4707032 z m -11.902343,4.8261722 c -2.325487,0 -4.208985,1.885451 -4.208985,4.210937 0,2.325487 1.883498,4.210938 4.208985,4.210938 2.325486,0 4.210937,-1.885451 4.210937,-4.210938 0,-2.325486 -1.885451,-4.210937 -4.210937,-4.210937 z m 42.087891,0.77539 c -1.09022,0 -1.97266,0.882435 -1.97266,1.972656 0,1.090222 0.88244,1.97461 1.97266,1.97461 1.09022,0 1.97461,-0.884388 1.97461,-1.97461 0,-1.090221 -0.88439,-1.972656 -1.97461,-1.972656 z m -7.35352,3.078125 c -1.65693,0 -3,1.343062 -3,3 0,1.656938 1.34307,3 3,3 1.65694,0 3,-1.343062 3,-3 0,-1.656938 -1.34306,-3 -3,-3 z m -45.5,2.435547 c -2.30464,0 -4.17187,1.867227 -4.17187,4.171875 0,2.304648 1.86723,4.173828 4.17187,4.173828 2.30465,0 4.173832,-1.86918 4.173832,-4.173828 0,-2.304648 -1.869182,-4.171875 -4.173832,-4.171875 z m 35.02539,2.181641 c -2.24726,0 -4.07031,1.821091 -4.07031,4.068359 0,2.247268 1.82305,4.070313 4.07031,4.070313 2.24727,0 4.06836,-1.823045 4.06836,-4.070313 0,-2.247268 -1.82109,-4.068359 -4.06836,-4.068359 z m 14.72852,5.503906 c -0.97216,0 -1.75977,0.789563 -1.75977,1.761719 0,0.972155 0.78761,1.759765 1.75977,1.759765 0.97216,0 1.75977,-0.78761 1.75977,-1.759765 0,-0.972156 -0.78761,-1.761719 -1.75977,-1.761719 z m -27.681641,0.07227 c -2.758021,0 -4.99414,2.236119 -4.99414,4.99414 0,2.758021 2.236119,4.994141 4.99414,4.994141 2.758021,0 4.994141,-2.23612 4.994141,-4.994141 0,-2.758021 -2.23612,-4.99414 -4.994141,-4.99414 z m -32.175779,0.01367 c -1.90795,0 -3.45508,1.545179 -3.45508,3.453126 0,1.907946 1.54713,3.455078 3.45508,3.455078 1.90794,0 3.45312,-1.547132 3.45312,-3.455078 0,-1.907947 -1.54518,-3.453126 -3.45312,-3.453126 z m 53.62695,5.238282 c -1.92259,0 -3.48242,1.557882 -3.48242,3.480468 0,1.922587 1.55983,3.482422 3.48242,3.482422 1.92259,0 3.48047,-1.559835 3.48047,-3.482422 0,-1.922586 -1.55788,-3.480468 -3.48047,-3.480468 z m -61.21484,2.214844 c -1.30345,0 -2.35938,1.055926 -2.35938,2.359374 0,1.303449 1.05593,2.359376 2.35938,2.359376 1.30345,0 2.36133,-1.055927 2.36133,-2.359376 0,-1.303448 -1.05788,-2.359374 -2.36133,-2.359374 z m 26.376951,0.652343 c -2.436882,0 -4.41211,1.975228 -4.41211,4.41211 0,2.436881 1.975228,4.412109 4.41211,4.412109 2.436881,0 4.412109,-1.975228 4.412109,-4.412109 0,-2.436882 -1.975228,-4.41211 -4.412109,-4.41211 z m 27.195309,4.347657 c -2.3063,0 -4.17773,1.86948 -4.17773,4.175781 0,2.3063 1.87143,4.175781 4.17773,4.175781 2.3063,0 4.17578,-1.869481 4.17578,-4.175781 0,-2.306301 -1.86948,-4.175781 -4.17578,-4.175781 z m -38.55273,3.158203 c -1.77193,0 -3.20899,1.435097 -3.20899,3.207031 0,1.771934 1.43706,3.208984 3.20899,3.208984 1.77193,0 3.20898,-1.43705 3.20898,-3.208984 0,-1.771934 -1.43705,-3.207031 -3.20898,-3.207031 z m 27.91797,4.167968 c -2.342431,0 -4.24219,1.897806 -4.24219,4.240235 0,2.342429 1.899759,4.242187 4.24219,4.242187 2.34243,0 4.24023,-1.899758 4.24023,-4.242187 0,-2.342429 -1.8978,-4.240235 -4.24023,-4.240235 z m -36.4043,2.140625 c -1.07676,0 -1.94922,0.874411 -1.94922,1.951172 0,1.076762 0.87246,1.949219 1.94922,1.949219 1.07676,0 1.94922,-0.872457 1.94922,-1.949219 0,-1.076761 -0.87246,-1.951172 -1.94922,-1.951172 z m 25.388672,3.638672 c -2.040179,0 -3.693359,1.655133 -3.693359,3.695313 0,2.04018 1.65318,3.693359 3.693359,3.693359 2.04018,0 3.695313,-1.653179 3.695313,-3.693359 0,-2.04018 -1.655133,-3.695313 -3.695313,-3.695313 z M -100.54297,58.5293 c -1.62081,0 -2.93359,1.314737 -2.93359,2.935547 0,1.620809 1.31278,2.935547 2.93359,2.935547 1.620811,0 2.935548,-1.314738 2.935548,-2.935547 0,-1.62081 -1.314737,-2.935547 -2.935548,-2.935547 z m -8.55078,1.617187 c -1.03898,0 -1.88086,0.843832 -1.88086,1.882813 0,1.03898 0.84188,1.880859 1.88086,1.880859 1.03898,0 1.88086,-0.841879 1.88086,-1.880859 0,-1.038981 -0.84188,-1.882813 -1.88086,-1.882813 z" |
2094 | + id="path4746" |
2095 | + inkscape:connector-curvature="0" /> |
2096 | + </clipPath> |
2097 | + <linearGradient |
2098 | + gradientUnits="userSpaceOnUse" |
2099 | + y2="39.94598" |
2100 | + x2="1.4735259" |
2101 | + y1="30.160028" |
2102 | + x1="-4.2457867" |
2103 | + id="linearGradient4894" |
2104 | + xlink:href="#linearGradient4888" |
2105 | + inkscape:collect="always" /> |
2106 | + <linearGradient |
2107 | + gradientTransform="translate(-1.0193699,-0.40774795)" |
2108 | + gradientUnits="userSpaceOnUse" |
2109 | + y2="13.163922" |
2110 | + x2="-14.111487" |
2111 | + y1="23.304689" |
2112 | + x1="-8.2567129" |
2113 | + id="linearGradient4906" |
2114 | + xlink:href="#linearGradient4888" |
2115 | + inkscape:collect="always" /> |
2116 | + <clipPath |
2117 | + id="clipPath5210" |
2118 | + clipPathUnits="userSpaceOnUse"> |
2119 | + <path |
2120 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2121 | + d="m -10.183594,74.130859 c -1.322339,0 -2.394531,1.072193 -2.394531,2.394532 0,1.322339 1.072192,2.394531 2.394531,2.394531 1.322339,0 2.394532,-1.072192 2.394532,-2.394531 0,-1.322339 -1.072193,-2.394532 -2.394532,-2.394532 z m 30.886719,6.5 c -0.604498,0 -1.095703,0.489253 -1.095703,1.09375 0,0.604498 0.491205,1.09375 1.095703,1.09375 0.604498,0 1.09375,-0.489252 1.09375,-1.09375 0,-0.604497 -0.489252,-1.09375 -1.09375,-1.09375 z m -26.474609,0.478516 c -1.246777,0 -2.257813,1.011036 -2.257813,2.257813 0,1.246776 1.011036,2.255859 2.257813,2.255859 1.246776,0 2.257812,-1.009083 2.257812,-2.255859 0,-1.246777 -1.011036,-2.257813 -2.257812,-2.257813 z m 22.916015,0.238281 c -0.736731,0 -1.333984,0.597253 -1.333984,1.333985 0,0.736731 0.597253,1.333984 1.333984,1.333984 0.736732,0 1.333985,-0.597253 1.333985,-1.333984 0,-0.736732 -0.597253,-1.333985 -1.333985,-1.333985 z m -4.34375,1.984375 c -0.736731,0 -1.333984,0.597253 -1.333984,1.333985 0,0.736731 0.597253,1.333984 1.333984,1.333984 0.736732,0 1.333985,-0.597253 1.333985,-1.333984 0,-0.736732 -0.597253,-1.333985 -1.333985,-1.333985 z m -6.052734,2.121094 c -0.963419,0 -1.746094,0.780722 -1.746094,1.744141 0,0.963418 0.782675,1.74414 1.746094,1.74414 0.963418,0 1.744141,-0.780722 1.744141,-1.74414 0,-0.963419 -0.780723,-1.744141 -1.744141,-1.744141 z m -6.5,0.410156 c -1.246777,0 -2.257813,1.011036 -2.257813,2.257813 0,1.246776 1.011036,2.257812 2.257813,2.257812 1.246777,0 2.257812,-1.011036 2.257812,-2.257812 0,-1.246777 -1.011035,-2.257813 -2.257812,-2.257813 z" |
2122 | + id="path5212" |
2123 | + inkscape:connector-curvature="0" /> |
2124 | + </clipPath> |
2125 | + <linearGradient |
2126 | + gradientTransform="translate(0,50)" |
2127 | + gradientUnits="userSpaceOnUse" |
2128 | + y2="70.557083" |
2129 | + x2="-49.200706" |
2130 | + y1="97.305344" |
2131 | + x1="-26.779074" |
2132 | + id="linearGradient5324" |
2133 | + xlink:href="#linearGradient5318" |
2134 | + inkscape:collect="always" /> |
2135 | + <clipPath |
2136 | + id="clipPath5333" |
2137 | + clipPathUnits="userSpaceOnUse"> |
2138 | + <path |
2139 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2140 | + d="m -50.017578,118.13867 c -1.322339,0 -2.394531,1.07219 -2.394531,2.39453 0,1.32234 1.072192,2.39453 2.394531,2.39453 1.322339,0 2.394531,-1.07219 2.394531,-2.39453 0,-1.32234 -1.072192,-2.39453 -2.394531,-2.39453 z m 4.542969,8.125 c -1.440405,0 -2.609375,1.16702 -2.609375,2.60742 0,1.44041 1.16897,2.60743 2.609375,2.60743 1.440404,0 2.607421,-1.16702 2.607421,-2.60743 0,-1.4404 -1.167017,-2.60742 -2.607421,-2.60742 z m 7.214843,4.8086 c -1.263306,0 -2.287109,1.0238 -2.287109,2.28711 0,1.2633 1.023803,2.28906 2.287109,2.28906 1.263306,0 2.28711,-1.02576 2.28711,-2.28906 0,-1.26331 -1.023804,-2.28711 -2.28711,-2.28711 z m 6.894532,3.04687 c -1.115724,0 -2.021485,0.90381 -2.021485,2.01953 0,1.11573 0.905761,2.02149 2.021485,2.02149 1.115723,0 2.019531,-0.90576 2.019531,-2.02149 0,-1.11572 -0.903808,-2.01953 -2.019531,-2.01953 z m 6.925781,0.68359 c -1.115724,0 -2.019531,0.90577 -2.019531,2.02149 0,1.11572 0.903807,2.01953 2.019531,2.01953 1.115723,0 2.019531,-0.90381 2.019531,-2.01953 0,-1.11572 -0.903808,-2.02149 -2.019531,-2.02149 z m 6.242187,2.00977 c -0.974044,0 -1.763672,0.78963 -1.763672,1.76367 0,0.97405 0.789628,1.76367 1.763672,1.76367 0.974045,0 1.763672,-0.78962 1.763672,-1.76367 0,-0.97404 -0.789627,-1.76367 -1.763672,-1.76367 z m 4.533204,3.03516 c -0.903205,0 -1.636719,0.73351 -1.636719,1.63672 0,0.9032 0.733514,1.63476 1.636719,1.63476 0.903204,0 1.634765,-0.73156 1.634765,-1.63476 0,-0.90321 -0.731561,-1.63672 -1.634765,-1.63672 z" |
2141 | + id="path5335" |
2142 | + inkscape:connector-curvature="0" /> |
2143 | + </clipPath> |
2144 | + <clipPath |
2145 | + id="clipPath5487" |
2146 | + clipPathUnits="userSpaceOnUse"> |
2147 | + <path |
2148 | + style="color:#000000;fill:#ff00ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2149 | + d="m -90.226562,77.787109 c -1.322339,0 -2.392579,1.072193 -2.392579,2.394532 0,1.322339 1.07024,2.394531 2.392579,2.394531 1.322338,0 2.394531,-1.072192 2.394531,-2.394531 0,-1.322339 -1.072193,-2.394532 -2.394531,-2.394532 z m -0.08008,7.75 c -1.248547,0 -2.259765,1.011218 -2.259765,2.259766 0,1.248548 1.011218,2.261719 2.259765,2.261719 1.248548,0 2.261719,-1.013171 2.261719,-2.261719 0,-1.248548 -1.013171,-2.259766 -2.261719,-2.259766 z m 3.955079,7.427735 c -1.041933,0 -1.886719,0.844786 -1.886719,1.886718 0,1.041933 0.844786,1.886719 1.886719,1.886719 1.041932,0 1.886718,-0.844786 1.886718,-1.886719 0,-1.041932 -0.844786,-1.886718 -1.886718,-1.886718 z m 6.363281,4.001953 c -0.909699,0 -1.648438,0.736786 -1.648438,1.646484 0,0.909699 0.738739,1.648439 1.648438,1.648439 0.909698,0 1.646484,-0.73874 1.646484,-1.648439 0,-0.909698 -0.736786,-1.646484 -1.646484,-1.646484 z m 6.429687,1.710937 c -0.739683,0 -1.339844,0.600161 -1.339844,1.339846 0,0.73968 0.600161,1.33789 1.339844,1.33789 0.739684,0 1.339844,-0.59821 1.339844,-1.33789 0,-0.739685 -0.60016,-1.339846 -1.339844,-1.339846 z m 5.986328,2.179686 c -0.692457,0 -1.253906,0.56145 -1.253906,1.25391 0,0.69246 0.561449,1.2539 1.253906,1.2539 0.692457,0 1.253907,-0.56144 1.253907,-1.2539 0,-0.69246 -0.56145,-1.25391 -1.253907,-1.25391 z m 4.488282,5.08789 c -0.574391,0 -1.039063,0.46663 -1.039063,1.04102 0,0.57439 0.464672,1.03906 1.039063,1.03906 0.574391,0 1.041015,-0.46467 1.041015,-1.03906 0,-0.57439 -0.466624,-1.04102 -1.041015,-1.04102 z" |
2150 | + id="path5489" |
2151 | + inkscape:connector-curvature="0" /> |
2152 | + </clipPath> |
2153 | + <filter |
2154 | + height="1.1303784" |
2155 | + y="-0.065189186" |
2156 | + width="1.1608" |
2157 | + x="-0.080400006" |
2158 | + id="filter5535" |
2159 | + inkscape:collect="always"> |
2160 | + <feGaussianBlur |
2161 | + id="feGaussianBlur5537" |
2162 | + stdDeviation="0.91792224" |
2163 | + inkscape:collect="always" /> |
2164 | + </filter> |
2165 | + <linearGradient |
2166 | + inkscape:collect="always" |
2167 | + xlink:href="#linearGradient4595" |
2168 | + id="linearGradient4403" |
2169 | + gradientUnits="userSpaceOnUse" |
2170 | + gradientTransform="translate(-80,0)" |
2171 | + x1="177.78296" |
2172 | + y1="111.87411" |
2173 | + x2="177.78296" |
2174 | + y2="2.3937817" /> |
2175 | + </defs> |
2176 | + <sodipodi:namedview |
2177 | + id="base" |
2178 | + pagecolor="#ffffff" |
2179 | + bordercolor="#666666" |
2180 | + borderopacity="1.0" |
2181 | + inkscape:pageopacity="0.0" |
2182 | + inkscape:pageshadow="2" |
2183 | + inkscape:zoom="4.0745361" |
2184 | + inkscape:cx="44.456273" |
2185 | + inkscape:cy="35.801941" |
2186 | + inkscape:document-units="px" |
2187 | + inkscape:current-layer="layer1" |
2188 | + showgrid="false" |
2189 | + fit-margin-top="0" |
2190 | + fit-margin-left="0" |
2191 | + fit-margin-right="0" |
2192 | + fit-margin-bottom="0" |
2193 | + inkscape:window-width="1920" |
2194 | + inkscape:window-height="1029" |
2195 | + inkscape:window-x="0" |
2196 | + inkscape:window-y="24" |
2197 | + inkscape:window-maximized="1" |
2198 | + showborder="true" |
2199 | + showguides="false" |
2200 | + inkscape:guide-bbox="true" |
2201 | + inkscape:showpageshadow="false" |
2202 | + inkscape:snap-global="true" |
2203 | + inkscape:snap-bbox="true" |
2204 | + inkscape:bbox-paths="true" |
2205 | + inkscape:bbox-nodes="true" |
2206 | + inkscape:snap-bbox-edge-midpoints="true" |
2207 | + inkscape:snap-bbox-midpoints="true" |
2208 | + inkscape:object-paths="true" |
2209 | + inkscape:snap-intersection-paths="true" |
2210 | + inkscape:object-nodes="true" |
2211 | + inkscape:snap-smooth-nodes="true" |
2212 | + inkscape:snap-midpoints="true" |
2213 | + inkscape:snap-object-midpoints="true" |
2214 | + inkscape:snap-center="true"> |
2215 | + <inkscape:grid |
2216 | + type="xygrid" |
2217 | + id="grid821" /> |
2218 | + <sodipodi:guide |
2219 | + orientation="1,0" |
2220 | + position="16,48" |
2221 | + id="guide823" /> |
2222 | + <sodipodi:guide |
2223 | + orientation="1,0" |
2224 | + position="80,40" |
2225 | + id="guide827" /> |
2226 | + <sodipodi:guide |
2227 | + orientation="0,1" |
2228 | + position="64,16" |
2229 | + id="guide829" /> |
2230 | + </sodipodi:namedview> |
2231 | + <metadata |
2232 | + id="metadata6522"> |
2233 | + <rdf:RDF> |
2234 | + <cc:Work |
2235 | + rdf:about=""> |
2236 | + <dc:format>image/svg+xml</dc:format> |
2237 | + <dc:type |
2238 | + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> |
2239 | + <dc:title></dc:title> |
2240 | + </cc:Work> |
2241 | + </rdf:RDF> |
2242 | + </metadata> |
2243 | + <g |
2244 | + inkscape:label="BACKGROUND" |
2245 | + inkscape:groupmode="layer" |
2246 | + id="layer1" |
2247 | + transform="translate(268,-635.29076)" |
2248 | + style="display:inline"> |
2249 | + <path |
2250 | + style="fill:url(#linearGradient908);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)" |
2251 | + d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z" |
2252 | + id="path6455" |
2253 | + inkscape:connector-curvature="0" |
2254 | + sodipodi:nodetypes="sssssssss" /> |
2255 | + <g |
2256 | + inkscape:label="Logo" |
2257 | + id="layer2-4" |
2258 | + transform="matrix(0.65921639,0,0,0.65921639,-285.17077,646.98506)"> |
2259 | + <path |
2260 | + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:url(#linearGradient4403);fill-opacity:1;stroke:none;stroke-width:6.06781054;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif" |
2261 | + d="m 144.16602,0.71484375 -0.082,0.009766 C 124.47315,0.62670457 77.566329,5.6465838 52.412109,51.40625 c -5.634232,2.301038 -9.689453,7.679423 -9.689453,14.109375 0,0.744447 0.169938,1.414661 0.273438,2.117187 -1.542835,2.235236 -8.654821,13.531536 -3.615235,27.511719 1.63498,4.535585 5.363033,7.667559 9.791016,9.421879 4.427983,1.75431 9.638639,2.31325 15.105469,2.01562 5.087139,-0.27696 7.466013,1.36697 8.9375,2.96289 1.471487,1.59592 1.80664,3.05469 1.80664,3.05469 l 2.457032,10.38672 3.375,-10.125 c 0.506658,-1.51998 0.63387,-3.20365 0.318359,-5.73047 -0.09743,-0.78031 -0.400357,-1.66813 -0.638672,-2.52734 3.756387,0.42183 7.188308,0.61794 9.744141,1.0957 1.278075,0.23891 3.606927,1.2614 5.414062,2.25 1.807135,0.9886 3.142578,1.88281 3.142578,1.88281 l 7.150396,4.78516 -2.56641,-8.21094 c -1.90763,-6.10443 -6.284455,-9.847229 -10.089845,-11.96875 -0.262926,-0.146582 -0.441607,-0.169951 -0.699219,-0.302734 3.080219,-2.227846 5.603602,-4.947983 8.033204,-7.207032 0.93862,-0.872731 3.82227,-1.564453 3.82227,-1.564453 l 4.58203,-0.621093 -2.39453,-3.957032 c -3.06052,-5.053898 -9.75963,-5.669659 -13.998052,-2.416015 -2.738247,2.102028 -4.835056,3.856047 -6.785156,4.003906 -4.847276,0.367525 -9.973684,-3.660787 -9.699219,-9.554688 0.08948,-1.921461 1.237174,-4.051685 2.357422,-5.078125 0.210945,0.04827 0.344535,0.07628 0.599609,0.134766 1.186656,0.272104 2.805107,0.633606 4.660157,0.916016 3.710099,0.564818 8.402471,0.885427 12.902343,-0.658204 10.777676,-3.697158 23.753576,-8.988346 32.507816,-17.986328 3.65797,-3.759825 5.48801,-8.201166 6.92382,-11.49414 0.71791,-1.646487 1.35371,-3.014466 1.87305,-3.796875 0.19042,-0.286876 0.15457,-0.176324 0.26367,-0.294922 0.002,0.0024 0.002,0.0015 0.004,0.0039 0.4262,0.430509 1.01226,1.038229 1.98828,1.537109 0.97602,0.498881 2.44322,0.73998 3.75,0.382813 2.71662,-0.7425 4.48419,-2.807757 5.57813,-4.923828 1.09393,-2.116071 1.62454,-4.422196 1.61328,-6.628906 -0.007,-1.402807 -0.32454,-2.335518 -0.45313,-2.876953 0.2441,-0.185975 0.77541,-0.384506 2.38477,-0.5 0.89766,-0.06442 1.92502,-0.08441 3.16601,-0.486329 1.241,-0.401916 2.8783,-1.633112 3.38868,-3.34375 0.54076,-1.81248 0.48278,-3.670806 -0.10352,-5.169921 -0.5863,-1.499116 -1.55309,-2.546265 -2.41016,-3.3437505 -1.44976,-1.3489889 -2.1819,-2.0078233 -2.56836,-2.4980469 0.0233,-0.02067 0.10157,-0.1035156 0.10157,-0.1035156 l 5.86132,-4.4804688 -7.3164,-0.9394531 c 0,0 -3.41499,-0.43275576 -8.88477,-0.47265622 l -0.21093,-0.001953 z m 0.16796,6.06835935 c 2.45329,0.017896 2.48219,0.1047834 3.86524,0.2011719 0.0219,0.453197 0.0822,0.922243 0.27148,1.421875 1.14177,3.013503 3.48917,4.232835 4.57813,5.246094 0.54448,0.506629 0.80126,0.874803 0.89453,1.113281 0.0451,0.115236 -0.034,0.423707 -0.0293,0.591797 -0.30654,0.04795 -0.57497,0.09917 -1.20703,0.144531 -1.8123,0.130059 -5.04605,0.202992 -7.11523,3.021485 -1.12027,1.525941 -1.02691,3.464875 -0.82032,4.490234 0.2066,1.025359 0.37113,1.589026 0.37305,1.949219 0.006,1.105581 -0.3465,2.667349 -0.9375,3.810547 -0.48083,0.930102 -1.01878,1.407488 -1.4707,1.654296 -0.0724,-0.06359 -0.0393,-0.0285 -0.14258,-0.132812 -0.31573,-0.318918 -0.72416,-0.811142 -1.47852,-1.353516 -0.75435,-0.542373 -2.17232,-1.125028 -3.59375,-0.835937 -2.12365,0.431911 -3.5949,1.933877 -4.56445,3.394531 -0.96954,1.460654 -1.65089,3.056888 -2.37891,4.726562 -1.45603,3.339349 -3.03433,6.940329 -5.70898,9.689454 -7.45417,7.661718 -19.65382,12.885156 -30.128906,16.478515 -2.950677,1.012197 -6.79113,0.889923 -10.019531,0.398438 -1.6142,-0.245743 -3.066757,-0.568324 -4.216797,-0.832031 -0.57502,-0.131854 -1.070712,-0.248912 -1.517578,-0.341797 -0.446866,-0.09289 -0.540916,-0.272276 -1.701172,-0.15625 l -0.603515,0.06055 -0.535157,0.289062 c -4.088046,2.207542 -5.830275,6.660659 -6.019531,10.724609 -0.442975,9.512512 7.742806,16.529374 16.21875,15.886719 2.886564,-0.218863 5.01154,-1.474359 6.873047,-2.839844 -2.887511,2.761789 -5.614655,5.209809 -8.855469,6.035157 l 0.201172,5.923828 c 0.127549,0.02341 2.686456,0.578191 5.460938,2.044922 C 85.465946,98.927736 80.917236,99.04558 76.041016,97.8125 l -8.554688,-2.162109 0.462891,-1.253907 C 67.517878,94.133765 67.143617,93.908647 66.800781,93.679688 60.464652,89.448077 58.641838,84.117874 58.042969,80.761719 l -5.933594,-0.1875 c -0.743318,3.039843 -1.297857,6.194123 -0.546875,9.253906 0.938666,3.824511 3.486628,6.469289 6.232422,7.882813 2.745794,1.413523 5.641439,1.878253 8.09375,2.273437 l 1.457031,-3.953125 4.833985,5.73242 c -2.254895,-0.88999 -4.984225,-1.41697 -8.230469,-1.24023 -4.824711,0.26267 -9.253737,-0.2945 -12.542969,-1.597659 -3.289232,-1.303154 -5.355939,-3.170001 -6.318359,-5.839843 -3.501947,-9.714657 0.40912,-17.924216 2.320312,-21.121094 L 50.3125,72.578125 49.097656,67.84375 c -0.198444,-0.773142 -0.308594,-1.544271 -0.308594,-2.328125 0,-4.31675 2.896092,-7.894786 6.826172,-8.996094 l 2.716797,-0.761719 -0.36914,-1.816406 C 81.834285,10.990201 125.98495,6.6493519 144.33398,6.7832031 Z" |
2262 | + id="path4055-4" |
2263 | + inkscape:connector-curvature="0" /> |
2264 | + <path |
2265 | + style="color:#000000;fill:url(#linearGradient4627);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2266 | + d="m 45.99142,68.562948 c 0,0 -8.79736,11.572938 -3.7578,25.553075 2.59741,7.205427 11.58723,9.996567 21.87877,9.436267 11.73633,-0.63896 13.86213,8.35067 13.86213,8.35067 0,0 1.4903,-10.21824 -5.92898,-13.611599 -4.5917,-2.100104 -15.38867,-0.434916 -17.53643,-9.185745 -1.45661,-5.934837 4.09184,-17.870451 4.09184,-17.870451 z" |
2267 | + id="path4446" |
2268 | + inkscape:connector-curvature="0" |
2269 | + sodipodi:nodetypes="csscsscc" /> |
2270 | + <g |
2271 | + transform="translate(110,0)" |
2272 | + id="g5539"> |
2273 | + <path |
2274 | + style="opacity:0.85;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#00f1ff;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5418);enable-background:accumulate" |
2275 | + d="m -59.388305,73.158428 c -10.438347,24.530116 9.133554,23.81248 9.133554,23.81248 0,0 -13.987385,-0.358818 -4.175338,-22.279347 z" |
2276 | + id="path5365" |
2277 | + inkscape:connector-curvature="0" |
2278 | + sodipodi:nodetypes="cccc" /> |
2279 | + <path |
2280 | + style="opacity:0.85;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5476);enable-background:accumulate" |
2281 | + d="m -39.35257,99.397824 c 5.010407,4.175336 7.306843,11.795336 7.306843,11.795336 l 0.104384,-5.11479 -2.296437,-5.42794 c 0,0 -3.653421,-0.62631 -5.11479,-1.252606 z" |
2282 | + id="path5422" |
2283 | + inkscape:connector-curvature="0" |
2284 | + sodipodi:nodetypes="ccccc" /> |
2285 | + <path |
2286 | + style="color:#000000;fill:#0070ba;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2287 | + d="m -60.226562,77.787109 c -1.322339,0 -2.392579,1.072193 -2.392579,2.394532 0,1.322339 1.07024,2.394531 2.392579,2.394531 1.322338,0 2.394531,-1.072192 2.394531,-2.394531 0,-1.322339 -1.072193,-2.394532 -2.394531,-2.394532 z m -0.08008,7.75 c -1.248547,0 -2.259765,1.011218 -2.259765,2.259766 0,1.248548 1.011218,2.261719 2.259765,2.261719 1.248548,0 2.261719,-1.013171 2.261719,-2.261719 0,-1.248548 -1.013171,-2.259766 -2.261719,-2.259766 z m 3.955079,7.427735 c -1.041933,0 -1.886719,0.844786 -1.886719,1.886718 0,1.041933 0.844786,1.886719 1.886719,1.886719 1.041932,0 1.886718,-0.844786 1.886718,-1.886719 0,-1.041932 -0.844786,-1.886718 -1.886718,-1.886718 z m 6.363281,4.001953 c -0.909699,0 -1.648438,0.736786 -1.648438,1.646484 0,0.909699 0.738739,1.648439 1.648438,1.648439 0.909698,0 1.646484,-0.73874 1.646484,-1.648439 0,-0.909698 -0.736786,-1.646484 -1.646484,-1.646484 z m 6.429687,1.710937 c -0.739683,0 -1.339844,0.600161 -1.339844,1.339846 0,0.73968 0.600161,1.33789 1.339844,1.33789 0.739684,0 1.339844,-0.59821 1.339844,-1.33789 0,-0.739685 -0.60016,-1.339846 -1.339844,-1.339846 z m 5.986328,2.179686 c -0.692457,0 -1.253906,0.56145 -1.253906,1.25391 0,0.69246 0.561449,1.2539 1.253906,1.2539 0.692457,0 1.253907,-0.56144 1.253907,-1.2539 0,-0.69246 -0.56145,-1.25391 -1.253907,-1.25391 z m 4.488282,5.08789 c -0.574391,0 -1.039063,0.46663 -1.039063,1.04102 0,0.57439 0.464672,1.03906 1.039063,1.03906 0.574391,0 1.041015,-0.46467 1.041015,-1.03906 0,-0.57439 -0.466624,-1.04102 -1.041015,-1.04102 z" |
2288 | + id="path4685" |
2289 | + inkscape:connector-curvature="0" /> |
2290 | + <g |
2291 | + inkscape:groupmode="maskhelper" |
2292 | + id="g5484" |
2293 | + clip-path="url(#clipPath5487)" |
2294 | + transform="translate(30,0)" |
2295 | + style="stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;filter:url(#filter5535)"> |
2296 | + <path |
2297 | + inkscape:connector-curvature="0" |
2298 | + id="path5480" |
2299 | + d="m -87.54139,73.615106 -1.95719,14.744166 10.046909,9.655471 6.393488,-1.370032 6.393488,4.371059 4.566777,6.39349" |
2300 | + style="color:#000000;fill:none;stroke:#ffa4d9;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2301 | + sodipodi:nodetypes="cccccc" /> |
2302 | + </g> |
2303 | + </g> |
2304 | + <path |
2305 | + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif" |
2306 | + d="m 45.578125,67.453125 -0.382813,0.503906 c 0,0 -9.127517,12.00301 -3.902343,26.498047 1.409552,3.910206 4.580702,6.617932 8.626953,8.220702 4.046251,1.60277 8.994538,2.16091 14.246094,1.875 5.610702,-0.30546 8.718098,1.636 10.542968,3.61524 1.824871,1.97923 2.292969,3.96679 2.292969,3.96679 l 0.857422,3.63086 1.072266,-3.57422 c 0.144913,-0.48304 0.253693,-1.2227 0.294921,-2.34961 0.04123,-1.1269 -0.01765,-2.55398 -0.335937,-4.07617 -0.636583,-3.04437 -2.392824,-6.534516 -6.429687,-8.380858 -2.65637,-1.214944 -6.457153,-1.257342 -9.84375,-2.15625 -3.386598,-0.898907 -6.158801,-2.374947 -7.136719,-6.359374 -0.621258,-2.531253 0.296471,-6.954521 1.480469,-10.615235 1.183997,-3.660713 2.546875,-6.595703 2.546874,-6.595703 l 0.529297,-1.138672 -14.458984,-3.064453 z m 0.878906,2.230469 10.789063,2.287109 c -0.359113,0.799547 -1.171201,2.517758 -2.189453,5.666016 -1.226073,3.790803 -2.35489,8.303447 -1.519532,11.707031 1.169843,4.766401 4.869656,6.833221 8.566407,7.814453 3.696751,0.981232 7.590066,1.157809 9.52539,2.042969 3.382416,1.547018 4.751434,4.326798 5.304688,6.972658 0.155682,0.74453 0.125974,1.34888 0.164062,2.02148 -0.325053,-0.48095 -0.464348,-0.89277 -0.917968,-1.38476 -2.172109,-2.35585 -5.995465,-4.58936 -12.121094,-4.25586 -5.039988,0.27439 -9.731446,-0.2842 -13.402344,-1.73828 -3.670898,-1.454089 -6.29456,-3.743846 -7.482422,-7.039066 -4.533049,-12.575031 2.326607,-22.753738 3.283203,-24.09375 z" |
2307 | + id="path4440" |
2308 | + inkscape:connector-curvature="0" /> |
2309 | + <g |
2310 | + transform="translate(110,-50)" |
2311 | + id="g5367"> |
2312 | + <path |
2313 | + sodipodi:nodetypes="ccccssc" |
2314 | + inkscape:connector-curvature="0" |
2315 | + id="path4444" |
2316 | + d="m -9.47865,157.31009 c -3.34027,-10.68887 -15.53226,-12.77653 -15.53226,-12.77653 l -24.88502,-25.38606 -5.34444,8.43418 c 0,0 -0.80955,11.16583 10.35484,18.62201 10.18833,6.80431 18.86212,5.23159 25.72009,6.51353 3.91995,0.73275 9.68679,4.59287 9.68679,4.59287 z" |
2317 | + style="color:#000000;fill:url(#linearGradient4619);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> |
2318 | + <path |
2319 | + style="color:#000000;fill:url(#linearGradient5324);fill-opacity:1;stroke:#00ffff;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5314);enable-background:accumulate" |
2320 | + d="m -50.835384,127.79045 c 0,0 0.02797,10.578 9.890335,16.36211 9.630227,5.64796 21.946625,2.21815 31.654288,13.49156 -3.653422,-9.70766 -15.761904,-13.46547 -15.761904,-13.46547 l -21.398613,-17.74519 z" |
2321 | + id="path5272" |
2322 | + inkscape:connector-curvature="0" |
2323 | + sodipodi:nodetypes="cscccc" /> |
2324 | + <path |
2325 | + style="color:#000000;fill:#0070ba;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2326 | + d="m -50.017578,128.13867 c -1.322339,0 -2.394531,1.07219 -2.394531,2.39453 0,1.32234 1.072192,2.39453 2.394531,2.39453 1.322339,0 2.394531,-1.07219 2.394531,-2.39453 0,-1.32234 -1.072192,-2.39453 -2.394531,-2.39453 z m 4.542969,8.125 c -1.440405,0 -2.609375,1.16702 -2.609375,2.60742 0,1.44041 1.16897,2.60743 2.609375,2.60743 1.440404,0 2.607421,-1.16702 2.607421,-2.60743 0,-1.4404 -1.167017,-2.60742 -2.607421,-2.60742 z m 7.214843,4.8086 c -1.263306,0 -2.287109,1.0238 -2.287109,2.28711 0,1.2633 1.023803,2.28906 2.287109,2.28906 1.263306,0 2.28711,-1.02576 2.28711,-2.28906 0,-1.26331 -1.023804,-2.28711 -2.28711,-2.28711 z m 6.894532,3.04687 c -1.115724,0 -2.021485,0.90381 -2.021485,2.01953 0,1.11573 0.905761,2.02149 2.021485,2.02149 1.115723,0 2.019531,-0.90576 2.019531,-2.02149 0,-1.11572 -0.903808,-2.01953 -2.019531,-2.01953 z m 6.925781,0.68359 c -1.115724,0 -2.019531,0.90577 -2.019531,2.02149 0,1.11572 0.903807,2.01953 2.019531,2.01953 1.115723,0 2.019531,-0.90381 2.019531,-2.01953 0,-1.11572 -0.903808,-2.02149 -2.019531,-2.02149 z m 6.242187,2.00977 c -0.974044,0 -1.763672,0.78963 -1.763672,1.76367 0,0.97405 0.789628,1.76367 1.763672,1.76367 0.974045,0 1.763672,-0.78962 1.763672,-1.76367 0,-0.97404 -0.789627,-1.76367 -1.763672,-1.76367 z m 4.533204,3.03516 c -0.903205,0 -1.636719,0.73351 -1.636719,1.63672 0,0.9032 0.733514,1.63476 1.636719,1.63476 0.903204,0 1.634765,-0.73156 1.634765,-1.63476 0,-0.90321 -0.731561,-1.63672 -1.634765,-1.63672 z" |
2327 | + id="path4699" |
2328 | + inkscape:connector-curvature="0" /> |
2329 | + <g |
2330 | + inkscape:groupmode="maskhelper" |
2331 | + id="g5330" |
2332 | + clip-path="url(#clipPath5333)" |
2333 | + style="filter:url(#filter5361)" |
2334 | + transform="translate(0,10)"> |
2335 | + <path |
2336 | + inkscape:connector-curvature="0" |
2337 | + id="path5326" |
2338 | + d="m -53.431291,114.03917 7.95924,11.64528 18.071389,9.32927 15.657521,7.82876" |
2339 | + style="color:#000000;fill:none;stroke:#f686c0;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2340 | + sodipodi:nodetypes="cccc" /> |
2341 | + </g> |
2342 | + </g> |
2343 | + <path |
2344 | + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif" |
2345 | + d="m 53.761719,77.509766 c 0,0 -0.769526,11.800727 10.796875,19.52539 10.465494,6.989414 19.528728,5.437244 26.091797,6.664064 1.735275,0.32437 4.126992,1.43266 6.017578,2.4668 1.890586,1.03413 3.296875,1.9746 3.296875,1.9746 l 2.357426,1.57813 -0.84571,-2.70703 C 97.940712,95.697012 85.158203,93.548828 85.158203,93.548828 l -0.337891,1.970703 c 0,0 9.302866,1.685281 13.490235,9.300779 -0.344321,-0.19973 -0.292709,-0.19634 -0.683594,-0.41015 -1.97282,-1.07912 -4.4247,-2.26741 -6.609375,-2.67578 -7.152883,-1.33707 -15.436501,0.25787 -25.347656,-6.361333 -10.762384,-7.187697 -9.91211,-17.71875 -9.91211,-17.71875 l -1.996093,-0.144531 z" |
2346 | + id="path4438" |
2347 | + inkscape:connector-curvature="0" /> |
2348 | + <path |
2349 | + sodipodi:nodetypes="csssssssscssscssscc" |
2350 | + inkscape:connector-curvature="0" |
2351 | + id="path4053" |
2352 | + d="m 152.87488,4.2000979 c 0,0 -2.13429,1.630933 -1.56575,3.1315042 1.29782,3.4253679 7.02934,4.3325019 5.48013,9.5249919 -0.85439,2.863655 -6.53246,0.439774 -8.75151,3.462399 -0.95373,1.299096 0.13029,2.748166 0.13987,4.62732 0.0169,3.312292 -1.76307,7.738348 -4.95821,8.611637 -2.43745,0.666199 -3.28108,-2.847381 -5.09183,-2.479108 -4.2679,0.868011 -4.75185,10.44397 -11.08448,16.95292 -8.1042,8.32985 -20.69179,13.587409 -31.31817,17.232668 -7.45055,2.555827 -17.06774,-0.889765 -18.13663,-0.782876 -2.67222,1.442997 -4.28398,5.060216 -4.43004,8.196608 -0.35872,7.703206 6.29677,13.226095 12.95838,12.721005 3.29716,-0.249995 5.84482,-2.658318 8.4046,-4.623345 2.81552,-2.161347 7.50879,-1.796509 9.55437,1.581402 0,0 -3.46053,0.470799 -5.48014,2.348628 C 91.95765,90.877707 86.66529,98.612984 72.76056,93.187009 62.91599,89.345408 60.94115,77.8611 60.94115,77.8611 57.60632,67.538505 54.75441,53.39081 54.75441,53.39081 86.06946,-4.4115389 152.87488,4.2000979 152.87488,4.2000979 Z" |
2353 | + style="color:#000000;fill:url(#linearGradient4611);fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> |
2354 | + <g |
2355 | + transform="translate(110,0)" |
2356 | + id="g5070"> |
2357 | + <path |
2358 | + style="color:#000000;fill:url(#linearGradient4894);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4727);enable-background:accumulate" |
2359 | + d="m -43.404585,56.033015 c 0,0 14.064566,-13.998006 29.969474,-23.608606 C 2.4698001,22.813808 41.40699,11.18074 41.40699,11.18074 c 0,0 -27.109157,21.273679 -43.2212844,30.059179 -16.1121306,8.7855 -41.5902906,14.793096 -41.5902906,14.793096 z" |
2360 | + id="path4717" |
2361 | + inkscape:connector-curvature="0" |
2362 | + sodipodi:nodetypes="czczc" /> |
2363 | + <path |
2364 | + style="color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4962);enable-background:accumulate" |
2365 | + d="M -34.352581,36.950411 C -13.149688,23.290855 16.20816,12.485534 16.20816,12.485534 c 0,0 -14.66692,0.939698 -25.688116,7.339463 -11.021201,6.399765 -24.872625,17.125414 -24.872625,17.125414 z" |
2366 | + id="path4932" |
2367 | + inkscape:connector-curvature="0" |
2368 | + sodipodi:nodetypes="cczc" /> |
2369 | + <path |
2370 | + style="opacity:0.7;color:#000000;fill:#029dff;fill-opacity:1;stroke:none;stroke-width:0.5;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5014);enable-background:accumulate" |
2371 | + d="m -47.502636,51.425463 c 0,0 3.033516,-4.331961 22.833885,-18.144784 C -4.8683818,19.467856 37.716685,8.0003065 37.716685,8.0003065 c 0,0 -44.7698895,18.9515775 -58.919578,27.9307345 -14.149688,8.979158 -26.299743,15.494422 -26.299743,15.494422 z" |
2372 | + id="path4984" |
2373 | + inkscape:connector-curvature="0" |
2374 | + sodipodi:nodetypes="czczc" /> |
2375 | + <path |
2376 | + style="color:#000000;fill:#e4ffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4762);enable-background:accumulate" |
2377 | + d="m -42.589089,62.067684 c 0,0 16.602204,-2.855673 43.058179,-17.288513 C 14.1162,37.3341 33.57822,18.520204 38.145,16.889212 c 0,0 -6.96879,5.873304 -9.94905,9.296653 -7.81416,8.975931 -3.019552,13.047524 -22.1814818,28.175383 -11.299691,8.920819 -48.6035572,7.706436 -48.6035572,7.706436 z" |
2378 | + id="path4760" |
2379 | + inkscape:connector-curvature="0" |
2380 | + sodipodi:nodetypes="cscssc" /> |
2381 | + <path |
2382 | + style="color:#000000;fill:url(#linearGradient4906);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4928);enable-background:accumulate" |
2383 | + d="M -46.788893,48.163479 C -24.566629,29.203199 10.09194,13.912652 32.92583,6.7770627 c 0,0 -24.6953999,-5.3921657 -50.152997,8.9704543 -25.457601,14.36262 -29.561726,32.415962 -29.561726,32.415962 z" |
2384 | + id="path4898" |
2385 | + inkscape:connector-curvature="0" |
2386 | + sodipodi:nodetypes="cczc" /> |
2387 | + <path |
2388 | + style="color:#000000;fill:#0070ba;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2389 | + d="m 18.63672,5.5722656 c -1.39719,0 -2.5293,1.1321042 -2.5293,2.5292969 0,1.3971927 1.13211,2.5312495 2.5293,2.5312495 1.39719,0 2.5293,-1.1340568 2.5293,-2.5312495 0,-1.3971927 -1.13211,-2.5292969 -2.5293,-2.5292969 z M 9.1875,7.625 c -1.65694,0 -3,1.3430621 -3,3 0,1.656938 1.34306,3 3,3 1.65694,0 3,-1.343062 3,-3 0,-1.6569379 -1.34306,-3 -3,-3 z M -1.117188,9.9335938 c -1.916683,0 -3.470703,1.5540202 -3.470703,3.4707032 0,1.916683 1.55402,3.470703 3.470703,3.470703 1.916688,0 3.470708,-1.55402 3.470708,-3.470703 0,-1.916683 -1.55402,-3.4707032 -3.470708,-3.4707032 z m -11.902343,4.8261722 c -2.325487,0 -4.208985,1.885451 -4.208985,4.210937 0,2.325487 1.883498,4.210938 4.208985,4.210938 2.325486,0 4.210937,-1.885451 4.210937,-4.210938 0,-2.325486 -1.885451,-4.210937 -4.210937,-4.210937 z m 42.087891,0.77539 c -1.09022,0 -1.97266,0.882435 -1.97266,1.972656 0,1.090222 0.88244,1.97461 1.97266,1.97461 1.09022,0 1.97461,-0.884388 1.97461,-1.97461 0,-1.090221 -0.88439,-1.972656 -1.97461,-1.972656 z m -7.35352,3.078125 c -1.65693,0 -3,1.343062 -3,3 0,1.656938 1.34307,3 3,3 1.65694,0 3,-1.343062 3,-3 0,-1.656938 -1.34306,-3 -3,-3 z m -45.499996,2.435547 c -2.304648,0 -4.171875,1.867227 -4.171875,4.171875 0,2.304648 1.867227,4.173828 4.171875,4.173828 2.304648,0 4.173828,-1.86918 4.173828,-4.173828 0,-2.304648 -1.86918,-4.171875 -4.173828,-4.171875 z m 35.025386,2.181641 c -2.24726,0 -4.07031,1.821091 -4.07031,4.068359 0,2.247268 1.82305,4.070313 4.07031,4.070313 2.24727,0 4.06836,-1.823045 4.06836,-4.070313 0,-2.247268 -1.82109,-4.068359 -4.06836,-4.068359 z m 14.72852,5.503906 c -0.97216,0 -1.75977,0.789563 -1.75977,1.761719 0,0.972155 0.78761,1.759765 1.75977,1.759765 0.97216,0 1.75977,-0.78761 1.75977,-1.759765 0,-0.972156 -0.78761,-1.761719 -1.75977,-1.761719 z m -27.681641,0.07227 c -2.758021,0 -4.99414,2.236119 -4.99414,4.99414 0,2.758021 2.236119,4.994141 4.99414,4.994141 2.758021,0 4.994141,-2.23612 4.994141,-4.994141 0,-2.758021 -2.23612,-4.99414 -4.994141,-4.99414 z m -32.175781,0.01367 c -1.907946,0 -3.455078,1.545179 -3.455078,3.453126 0,1.907946 1.547132,3.455078 3.455078,3.455078 1.907946,0 3.453125,-1.547132 3.453125,-3.455078 0,-1.907947 -1.545179,-3.453126 -3.453125,-3.453126 z m 53.626952,5.238282 c -1.92259,0 -3.48242,1.557882 -3.48242,3.480468 0,1.922587 1.55983,3.482422 3.48242,3.482422 1.92259,0 3.48047,-1.559835 3.48047,-3.482422 0,-1.922586 -1.55788,-3.480468 -3.48047,-3.480468 z m -61.214842,2.214844 c -1.303449,0 -2.359376,1.055926 -2.359376,2.359374 0,1.303449 1.055927,2.359376 2.359376,2.359376 1.303448,0 2.361328,-1.055927 2.361328,-2.359376 0,-1.303448 -1.05788,-2.359374 -2.361328,-2.359374 z m 26.376953,0.652343 c -2.436882,0 -4.41211,1.975228 -4.41211,4.41211 0,2.436881 1.975228,4.412109 4.41211,4.412109 2.436881,0 4.412109,-1.975228 4.412109,-4.412109 0,-2.436882 -1.975228,-4.41211 -4.412109,-4.41211 z M 12.0957,41.273441 c -2.3063,0 -4.17773,1.86948 -4.17773,4.175781 0,2.3063 1.87143,4.175781 4.17773,4.175781 2.3063,0 4.17578,-1.869481 4.17578,-4.175781 0,-2.306301 -1.86948,-4.175781 -4.17578,-4.175781 z m -38.552731,3.158203 c -1.771934,0 -3.208985,1.435097 -3.208985,3.207031 0,1.771934 1.437051,3.208984 3.208985,3.208984 1.771934,0 3.208984,-1.43705 3.208984,-3.208984 0,-1.771934 -1.43705,-3.207031 -3.208984,-3.207031 z M 1.46094,48.599612 c -2.342431,0 -4.24219,1.897806 -4.24219,4.240235 0,2.342429 1.899759,4.242187 4.24219,4.242187 2.34243,0 4.24023,-1.899758 4.24023,-4.242187 0,-2.342429 -1.8978,-4.240235 -4.24023,-4.240235 z m -36.404299,2.140625 c -1.076762,0 -1.949219,0.874411 -1.949219,1.951172 0,1.076762 0.872457,1.949219 1.949219,1.949219 1.076761,0 1.949218,-0.872457 1.949218,-1.949219 0,-1.076761 -0.872457,-1.951172 -1.949218,-1.951172 z m 25.388671,3.638672 c -2.040179,0 -3.693359,1.655133 -3.693359,3.695313 0,2.04018 1.65318,3.693359 3.693359,3.693359 2.04018,0 3.695313,-1.653179 3.695313,-3.693359 0,-2.04018 -1.655133,-3.695313 -3.695313,-3.695313 z M -20.542969,58.5293 c -1.620809,0 -2.933593,1.314737 -2.933593,2.935547 0,1.620809 1.312784,2.935547 2.933593,2.935547 1.62081,0 2.935547,-1.314738 2.935547,-2.935547 0,-1.62081 -1.314737,-2.935547 -2.935547,-2.935547 z m -8.550781,1.617187 c -1.038981,0 -1.880859,0.843832 -1.880859,1.882813 0,1.03898 0.841878,1.880859 1.880859,1.880859 1.038981,0 1.880859,-0.841879 1.880859,-1.880859 0,-1.038981 -0.841878,-1.882813 -1.880859,-1.882813 z" |
2390 | + id="path4629" |
2391 | + inkscape:connector-curvature="0" /> |
2392 | + <g |
2393 | + inkscape:groupmode="maskhelper" |
2394 | + id="g4741" |
2395 | + clip-path="url(#clipPath4744)" |
2396 | + transform="translate(80,0)"> |
2397 | + <path |
2398 | + id="path4731" |
2399 | + d="m -52.292969,6.9394531 c 0,0 -24.700615,1.7547487 -43.546875,12.2324219 -18.846266,10.477673 -29.521486,28.869141 -29.521486,28.869141 z m 13.699219,4.2421879 c 0,0 -37.338187,12.039334 -53.243098,21.649935 -15.904902,9.6106 -31.567452,23.201627 -31.567452,23.201627 0,0 23.11294,-8.98387 39.225068,-17.76937 16.112128,-8.7855 45.585482,-27.082192 45.585482,-27.082192 z m -18.878906,17.001953 -49.132814,31.193359 c 0,0 19.119354,0.92316 32.619142,-7.542969 13.49979,-8.466129 16.513672,-23.65039 16.513672,-23.65039 z" |
2400 | + style="color:#000000;fill:#f08cc0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4756);enable-background:accumulate" |
2401 | + inkscape:connector-curvature="0" |
2402 | + sodipodi:nodetypes="cscccscscccsc" /> |
2403 | + </g> |
2404 | + <path |
2405 | + style="opacity:0.6;color:#000000;fill:none;stroke:#00b0c2;stroke-width:1;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4842);enable-background:accumulate" |
2406 | + d="M 15.005125,32.775071 41.75339,12.289814" |
2407 | + id="path4788" |
2408 | + inkscape:connector-curvature="0" |
2409 | + sodipodi:nodetypes="cc" /> |
2410 | + <path |
2411 | + style="opacity:0.6;color:#000000;fill:#00b1fc;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4884);enable-background:accumulate" |
2412 | + d="M -36.289567,57.541682 C 7.0132649,40.783242 28.542356,22.475359 28.542356,22.475359 c 0,0 -18.117591,16.415533 -28.74622997,22.222263 C -11.408537,50.81905 -36.289567,57.541682 -36.289567,57.541682 Z" |
2413 | + id="path4766" |
2414 | + inkscape:connector-curvature="0" |
2415 | + sodipodi:nodetypes="ccsc" /> |
2416 | + <path |
2417 | + sodipodi:nodetypes="cc" |
2418 | + inkscape:connector-curvature="0" |
2419 | + id="path4846" |
2420 | + d="M 29.749291,31.470278 35.88182,20.640492" |
2421 | + style="opacity:0.6;color:#000000;fill:none;stroke:#00b0c2;stroke-width:1;stroke-opacity:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4842);enable-background:accumulate" /> |
2422 | + <path |
2423 | + style="opacity:0.4;color:#000000;fill:#ffbae3;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4878);enable-background:accumulate" |
2424 | + d="M -23.853255,58.153304 C 1.2232437,50.609967 19.164153,34.096175 19.164153,34.096175 c 0,0 -8.76337,11.213185 -18.34865711,16.717666 -6.57480369,3.710588 -24.66875089,7.339463 -24.66875089,7.339463 z" |
2425 | + id="path4848" |
2426 | + inkscape:connector-curvature="0" |
2427 | + sodipodi:nodetypes="cccc" /> |
2428 | + <path |
2429 | + sodipodi:nodetypes="cccc" |
2430 | + inkscape:connector-curvature="0" |
2431 | + id="path4882" |
2432 | + d="m -60.523278,20.654449 c 15.257142,-7.442748 45.028856,-31.0028 45.028856,-31.0028 0,0 -9.055275,12.4691209 -18.640563,17.9736019 -6.460736,4.9285021 -26.388293,13.0291981 -26.388293,13.0291981 z" |
2433 | + style="opacity:0.4;color:#000000;fill:#fff7fc;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4878);enable-background:accumulate" |
2434 | + transform="matrix(-0.9956428,-0.09324919,0.09324919,-0.9956428,-42.60511,36.192161)" /> |
2435 | + <path |
2436 | + style="opacity:0.7;color:#000000;fill:none;stroke:#ffffff;stroke-width:0.5;stroke-miterlimit:4;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter4980);enable-background:accumulate" |
2437 | + d="M -50.76462,52.648707 C -23.037759,22.067611 39.959298,5.7576928 39.959298,5.7576928" |
2438 | + id="path4966" |
2439 | + inkscape:connector-curvature="0" |
2440 | + sodipodi:nodetypes="cc" /> |
2441 | + <path |
2442 | + style="opacity:0.1;color:#000000;fill:#0236ff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.5;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5052);enable-background:accumulate" |
2443 | + d="M -28.950104,38.581402 14.8828,16.766887 -9.5820767,26.960586 Z" |
2444 | + id="path5018" |
2445 | + inkscape:connector-curvature="0" /> |
2446 | + <path |
2447 | + style="color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.5;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5066);enable-background:accumulate" |
2448 | + d="m -33.084669,38.736347 c 21.993925,-15.575972 55.306932,-26.862435 55.306932,-26.862435 0,0 -24.0884747,6.584066 -33.313007,11.286463 -9.224533,4.702397 -21.993925,15.575972 -21.993925,15.575972 z" |
2449 | + id="path5056" |
2450 | + inkscape:connector-curvature="0" |
2451 | + sodipodi:nodetypes="cczc" /> |
2452 | + </g> |
2453 | + <g |
2454 | + transform="translate(110,0)" |
2455 | + id="g5264"> |
2456 | + <path |
2457 | + style="color:#000000;fill:#e6ffff;fill-opacity:1;fill-rule:nonzero;stroke:#00ecff;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5260);enable-background:accumulate" |
2458 | + d="m -42.42599,71.527437 c 4.892975,20.713596 27.433282,15.135603 27.433282,15.135603 0,0 -9.884691,7.57503 -18.625927,3.457703 -8.741235,-4.117326 -8.807355,-18.593306 -8.807355,-18.593306 z" |
2459 | + id="path5088" |
2460 | + inkscape:connector-curvature="0" |
2461 | + sodipodi:nodetypes="cczc" /> |
2462 | + <path |
2463 | + style="color:#000000;fill:#0070ba;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2464 | + d="m -40.183594,74.130859 c -1.322339,0 -2.394531,1.072193 -2.394531,2.394532 0,1.322339 1.072192,2.394531 2.394531,2.394531 1.322339,0 2.394532,-1.072192 2.394532,-2.394531 0,-1.322339 -1.072193,-2.394532 -2.394532,-2.394532 z m 30.886719,6.5 c -0.604498,0 -1.095703,0.489253 -1.095703,1.09375 0,0.604498 0.491205,1.09375 1.095703,1.09375 0.604498,0 1.09375,-0.489252 1.09375,-1.09375 0,-0.604497 -0.489252,-1.09375 -1.09375,-1.09375 z m -26.474609,0.478516 c -1.246777,0 -2.257813,1.011036 -2.257813,2.257813 0,1.246776 1.011036,2.255859 2.257813,2.255859 1.246776,0 2.257812,-1.009083 2.257812,-2.255859 0,-1.246777 -1.011036,-2.257813 -2.257812,-2.257813 z m 22.916015,0.238281 c -0.736731,0 -1.333984,0.597253 -1.333984,1.333985 0,0.736731 0.597253,1.333984 1.333984,1.333984 0.736732,0 1.333985,-0.597253 1.333985,-1.333984 0,-0.736732 -0.597253,-1.333985 -1.333985,-1.333985 z m -4.34375,1.984375 c -0.736731,0 -1.333984,0.597253 -1.333984,1.333985 0,0.736731 0.597253,1.333984 1.333984,1.333984 0.736732,0 1.333985,-0.597253 1.333985,-1.333984 0,-0.736732 -0.597253,-1.333985 -1.333985,-1.333985 z m -6.052734,2.121094 c -0.963419,0 -1.746094,0.780722 -1.746094,1.744141 0,0.963418 0.782675,1.74414 1.746094,1.74414 0.963418,0 1.744141,-0.780722 1.744141,-1.74414 0,-0.963419 -0.780723,-1.744141 -1.744141,-1.744141 z m -6.5,0.410156 c -1.246777,0 -2.257813,1.011036 -2.257813,2.257813 0,1.246776 1.011036,2.257812 2.257813,2.257812 1.246777,0 2.257812,-1.011036 2.257812,-2.257812 0,-1.246777 -1.011035,-2.257813 -2.257812,-2.257813 z" |
2465 | + id="path4671" |
2466 | + inkscape:connector-curvature="0" /> |
2467 | + <g |
2468 | + inkscape:groupmode="maskhelper" |
2469 | + id="g5207" |
2470 | + clip-path="url(#clipPath5210)" |
2471 | + transform="translate(-30,0)" |
2472 | + style="filter:url(#filter5254)"> |
2473 | + <path |
2474 | + inkscape:connector-curvature="0" |
2475 | + id="path5196" |
2476 | + d="m -16.243318,68.721853 c 0,0 5.039812,16.466678 13.928865,20.094553 C 2.5509961,90.802134 10.082031,88 10.082031,88 -5.0535728,86.956165 -11.650445,76.159176 -16.243318,68.721853 Z m 35.895662,11.491038 c -2.340359,-10e-7 -5.599605,0.779208 -9.279297,3.765625 l 0.630859,1.688745 c 3.522768,-2.859058 6.656882,-3.932453 8.778917,-3.932453 2.122035,0 3.191786,0.148004 3.191786,0.148004 l 0.480469,-0.876953 c 0,0 -1.462376,-0.792968 -3.802734,-0.792968 z" |
2477 | + style="opacity:0.8;color:#000000;fill:#f695c8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2478 | + sodipodi:nodetypes="csccsccsccs" /> |
2479 | + <path |
2480 | + style="color:#000000;fill:none;stroke:#ffa4d9;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2481 | + d="m -40.318117,80.400032 c 7.176364,10.699306 19.049984,8.350678 19.049984,8.350678" |
2482 | + id="path5258" |
2483 | + inkscape:connector-curvature="0" |
2484 | + transform="translate(30,0)" |
2485 | + sodipodi:nodetypes="cc" /> |
2486 | + </g> |
2487 | + <path |
2488 | + style="opacity:0.8;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.5;marker:none;visibility:visible;display:inline;overflow:visible;filter:url(#filter5128);enable-background:accumulate" |
2489 | + d="m -20.167519,84.930275 c 7.599117,-3.841312 9.185745,-4.843393 14.279659,-2.755724 -1.920656,-1.503122 -3.08975,-2.58871 -3.08975,-2.58871 l -4.342353,0.417534 z" |
2490 | + id="path5090" |
2491 | + inkscape:connector-curvature="0" |
2492 | + sodipodi:nodetypes="ccccc" /> |
2493 | + </g> |
2494 | + <path |
2495 | + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif" |
2496 | + d="M 141.96094,2.7675781 C 121.49192,3.0686835 77.588953,9.1420568 53.875,52.914062 l -0.171875,0.31836 0.07031,0.355469 c 0,0 2.841998,14.105108 6.199218,24.517578 0.03855,0.225213 2.092158,11.981994 12.423828,16.013672 7.142311,2.787109 12.348016,2.209287 16.46875,0.0625 4.120734,-2.146787 7.14871,-5.709829 10.41211,-8.744141 1.663466,-1.546694 4.933596,-2.089844 4.933596,-2.089844 l 1.50976,-0.205078 -0.78906,-1.302734 c -2.38012,-3.930337 -7.735111,-4.378719 -11.019531,-1.857422 -2.618615,2.01019 -5.017984,4.203596 -7.871093,4.419922 -6.06356,0.459745 -12.215723,-4.57084 -11.884766,-11.677735 0.127831,-2.745025 1.621985,-5.93229 3.722656,-7.210937 0.08363,0.01068 0.07254,0.01006 0.28711,0.05469 0.35771,0.0744 0.848361,0.189498 1.435546,0.324219 1.174372,0.269442 2.737406,0.616391 4.511719,0.886719 3.548627,0.540655 7.954898,0.797157 11.935547,-0.568359 10.676262,-3.662372 23.392492,-8.932364 31.710942,-17.482422 3.32835,-3.42103 5.0729,-7.58021 6.51562,-10.888672 0.72136,-1.654232 1.37267,-3.097681 2.04297,-4.107422 0.67029,-1.009742 1.28911,-1.527659 2.00781,-1.673828 0.1335,-0.02715 0.18984,-0.01837 0.43555,0.158203 0.24571,0.176577 0.57762,0.525037 0.9668,0.917969 0.38918,0.392932 0.84331,0.837745 1.46679,1.15625 0.62348,0.318504 1.44796,0.461778 2.28711,0.232422 1.96647,-0.537471 3.38345,-2.108385 4.3086,-3.898438 0.92514,-1.790053 1.39609,-3.846054 1.38671,-5.683594 -0.006,-1.130548 -0.3158,-2.052553 -0.45117,-2.724609 -0.13536,-0.672056 -0.14775,-0.945758 0.11719,-1.306641 0.79328,-1.080543 2.35143,-1.255151 4.15234,-1.384765 0.90046,-0.06481 1.8159,-0.110739 2.68555,-0.392579 0.86965,-0.281839 1.755,-0.946496 2.06641,-1.990234 0.43788,-1.467646 0.37412,-2.771131 -0.0469,-3.847656 -0.421,-1.076525 -1.15009,-1.895758 -1.90234,-2.595703 -1.5045,-1.3998902 -3.06822,-2.4387183 -3.55469,-3.7226565 -0.0948,-0.2503411 0.0542,-0.6844081 0.42383,-1.1601563 0.36962,-0.4757481 0.81445,-0.8222656 0.81445,-0.8222656 l 1.93164,-1.4746094 -2.41211,-0.3105468 c 0,0 -4.21801,-0.5417747 -11.04101,-0.4414063 z m -0.0273,1.9804688 c 4.49708,-0.061432 7.21154,0.1233576 8.91602,0.2753906 -0.46128,0.7057802 -0.87399,1.6131633 -0.47656,2.6621094 0.81135,2.1414296 2.76408,3.2703741 4.0625,4.4785151 0.64921,0.604071 1.14384,1.198382 1.40234,1.859376 0.2585,0.660993 0.32891,1.418275 -0.008,2.546874 -0.11579,0.38809 -0.26099,0.49466 -0.76563,0.658204 -0.50463,0.163543 -1.30769,0.237726 -2.21093,0.302734 -1.80649,0.130015 -4.19533,0.25323 -5.6211,2.195312 -0.68879,0.938214 -0.6374,2.039678 -0.4668,2.886719 0.17061,0.847042 0.4083,1.589285 0.41211,2.337891 0.008,1.474753 -0.4027,3.286489 -1.16211,4.755859 -0.7594,1.46937 -1.83187,2.5509 -3.06054,2.886719 -0.37957,0.103743 -0.57279,0.05743 -0.84961,-0.08398 -0.27682,-0.141415 -0.60428,-0.42705 -0.95703,-0.783204 -0.35276,-0.356153 -0.72279,-0.776942 -1.22071,-1.134765 -0.49791,-0.357823 -1.22812,-0.649172 -2,-0.492188 -1.41525,0.287836 -2.4567,1.292107 -3.27539,2.525391 -0.81868,1.233284 -1.48429,2.754137 -2.20898,4.416016 -1.44939,3.323757 -3.11292,7.205048 -6.11719,10.292968 -7.88995,8.109642 -20.34928,13.356228 -30.925779,16.984375 -3.469901,1.190311 -7.596501,1.000837 -10.986329,0.484375 -1.694913,-0.25823 -3.202927,-0.5927 -4.365234,-0.859375 -0.581153,-0.133337 -1.074638,-0.250392 -1.476562,-0.333984 -0.401925,-0.08359 -0.611858,-0.17026 -1.083985,-0.123047 l -0.199219,0.01953 -0.175781,0.0957 c -3.139073,1.6951 -4.792829,5.587112 -4.953125,9.029297 -0.386495,8.299518 6.7716,14.31606 14.03125,13.765625 3.741223,-0.283664 6.438504,-2.908261 8.939453,-4.828125 1.955177,-1.500898 5.006391,-1.450783 6.984371,0.207032 -1.27035,0.344113 -2.847186,0.938334 -4.201168,2.197265 -3.374425,3.137543 -6.311573,6.528226 -9.972656,8.435547 C 84.280324,94.315525 79.887419,94.894725 73.125,92.255859 63.866987,88.643151 61.925781,77.691406 61.925781,77.691406 l -0.01172,-0.07031 -0.02148,-0.06836 C 58.663292,67.556856 55.943221,54.185568 55.818359,53.570312 79.116731,10.928559 121.93855,5.0211862 141.93359,4.7480469 Z" |
2497 | + id="path4442" |
2498 | + inkscape:connector-curvature="0" /> |
2499 | + <g |
2500 | + transform="translate(40,2.2594669e-6)" |
2501 | + id="g4427"> |
2502 | + <path |
2503 | + sodipodi:type="arc" |
2504 | + style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.84735239;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2505 | + id="path4055" |
2506 | + sodipodi:cx="46.179249" |
2507 | + sodipodi:cy="63.803059" |
2508 | + sodipodi:rx="11.440429" |
2509 | + sodipodi:ry="11.440429" |
2510 | + d="m 57.619678,63.803059 c 0,6.318374 -5.122055,11.440428 -11.440429,11.440428 -6.318375,0 -11.440429,-5.122054 -11.440429,-11.440428 0,-6.318375 5.122054,-11.440429 11.440429,-11.440429 6.318374,0 11.440429,5.122054 11.440429,11.440429 z" |
2511 | + transform="matrix(1.0826305,0,0,1.0826305,-31.853406,-3.5601908)" /> |
2512 | + <g |
2513 | + id="g4359"> |
2514 | + <path |
2515 | + transform="matrix(1.6953846,0,0,1.6953846,-65.06997,-43.304227)" |
2516 | + d="m 54.179198,62.984692 c 0,2.398215 -1.944138,4.342352 -4.342353,4.342352 -2.398215,0 -4.342352,-1.944137 -4.342352,-4.342352 0,-2.398215 1.944137,-4.342353 4.342352,-4.342353 2.398215,0 4.342353,1.944138 4.342353,4.342353 z" |
2517 | + sodipodi:ry="4.3423524" |
2518 | + sodipodi:rx="4.3423524" |
2519 | + sodipodi:cy="62.984692" |
2520 | + sodipodi:cx="49.836845" |
2521 | + id="path4057" |
2522 | + style="color:#000000;fill:#221d1f;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2523 | + sodipodi:type="arc" /> |
2524 | + <g |
2525 | + style="stroke:#211e1e;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;filter:url(#filter4316)" |
2526 | + transform="translate(30,0)" |
2527 | + clip-path="url(#clipPath4296-4)" |
2528 | + id="g4293" |
2529 | + inkscape:groupmode="maskhelper"> |
2530 | + <path |
2531 | + style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:#211e1e;stroke-width:2;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2532 | + d="m -16.417983,67.960724 c -2.475161,-3.225693 -1.866735,-7.847147 1.358958,-10.322308 0.767002,-0.588543 1.642417,-1.020249 2.576261,-1.270472 l 4.176798,7.979577 z" |
2533 | + id="path4059" |
2534 | + inkscape:connector-curvature="0" |
2535 | + sodipodi:nodetypes="csccc" /> |
2536 | + </g> |
2537 | + <g |
2538 | + style="filter:url(#filter4355)" |
2539 | + transform="translate(30,0)" |
2540 | + clip-path="url(#clipPath4327-6)" |
2541 | + id="g4324" |
2542 | + inkscape:groupmode="maskhelper"> |
2543 | + <path |
2544 | + transform="matrix(1.6953846,0,0,1.6953846,-95.06997,-43.304227)" |
2545 | + d="m 54.179198,62.984692 c 0,2.398215 -1.944138,4.342352 -4.342353,4.342352 -2.398215,0 -4.342352,-1.944137 -4.342352,-4.342352 0,-2.398215 1.944137,-4.342353 4.342352,-4.342353 2.398215,0 4.342353,1.944138 4.342353,4.342353 z" |
2546 | + sodipodi:ry="4.3423524" |
2547 | + sodipodi:rx="4.3423524" |
2548 | + sodipodi:cy="62.984692" |
2549 | + sodipodi:cx="49.836845" |
2550 | + id="path4320" |
2551 | + style="color:#000000;fill:none;stroke:#1a1a1a;stroke-width:0.41288567;stroke-miterlimit:4;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2552 | + sodipodi:type="arc" /> |
2553 | + </g> |
2554 | + </g> |
2555 | + <g |
2556 | + inkscape:groupmode="maskhelper" |
2557 | + id="g4372" |
2558 | + clip-path="url(#clipPath4375-1)" |
2559 | + transform="translate(40,0)" |
2560 | + style="filter:url(#filter4423)"> |
2561 | + <path |
2562 | + sodipodi:nodetypes="ccsc" |
2563 | + inkscape:connector-curvature="0" |
2564 | + id="path4368" |
2565 | + d="m -27.672084,74.835975 c 10.261313,2.084329 16.728078,-7.589096 16.728078,-7.589096 0,0 -0.211048,6.108523 -6.787431,8.711427 -6.213454,2.459258 -9.940647,-1.122331 -9.940647,-1.122331 z" |
2566 | + style="color:#000000;fill:#8dd7f7;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> |
2567 | + </g> |
2568 | + <path |
2569 | + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.84735239;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif" |
2570 | + d="m 18.142133,52.12973 c -7.380905,0 -13.3869808,6.00396 -13.3869808,13.384865 0,7.380905 6.0060758,13.386981 13.3869808,13.386981 7.380904,0 13.384865,-6.006076 13.384865,-13.386981 0,-7.380905 -6.003961,-13.384865 -13.384865,-13.384865 z m 0,2.000329 c 6.300024,0 11.384535,5.084512 11.384535,11.384536 0,6.300025 -5.084511,11.386651 -11.384535,11.386651 -6.300025,0 -11.3866521,-5.086626 -11.3866521,-11.386651 0,-6.300024 5.0866271,-11.384536 11.3866521,-11.384536 z" |
2571 | + id="path4393" |
2572 | + inkscape:connector-curvature="0" /> |
2573 | + </g> |
2574 | + </g> |
2575 | + </g> |
2576 | + <g |
2577 | + inkscape:groupmode="layer" |
2578 | + id="layer3" |
2579 | + inkscape:label="PLACE YOUR PICTOGRAM HERE" |
2580 | + style="display:inline" /> |
2581 | + <g |
2582 | + inkscape:groupmode="layer" |
2583 | + id="layer2" |
2584 | + inkscape:label="BADGE" |
2585 | + style="display:none" |
2586 | + sodipodi:insensitive="true"> |
2587 | + <g |
2588 | + style="display:inline" |
2589 | + transform="translate(-340.00001,-581)" |
2590 | + id="g4394" |
2591 | + clip-path="none"> |
2592 | + <g |
2593 | + id="g855"> |
2594 | + <g |
2595 | + inkscape:groupmode="maskhelper" |
2596 | + id="g870" |
2597 | + clip-path="url(#clipPath873)" |
2598 | + style="opacity:0.6;filter:url(#filter891)"> |
2599 | + <path |
2600 | + transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-237.54282)" |
2601 | + d="m 264,552.36218 c 0,6.62742 -5.37258,12 -12,12 -6.62742,0 -12,-5.37258 -12,-12 0,-6.62741 5.37258,-12 12,-12 6.62742,0 12,5.37259 12,12 z" |
2602 | + sodipodi:ry="12" |
2603 | + sodipodi:rx="12" |
2604 | + sodipodi:cy="552.36218" |
2605 | + sodipodi:cx="252" |
2606 | + id="path844" |
2607 | + style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2608 | + sodipodi:type="arc" /> |
2609 | + </g> |
2610 | + <g |
2611 | + id="g862"> |
2612 | + <path |
2613 | + sodipodi:type="arc" |
2614 | + style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2615 | + id="path4398" |
2616 | + sodipodi:cx="252" |
2617 | + sodipodi:cy="552.36218" |
2618 | + sodipodi:rx="12" |
2619 | + sodipodi:ry="12" |
2620 | + d="m 264,552.36218 c 0,6.62742 -5.37258,12 -12,12 -6.62742,0 -12,-5.37258 -12,-12 0,-6.62741 5.37258,-12 12,-12 6.62742,0 12,5.37259 12,12 z" |
2621 | + transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-238.54282)" /> |
2622 | + <path |
2623 | + transform="matrix(1.25,0,0,1.25,33,-100.45273)" |
2624 | + d="m 264,552.36218 c 0,6.62742 -5.37258,12 -12,12 -6.62742,0 -12,-5.37258 -12,-12 0,-6.62741 5.37258,-12 12,-12 6.62742,0 12,5.37259 12,12 z" |
2625 | + sodipodi:ry="12" |
2626 | + sodipodi:rx="12" |
2627 | + sodipodi:cy="552.36218" |
2628 | + sodipodi:cx="252" |
2629 | + id="path4400" |
2630 | + style="color:#000000;fill:#dd4814;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2631 | + sodipodi:type="arc" /> |
2632 | + <path |
2633 | + sodipodi:type="star" |
2634 | + style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
2635 | + id="path4459" |
2636 | + sodipodi:sides="5" |
2637 | + sodipodi:cx="666.19574" |
2638 | + sodipodi:cy="589.50385" |
2639 | + sodipodi:r1="7.2431178" |
2640 | + sodipodi:r2="4.3458705" |
2641 | + sodipodi:arg1="1.0471976" |
2642 | + sodipodi:arg2="1.6755161" |
2643 | + inkscape:flatsided="false" |
2644 | + inkscape:rounded="0.1" |
2645 | + inkscape:randomized="0" |
2646 | + d="m 669.8173,595.77657 c -0.39132,0.22593 -3.62645,-1.90343 -4.07583,-1.95066 -0.44938,-0.0472 -4.05653,1.36297 -4.39232,1.06062 -0.3358,-0.30235 0.68963,-4.03715 0.59569,-4.47913 -0.0939,-0.44198 -2.5498,-3.43681 -2.36602,-3.8496 0.18379,-0.41279 4.05267,-0.59166 4.44398,-0.81759 0.39132,-0.22593 2.48067,-3.48704 2.93005,-3.4398 0.44938,0.0472 1.81505,3.67147 2.15084,3.97382 0.3358,0.30236 4.08294,1.2817 4.17689,1.72369 0.0939,0.44198 -2.9309,2.86076 -3.11469,3.27355 -0.18379,0.41279 0.0427,4.27917 -0.34859,4.5051 z" |
2647 | + transform="matrix(1.511423,-0.16366377,0.16366377,1.511423,-755.37346,-191.93651)" /> |
2648 | + </g> |
2649 | + </g> |
2650 | + </g> |
2651 | + </g> |
2652 | +</svg> |
2653 | |
2654 | === added file 'charms/client-forwardproxy/metadata.yaml' |
2655 | --- charms/client-forwardproxy/metadata.yaml 1970-01-01 00:00:00 +0000 |
2656 | +++ charms/client-forwardproxy/metadata.yaml 2017-03-14 23:38:01 +0000 |
2657 | @@ -0,0 +1,16 @@ |
2658 | +name: client-forwardproxy |
2659 | +maintainer: Curtis Hovey <curtis.hovey@canonical.com> |
2660 | +summary: Setup a machine to be a client of a forward proxy. |
2661 | +description: | |
2662 | + Setup a machine to be a client of a forward proxy |
2663 | + to access the outside network. Squid 3 can proxy FTP, HTTP, and HTTPS. |
2664 | +requires: |
2665 | + forwardproxy: |
2666 | + interface: http |
2667 | +tags: |
2668 | + - cache-proxy |
2669 | +series: |
2670 | + - xenial |
2671 | + - trusty |
2672 | + - precise |
2673 | + - yakkety |
2674 | |
2675 | === added file 'charms/client-forwardproxy/revision' |
2676 | --- charms/client-forwardproxy/revision 1970-01-01 00:00:00 +0000 |
2677 | +++ charms/client-forwardproxy/revision 2017-03-14 23:38:01 +0000 |
2678 | @@ -0,0 +1,1 @@ |
2679 | +0 |
2680 | |
2681 | === added directory 'charms/client-forwardproxy/scripts' |
2682 | === added file 'charms/client-forwardproxy/scripts/setup-lxd.sh' |
2683 | --- charms/client-forwardproxy/scripts/setup-lxd.sh 1970-01-01 00:00:00 +0000 |
2684 | +++ charms/client-forwardproxy/scripts/setup-lxd.sh 2017-03-14 23:38:01 +0000 |
2685 | @@ -0,0 +1,29 @@ |
2686 | +#!/bin/sh |
2687 | +# Copyright 2016 Canonical Ltd. |
2688 | +# Licensed under the AGPLv3, see LICENCE file for details. |
2689 | +set -ex |
2690 | + |
2691 | +# Do the manual steps a user has to run on a fresh system to get an lxd |
2692 | +# bridge so the juju lxd provider can function. Taken from changes made |
2693 | +# to cloud-init to do approximately this. |
2694 | + |
2695 | +debconf-communicate << EOF |
2696 | +set lxd/setup-bridge true |
2697 | +set lxd/bridge-domain lxd |
2698 | +set lxd/bridge-name lxdbr0 |
2699 | +set lxd/bridge-ipv4 true |
2700 | +set lxd/bridge-ipv4-address 10.0.8.1 |
2701 | +set lxd/bridge-ipv4-dhcp-first 10.0.8.2 |
2702 | +set lxd/bridge-ipv4-dhcp-last 10.0.8.254 |
2703 | +set lxd/bridge-ipv4-dhcp-leases 252 |
2704 | +set lxd/bridge-ipv4-netmask 24 |
2705 | +set lxd/bridge-ipv4-nat true |
2706 | +set lxd/bridge-ipv6 false |
2707 | +EOF |
2708 | + |
2709 | +rm -rf /etc/default/lxd-bridge |
2710 | + |
2711 | +dpkg-reconfigure lxd --frontend=noninteractive |
2712 | + |
2713 | +# Must run a command for systemd socket activation to start the service |
2714 | +lxc finger |
2715 | |
2716 | === added directory 'charms/dummy-resource' |
2717 | === added file 'charms/dummy-resource/bar.txt' |
2718 | --- charms/dummy-resource/bar.txt 1970-01-01 00:00:00 +0000 |
2719 | +++ charms/dummy-resource/bar.txt 2017-03-14 23:38:01 +0000 |
2720 | @@ -0,0 +1,1 @@ |
2721 | +The bar is high. |
2722 | |
2723 | === added file 'charms/dummy-resource/baz.txt' |
2724 | --- charms/dummy-resource/baz.txt 1970-01-01 00:00:00 +0000 |
2725 | +++ charms/dummy-resource/baz.txt 2017-03-14 23:38:01 +0000 |
2726 | @@ -0,0 +1,1 @@ |
2727 | +There is baz in this file. |
2728 | |
2729 | === added file 'charms/dummy-resource/config.yaml' |
2730 | --- charms/dummy-resource/config.yaml 1970-01-01 00:00:00 +0000 |
2731 | +++ charms/dummy-resource/config.yaml 2017-03-14 23:38:01 +0000 |
2732 | @@ -0,0 +1,5 @@ |
2733 | +options: |
2734 | + foo.bar: |
2735 | + type: int |
2736 | + default: 3 |
2737 | + description: Number of foo.bars. |
2738 | |
2739 | === added file 'charms/dummy-resource/foo.txt' |
2740 | --- charms/dummy-resource/foo.txt 1970-01-01 00:00:00 +0000 |
2741 | +++ charms/dummy-resource/foo.txt 2017-03-14 23:38:01 +0000 |
2742 | @@ -0,0 +1,1 @@ |
2743 | +There is foo and more foo. |
2744 | |
2745 | === added directory 'charms/dummy-resource/hooks' |
2746 | === added file 'charms/dummy-resource/hooks/config-changed' |
2747 | --- charms/dummy-resource/hooks/config-changed 1970-01-01 00:00:00 +0000 |
2748 | +++ charms/dummy-resource/hooks/config-changed 2017-03-14 23:38:01 +0000 |
2749 | @@ -0,0 +1,16 @@ |
2750 | +#!/bin/bash |
2751 | + |
2752 | +set -x |
2753 | +RES_NAME="bar" |
2754 | + |
2755 | +START_TIME=$(date +%s) |
2756 | +RES_PATH=$(2>&1 resource-get $RES_NAME) |
2757 | +if [ $? -ne 0 ]; then |
2758 | + RES_GET_STDERR=$RES_PATH |
2759 | + status-set blocked "[resource "'"'"$RES_NAME"'"'"] $RES_GET_STDERR" |
2760 | + exit 0 |
2761 | +fi |
2762 | + |
2763 | +TOTAL=$(($(date +%s) - $START_TIME)) |
2764 | +SIZE=$(du -b $RES_PATH | cut -f1) |
2765 | +status-set maintenance "Path: $RES_PATH Time: $TOTAL sec Size: $SIZE bytes" |
2766 | |
2767 | === added file 'charms/dummy-resource/hooks/hooks' |
2768 | === added file 'charms/dummy-resource/hooks/install' |
2769 | --- charms/dummy-resource/hooks/install 1970-01-01 00:00:00 +0000 |
2770 | +++ charms/dummy-resource/hooks/install 2017-03-14 23:38:01 +0000 |
2771 | @@ -0,0 +1,17 @@ |
2772 | +#!/bin/bash |
2773 | + |
2774 | +set -x |
2775 | + |
2776 | +RES_NAME="foo" |
2777 | + |
2778 | +START_TIME=$(date +%s) |
2779 | +RES_PATH=$(2>&1 resource-get $RES_NAME) |
2780 | +if [ $? -ne 0 ]; then |
2781 | + RES_GET_STDERR=$RES_PATH |
2782 | + status-set blocked "[resource "'"'"$RES_NAME"'"'"] $RES_GET_STDERR" |
2783 | + exit 0 |
2784 | +fi |
2785 | + |
2786 | +TOTAL=$(($(date +%s) - $START_TIME)) |
2787 | +SIZE=$(du -b $RES_PATH | cut -f1) |
2788 | +status-set maintenance "Path: $RES_PATH Time: $TOTAL sec Size: $SIZE bytes" |
2789 | |
2790 | === added file 'charms/dummy-resource/metadata.yaml' |
2791 | --- charms/dummy-resource/metadata.yaml 1970-01-01 00:00:00 +0000 |
2792 | +++ charms/dummy-resource/metadata.yaml 2017-03-14 23:38:01 +0000 |
2793 | @@ -0,0 +1,23 @@ |
2794 | +name: dummy-resource |
2795 | +maintainer: Seman <seman.said@canonical.com> |
2796 | +summary: Dummy charm to test resources. |
2797 | +description: This dummy charm is used for resource testing. |
2798 | +categories: |
2799 | + - misc |
2800 | +series: |
2801 | + - trusty |
2802 | + - precise |
2803 | + - utopic |
2804 | + - vivid |
2805 | + - wily |
2806 | + - xenial |
2807 | +resources: |
2808 | + foo: |
2809 | + type: file |
2810 | + filename: foo.txt |
2811 | + description: "foo resource." |
2812 | + bar: |
2813 | + type: file |
2814 | + filename: bar.txt |
2815 | + description: "bar resource." |
2816 | + |
2817 | |
2818 | === added file 'charms/dummy-resource/revision' |
2819 | --- charms/dummy-resource/revision 1970-01-01 00:00:00 +0000 |
2820 | +++ charms/dummy-resource/revision 2017-03-14 23:38:01 +0000 |
2821 | @@ -0,0 +1,1 @@ |
2822 | +0 |
2823 | \ No newline at end of file |
2824 | |
2825 | === added directory 'charms/dummy-sink' |
2826 | === added file 'charms/dummy-sink/README' |
2827 | --- charms/dummy-sink/README 1970-01-01 00:00:00 +0000 |
2828 | +++ charms/dummy-sink/README 2017-03-14 23:38:01 +0000 |
2829 | @@ -0,0 +1,3 @@ |
2830 | +This is a simple workaround to allow jenkins-slave to use a Jenkins in another |
2831 | +environment. Typically, you deploy this charm to the same machine as |
2832 | +jenkins-slave, set master_url to the URL of the actual master and add-relation. |
2833 | |
2834 | === added file 'charms/dummy-sink/config.yaml' |
2835 | --- charms/dummy-sink/config.yaml 1970-01-01 00:00:00 +0000 |
2836 | +++ charms/dummy-sink/config.yaml 2017-03-14 23:38:01 +0000 |
2837 | @@ -0,0 +1,5 @@ |
2838 | +options: |
2839 | + token: |
2840 | + type: string |
2841 | + default: '' |
2842 | + description: Token used to prove that the relation is working |
2843 | |
2844 | === added file 'charms/dummy-sink/copyright' |
2845 | --- charms/dummy-sink/copyright 1970-01-01 00:00:00 +0000 |
2846 | +++ charms/dummy-sink/copyright 2017-03-14 23:38:01 +0000 |
2847 | @@ -0,0 +1,1 @@ |
2848 | +Copyright 2014 Canonical Ltd. |
2849 | |
2850 | === added directory 'charms/dummy-sink/hooks' |
2851 | === added file 'charms/dummy-sink/hooks/config-changed' |
2852 | --- charms/dummy-sink/hooks/config-changed 1970-01-01 00:00:00 +0000 |
2853 | +++ charms/dummy-sink/hooks/config-changed 2017-03-14 23:38:01 +0000 |
2854 | @@ -0,0 +1,1 @@ |
2855 | +#!/bin/sh |
2856 | |
2857 | === added file 'charms/dummy-sink/hooks/install' |
2858 | --- charms/dummy-sink/hooks/install 1970-01-01 00:00:00 +0000 |
2859 | +++ charms/dummy-sink/hooks/install 2017-03-14 23:38:01 +0000 |
2860 | @@ -0,0 +1,3 @@ |
2861 | +#!/bin/sh |
2862 | + |
2863 | +status-set maintenance "Installed" || true |
2864 | |
2865 | === added file 'charms/dummy-sink/hooks/source-relation-changed' |
2866 | --- charms/dummy-sink/hooks/source-relation-changed 1970-01-01 00:00:00 +0000 |
2867 | +++ charms/dummy-sink/hooks/source-relation-changed 2017-03-14 23:38:01 +0000 |
2868 | @@ -0,0 +1,13 @@ |
2869 | +#!/bin/bash |
2870 | +set -eux |
2871 | + |
2872 | +mkdir -p /var/run/dummy-sink |
2873 | +token=$(relation-get token) |
2874 | +echo "$token" > /var/run/dummy-sink/token |
2875 | +if [[ -z $token ]]; then |
2876 | + juju-log -l INFO "Waiting for token" |
2877 | + status-set waiting "Waiting for token" || true |
2878 | +else |
2879 | + juju-log -l INFO "Token is $token" |
2880 | + status-set active "Token is $token" || true |
2881 | +fi |
2882 | |
2883 | === added file 'charms/dummy-sink/hooks/start' |
2884 | --- charms/dummy-sink/hooks/start 1970-01-01 00:00:00 +0000 |
2885 | +++ charms/dummy-sink/hooks/start 2017-03-14 23:38:01 +0000 |
2886 | @@ -0,0 +1,3 @@ |
2887 | +#!/bin/sh |
2888 | + |
2889 | +status-set maintenance "Started" || true |
2890 | |
2891 | === added file 'charms/dummy-sink/metadata.yaml' |
2892 | --- charms/dummy-sink/metadata.yaml 1970-01-01 00:00:00 +0000 |
2893 | +++ charms/dummy-sink/metadata.yaml 2017-03-14 23:38:01 +0000 |
2894 | @@ -0,0 +1,18 @@ |
2895 | +name: dummy-sink |
2896 | +maintainer: Aaron Bentley <aaron.bentley@canonical.com> |
2897 | +summary: Dummy charm that accepts data |
2898 | +description: | |
2899 | + This dummy charm is used to verify that a relationship is created correctly |
2900 | +provides: |
2901 | + source: |
2902 | + interface: dummy-token |
2903 | +categories: |
2904 | + - misc |
2905 | +series: |
2906 | + - trusty |
2907 | + - precise |
2908 | + - utopic |
2909 | + - vivid |
2910 | + - wily |
2911 | + - xenial |
2912 | + - yakkety |
2913 | |
2914 | === added directory 'charms/dummy-source' |
2915 | === added file 'charms/dummy-source/README' |
2916 | --- charms/dummy-source/README 1970-01-01 00:00:00 +0000 |
2917 | +++ charms/dummy-source/README 2017-03-14 23:38:01 +0000 |
2918 | @@ -0,0 +1,3 @@ |
2919 | +This is a simple workaround to allow jenkins-slave to use a Jenkins in another |
2920 | +environment. Typically, you deploy this charm to the same machine as |
2921 | +jenkins-slave, set master_url to the URL of the actual master and add-relation. |
2922 | |
2923 | === added file 'charms/dummy-source/config.yaml' |
2924 | --- charms/dummy-source/config.yaml 1970-01-01 00:00:00 +0000 |
2925 | +++ charms/dummy-source/config.yaml 2017-03-14 23:38:01 +0000 |
2926 | @@ -0,0 +1,5 @@ |
2927 | +options: |
2928 | + token: |
2929 | + type: string |
2930 | + default: '' |
2931 | + description: Token used to prove that the relation is working |
2932 | |
2933 | === added file 'charms/dummy-source/copyright' |
2934 | --- charms/dummy-source/copyright 1970-01-01 00:00:00 +0000 |
2935 | +++ charms/dummy-source/copyright 2017-03-14 23:38:01 +0000 |
2936 | @@ -0,0 +1,1 @@ |
2937 | +Copyright 2014 Canonical Ltd. |
2938 | |
2939 | === added directory 'charms/dummy-source/hooks' |
2940 | === added file 'charms/dummy-source/hooks/config-changed' |
2941 | --- charms/dummy-source/hooks/config-changed 1970-01-01 00:00:00 +0000 |
2942 | +++ charms/dummy-source/hooks/config-changed 2017-03-14 23:38:01 +0000 |
2943 | @@ -0,0 +1,16 @@ |
2944 | +#!/bin/bash |
2945 | +set -eux |
2946 | + |
2947 | +juju-log -l INFO "Getting token" |
2948 | +status-set maintenance "Getting token" || true |
2949 | +token="$(config-get token)" |
2950 | +for relation_id in $(relation-ids sink); do |
2951 | + relation-set -r $relation_id token="$token" |
2952 | +done |
2953 | +if [[ -z $token ]]; then |
2954 | + juju-log -l WARNING "Blocked: set the token" |
2955 | + status-set blocked "Set the token" || true |
2956 | +else |
2957 | + juju-log -l INFO "Token is $token" |
2958 | + status-set active "Token is $token" || true |
2959 | +fi |
2960 | |
2961 | === added file 'charms/dummy-source/hooks/install' |
2962 | --- charms/dummy-source/hooks/install 1970-01-01 00:00:00 +0000 |
2963 | +++ charms/dummy-source/hooks/install 2017-03-14 23:38:01 +0000 |
2964 | @@ -0,0 +1,3 @@ |
2965 | +#!/bin/sh |
2966 | + |
2967 | +status-set maintenance "Installed" || true |
2968 | |
2969 | === added symlink 'charms/dummy-source/hooks/sink-relation-joined' |
2970 | === target is u'config-changed' |
2971 | === added file 'charms/dummy-source/hooks/start' |
2972 | --- charms/dummy-source/hooks/start 1970-01-01 00:00:00 +0000 |
2973 | +++ charms/dummy-source/hooks/start 2017-03-14 23:38:01 +0000 |
2974 | @@ -0,0 +1,3 @@ |
2975 | +#!/bin/sh |
2976 | + |
2977 | +status-set maintenance "Started" || true |
2978 | |
2979 | === added file 'charms/dummy-source/metadata.yaml' |
2980 | --- charms/dummy-source/metadata.yaml 1970-01-01 00:00:00 +0000 |
2981 | +++ charms/dummy-source/metadata.yaml 2017-03-14 23:38:01 +0000 |
2982 | @@ -0,0 +1,19 @@ |
2983 | +name: dummy-source |
2984 | +maintainer: Aaron Bentley <aaron.bentley@canonical.com> |
2985 | +summary: Dummy charm that provides data |
2986 | +description: | |
2987 | + This dummy charm is used to verify that a relationship is created correctly |
2988 | +requires: |
2989 | + sink: |
2990 | + interface: dummy-token |
2991 | +categories: |
2992 | + - misc |
2993 | +series: |
2994 | + - trusty |
2995 | + - precise |
2996 | + - utopic |
2997 | + - vivid |
2998 | + - wily |
2999 | + - xenial |
3000 | + - yakkety |
3001 | + |
3002 | |
3003 | === added directory 'charms/dummy-storage' |
3004 | === added file 'charms/dummy-storage/config.yaml' |
3005 | --- charms/dummy-storage/config.yaml 1970-01-01 00:00:00 +0000 |
3006 | +++ charms/dummy-storage/config.yaml 2017-03-14 23:38:01 +0000 |
3007 | @@ -0,0 +1,10 @@ |
3008 | +options: |
3009 | + # Will be tokens for each storage type. |
3010 | + single-fs-token: |
3011 | + type: string |
3012 | + default: '' |
3013 | + description: Token used to prove data stored is persistent |
3014 | + multi-fs-token: |
3015 | + type: string |
3016 | + default: '' |
3017 | + description: Token used to prove data stored is persistent |
3018 | |
3019 | === added directory 'charms/dummy-storage/hooks' |
3020 | === added file 'charms/dummy-storage/hooks/config-changed' |
3021 | --- charms/dummy-storage/hooks/config-changed 1970-01-01 00:00:00 +0000 |
3022 | +++ charms/dummy-storage/hooks/config-changed 2017-03-14 23:38:01 +0000 |
3023 | @@ -0,0 +1,59 @@ |
3024 | +#!/bin/bash |
3025 | +set -x |
3026 | + |
3027 | +juju-log -l INFO "Getting file fs token details." |
3028 | +status-set maintenance "Getting file fs token details." || true |
3029 | + |
3030 | +function set_token() { |
3031 | + token_name=$1 # i.e. single-fs-token |
3032 | + fs_path=$2 # i.e. /srv/single-fs/ or /srv/multi-fs/multi-fs/13 |
3033 | + |
3034 | + token="$(config-get $token_name)" |
3035 | + token_file="$fs_path/token" |
3036 | + |
3037 | + juju-log -l INFO "Token file: $token_file" |
3038 | + |
3039 | + if [ -f $token_file ]; then |
3040 | + juju-log -l INFO "Using stored token details." |
3041 | + |
3042 | + # If we have a token and we have a token file, check the contents if the differ update it otherwise use it. |
3043 | + current_file_token=$(cat $token_file | grep "$token_name" | head -1 | cut -d":" -f2) |
3044 | + if [ "$current_file_token" != "$token" ]; then |
3045 | + token=$token |
3046 | + else |
3047 | + token=$(cat $token_file) |
3048 | + fi |
3049 | + fi |
3050 | + |
3051 | + if [[ -z $token ]]; then |
3052 | + fs_token="Blocked: not set" |
3053 | + juju-log -l WARNING "$fs_token" |
3054 | + else |
3055 | + fs_token="$token" |
3056 | + echo "$token" > $token_file |
3057 | + juju-log -l INFO "$fs_token" |
3058 | + fi |
3059 | + |
3060 | + # Return the token value. |
3061 | + echo "$fs_token" |
3062 | +} |
3063 | + |
3064 | +# Clear any previous tokens or state. |
3065 | +echo > /tmp/status |
3066 | + |
3067 | +# First the single token |
3068 | +single_fs_token=$(set_token "single-fs-token" "/srv/single-fs") |
3069 | + |
3070 | +juju-log -l INFO "Setting single token details." |
3071 | +echo "single-fs-token:$single_fs_token" >> /tmp/status |
3072 | + |
3073 | +# Then the multi-fs token |
3074 | +for unit in $(storage-list multi-fs); do |
3075 | + fs_path=$(storage-get -s $unit | grep "^location:\ " | cut -d: -f2 | tr -d ' ') |
3076 | + multi_fs_token=$(set_token "multi-fs-token" "$fs_path") |
3077 | + juju-log -l INFO "Setting multi token details." |
3078 | + unit_token_number=$(echo $unit | cut -f2 -d"/") |
3079 | + echo "multi-fs-token/$unit_token_number:$multi_fs_token" >> /tmp/status |
3080 | +done |
3081 | + |
3082 | +status-set active "Stored token: /tmp/status" || true |
3083 | |
3084 | === added file 'charms/dummy-storage/hooks/hooks' |
3085 | === added file 'charms/dummy-storage/hooks/install' |
3086 | --- charms/dummy-storage/hooks/install 1970-01-01 00:00:00 +0000 |
3087 | +++ charms/dummy-storage/hooks/install 2017-03-14 23:38:01 +0000 |
3088 | @@ -0,0 +1,13 @@ |
3089 | +#!/bin/bash |
3090 | + |
3091 | +set -x |
3092 | + |
3093 | +juju-log -l INFO "Install" |
3094 | +juju-log -l INFO "Data on drive: $(cat /srv/single-fs/test.txt)" |
3095 | + |
3096 | +for unit in $(storage-list); do |
3097 | + juju-log -l INFO "Storage details for ${unit}: $(storage-get -s $unit)" |
3098 | +done |
3099 | + |
3100 | +# The storage-attached hook has fired so we can write some data there now. |
3101 | +status-set maintenance "Installed" || true |
3102 | |
3103 | === added file 'charms/dummy-storage/hooks/multi-fs-storage-attached' |
3104 | --- charms/dummy-storage/hooks/multi-fs-storage-attached 1970-01-01 00:00:00 +0000 |
3105 | +++ charms/dummy-storage/hooks/multi-fs-storage-attached 2017-03-14 23:38:01 +0000 |
3106 | @@ -0,0 +1,7 @@ |
3107 | +#!/bin/bash |
3108 | +set -x |
3109 | + |
3110 | +juju-log -l INFO "Storage is attached." |
3111 | +juju-log -l INFO "Storage details: $(storage-list)" |
3112 | + |
3113 | +status-set active "Started" || true |
3114 | |
3115 | === added file 'charms/dummy-storage/hooks/single-fs-storage-attached' |
3116 | --- charms/dummy-storage/hooks/single-fs-storage-attached 1970-01-01 00:00:00 +0000 |
3117 | +++ charms/dummy-storage/hooks/single-fs-storage-attached 2017-03-14 23:38:01 +0000 |
3118 | @@ -0,0 +1,5 @@ |
3119 | +#!/bin/bash |
3120 | +set -x |
3121 | + |
3122 | +juju-log -l INFO "Storage is attached." |
3123 | +juju-log -l INFO "Hook details: $(storage-list)" |
3124 | \ No newline at end of file |
3125 | |
3126 | === added file 'charms/dummy-storage/hooks/start' |
3127 | --- charms/dummy-storage/hooks/start 1970-01-01 00:00:00 +0000 |
3128 | +++ charms/dummy-storage/hooks/start 2017-03-14 23:38:01 +0000 |
3129 | @@ -0,0 +1,5 @@ |
3130 | +#!/bin/bash |
3131 | +set -x |
3132 | + |
3133 | +juju-log -l INFO "Starting, checking what storage we have." |
3134 | +juju-log -l INFO "Storage details: $(storage-list)" |
3135 | |
3136 | === added file 'charms/dummy-storage/metadata.yaml' |
3137 | --- charms/dummy-storage/metadata.yaml 1970-01-01 00:00:00 +0000 |
3138 | +++ charms/dummy-storage/metadata.yaml 2017-03-14 23:38:01 +0000 |
3139 | @@ -0,0 +1,26 @@ |
3140 | +name: dummy-storage |
3141 | +maintainer: Christopher Lee <chris.lee@canonical.com> |
3142 | +summary: Dummy charm that utilises storage. |
3143 | +description: This dummy charm is used for testing persistent storage. |
3144 | +categories: |
3145 | + - misc |
3146 | +series: |
3147 | + - trusty |
3148 | + - precise |
3149 | + - utopic |
3150 | + - vivid |
3151 | + - wily |
3152 | + - xenial |
3153 | +storage: |
3154 | + single-fs: |
3155 | + type: filesystem |
3156 | + description: Single instance storage of filesystem type. |
3157 | + minimum-size: 10M |
3158 | + location: /srv/single-fs |
3159 | + multi-fs: |
3160 | + type: filesystem |
3161 | + description: Multiple storage instances of filesystem type. |
3162 | + minimum-size: 10M |
3163 | + location: /srv/multi-fs |
3164 | + multiple: |
3165 | + range: 0-2 |
3166 | |
3167 | === added file 'charms/dummy-storage/revision' |
3168 | --- charms/dummy-storage/revision 1970-01-01 00:00:00 +0000 |
3169 | +++ charms/dummy-storage/revision 2017-03-14 23:38:01 +0000 |
3170 | @@ -0,0 +1,1 @@ |
3171 | +0 |
3172 | \ No newline at end of file |
3173 | |
3174 | === added directory 'charms/fill-logs' |
3175 | === added file 'charms/fill-logs/README.md' |
3176 | --- charms/fill-logs/README.md 1970-01-01 00:00:00 +0000 |
3177 | +++ charms/fill-logs/README.md 2017-03-14 23:38:01 +0000 |
3178 | @@ -0,0 +1,3 @@ |
3179 | +#fill-logs |
3180 | + |
3181 | +Fill-logs is a testing charm intended to be used to test log rotation. |
3182 | |
3183 | === added directory 'charms/fill-logs/actions' |
3184 | === added file 'charms/fill-logs/actions.yaml' |
3185 | --- charms/fill-logs/actions.yaml 1970-01-01 00:00:00 +0000 |
3186 | +++ charms/fill-logs/actions.yaml 2017-03-14 23:38:01 +0000 |
3187 | @@ -0,0 +1,25 @@ |
3188 | +fill-unit: |
3189 | + description: Fill the unit agent log with data. |
3190 | + params: |
3191 | + megs: |
3192 | + type: integer |
3193 | + description: number of MB of data to add to unit agent log |
3194 | + required: [megs] |
3195 | + additionalProperties: false |
3196 | +fill-machine: |
3197 | + description: Fill the machine agent log with data. |
3198 | + params: |
3199 | + megs: |
3200 | + type: integer |
3201 | + description: number of MB of data to add to machine agent log |
3202 | + machine: |
3203 | + type: integer |
3204 | + description: the machine number this unit is on |
3205 | + required: [megs, machine] |
3206 | + additionalProperties: false |
3207 | +machine-size: |
3208 | + description: Gets the name and sizes of machine agent logs. |
3209 | + additionalProperties: false |
3210 | +unit-size: |
3211 | + description: Gets the name and sizes of unit agent logs. |
3212 | + additionalProperties: false |
3213 | \ No newline at end of file |
3214 | |
3215 | === added file 'charms/fill-logs/actions/actions.go' |
3216 | --- charms/fill-logs/actions/actions.go 1970-01-01 00:00:00 +0000 |
3217 | +++ charms/fill-logs/actions/actions.go 2017-03-14 23:38:01 +0000 |
3218 | @@ -0,0 +1,149 @@ |
3219 | +package main |
3220 | + |
3221 | +import ( |
3222 | + "fmt" |
3223 | + "io" |
3224 | + "os" |
3225 | + "os/exec" |
3226 | + "path/filepath" |
3227 | + "strconv" |
3228 | + "strings" |
3229 | +) |
3230 | + |
3231 | +func main() { |
3232 | + if err := run(os.Args); err != nil { |
3233 | + fmt.Fprintln(os.Stderr, err) |
3234 | + os.Exit(1) |
3235 | + } |
3236 | +} |
3237 | + |
3238 | +func run(args []string) error { |
3239 | + if len(args) != 2 { |
3240 | + return fmt.Errorf("expected exactly one argument, the action name") |
3241 | + } |
3242 | + switch args[1] { |
3243 | + case "fill-unit": |
3244 | + return fillUnit() |
3245 | + case "fill-machine": |
3246 | + return fillMachine() |
3247 | + case "unit-size": |
3248 | + return unitLogSizes() |
3249 | + case "machine-size": |
3250 | + return machineLogSizes() |
3251 | + default: |
3252 | + return fmt.Errorf("unknown action: %q", args[1]) |
3253 | + } |
3254 | +} |
3255 | + |
3256 | +func fillUnit() error { |
3257 | + return fillLog(os.Stdout) |
3258 | +} |
3259 | + |
3260 | +func unitLogSizes() error { |
3261 | + return writeSizes("/var/log/juju/unit-fill-logs*.log") |
3262 | +} |
3263 | + |
3264 | +func machineLogSizes() error { |
3265 | + return writeSizes("/var/log/juju/machine-*.log") |
3266 | +} |
3267 | + |
3268 | +func fillMachine() (err error) { |
3269 | + machine, err := getMachine() |
3270 | + if err != nil { |
3271 | + return err |
3272 | + } |
3273 | + svcname := fmt.Sprintf("jujud-machine-%d", machine) |
3274 | + out, err := exec.Command("service", svcname, "stop").CombinedOutput() |
3275 | + if err != nil { |
3276 | + return fmt.Errorf("error stopping machine agent %q: %s", svcname, out) |
3277 | + } |
3278 | + defer func() { |
3279 | + out, err2 := exec.Command("service", svcname, "start").CombinedOutput() |
3280 | + if err2 == nil { |
3281 | + return |
3282 | + } |
3283 | + if err == nil { |
3284 | + // function error is currently nil, so overwrite with this one. |
3285 | + err = fmt.Errorf("error starting machine agent %q: %s", svcname, out) |
3286 | + return |
3287 | + } |
3288 | + // function error is non-nil, so can't overwrite, just print. |
3289 | + fmt.Printf("error starting machine agent %q: %s", svcname, out) |
3290 | + }() |
3291 | + logname := fmt.Sprintf("/var/log/juju/machine-%d.log", machine) |
3292 | + f, err := os.OpenFile(logname, os.O_APPEND|os.O_WRONLY, 0644) |
3293 | + if err != nil { |
3294 | + return fmt.Errorf("failed to open machine log file: %v", err) |
3295 | + } |
3296 | + defer f.Close() |
3297 | + return fillLog(f) |
3298 | +} |
3299 | + |
3300 | +func fillLog(w io.Writer) error { |
3301 | + megs, err := getMegs() |
3302 | + if err != nil { |
3303 | + return err |
3304 | + } |
3305 | + bytes := megs * 1024 * 1024 |
3306 | + total := 0 |
3307 | + |
3308 | + for total < bytes { |
3309 | + // technically, the log file will be bigger than asked for, since it |
3310 | + // prepends a bunch of stuff to each log call, but this guarantees we've |
3311 | + // put *at least* this much data in the log, which should guarantee a |
3312 | + // rotation. |
3313 | + n, err := fmt.Fprintln(w, lorem) |
3314 | + if err != nil { |
3315 | + return fmt.Errorf("error writing to log: %s", err) |
3316 | + } |
3317 | + total += n |
3318 | + } |
3319 | + return nil |
3320 | +} |
3321 | + |
3322 | +func writeSizes(glob string) error { |
3323 | + paths, err := filepath.Glob(glob) |
3324 | + if err != nil { |
3325 | + return fmt.Errorf("error getting logs for %q: %s", glob, err) |
3326 | + } |
3327 | + |
3328 | + // go through the list in reverse, since the primary log file is always last, |
3329 | + // but it's a lot more convenient for parsing if it's first in the output. |
3330 | + for i, j := len(paths)-1, 0; i >= 0; i-- { |
3331 | + path := paths[i] |
3332 | + info, err := os.Stat(path) |
3333 | + if err != nil { |
3334 | + return fmt.Errorf("error stating log %q: %s", path, err) |
3335 | + } |
3336 | + name := fmt.Sprintf("result-map.log%d.name=%s", j, path) |
3337 | + size := fmt.Sprintf("result-map.log%d.size=%d", j, info.Size()/1024/1024) |
3338 | + out, err := exec.Command("action-set", name, size).CombinedOutput() |
3339 | + if err != nil { |
3340 | + return fmt.Errorf("error calling action-set: %s", out) |
3341 | + } |
3342 | + j++ |
3343 | + } |
3344 | + |
3345 | + return nil |
3346 | +} |
3347 | + |
3348 | +func getMegs() (int, error) { |
3349 | + return getInt("megs") |
3350 | +} |
3351 | + |
3352 | +func getMachine() (int, error) { |
3353 | + return getInt("machine") |
3354 | +} |
3355 | + |
3356 | +func getInt(name string) (int, error) { |
3357 | + out, err := exec.Command("action-get", name).CombinedOutput() |
3358 | + if err != nil { |
3359 | + fmt.Fprintln(os.Stderr, out) |
3360 | + return 0, fmt.Errorf("error calling action-get: %s", err) |
3361 | + } |
3362 | + // for some reason the output always comes with a /n at the end, so just |
3363 | + // trim it. |
3364 | + return strconv.Atoi(strings.TrimSpace(string(out))) |
3365 | +} |
3366 | + |
3367 | +const lorem = `Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.` |
3368 | |
3369 | === added file 'charms/fill-logs/actions/fill-machine' |
3370 | --- charms/fill-logs/actions/fill-machine 1970-01-01 00:00:00 +0000 |
3371 | +++ charms/fill-logs/actions/fill-machine 2017-03-14 23:38:01 +0000 |
3372 | @@ -0,0 +1,3 @@ |
3373 | +#!/bin/bash |
3374 | + |
3375 | +go run actions/actions.go fill-machine |
3376 | \ No newline at end of file |
3377 | |
3378 | === added file 'charms/fill-logs/actions/fill-unit' |
3379 | --- charms/fill-logs/actions/fill-unit 1970-01-01 00:00:00 +0000 |
3380 | +++ charms/fill-logs/actions/fill-unit 2017-03-14 23:38:01 +0000 |
3381 | @@ -0,0 +1,3 @@ |
3382 | +#!/bin/bash |
3383 | + |
3384 | +go run actions/actions.go fill-unit |
3385 | \ No newline at end of file |
3386 | |
3387 | === added file 'charms/fill-logs/actions/machine-size' |
3388 | --- charms/fill-logs/actions/machine-size 1970-01-01 00:00:00 +0000 |
3389 | +++ charms/fill-logs/actions/machine-size 2017-03-14 23:38:01 +0000 |
3390 | @@ -0,0 +1,3 @@ |
3391 | +#!/bin/bash |
3392 | + |
3393 | +go run actions/actions.go machine-size |
3394 | \ No newline at end of file |
3395 | |
3396 | === added file 'charms/fill-logs/actions/unit-size' |
3397 | --- charms/fill-logs/actions/unit-size 1970-01-01 00:00:00 +0000 |
3398 | +++ charms/fill-logs/actions/unit-size 2017-03-14 23:38:01 +0000 |
3399 | @@ -0,0 +1,3 @@ |
3400 | +#!/bin/bash |
3401 | + |
3402 | +go run actions/actions.go unit-size |
3403 | \ No newline at end of file |
3404 | |
3405 | === added file 'charms/fill-logs/config.yaml' |
3406 | --- charms/fill-logs/config.yaml 1970-01-01 00:00:00 +0000 |
3407 | +++ charms/fill-logs/config.yaml 2017-03-14 23:38:01 +0000 |
3408 | @@ -0,0 +1,1 @@ |
3409 | +options: |
3410 | |
3411 | === added directory 'charms/fill-logs/hooks' |
3412 | === added file 'charms/fill-logs/hooks/install' |
3413 | --- charms/fill-logs/hooks/install 1970-01-01 00:00:00 +0000 |
3414 | +++ charms/fill-logs/hooks/install 2017-03-14 23:38:01 +0000 |
3415 | @@ -0,0 +1,5 @@ |
3416 | +#!/bin/bash |
3417 | + |
3418 | +set -e |
3419 | + |
3420 | +apt-get install -y golang |
3421 | \ No newline at end of file |
3422 | |
3423 | === added file 'charms/fill-logs/metadata.yaml' |
3424 | --- charms/fill-logs/metadata.yaml 1970-01-01 00:00:00 +0000 |
3425 | +++ charms/fill-logs/metadata.yaml 2017-03-14 23:38:01 +0000 |
3426 | @@ -0,0 +1,13 @@ |
3427 | +name: fill-logs |
3428 | +summary: Test charm that fills the logs |
3429 | +maintainer: Nate Finch <nate.finch@gmail.com> |
3430 | +description: Charm fills the logs. |
3431 | +categories: |
3432 | + - application |
3433 | +series: |
3434 | + - trusty |
3435 | + - precise |
3436 | + - utopic |
3437 | + - vivid |
3438 | + - wily |
3439 | + - xenial |
3440 | |
3441 | === added directory 'charms/jenkins-juju-ci' |
3442 | === added file 'charms/jenkins-juju-ci/README.md' |
3443 | --- charms/jenkins-juju-ci/README.md 1970-01-01 00:00:00 +0000 |
3444 | +++ charms/jenkins-juju-ci/README.md 2017-03-14 23:38:01 +0000 |
3445 | @@ -0,0 +1,16 @@ |
3446 | +# Overview |
3447 | + |
3448 | +This charm provisions the Juju CI testing tools needed to run tests on a |
3449 | +jenkins slave. |
3450 | + |
3451 | + |
3452 | +# Usage |
3453 | + |
3454 | +To deploy a Jenkins slave you will also need to deploy the jenkins master |
3455 | +charm. This can be done as follows: |
3456 | + |
3457 | + juju deploy jenkins |
3458 | + juju deploy jenkins-slave |
3459 | + juju deploy jenkins-juju-ci |
3460 | + juju add-relation jenkins jenkins-slave |
3461 | + juju add-relation jenkins-juju-ci jenkins-slave |
3462 | |
3463 | === added file 'charms/jenkins-juju-ci/config.yaml' |
3464 | --- charms/jenkins-juju-ci/config.yaml 1970-01-01 00:00:00 +0000 |
3465 | +++ charms/jenkins-juju-ci/config.yaml 2017-03-14 23:38:01 +0000 |
3466 | @@ -0,0 +1,10 @@ |
3467 | +options: |
3468 | + lp-key: |
3469 | + type: string |
3470 | + default: "" |
3471 | + description: "SSH key for accessing private code on launchpad." |
3472 | + s3-proxy: |
3473 | + type: string |
3474 | + default: "" |
3475 | + description: "Route s3 calls though a proxy. eg squid.internal:3128" |
3476 | + |
3477 | |
3478 | === added file 'charms/jenkins-juju-ci/copyright' |
3479 | --- charms/jenkins-juju-ci/copyright 1970-01-01 00:00:00 +0000 |
3480 | +++ charms/jenkins-juju-ci/copyright 2017-03-14 23:38:01 +0000 |
3481 | @@ -0,0 +1,17 @@ |
3482 | +Format: http://dep.debian.net/deps/dep5/ |
3483 | + |
3484 | +Files: * |
3485 | +Copyright: Copyright 2016, Canonical Ltd., All Rights Reserved. |
3486 | +License: GPL-3 |
3487 | + This program is free software: you can redistribute it and/or modify |
3488 | + it under the terms of the GNU General Public License as published by |
3489 | + the Free Software Foundation, either version 3 of the License, or |
3490 | + (at your option) any later version. |
3491 | + . |
3492 | + This program is distributed in the hope that it will be useful, |
3493 | + but WITHOUT ANY WARRANTY; without even the implied warranty of |
3494 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3495 | + GNU General Public License for more details. |
3496 | + . |
3497 | + You should have received a copy of the GNU General Public License |
3498 | + along with this program. If not, see <http://www.gnu.org/licenses/>. |
3499 | |
3500 | === added directory 'charms/jenkins-juju-ci/files' |
3501 | === added directory 'charms/jenkins-juju-ci/hooks' |
3502 | === added file 'charms/jenkins-juju-ci/hooks/config-changed' |
3503 | --- charms/jenkins-juju-ci/hooks/config-changed 1970-01-01 00:00:00 +0000 |
3504 | +++ charms/jenkins-juju-ci/hooks/config-changed 2017-03-14 23:38:01 +0000 |
3505 | @@ -0,0 +1,141 @@ |
3506 | +#!/bin/bash |
3507 | +set -eux |
3508 | + |
3509 | +HOSTNAME=$(hostname) |
3510 | +JENKINS_HOME="/var/lib/jenkins" |
3511 | +KEY="staging-juju-rsa" |
3512 | + |
3513 | +export PATH=/usr/local/bin:$JENKINS_HOME/Bin:$PATH |
3514 | + |
3515 | + |
3516 | +as_jenkins() { |
3517 | + local_command="$@" |
3518 | + su -l jenkins -c "$local_command" |
3519 | +} |
3520 | + |
3521 | + |
3522 | +update_branch() { |
3523 | + local_branch=$1 |
3524 | + local_dir="$(basename $local_branch | cut -d ':' -f2)" |
3525 | + local_path="$JENKINS_HOME/$local_dir" |
3526 | + if [[ -d $local_path ]]; then |
3527 | + as_jenkins bzr pull -d $local_path |
3528 | + else |
3529 | + as_jenkins bzr branch $local_branch $local_path |
3530 | + fi |
3531 | +} |
3532 | + |
3533 | + |
3534 | +update_known_hosts() { |
3535 | + local_host="$1" |
3536 | + local_key="$(ssh-keyscan -H $local_host)" |
3537 | + if ! grep "$local_key" $JENKINS_HOME/.ssh/known_hosts; then |
3538 | + echo "$local_key" >> $JENKINS_HOME/.ssh/known_hosts |
3539 | + fi |
3540 | +} |
3541 | + |
3542 | + |
3543 | +status-set maintenance "Updating scripts" || true |
3544 | + |
3545 | +set +x |
3546 | +LP_KEY=$(config-get lp-key) |
3547 | +if [[ "$LP_KEY" == "" ]]; then |
3548 | + status-set blocked "Waiting for lp-key to be set" || true |
3549 | + exit 0 |
3550 | +fi |
3551 | +set -x |
3552 | + |
3553 | +status-set maintenance "Updating bzr" || true |
3554 | +set +x |
3555 | +echo "$LP_KEY" > $JENKINS_HOME/.ssh/lp_rsa |
3556 | +set -x |
3557 | +cp $JENKINS_HOME/.ssh/lp_rsa $JENKINS_HOME/.ssh/id_rsa |
3558 | +chown -R jenkins:jenkins $JENKINS_HOME/.ssh |
3559 | +chmod 600 $JENKINS_HOME/.ssh/*rsa |
3560 | +update_known_hosts bazaar.launchpad.net |
3561 | +update_known_hosts git.launchpad.net |
3562 | +update_known_hosts upload.launchpad.net |
3563 | +update_known_hosts ppa.launchpad.net |
3564 | +chmod 600 $JENKINS_HOME/.ssh/known_hosts |
3565 | +as_jenkins bzr --no-aliases launchpad-login juju-qa-bot |
3566 | + |
3567 | +status-set maintenance "Updating branches" || true |
3568 | +if [[ -d $JENKINS_HOME/ci-director ]]; then |
3569 | + update_branch lp:ci-director |
3570 | +fi |
3571 | +update_branch lp:workspace-runner |
3572 | +update_branch lp:juju-release-tools |
3573 | +update_branch lp:juju-ci-tools |
3574 | +update_branch lp:juju-ci-tools/repository |
3575 | +update_branch lp:~juju-qa/+junk/cloud-city |
3576 | + |
3577 | +status-set maintenance "Updating permissions" || true |
3578 | +chown -R jenkins $JENKINS_HOME/cloud-city |
3579 | +chmod -R go-w $JENKINS_HOME/cloud-city |
3580 | +chmod 700 $JENKINS_HOME/cloud-city |
3581 | +chmod 700 $JENKINS_HOME/cloud-city/gnupg |
3582 | +chmod 600 $JENKINS_HOME/cloud-city/$KEY |
3583 | + |
3584 | +status-set maintenance "Updating ssh" || true |
3585 | +if [[ ! -f $JENKINS_HOME/.ssh/config ]]; then |
3586 | +cat << EOC > $JENKINS_HOME/.ssh/config |
3587 | +Host 10.* 192.168.* |
3588 | + StrictHostKeyChecking no |
3589 | + UserKnownHostsFile /dev/null |
3590 | + User ubuntu |
3591 | + IdentityFile $JENKINS_HOME/cloud-city/$KEY |
3592 | +EOC |
3593 | +fi |
3594 | +if [[ ! -f $JENKINS_HOME/.ssh/id_rsa ]]; then |
3595 | + as_jenkins ln -s $JENKINS_HOME/cloud-city/$KEY $JENKINS_HOME/.ssh/id_rsa |
3596 | +fi |
3597 | +if [[ ! -f $JENKINS_HOME/.ssh/id_rsa.pub ]]; then |
3598 | + as_jenkins ln -s $JENKINS_HOME/cloud-city/$KEY.pub $JENKINS_HOME/.ssh/id_rsa.pub |
3599 | +fi |
3600 | +chown -R jenkins:jenkins $JENKINS_HOME/.ssh |
3601 | + |
3602 | +status-set maintenance "Updating git" || true |
3603 | +github_username=$(sed -r '/github_user/!d; s/.*"(.*)"/\1/; s/%20/ /' $JENKINS_HOME/cloud-city/juju-bot.txt) |
3604 | +github_password=$(sed -r '/github_password/!d; s/.*"(.*)"/\1/; s/%20/ /' $JENKINS_HOME/cloud-city/juju-bot.txt) |
3605 | +cat << EOC > $JENKINS_HOME/.gitconfig |
3606 | +[user] |
3607 | + name = jenkins |
3608 | + email = jenkins@vapour.ws |
3609 | +[credential] |
3610 | + helper = cache |
3611 | +[credential "https://github.com"] |
3612 | + username = $github_username |
3613 | + password = $github_password |
3614 | +[url "https://"] |
3615 | + insteadOf = http:// |
3616 | +EOC |
3617 | +sudo chown jenkins:jenkins $JENKINS_HOME/.gitconfig |
3618 | + |
3619 | +S3_PROXY=$(config-get s3-proxy) |
3620 | +if [[ $S3_PROXY == "" ]]; then |
3621 | + # Remove s3 proxy changes from .boto and juju-qa.s3cfg. |
3622 | + rm $JENKINS_HOME/.boto || true |
3623 | + (cd cloud-city && as_jenkins bzr revert bzr revert juju-qa.s3cfg || true) |
3624 | +else |
3625 | + S3_PROXY_HOST=$(echo "$S3_PROXY" | cut -d ':' -f 1) |
3626 | + S3_PROXY_PORT=$(echo "$S3_PROXY" | cut -d ':' -f 2) |
3627 | + # Place a .boto file for python scripts |
3628 | + cat << EOC > $JENKINS_HOME/.boto |
3629 | +[Boto] |
3630 | +proxy = $S3_PROXY_HOST |
3631 | +proxy_port = $S3_PROXY_PORT |
3632 | +EOC |
3633 | + chown jenkins:jenkins $JENKINS_HOME/.boto |
3634 | + # Modify cloud-city/juju-qa.s3cfg to use a proxy. |
3635 | + sed -i -r "s/(proxy_host =).*/\1 $S3_PROXY_HOST/; s/(proxy_port =).*/\1 $S3_PROXY_PORT/;" \ |
3636 | + $JENKINS_HOME/cloud-city/juju-qa.s3cfg |
3637 | +fi |
3638 | + |
3639 | +status-set maintenance "Updating dependencies from branches" || true |
3640 | +if [[ $(uname) == "Linux" ]]; then |
3641 | + as_jenkins make -C $JENKINS_HOME/juju-ci-tools install-deps |
3642 | + as_jenkins make -C $JENKINS_HOME/workspace-runner install |
3643 | +fi |
3644 | + |
3645 | +NOW=$(date +%Y-%m-%dT%H:%M) |
3646 | +status-set active "$HOSTNAME updated $NOW" || true |
3647 | |
3648 | === added file 'charms/jenkins-juju-ci/hooks/install' |
3649 | --- charms/jenkins-juju-ci/hooks/install 1970-01-01 00:00:00 +0000 |
3650 | +++ charms/jenkins-juju-ci/hooks/install 2017-03-14 23:38:01 +0000 |
3651 | @@ -0,0 +1,61 @@ |
3652 | +#!/bin/bash |
3653 | + |
3654 | +set -eux |
3655 | + |
3656 | +status-set maintenance "Installing: configuring apt" || true |
3657 | +SERIES=$(lsb_release -sc) |
3658 | +DEB_LINE="http://archive.ubuntu.com/ubuntu/ $SERIES-proposed restricted main multiverse universe" |
3659 | +apt-add-repository -y ppa:juju/stable |
3660 | +if [[ ! -f /etc/apt/preferences.d/proposed-updates ]]; then |
3661 | + cat << EOC | tee /etc/apt/preferences.d/proposed-updates |
3662 | +Package: * |
3663 | +Pin: release a=$SERIES-proposed |
3664 | +Pin-Priority: 400 |
3665 | +EOC |
3666 | +fi |
3667 | +if ! grep "$SERIES-proposed" /etc/apt/sources.list; then |
3668 | + echo "deb $DEB_LINE" | tee -a /etc/apt/sources.list |
3669 | +fi |
3670 | + |
3671 | +status-set maintenance "Installing: installing packages" || true |
3672 | +apt-get update |
3673 | +apt-get install -y ntp make bzr git lxc |
3674 | + |
3675 | +status-set maintenance "Installing: moving directories to big partition" || true |
3676 | +if [[ -n $(df -h | grep /mnt | tr -s ' ' | cut -d ' ' -f 4 | grep G) ]]; then |
3677 | + if [[ ! -d /mnt/jenkins ]]; then |
3678 | + cp -rp /var/lib/jenkins /mnt |
3679 | + mv /var/lib/jenkins /var/lib/jenkins.old |
3680 | + ln -s /mnt/jenkins /var/lib/jenkins |
3681 | + chown -h jenkins:jenkins /var/lib/jenkins |
3682 | + fi |
3683 | + if [[ ! -d /mnt/lxc ]]; then |
3684 | + cp -rp /var/lib/lxc /mnt |
3685 | + mv /var/lib/lxc /var/lib/lxc.old |
3686 | + ln -s /mnt/lxc /var/lib/lxc |
3687 | + fi |
3688 | + if [[ ! -d /mnt/lxc && -d /var/lib/lxd ]]; then |
3689 | + cp -rp /var/lib/lxd /mnt |
3690 | + mv /var/lib/lxd /var/lib/lxd.old |
3691 | + ln -s /mnt/lxd /var/lib/lxd |
3692 | + chown -h lxd:lxd /var/lib/lxd |
3693 | + fi |
3694 | +fi |
3695 | + |
3696 | +status-set maintenance "Installing: setting up jenkins permissions" || true |
3697 | +usermod -a -G lxd jenkins || true |
3698 | +if [[ ! -f /etc/sudoers.d/91-jenkins ]]; then |
3699 | + echo 'jenkins ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/91-jenkins |
3700 | +fi |
3701 | +chmod 0440 /etc/sudoers.d/91-jenkins |
3702 | + |
3703 | +status-set maintenance "Installing: setting up jenkins ssh" || true |
3704 | +test -d /var/lib/jenkins/.ssh/ || mkdir -p /var/lib/jenkins/.ssh/ |
3705 | +if [[ ! -f /var/lib/jenkins/.ssh/authorized_keys ]]; then |
3706 | + cat /home/ubuntu/.ssh/authorized_keys | tee -a /var/lib/jenkins/.ssh/authorized_keys |
3707 | +fi |
3708 | +chmod 700 /var/lib/jenkins/.ssh/ |
3709 | +chmod 600 /var/lib/jenkins/.ssh/authorized_keys |
3710 | +chown -R jenkins:jenkins /var/lib/jenkins/.ssh |
3711 | + |
3712 | +status-set maintenance "Installed" || true |
3713 | |
3714 | === added file 'charms/jenkins-juju-ci/hooks/upgrade-charm' |
3715 | --- charms/jenkins-juju-ci/hooks/upgrade-charm 1970-01-01 00:00:00 +0000 |
3716 | +++ charms/jenkins-juju-ci/hooks/upgrade-charm 2017-03-14 23:38:01 +0000 |
3717 | @@ -0,0 +1,20 @@ |
3718 | +#!/bin/bash |
3719 | + |
3720 | +set -eux |
3721 | + |
3722 | +status-set maintenance "Installing" || true |
3723 | +apt-get install -y adduser default-jre-headless |
3724 | + |
3725 | +if ! id jenkins > /dev/null 2>&1 ; then |
3726 | + mkdir -p /var/lib/jenkins |
3727 | + adduser --system --home /var/lib/jenkins \ |
3728 | + --group --disabled-password --quiet --shell /bin/bash \ |
3729 | + jenkins |
3730 | + chown -R jenkins:jenkins /var/lib/jenkins |
3731 | +fi |
3732 | + |
3733 | +if [[ ! -d /var/log/jenkins ]]; then |
3734 | + mkdir -p /var/log/jenkins |
3735 | +fi |
3736 | + |
3737 | +status-set maintenance "Installed" || true |
3738 | |
3739 | === added file 'charms/jenkins-juju-ci/icon.svg' |
3740 | --- charms/jenkins-juju-ci/icon.svg 1970-01-01 00:00:00 +0000 |
3741 | +++ charms/jenkins-juju-ci/icon.svg 2017-03-14 23:38:01 +0000 |
3742 | @@ -0,0 +1,596 @@ |
3743 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
3744 | +<!-- Created with Inkscape (http://www.inkscape.org/) --> |
3745 | + |
3746 | +<svg |
3747 | + xmlns:dc="http://purl.org/dc/elements/1.1/" |
3748 | + xmlns:cc="http://creativecommons.org/ns#" |
3749 | + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
3750 | + xmlns:svg="http://www.w3.org/2000/svg" |
3751 | + xmlns="http://www.w3.org/2000/svg" |
3752 | + xmlns:xlink="http://www.w3.org/1999/xlink" |
3753 | + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" |
3754 | + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
3755 | + width="96" |
3756 | + height="96" |
3757 | + id="svg6517" |
3758 | + version="1.1" |
3759 | + inkscape:version="0.48.4 r9939" |
3760 | + sodipodi:docname="icon.svg"> |
3761 | + <defs |
3762 | + id="defs6519"> |
3763 | + <linearGradient |
3764 | + inkscape:collect="always" |
3765 | + xlink:href="#Background" |
3766 | + id="linearGradient6461" |
3767 | + gradientUnits="userSpaceOnUse" |
3768 | + x1="0" |
3769 | + y1="970.29498" |
3770 | + x2="144" |
3771 | + y2="970.29498" |
3772 | + gradientTransform="matrix(0,-0.66666669,0.6660448,0,-866.25992,731.29077)" /> |
3773 | + <linearGradient |
3774 | + id="Background"> |
3775 | + <stop |
3776 | + id="stop4178" |
3777 | + offset="0" |
3778 | + style="stop-color:#49728b;stop-opacity:1" /> |
3779 | + <stop |
3780 | + id="stop4180" |
3781 | + offset="1" |
3782 | + style="stop-color:#8eabb7;stop-opacity:1" /> |
3783 | + </linearGradient> |
3784 | + <filter |
3785 | + style="color-interpolation-filters:sRGB;" |
3786 | + inkscape:label="Inner Shadow" |
3787 | + id="filter1121"> |
3788 | + <feFlood |
3789 | + flood-opacity="0.59999999999999998" |
3790 | + flood-color="rgb(0,0,0)" |
3791 | + result="flood" |
3792 | + id="feFlood1123" /> |
3793 | + <feComposite |
3794 | + in="flood" |
3795 | + in2="SourceGraphic" |
3796 | + operator="out" |
3797 | + result="composite1" |
3798 | + id="feComposite1125" /> |
3799 | + <feGaussianBlur |
3800 | + in="composite1" |
3801 | + stdDeviation="1" |
3802 | + result="blur" |
3803 | + id="feGaussianBlur1127" /> |
3804 | + <feOffset |
3805 | + dx="0" |
3806 | + dy="2" |
3807 | + result="offset" |
3808 | + id="feOffset1129" /> |
3809 | + <feComposite |
3810 | + in="offset" |
3811 | + in2="SourceGraphic" |
3812 | + operator="atop" |
3813 | + result="composite2" |
3814 | + id="feComposite1131" /> |
3815 | + </filter> |
3816 | + <filter |
3817 | + style="color-interpolation-filters:sRGB;" |
3818 | + inkscape:label="Drop Shadow" |
3819 | + id="filter950"> |
3820 | + <feFlood |
3821 | + flood-opacity="0.25" |
3822 | + flood-color="rgb(0,0,0)" |
3823 | + result="flood" |
3824 | + id="feFlood952" /> |
3825 | + <feComposite |
3826 | + in="flood" |
3827 | + in2="SourceGraphic" |
3828 | + operator="in" |
3829 | + result="composite1" |
3830 | + id="feComposite954" /> |
3831 | + <feGaussianBlur |
3832 | + in="composite1" |
3833 | + stdDeviation="1" |
3834 | + result="blur" |
3835 | + id="feGaussianBlur956" /> |
3836 | + <feOffset |
3837 | + dx="0" |
3838 | + dy="1" |
3839 | + result="offset" |
3840 | + id="feOffset958" /> |
3841 | + <feComposite |
3842 | + in="SourceGraphic" |
3843 | + in2="offset" |
3844 | + operator="over" |
3845 | + result="composite2" |
3846 | + id="feComposite960" /> |
3847 | + </filter> |
3848 | + <clipPath |
3849 | + clipPathUnits="userSpaceOnUse" |
3850 | + id="clipPath873"> |
3851 | + <g |
3852 | + transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)" |
3853 | + id="g875" |
3854 | + inkscape:label="Layer 1" |
3855 | + style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"> |
3856 | + <path |
3857 | + style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline" |
3858 | + d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z" |
3859 | + id="path877" |
3860 | + inkscape:connector-curvature="0" |
3861 | + sodipodi:nodetypes="sssssssss" /> |
3862 | + </g> |
3863 | + </clipPath> |
3864 | + <filter |
3865 | + inkscape:collect="always" |
3866 | + id="filter891" |
3867 | + inkscape:label="Badge Shadow"> |
3868 | + <feGaussianBlur |
3869 | + inkscape:collect="always" |
3870 | + stdDeviation="0.71999962" |
3871 | + id="feGaussianBlur893" /> |
3872 | + </filter> |
3873 | + <clipPath |
3874 | + id="clipPath18" |
3875 | + clipPathUnits="userSpaceOnUse"> |
3876 | + <path |
3877 | + inkscape:connector-curvature="0" |
3878 | + id="path20" |
3879 | + d="M 0,2494.84 0,0 l 1804.34,0 0,2494.84 -1804.34,0 z" /> |
3880 | + </clipPath> |
3881 | + </defs> |
3882 | + <sodipodi:namedview |
3883 | + id="base" |
3884 | + pagecolor="#ffffff" |
3885 | + bordercolor="#666666" |
3886 | + borderopacity="1.0" |
3887 | + inkscape:pageopacity="0.0" |
3888 | + inkscape:pageshadow="2" |
3889 | + inkscape:zoom="4.13" |
3890 | + inkscape:cx="88.834295" |
3891 | + inkscape:cy="49.0292" |
3892 | + inkscape:document-units="px" |
3893 | + inkscape:current-layer="layer1" |
3894 | + showgrid="false" |
3895 | + fit-margin-top="0" |
3896 | + fit-margin-left="0" |
3897 | + fit-margin-right="0" |
3898 | + fit-margin-bottom="0" |
3899 | + inkscape:window-width="1920" |
3900 | + inkscape:window-height="1056" |
3901 | + inkscape:window-x="0" |
3902 | + inkscape:window-y="24" |
3903 | + inkscape:window-maximized="1" |
3904 | + showborder="true" |
3905 | + showguides="true" |
3906 | + inkscape:guide-bbox="true" |
3907 | + inkscape:showpageshadow="false"> |
3908 | + <inkscape:grid |
3909 | + type="xygrid" |
3910 | + id="grid821" /> |
3911 | + <sodipodi:guide |
3912 | + orientation="1,0" |
3913 | + position="16,48" |
3914 | + id="guide823" /> |
3915 | + <sodipodi:guide |
3916 | + orientation="0,1" |
3917 | + position="64,80" |
3918 | + id="guide825" /> |
3919 | + <sodipodi:guide |
3920 | + orientation="1,0" |
3921 | + position="80,40" |
3922 | + id="guide827" /> |
3923 | + <sodipodi:guide |
3924 | + orientation="0,1" |
3925 | + position="64,16" |
3926 | + id="guide829" /> |
3927 | + </sodipodi:namedview> |
3928 | + <metadata |
3929 | + id="metadata6522"> |
3930 | + <rdf:RDF> |
3931 | + <cc:Work |
3932 | + rdf:about=""> |
3933 | + <dc:format>image/svg+xml</dc:format> |
3934 | + <dc:type |
3935 | + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> |
3936 | + <dc:title /> |
3937 | + </cc:Work> |
3938 | + </rdf:RDF> |
3939 | + </metadata> |
3940 | + <g |
3941 | + inkscape:label="BACKGROUND" |
3942 | + inkscape:groupmode="layer" |
3943 | + id="layer1" |
3944 | + transform="translate(268,-635.29076)" |
3945 | + style="display:inline"> |
3946 | + <path |
3947 | + style="fill:url(#linearGradient6461);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)" |
3948 | + d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z" |
3949 | + id="path6455" |
3950 | + inkscape:connector-curvature="0" |
3951 | + sodipodi:nodetypes="sssssssss" /> |
3952 | + <g |
3953 | + transform="matrix(0.19496217,0,0,-0.19496217,-239.28382,701.0732)" |
3954 | + inkscape:label="ink_ext_XXXXXX" |
3955 | + id="g10"> |
3956 | + <g |
3957 | + id="g3393"> |
3958 | + <path |
3959 | + inkscape:connector-curvature="0" |
3960 | + id="path22" |
3961 | + style="fill:#d33833;fill-opacity:1;fill-rule:evenodd;stroke:none" |
3962 | + d="m 177.718,129.264 c 0,-49.4288 -39.175,-89.4992 -87.5,-89.4992 -48.3242,0 -87.49925,40.0704 -87.49925,89.4992 0,49.43 39.17505,89.501 87.49925,89.501 48.325,0 87.5,-40.071 87.5,-89.501" /> |
3963 | + <path |
3964 | + inkscape:connector-curvature="0" |
3965 | + id="path24" |
3966 | + style="fill:#ef3d3a;fill-opacity:1;fill-rule:nonzero;stroke:none" |
3967 | + d="m 6.28438,107.098 c 0,0 -6.33438,93.333 79.66602,96 l -5.9996,10 -46.6664,-15.667 -13.3336,-15.333 -11.66642,-22.334 -6.66719,-26 2,-17.333" /> |
3968 | + <path |
3969 | + inkscape:connector-curvature="0" |
3970 | + id="path26" |
3971 | + style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none" |
3972 | + d="M 30.2883,190.319 C 14.9363,174.611 5.43633,152.923 5.43633,128.93 l 0,0 c 0,-23.988 9.49997,-45.6788 24.85197,-61.3839 l 0,0 C 45.6477,51.841 66.8152,42.15 90.2168,42.15 l 0,0 c 23.4022,0 44.5712,9.691 59.9292,25.3961 l 0,0 c 15.351,15.7051 24.853,37.3959 24.853,61.3839 l 0,0 c 0,23.993 -9.502,45.681 -24.853,61.389 l 0,0 c -15.358,15.702 -36.527,25.393 -59.9292,25.395 l 0,0 C 66.8152,215.712 45.6477,206.021 30.2883,190.319 l 0,0 z M 26.4023,63.7469 C 10.0867,80.4328 0,103.493 0,128.93 l 0,0 c 0,25.441 10.0867,48.499 26.4023,65.186 l 0,0 c 16.3118,16.69 38.8915,27.035 63.8145,27.032 l 0,0 c 24.9232,0.003 47.5052,-10.342 63.8142,-27.032 l 0,0 c 16.317,-16.687 26.405,-39.747 26.403,-65.186 l 0,0 c 0.002,-25.437 -10.086,-48.4972 -26.403,-65.1831 l 0,0 C 137.722,47.0578 115.14,36.7141 90.2168,36.7141 l 0,0 c -24.923,0 -47.5027,10.3437 -63.8145,27.0328 l 0,0" /> |
3973 | + <path |
3974 | + inkscape:connector-curvature="0" |
3975 | + id="path28" |
3976 | + style="fill:#f0d6b7;fill-opacity:1;fill-rule:evenodd;stroke:none" |
3977 | + d="m 127.051,128.768 -13.334,-2 -18.0002,-2 -11.6672,-0.333 -11.3328,0.333 -8.6672,2.667 -7.6668,8.333 -6,17 -1.3332,3.667 -8,2.666 -4.6668,7.667 -3.3332,11 3.6672,9.667 8.666,3 7,-3.334 3.334,-7.333 4,0.667 1.3328,1.666 -1.3328,7.667 -0.334,9.667 2,13.333 -0.0781,7.616 6.0781,9.717 10.6668,7.667 18.6672,8 20.6662,-3 18,-13 8.334,-13.333 5.333,-9.667 1.333,-24 -4,-20.667 -7.333,-18.333 -7,-9.667" /> |
3978 | + <path |
3979 | + inkscape:connector-curvature="0" |
3980 | + id="path30" |
3981 | + style="fill:#335061;fill-opacity:1;fill-rule:evenodd;stroke:none" |
3982 | + d="m 115.717,71.102 -47.6674,-2 0,-8 4,-28 -2,-2.334 -33.3328,11.334 -2.334,4 -3.3332,37.666 -7.6656,22.667 -1.6672,5.333 26.666,18.333 8.334,3.334 7.3328,-9 6.3332,-5.667 7.334,-2.333 3.3328,-1 4,-17.333 3,-3.6668 7.6672,2.6668 -5.334,-10.334 29.0002,-13.666 -3.666,-2" /> |
3983 | + <path |
3984 | + inkscape:connector-curvature="0" |
3985 | + id="path32" |
3986 | + style="fill:#6d6b6d;fill-opacity:1;fill-rule:evenodd;stroke:none" |
3987 | + d="m 36.7168,187.435 8.666,3 7,-3.334 3.334,-7.333 4,0.667 1,4 -2,7.666 2,18.334 -1.6672,10 6,7 13,10.333 -3.6668,5 -18.3332,-9 -7.6668,-6 -4.3332,-9.333 -6.6668,-9 -2,-10.667 1.334,-11.333" /> |
3988 | + <path |
3989 | + inkscape:connector-curvature="0" |
3990 | + id="path34" |
3991 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
3992 | + d="m 50.3828,218.768 c 0,0 5,12.333 25,18.333 20,6 1,4.334 1,4.334 l -21.666,-8.334 -8.334,-8.333 -3.666,-6.667 7.666,0.667" /> |
3993 | + <path |
3994 | + inkscape:connector-curvature="0" |
3995 | + id="path36" |
3996 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
3997 | + d="m 40.3828,189.768 c 0,0 -7,23.334 19.6668,26.667 l -1,4 -18.3328,-4.334 -5.334,-17.333 1.334,-11.333 3.666,2.333" /> |
3998 | + <path |
3999 | + inkscape:connector-curvature="0" |
4000 | + id="path38" |
4001 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4002 | + d="m 51.0496,158.768 4.3645,4.229 c 0,0 1.9699,-0.229 2.3027,-2.562 0.3328,-2.334 1.3328,-23.334 15.666,-34.668 1.3074,-1.034 -10.666,1.668 -10.666,1.668 l -10.6672,16.666" /> |
4003 | + <path |
4004 | + inkscape:connector-curvature="0" |
4005 | + id="path40" |
4006 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4007 | + d="m 112.385,165.101 c 0,0 0.777,10.104 3.498,9.327 2.721,-0.777 2.721,-3.498 2.721,-3.498 0,0 -6.608,-4.275 -6.219,-5.829" /> |
4008 | + <path |
4009 | + inkscape:connector-curvature="0" |
4010 | + id="path42" |
4011 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:nonzero;stroke:none" |
4012 | + d="m 140.05,202.101 c 0,0 -5.494,-1.16 -6,-6 -0.506,-4.841 6,-1 7,-0.667" /> |
4013 | + <path |
4014 | + inkscape:connector-curvature="0" |
4015 | + id="path44" |
4016 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:nonzero;stroke:none" |
4017 | + d="m 99.7168,201.767 c 0,0 -7.334,-1 -7.334,-5.666 0,-4.667 8.3342,-4.334 10.6672,-2.334" /> |
4018 | + <path |
4019 | + inkscape:connector-curvature="0" |
4020 | + id="path46" |
4021 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4022 | + d="m 54.3828,180.101 c 0,0 -12.6672,7.667 -14,0.333 -1.3332,-7.333 -4.334,-12.667 2,-20.333 l -4.3332,1.333 -4,10.333 -1.3328,10 7.666,8.001 8.6668,-0.667 5,-4 0.3332,-5" /> |
4023 | + <path |
4024 | + inkscape:connector-curvature="0" |
4025 | + id="path48" |
4026 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4027 | + d="m 60.3828,201.101 c 0,0 5.6668,29.333 34.334,35 23.6012,4.665 35.9992,-1 40.6662,-6.333 0,0 -21,24.999 -41.0002,17.333 -20,-7.667 -34.666,-21.667 -34.3332,-30.666 0.5676,-15.328 0.3332,-15.334 0.3332,-15.334" /> |
4028 | + <path |
4029 | + inkscape:connector-curvature="0" |
4030 | + id="path50" |
4031 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4032 | + d="m 137.717,226.435 c 0,0 -9.666,0.333 -10,-8.334 0,0 -0.001,-1.333 0.666,-2.666 0,0 7.668,8.667 12.334,4" /> |
4033 | + <path |
4034 | + inkscape:connector-curvature="0" |
4035 | + id="path52" |
4036 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4037 | + d="m 95.3887,214.532 c 0,0 -1.6641,13.303 -13.0059,5.569 -7.3332,-5 -6.666,-12 -5.3332,-13.333 1.3332,-1.334 0.9707,-4.019 1.9856,-2.176 1.0144,1.843 0.6804,7.843 4.3476,9.509 3.6668,1.667 9.6777,3.529 12.0059,0.431" /> |
4038 | + <path |
4039 | + inkscape:connector-curvature="0" |
4040 | + id="path54" |
4041 | + style="fill:#49728b;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4042 | + d="m 64.0496,124.435 -31.3328,-14 c 0,0 13,-51.667 6.3328,-67.667 l -4.6668,1.666 -0.3332,19.6672 -8.6656,37.3328 -3.6672,10.334 32.666,21.999 9.6668,-9.332" /> |
4043 | + <path |
4044 | + inkscape:connector-curvature="0" |
4045 | + id="path56" |
4046 | + style="fill:#49728b;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4047 | + d="m 67.2715,95.8578 4.4453,-5.4238 0,-20 -5.334,0 c 0,0 -0.666,14 -0.666,15.6672 0,1.6668 0.666,7.6668 0.666,7.6668" /> |
4048 | + <path |
4049 | + inkscape:connector-curvature="0" |
4050 | + id="path58" |
4051 | + style="fill:#49728b;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4052 | + d="m 67.3828,67.434 -15,-0.666 4.334,-3 10.666,-1.6668" /> |
4053 | + <path |
4054 | + inkscape:connector-curvature="0" |
4055 | + id="path60" |
4056 | + style="fill:#335061;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4057 | + d="m 118.717,70.768 12.333,0.3332 3,-30.6672 -12.667,-1.666 -2.666,32" /> |
4058 | + <path |
4059 | + inkscape:connector-curvature="0" |
4060 | + id="path62" |
4061 | + style="fill:#335061;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4062 | + d="m 122.05,70.768 18.667,1 c 0,0 7.666,19.3332 7.666,20.3332 0,1 6.667,27.9998 6.667,27.9998 l -15,15.666 -3,2.667 -8,-8 0,-31 -7,-28.666" /> |
4063 | + <path |
4064 | + inkscape:connector-curvature="0" |
4065 | + id="path64" |
4066 | + style="fill:#49728b;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4067 | + d="m 130.383,73.1012 -11.666,-2.3332 1.666,-9.334 c 4.333,-2 11.667,3.334 11.667,3.334" /> |
4068 | + <path |
4069 | + inkscape:connector-curvature="0" |
4070 | + id="path66" |
4071 | + style="fill:#49728b;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4072 | + d="m 130.717,131.434 23.333,-17.333 0.667,8 -17.667,16.333 -6.333,-7" /> |
4073 | + <path |
4074 | + inkscape:connector-curvature="0" |
4075 | + id="path68" |
4076 | + style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4077 | + d="M 78.9508,5.09805 72.0496,33.102 68.6172,53.7648 68.0496,69.102 l 31.2348,1.6628 19.4326,0.0032 -1.767,-35.0032 3,-26.99996 -0.333,-5 -25.3326,-2 -15.3336,3.33321" /> |
4078 | + <path |
4079 | + inkscape:connector-curvature="0" |
4080 | + id="path70" |
4081 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4082 | + d="m 114.383,71.1012 c 0,0 -1.666,-34.6672 3.334,-59.3332 0,0 -10,-6.33402 -24.6674,-8.00003 l 28.0004,1 3.333,2 -4,54.66603 -1,11.668" /> |
4083 | + <path |
4084 | + inkscape:connector-curvature="0" |
4085 | + id="path72" |
4086 | + style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4087 | + d="m 134.618,43.098 13,3.6668 24.666,1.3332 3.667,11.3329 -6.667,19.6671 -7.666,1 -10.667,-3.3332 -10.234,-4.9968 -5.433,0.9968 -4.234,-1.6636" /> |
4088 | + <path |
4089 | + inkscape:connector-curvature="0" |
4090 | + id="path74" |
4091 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4092 | + d="m 134.383,49.768 c 0,0 8.666,3.9992 10,3.666 l -3.666,18.334 4.333,1.666 c 0,0 3,-17.3328 3,-19.3328 0,0 18.666,-1 20.333,-1 0,0 4,7.6668 3,15.6668 l 3.667,-10.6668 0.333,-6 -5.333,-8 -6,-1.3332 -10,0.3332 -3.333,4.3328 -11.667,-1.666 -3.667,-1.334" /> |
4093 | + <path |
4094 | + inkscape:connector-curvature="0" |
4095 | + id="path76" |
4096 | + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" |
4097 | + d="m 121.284,73.4309 -7.333,18.6671 -7.667,11 c 0,0 1.666,4.667 4,4.667 2.334,0 7.667,0 7.667,0 l 7.333,-2.667 -0.666,-12.3332 -3.334,-19.3339" /> |
4098 | + <path |
4099 | + inkscape:connector-curvature="0" |
4100 | + id="path78" |
4101 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4102 | + d="m 122.717,79.768 c 0,0 -9.334,17.9992 -9.334,20.666 0,0 1.666,4 4,3 2.334,-1 7.334,-3.666 7.334,-3.666 l 0,6.333 -11.334,2.334 -7.666,-1 13,-30.667 2.666,-0.334" /> |
4103 | + <path |
4104 | + inkscape:connector-curvature="0" |
4105 | + id="path80" |
4106 | + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" |
4107 | + d="m 81.9512,123.764 -9.2344,1.004 -8.6672,2.667 0,-3 4.2348,-4.67 13.3332,-6" /> |
4108 | + <path |
4109 | + inkscape:connector-curvature="0" |
4110 | + id="path82" |
4111 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4112 | + d="m 67.0508,122.765 c 0,0 10.334,-4.334 13.6672,-3.334 l 0.3316,-3.996 -9.3316,1.996 -5.6672,4 1,1.334" /> |
4113 | + <path |
4114 | + inkscape:connector-curvature="0" |
4115 | + id="path84" |
4116 | + style="fill:#d33833;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4117 | + d="m 134.582,106.63 c -5.656,0.166 -10.766,0.838 -15.24,2.1 0.304,1.834 -0.265,3.634 0.192,4.955 1.247,0.898 3.337,0.884 5.222,1.095 -1.63,0.801 -3.92,1.118 -5.801,0.655 -0.044,1.273 -0.615,2.062 -0.961,3.058 3.18,1.135 10.687,8.576 14.91,6.112 2.012,-1.172 2.867,-7.866 3.023,-11.121 0.13,-2.7 -0.245,-5.424 -1.345,-6.854" /> |
4118 | + <path |
4119 | + inkscape:connector-curvature="0" |
4120 | + id="path86" |
4121 | + style="fill:none;stroke:#d33833;stroke-width:8.20672035;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" |
4122 | + d="m 134.582,106.63 c -5.656,0.166 -10.766,0.838 -15.24,2.1 0.304,1.834 -0.265,3.634 0.192,4.955 1.247,0.898 3.337,0.884 5.222,1.095 -1.63,0.801 -3.92,1.118 -5.801,0.655 -0.044,1.273 -0.615,2.062 -0.961,3.058 3.18,1.135 10.687,8.576 14.91,6.112 2.012,-1.172 2.867,-7.866 3.023,-11.121 0.13,-2.7 -0.245,-5.424 -1.345,-6.854 z" /> |
4123 | + <path |
4124 | + inkscape:connector-curvature="0" |
4125 | + id="path88" |
4126 | + style="fill:#d33833;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4127 | + d="m 107.535,115.876 c -0.015,-0.428 -0.033,-0.859 -0.05,-1.291 -1.766,-1.16 -4.617,-1.146 -6.555,-2.121 2.857,-0.125 5.106,-0.813 7.052,-1.783 -0.043,-1.078 -0.084,-2.155 -0.126,-3.233 -3.237,-2.216 -6.194,-5.516 -10.0052,-7.5941 -1.802,-0.9828 -8.1262,-3.5117 -10.0434,-3.0648 -1.0847,0.2519 -1.1824,1.598 -1.616,2.8668 -0.9238,2.7171 -3.0508,7.0421 -3.2363,11.1321 -0.2363,5.166 -0.7578,13.824 4.8094,12.76 4.4914,-0.857 9.7152,-2.926 13.1925,-4.826 2.125,-1.162 3.354,-2.598 6.578,-2.846" /> |
4128 | + <path |
4129 | + inkscape:connector-curvature="0" |
4130 | + id="path90" |
4131 | + style="fill:none;stroke:#d33833;stroke-width:8.20672035;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" |
4132 | + d="m 107.535,115.876 c -0.015,-0.428 -0.033,-0.859 -0.05,-1.291 -1.766,-1.16 -4.617,-1.146 -6.555,-2.121 2.857,-0.125 5.106,-0.813 7.052,-1.783 -0.043,-1.078 -0.084,-2.155 -0.126,-3.233 -3.237,-2.216 -6.194,-5.516 -10.0052,-7.5941 -1.802,-0.9828 -8.1262,-3.5117 -10.0434,-3.0648 -1.0847,0.2519 -1.1824,1.598 -1.616,2.8668 -0.9238,2.7171 -3.0508,7.0421 -3.2363,11.1321 -0.2363,5.166 -0.7578,13.824 4.8094,12.76 4.4914,-0.857 9.7152,-2.926 13.1925,-4.826 2.125,-1.162 3.354,-2.598 6.578,-2.846 z" /> |
4133 | + <path |
4134 | + inkscape:connector-curvature="0" |
4135 | + id="path92" |
4136 | + style="fill:#d33833;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4137 | + d="m 110.75,109.712 c -0.494,2.814 -1.065,3.617 -0.844,6.072 7.505,5.004 8.914,-8.595 0.844,-6.072" /> |
4138 | + <path |
4139 | + inkscape:connector-curvature="0" |
4140 | + id="path94" |
4141 | + style="fill:none;stroke:#d33833;stroke-width:8.20672035;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" |
4142 | + d="m 110.75,109.712 c -0.494,2.814 -1.065,3.617 -0.844,6.072 7.505,5.004 8.914,-8.595 0.844,-6.072 z" /> |
4143 | + <path |
4144 | + inkscape:connector-curvature="0" |
4145 | + id="path96" |
4146 | + style="fill:#ef3d3a;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4147 | + d="m 121.617,107.431 c 0,0 -2.334,3.334 -0.667,4.334 1.667,1 3.334,-0.001 4.334,1.666 1,1.667 0,2.667 0.333,4.667 0.333,2 2.001,2.334 3.667,2.667 1.666,0.333 6.334,1 7,-0.667 l -2,6 -4,1.333 -12.667,-7.333 -0.667,-3.667 0,-7.333" /> |
4148 | + <path |
4149 | + inkscape:connector-curvature="0" |
4150 | + id="path98" |
4151 | + style="fill:#ef3d3a;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4152 | + d="m 86.6172,96.4309 c -0.4004,5.2021 -0.8242,10.3971 -1.2957,15.5941 -0.7055,7.76 1.864,6.406 8.5906,6.406 1.0274,0 6.3259,-1.225 6.7049,-2 1.818,-3.713 -3.04,-2.888 2.094,-5.688 4.334,-2.363 11.99,1.435 10.239,6.688 -0.98,1.168 -5.106,0.364 -6.585,1.131 -2.604,1.35 -5.208,2.7 -7.8123,4.05 -3.3132,1.719 -10.9707,4.225 -14.5031,1.823 -8.9504,-6.087 0.5649,-21.296 3.7578,-27.6459" /> |
4153 | + <path |
4154 | + inkscape:connector-curvature="0" |
4155 | + id="path100" |
4156 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4157 | + d="m 95.3887,214.532 c -9.0852,2.116 -13.5996,-3.802 -16.3535,-9.94 -2.459,0.596 -1.4805,3.94 -0.8594,5.644 1.6262,4.472 8.1797,10.425 13.5344,9.618 2.3043,-0.347 5.4226,-2.454 3.6785,-5.322" /> |
4158 | + <path |
4159 | + inkscape:connector-curvature="0" |
4160 | + id="path102" |
4161 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4162 | + d="m 139.655,204.186 c 0.143,-0.006 0.288,-0.011 0.431,-0.017 2.053,-4.265 3.83,-8.783 6.42,-12.548 -1.735,-4.041 -13.138,-7.617 -12.962,-0.361 2.466,1.078 6.723,0.22 8.909,1.597 -1.264,3.469 -3.088,6.422 -2.798,11.329" /> |
4163 | + <path |
4164 | + inkscape:connector-curvature="0" |
4165 | + id="path104" |
4166 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4167 | + d="m 100.04,204.075 c 1.948,-3.571 2.582,-7.323 5.351,-10.022 1.247,-1.215 3.672,-2.696 2.47,-6.075 -0.281,-0.797 -2.334,-2.574 -3.519,-2.923 -4.329,-1.278 -14.4162,-0.264 -11.0002,5.133 3.5801,-0.167 8.3922,-2.325 11.0682,0.274 -2.055,3.285 -5.7186,9.784 -4.37,13.613" /> |
4168 | + <path |
4169 | + inkscape:connector-curvature="0" |
4170 | + id="path106" |
4171 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4172 | + d="m 138.03,167.781 c -6.518,-4.187 -13.786,-8.74 -24.466,-7.684 -2.282,1.984 -3.152,6.399 -0.935,9.315 1.154,-1.984 0.429,-5.633 3.645,-6.182 6.06,-1.037 13.113,3.707 17.472,5.365 2.703,4.557 -0.233,6.233 -2.668,9.166 -4.985,6.009 -11.672,13.457 -11.429,22.453 2.015,1.461 2.189,-2.23 2.478,-2.902 2.603,-6.092 9.154,-13.883 13.935,-19.097 1.174,-1.284 3.107,-2.516 3.322,-3.365 0.62,-2.469 -1.613,-5.427 -1.354,-7.069" /> |
4173 | + <path |
4174 | + inkscape:connector-curvature="0" |
4175 | + id="path108" |
4176 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4177 | + d="m 52.1016,172.189 c -2.043,1.166 -2.5293,6.302 -4.9278,6.448 -3.4277,0.208 -2.8027,-6.663 -2.789,-10.681 -2.3594,2.142 -2.7743,8.737 -1.041,12.124 -1.9754,0.97 -2.8575,-1.07 -3.9532,-1.789 1.4082,10.23 14.9649,4.745 12.711,-6.102" /> |
4178 | + <path |
4179 | + inkscape:connector-curvature="0" |
4180 | + id="path110" |
4181 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4182 | + d="m 142.18,163.521 c -3.034,-5.775 -7.326,-12.135 -16.229,-12.32 -0.181,1.865 -0.32,4.703 0.01,5.826 6.806,0.654 11.008,4.118 16.219,6.494" /> |
4183 | + <path |
4184 | + inkscape:connector-curvature="0" |
4185 | + id="path112" |
4186 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4187 | + d="m 99.5266,159.777 c 5.6784,-2.986 16.1144,-3.307 23.8324,-3.081 0.414,-1.691 0.404,-3.78 0.42,-5.842 -9.921,-0.495 -21.651,1.96 -24.2524,8.923" /> |
4188 | + <path |
4189 | + inkscape:connector-curvature="0" |
4190 | + id="path114" |
4191 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4192 | + d="m 98.4473,154.209 c 3.9267,-9.859 17.4227,-8.724 28.8037,-8.452 -0.501,-1.28 -1.587,-2.792 -2.937,-3.339 -3.647,-1.484 -13.706,-2.61 -18.769,0.079 -3.211,1.707 -5.274,5.564 -7.0333,7.825 -0.8496,1.092 -5.0801,3.881 -0.0644,3.887" /> |
4193 | + <path |
4194 | + inkscape:connector-curvature="0" |
4195 | + id="path116" |
4196 | + style="fill:#81b0c4;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4197 | + d="m 137.556,99.8262 c -4.608,-7.8922 -9.017,-15.9981 -14.484,-22.9594 2.292,6.7391 3.273,18.0184 3.619,26.6172 4.795,2.244 8.901,-0.505 10.865,-3.6578" /> |
4198 | + <path |
4199 | + inkscape:connector-curvature="0" |
4200 | + id="path118" |
4201 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4202 | + d="m 162.352,71.4609 c -5.159,-1.0328 -8.784,-6.0468 -13.817,-5.725 2.766,3.8993 7.613,5.543 13.817,5.725" /> |
4203 | + <path |
4204 | + inkscape:connector-curvature="0" |
4205 | + id="path120" |
4206 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4207 | + d="m 164.628,63.3871 c -4.205,-0.4441 -9.144,-1.125 -13.409,-0.7742 2.019,3.084 9.798,2.0199 13.409,0.7742" /> |
4208 | + <path |
4209 | + inkscape:connector-curvature="0" |
4210 | + id="path122" |
4211 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4212 | + d="m 166.085,56.4262 c -4.726,-0.1024 -10.6,-0.0082 -15.092,0.3687 2.657,2.8539 12.027,1.059 15.092,-0.3687" /> |
4213 | + <path |
4214 | + inkscape:connector-curvature="0" |
4215 | + id="path124" |
4216 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4217 | + d="m 128.664,37.377 c 0.678,-5.9352 3.031,-11.9489 2.736,-18.4489 -2.613,-0.8812 -4.114,-1.6519 -7.615,-1.6472 -0.247,5.5242 -0.986,13.9691 -0.765,19.2351 1.722,-0.114 4.261,1.2301 5.644,0.861" /> |
4218 | + <path |
4219 | + inkscape:connector-curvature="0" |
4220 | + id="path126" |
4221 | + style="fill:#f0d6b7;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4222 | + d="m 121.045,124.849 c -2.373,-1.549 -4.394,-3.483 -6.673,-5.137 -5.054,-0.25 -7.812,0.35 -11.525,3.252 0.061,0.233 0.434,0.129 0.448,0.415 5.41,-2.411 12.287,0.982 17.75,1.47" /> |
4223 | + <path |
4224 | + inkscape:connector-curvature="0" |
4225 | + id="path128" |
4226 | + style="fill:#81b0c4;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4227 | + d="m 92.6445,87.9711 c 1.4864,6.441 7.3106,9.7769 12.5995,13.3239 5.459,-6.9282 8.779,-15.838 12.435,-24.436 -8.638,2.6039 -17.464,6.8289 -25.0345,11.1121" /> |
4228 | + <path |
4229 | + inkscape:connector-curvature="0" |
4230 | + id="path130" |
4231 | + style="fill:#231f20;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4232 | + d="m 123.02,36.516 c -0.221,-5.266 0.518,-13.7109 0.765,-19.2351 3.501,-0.0047 5.002,0.766 7.615,1.6472 0.295,6.5 -2.058,12.5137 -2.736,18.4489 -1.383,0.3691 -3.922,-0.975 -5.644,-0.861 z M 68.5059,66.4648 C 70.8145,45.2418 74.1582,27.4012 80.291,8.60781 93.9023,4.475 110.311,4.11484 122.342,7.84414 120.133,18.4512 121.098,31.3648 119.807,42.684 c -0.973,8.5078 -0.477,17.068 -1.811,25.748 -14.578,3.0328 -35.1835,0.709 -49.4901,-1.9672 z m 52.9371,1.834 c -0.123,-9.1148 0.408,-18.1058 1.104,-27.232 3.5,0.5254 5.875,0.8762 9.127,1.5891 -1.056,8.7859 -0.926,18.6722 -3.077,26.4441 -2.486,-0.0238 -4.675,0.0289 -7.154,-0.8012 z m 17.755,1.4692 c -1.661,0.3808 -3.595,0.0148 -5.182,-0.016 0.746,-7.4301 2.556,-15.629 3.193,-23.4282 2.497,-0.0777 3.831,1.1 5.885,1.4961 0.11,6.8461 -0.598,16.2781 -3.896,21.9481 z m 26.884,-24.5629 c 5.205,1.264 8.478,7.639 7.022,14.1859 -0.977,4.4 -2.717,12.6852 -4.579,15.5 -1.376,2.082 -5.107,4.8078 -8.086,2.9 -4.846,-3.1031 -13.383,-4.0039 -16.917,-7.7601 1.772,-5.9 2.322,-14.0039 3.053,-21.4797 6.054,-0.3774 13.503,1.666 18.538,-0.5024 -3.515,-1.1386 -8.076,-1.1476 -11.113,-2.807 2.482,-1.1988 8.293,-0.9566 12.082,-0.0367 z M 117.679,76.859 c -3.656,8.598 -6.976,17.5078 -12.435,24.436 C 99.9551,97.748 94.1309,94.4121 92.6445,87.9711 100.215,83.6879 109.041,79.4629 117.679,76.859 z m 9.012,26.625 c -0.346,-8.5988 -1.327,-19.8781 -3.619,-26.6172 5.467,6.9613 9.876,15.0672 14.484,22.9594 -1.964,3.1528 -6.07,5.9018 -10.865,3.6578 z m -10.216,3.63 c -2.071,0.223 -3.829,-2.381 -6.522,-1.255 -0.617,-0.682 -1.178,-1.421 -1.807,-2.087 5.948,-7.1681 8.651,-17.338 13.245,-25.7618 2.465,8.0918 2.181,16.957 2.724,25.7888 -3.387,-0.215 -5.266,3.063 -7.64,3.315 z m -6.569,8.67 c -0.221,-2.455 0.35,-3.258 0.844,-6.072 8.07,-2.523 6.661,11.076 -0.844,6.072 z m -8.949,2.938 c -3.4773,1.9 -8.7011,3.969 -13.1925,4.826 -5.5672,1.065 -5.0457,-7.594 -4.8094,-12.76 0.1855,-4.09 2.3125,-8.415 3.2363,-11.1321 0.4336,-1.2688 0.5313,-2.6149 1.616,-2.8668 1.9172,-0.4469 8.2414,2.082 10.0434,3.0648 3.8112,2.0781 6.7682,5.3781 10.0052,7.5941 0.042,1.078 0.083,2.155 0.126,3.233 -1.946,0.97 -4.195,1.658 -7.052,1.783 1.938,0.975 4.789,0.961 6.555,2.121 0.017,0.432 0.035,0.863 0.05,1.291 -3.224,0.248 -4.453,1.684 -6.578,2.846 z m -33.2136,6.033 c -2.886,-2.93 8.0945,-6.924 11.5906,-7.139 -0.0195,1.854 1.0566,3.602 0.8398,4.932 -4.1523,0.729 -9.6093,0.248 -12.4304,2.207 z m 35.5516,-1.376 c -0.014,-0.286 -0.387,-0.182 -0.448,-0.415 3.713,-2.902 6.471,-3.502 11.525,-3.252 2.279,1.654 4.3,3.588 6.673,5.137 -5.463,-0.488 -12.34,-3.881 -17.75,-1.47 z m 32.632,-9.895 c -0.156,3.255 -1.011,9.949 -3.023,11.121 -4.223,2.465 -11.73,-4.977 -14.91,-6.112 0.346,-0.996 0.917,-1.785 0.961,-3.058 1.881,0.463 4.171,0.146 5.801,-0.655 -1.885,-0.211 -3.975,-0.197 -5.222,-1.095 -0.457,-1.321 0.112,-3.121 -0.192,-4.955 4.474,-1.262 9.584,-1.934 15.24,-2.1 1.1,1.43 1.475,4.154 1.345,6.854 z m -73.0422,8.437 c -0.9063,0.646 -7.0371,8.623 -7.877,8.292 C 43.9141,125.838 33.541,118.273 24.2715,111.118 33.1094,92.1539 36.677,68.9199 37.3074,46.5262 47.4316,41.791 56.3242,34.9648 70.0625,34.252 68.4727,45.5 67.0215,55.5352 66.1191,66.125 c -3.4519,1.4551 -8.4043,-0.066 -11.6347,0.4512 -0.0274,3.8929 4.9336,1.7047 5.3468,4.3226 0.3114,1.9801 -2.7296,2.1301 -1.7394,5.2481 2.5254,-0.918 3.8516,-2.9457 6.5449,-3.7071 2.461,5.384 -0.0344,14.9102 0.3203,19.4102 0.0672,0.8449 0.4219,4.6809 2.3145,4.0078 1.675,-0.5957 -0.0957,-10.2019 0.0879,-14.4609 0.1672,-3.9239 -0.4739,-7.7207 1.1152,-10.184 13.2754,1.807 26.7656,2.975 41.1294,3.3691 -3.16,1.3559 -6.914,2.6391 -11.0298,4.959 -2.2312,1.2578 -9.2644,3.875 -9.9082,5.9942 -1.0273,3.3769 2.6953,5.1757 3.332,8.0707 -6.7011,-3.6547 -8.0085,3.5031 -9.5937,8.5741 -1.4363,4.593 -2.2539,8.024 -2.6063,10.673 -5.7726,2.752 -11.9445,5.539 -16.9132,9.068 z m 67.1792,7.327 c 9.243,4.482 10.909,-16.751 7.286,-23.591 0.56,-2.04 2.486,-2.821 3.272,-4.655 -5.158,-9.2399 -10.887,-17.8649 -16.15,-26.9961 3.915,2.4371 9.507,0.4359 14.114,2.2601 1.684,0.666 2.903,4.5211 4.178,7.6051 3.507,8.4848 7.189,19.1819 8.827,27.2789 0.37,1.845 1.378,5.865 1.152,7.507 -0.403,2.94 -4.392,5.12 -6.421,6.938 -3.738,3.358 -6.092,6.313 -9.991,9.453 -1.581,-2.334 -4.974,-3.902 -6.267,-5.8 z m -88.3179,81.968 c -4.4043,-4.846 -3.4824,-13.926 -2.9492,-20.386 7.9609,5.008 18.5273,-0.396 18.4277,-8.914 3.8008,0.101 1.4199,4.747 0.7324,7.74 -2.2468,9.776 3.7852,20.397 0.2735,29.337 -6.8184,-0.517 -12.42,-3.302 -16.4844,-7.777 z m 31.5137,28.126 c -9.9707,-2.826 -22.7493,-10.071 -26.8465,-19.028 3.1726,0.461 5.375,2.061 8.5047,2.259 1.1828,0.077 2.7324,-0.496 4.0918,-0.158 2.709,0.672 4.9953,6.746 7.039,9.006 1.9922,2.207 4.3867,3.15 6.0254,5.162 1.0528,0.508 2.6094,0.473 2.6692,2.054 -0.4563,0.488 -0.9368,0.86 -1.4836,0.705 z m 51.9032,-2.658 c -10.349,5.839 -27.8661,10.231 -38.8747,4.743 -8.8828,-4.429 -20.8899,-11.757 -24.9836,-21.043 3.8242,-8.961 -1.1328,-17.172 -1.4492,-26.27 -0.168,-4.841 2.2793,-9.067 2.4668,-14.337 -1.3086,-2.159 -5.3067,-2.425 -8.0743,-2.277 -0.9316,4.662 -2.5625,9.902 -7.3632,10.428 -6.793,0.743 -11.7598,-4.879 -12.0684,-10.754 -0.3652,-6.909 5.3066,-18.36 13.3457,-17.565 3.1055,0.307 3.8684,3.42 7.252,3.388 1.8339,-3.659 -2.8289,-4.808 -3.3086,-7.425 -0.125,-0.676 0.3867,-3.318 0.6843,-4.557 1.4602,-6.033 4.7153,-13.841 7.9192,-18.434 4.0664,-5.826 12.0555,-6.704 20.6504,-7.275 1.5351,3.307 7.1902,3.035 10.875,2.17 -4.416,1.749 -8.5215,5.989 -11.9239,9.742 -3.9082,4.306 -7.8671,8.925 -8.0671,14.553 7.3855,-10.246 13.4871,-19.194 26.9168,-23.701 10.1618,-3.408 22.0298,1.562 29.8378,7.045 3.24,2.279 5.174,5.895 7.477,9.205 8.617,12.395 12.638,30.087 11.754,47.235 -0.364,7.072 -0.348,14.12 -2.721,18.878 -2.48,4.975 -10.868,9.426 -15.778,4.926 -0.91,4.838 4.083,7.83 9.948,6.089 -4.182,5.397 -8.571,11.882 -14.515,15.236 z M 144.444,77.1168 c 8.087,4.0203 23.197,10.8211 28.267,-0.0148 1.871,-3.9942 4.066,-10.7461 5.035,-14.8692 1.369,-5.8168 -1.484,-18.043 -7.463,-19.9949 -5.281,-1.7238 -11.443,-1.6188 -17.804,-0.341 -0.749,0.623 -1.583,1.709 -2.166,2.841 -4.542,0.1762 -8.795,-0.2438 -12.383,-2.1109 0.34,-3.359 -1.932,-3.8981 -4.062,-4.5899 -1.579,-6.2609 3.159,-14.4371 2.025,-20.1461 -0.809,-4.0672 -5.813,-4.6961 -9.491,-5.457 -0.12,-2.2602 0.161,-4.14689 0.412,-6.059 -0.841,-3.09883 -4.613,-4.86289 -8.187,-5.29492 -11.759,-1.414064 -29.6133,-2.049221 -40.9239,2.01797 -3.1562,7.74175 -5.6426,17.15785 -8.2715,25.99805 -11.0312,-1.1781 -19.9531,4.7598 -28.364,8.65 -2.9121,1.35 -6.9406,2.0937 -8.0285,4.4117 -1.0547,2.2442 -0.6231,6.5453 -0.8848,10.6082 -0.666,10.377 -1.2363,20.386 -3.9766,31.011 -1.2304,4.7679 -3.375,8.975 -4.8711,13.5691 -1.3828,4.2579 -3.7988,9.5199 -4.4289,13.7659 -0.9343,6.293 4.9914,6.643 8.7805,9.37 5.8574,4.217 10.4551,6.549 16.7988,10.355 1.8789,1.127 7.545,3.98 8.1895,5.294 1.2812,2.605 -2.1992,6.278 -3.1297,8.32 -1.4719,3.229 -2.2395,5.972 -2.4504,9.158 -5.3215,0.841 -9.3555,4.008 -11.7922,7.579 -4.0308,5.91 -6.8262,16.844 -3.3387,25.161 0.2735,0.655 1.6375,1.943 1.8387,2.949 0.3969,1.981 -0.7469,4.615 -0.818,6.722 -0.3664,10.81 1.829,20.124 9.1063,23.384 2.9543,11.769 13.5281,15.682 23.4902,21.531 3.7239,2.186 7.8289,3.583 12.0684,5.143 15.2082,5.597 38.5419,4.543 51.1639,-5.003 5.352,-4.048 13.907,-12.595 16.967,-18.783 8.082,-16.337 7.508,-43.64 1.855,-63.513 -0.76,-2.668 -1.862,-6.59 -3.401,-9.795 -1.073,-2.238 -4.408,-6.716 -4.003,-8.692 0.417,-2.043 7.604,-7.5 9.145,-8.986 2.775,-2.677 8.047,-6.23 8.474,-9.608 0.459,-3.595 -1.584,-8.513 -2.619,-11.982 -3.46,-11.5769 -6.836,-22.2781 -10.759,-32.5992" /> |
4233 | + <path |
4234 | + inkscape:connector-curvature="0" |
4235 | + id="path132" |
4236 | + style="fill:#f7e4cd;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4237 | + d="m 90.491,157.255 c 0.4387,0.584 2.8508,1.471 6.2258,-0.154 0,0 -4,-0.667 -3.6672,-7.336 l -1.6668,0.334 c 0,0 -1.7226,6.047 -0.8918,7.156" /> |
4238 | + <path |
4239 | + inkscape:connector-curvature="0" |
4240 | + id="path134" |
4241 | + style="fill:#1d1919;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4242 | + d="m 119.717,99.934 c 0,-1.0121 -0.821,-1.8328 -1.834,-1.8328 -1.012,0 -1.833,0.8207 -1.833,1.8328 0,1.012 0.821,1.834 1.833,1.834 1.013,0 1.834,-0.822 1.834,-1.834" /> |
4243 | + <path |
4244 | + inkscape:connector-curvature="0" |
4245 | + id="path136" |
4246 | + style="fill:#1d1919;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4247 | + d="m 121.55,91.434 c 0,-1.0121 -0.821,-1.8328 -1.834,-1.8328 -1.012,0 -1.833,0.8207 -1.833,1.8328 0,1.0121 0.821,1.834 1.833,1.834 1.013,0 1.834,-0.8219 1.834,-1.834" /> |
4248 | + </g> |
4249 | + </g> |
4250 | + <text |
4251 | + xml:space="preserve" |
4252 | + style="font-size:15px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Ubuntu;-inkscape-font-specification:Ubuntu" |
4253 | + x="-236.76514" |
4254 | + y="715.29077" |
4255 | + id="text3081" |
4256 | + sodipodi:linespacing="125%"><tspan |
4257 | + sodipodi:role="line" |
4258 | + id="tspan3083" |
4259 | + x="-236.76514" |
4260 | + y="715.29077">Slave</tspan></text> |
4261 | + </g> |
4262 | + <g |
4263 | + inkscape:groupmode="layer" |
4264 | + id="layer3" |
4265 | + inkscape:label="PLACE YOUR PICTOGRAM HERE" |
4266 | + style="display:inline" /> |
4267 | + <g |
4268 | + inkscape:groupmode="layer" |
4269 | + id="layer2" |
4270 | + inkscape:label="BADGE" |
4271 | + style="display:none" |
4272 | + sodipodi:insensitive="true"> |
4273 | + <g |
4274 | + style="display:inline" |
4275 | + transform="translate(-340.00001,-581)" |
4276 | + id="g4394" |
4277 | + clip-path="none"> |
4278 | + <g |
4279 | + id="g855"> |
4280 | + <g |
4281 | + inkscape:groupmode="maskhelper" |
4282 | + id="g870" |
4283 | + clip-path="url(#clipPath873)" |
4284 | + style="opacity:0.6;filter:url(#filter891)"> |
4285 | + <path |
4286 | + transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-237.54282)" |
4287 | + d="m 264,552.36218 c 0,6.62742 -5.37258,12 -12,12 -6.62742,0 -12,-5.37258 -12,-12 0,-6.62741 5.37258,-12 12,-12 6.62742,0 12,5.37259 12,12 z" |
4288 | + sodipodi:ry="12" |
4289 | + sodipodi:rx="12" |
4290 | + sodipodi:cy="552.36218" |
4291 | + sodipodi:cx="252" |
4292 | + id="path844" |
4293 | + style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
4294 | + sodipodi:type="arc" /> |
4295 | + </g> |
4296 | + <g |
4297 | + id="g862"> |
4298 | + <path |
4299 | + sodipodi:type="arc" |
4300 | + style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
4301 | + id="path4398" |
4302 | + sodipodi:cx="252" |
4303 | + sodipodi:cy="552.36218" |
4304 | + sodipodi:rx="12" |
4305 | + sodipodi:ry="12" |
4306 | + d="m 264,552.36218 c 0,6.62742 -5.37258,12 -12,12 -6.62742,0 -12,-5.37258 -12,-12 0,-6.62741 5.37258,-12 12,-12 6.62742,0 12,5.37259 12,12 z" |
4307 | + transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-238.54282)" /> |
4308 | + <path |
4309 | + transform="matrix(1.25,0,0,1.25,33,-100.45273)" |
4310 | + d="m 264,552.36218 c 0,6.62742 -5.37258,12 -12,12 -6.62742,0 -12,-5.37258 -12,-12 0,-6.62741 5.37258,-12 12,-12 6.62742,0 12,5.37259 12,12 z" |
4311 | + sodipodi:ry="12" |
4312 | + sodipodi:rx="12" |
4313 | + sodipodi:cy="552.36218" |
4314 | + sodipodi:cx="252" |
4315 | + id="path4400" |
4316 | + style="color:#000000;fill:#dd4814;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
4317 | + sodipodi:type="arc" /> |
4318 | + <path |
4319 | + sodipodi:type="star" |
4320 | + style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" |
4321 | + id="path4459" |
4322 | + sodipodi:sides="5" |
4323 | + sodipodi:cx="666.19574" |
4324 | + sodipodi:cy="589.50385" |
4325 | + sodipodi:r1="7.2431178" |
4326 | + sodipodi:r2="4.3458705" |
4327 | + sodipodi:arg1="1.0471976" |
4328 | + sodipodi:arg2="1.6755161" |
4329 | + inkscape:flatsided="false" |
4330 | + inkscape:rounded="0.1" |
4331 | + inkscape:randomized="0" |
4332 | + d="m 669.8173,595.77657 c -0.39132,0.22593 -3.62645,-1.90343 -4.07583,-1.95066 -0.44938,-0.0472 -4.05653,1.36297 -4.39232,1.06062 -0.3358,-0.30235 0.68963,-4.03715 0.59569,-4.47913 -0.0939,-0.44198 -2.5498,-3.43681 -2.36602,-3.8496 0.18379,-0.41279 4.05267,-0.59166 4.44398,-0.81759 0.39132,-0.22593 2.48067,-3.48704 2.93005,-3.4398 0.44938,0.0472 1.81505,3.67147 2.15084,3.97382 0.3358,0.30236 4.08294,1.2817 4.17689,1.72369 0.0939,0.44198 -2.9309,2.86076 -3.11469,3.27355 -0.18379,0.41279 0.0427,4.27917 -0.34859,4.5051 z" |
4333 | + transform="matrix(1.511423,-0.16366377,0.16366377,1.511423,-755.37346,-191.93651)" /> |
4334 | + </g> |
4335 | + </g> |
4336 | + </g> |
4337 | + </g> |
4338 | +</svg> |
4339 | |
4340 | === added file 'charms/jenkins-juju-ci/metadata.yaml' |
4341 | --- charms/jenkins-juju-ci/metadata.yaml 1970-01-01 00:00:00 +0000 |
4342 | +++ charms/jenkins-juju-ci/metadata.yaml 2017-03-14 23:38:01 +0000 |
4343 | @@ -0,0 +1,21 @@ |
4344 | +name: jenkins-juju-ci |
4345 | +maintainer: Curtis Hovey <curtis.hovey@canonical.com> |
4346 | +summary: Juju CI tools for jenkins |
4347 | +description: | |
4348 | + Reconfigure the host and install testing tools to run Juju CI tests. |
4349 | + . |
4350 | + This charm will move /var/lib/<jenkins | lxd | lxc> to a big partition |
4351 | + if available. Several sets of tools are installed. Once configuration |
4352 | + is complete, the jenkins-slave is ready to run Juju CI tests. |
4353 | +subordinate: true |
4354 | +requires: |
4355 | + juju-info: |
4356 | + interface: juju-info |
4357 | + scope: container |
4358 | +tags: |
4359 | + - ci |
4360 | +series: |
4361 | + - xenial |
4362 | + - trusty |
4363 | + - precise |
4364 | + - yakkety |
4365 | |
4366 | === added directory 'charms/jenkins-juju-ci/scripts' |
4367 | === added file 'charms/jenkins-juju-ci/scripts/place-slave.sh' |
4368 | --- charms/jenkins-juju-ci/scripts/place-slave.sh 1970-01-01 00:00:00 +0000 |
4369 | +++ charms/jenkins-juju-ci/scripts/place-slave.sh 2017-03-14 23:38:01 +0000 |
4370 | @@ -0,0 +1,30 @@ |
4371 | +#!/bin/bash |
4372 | + |
4373 | +SLAVE_JAR=/var/lib/jenkins/bin/slave.jar |
4374 | +RUN_JAR=/var/run/jenkins/slave.jar |
4375 | +JENKINS_URL=$1 |
4376 | + |
4377 | +if [[ ! -f /var/lib/jenkins/bin/slave.jar ]]; then |
4378 | + if [[ -z "$JENKINS_URL" ]]; then |
4379 | + echo URL of jenkins server must be provided |
4380 | + exit 1 |
4381 | + fi |
4382 | + echo "Downloading slave.jar from $JENKINS_URL" |
4383 | + wget -q -O $SLAVE_JAR $JENKINS_URL/jnlpJars/slave.jar |
4384 | + |
4385 | + if [[ ! -f $SLAVE_JAR ]] ; then |
4386 | + echo "Failed to download slave.jar, no file" |
4387 | + exit 1 |
4388 | + fi |
4389 | + if [[ $(stat -c%s $SLAVE_JAR) == "0" ]]; then |
4390 | + echo "Failed to download slave.jar, empty file" |
4391 | + exit 1 |
4392 | + fi |
4393 | + sudo chown jenkins:jenkins $SLAVE_JAR |
4394 | +fi |
4395 | + |
4396 | +if [[ ! -d /var/run/jenkins ]]; then |
4397 | + mkdir /var/run/jenkins |
4398 | +fi |
4399 | +cp $SLAVE_JAR $RUN_JAR |
4400 | +sudo chown jenkins:jenkins $RUN_JAR |
4401 | |
4402 | === added file 'charms/jenkins-juju-ci/scripts/start-jenkins-slave.sh' |
4403 | --- charms/jenkins-juju-ci/scripts/start-jenkins-slave.sh 1970-01-01 00:00:00 +0000 |
4404 | +++ charms/jenkins-juju-ci/scripts/start-jenkins-slave.sh 2017-03-14 23:38:01 +0000 |
4405 | @@ -0,0 +1,9 @@ |
4406 | +#!/bin/sh |
4407 | +test -n "$JENKINS_URL" || . /etc/default/jenkins-slave |
4408 | +test -n "$JENKINS_URL" || { stop; exit 0; } |
4409 | +mkdir $JENKINS_RUN > /dev/null 2>&1 || true |
4410 | +chown -R $JENKINS_USER $JENKINS_RUN || true |
4411 | +$JENKINS_HOME/bin/place-slave.sh $JENKINS_URL |
4412 | +/sbin/start-stop-daemon --start -c $JENKINS_USER \ |
4413 | + --exec $JAVA --name jenkins-slave \ |
4414 | + -- $JAVA_ARGS -jar $JENKINS_RUN/slave.jar $JENKINS_ARGS |
4415 | |
4416 | === added directory 'charms/jenkins-slave' |
4417 | === added file 'charms/jenkins-slave/README.md' |
4418 | --- charms/jenkins-slave/README.md 1970-01-01 00:00:00 +0000 |
4419 | +++ charms/jenkins-slave/README.md 2017-03-14 23:38:01 +0000 |
4420 | @@ -0,0 +1,24 @@ |
4421 | +# Overview |
4422 | + |
4423 | +This charm provisions a Jenkins slave to connect to a Jenkins master. |
4424 | +This is the companion to the Jenkins charm. It work with a standalone |
4425 | +Jenkins master or one managed by Juju |
4426 | + |
4427 | + |
4428 | +# Usage |
4429 | + |
4430 | +To deploy a Jenkins slave you will also need to deploy the jenkins master |
4431 | +charm. This can be done as follows: |
4432 | + |
4433 | + juju deploy jenkins |
4434 | + juju deploy -n 5 jenkins-slave |
4435 | + juju add-relation jenkins jenkins-slave |
4436 | + |
4437 | +There are cases where you want to provision a specific machine that |
4438 | +provides specific resources for tests, such as CPU architecture or |
4439 | +network access. You can deploy the extra slave like this: |
4440 | + |
4441 | + juju add-machine <special-machine-private-ip> |
4442 | + juju deploy --to <special-machine-number> jenkins-slave ppc64el-slave |
4443 | + |
4444 | +See the Jenkins charm for more details. |
4445 | |
4446 | === added file 'charms/jenkins-slave/config.yaml' |
4447 | --- charms/jenkins-slave/config.yaml 1970-01-01 00:00:00 +0000 |
4448 | +++ charms/jenkins-slave/config.yaml 2017-03-14 23:38:01 +0000 |
4449 | @@ -0,0 +1,20 @@ |
4450 | +options: |
4451 | + packages: |
4452 | + type: string |
4453 | + default: make git bzr |
4454 | + description: Packages to install on jenkins slave. |
4455 | + labels: |
4456 | + type: string |
4457 | + description: Jenkins labels to associate with jenkins slave. |
4458 | + default: "" |
4459 | + slave-name: |
4460 | + type: string |
4461 | + description: The name of this slave. Defaults to the juju unit name. |
4462 | + default: "" |
4463 | + master-url: |
4464 | + type: string |
4465 | + description: | |
4466 | + The URL of the jenkins master. Set this when this charm is not in |
4467 | + relation to a master or the master is not accessible via its default |
4468 | + URL. |
4469 | + default: "" |
4470 | |
4471 | === added file 'charms/jenkins-slave/copyright' |
4472 | --- charms/jenkins-slave/copyright 1970-01-01 00:00:00 +0000 |
4473 | +++ charms/jenkins-slave/copyright 2017-03-14 23:38:01 +0000 |
4474 | @@ -0,0 +1,17 @@ |
4475 | +Format: http://dep.debian.net/deps/dep5/ |
4476 | + |
4477 | +Files: * |
4478 | +Copyright: Copyright 2011-2016, Canonical Ltd., All Rights Reserved. |
4479 | +License: GPL-3 |
4480 | + This program is free software: you can redistribute it and/or modify |
4481 | + it under the terms of the GNU General Public License as published by |
4482 | + the Free Software Foundation, either version 3 of the License, or |
4483 | + (at your option) any later version. |
4484 | + . |
4485 | + This program is distributed in the hope that it will be useful, |
4486 | + but WITHOUT ANY WARRANTY; without even the implied warranty of |
4487 | + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4488 | + GNU General Public License for more details. |
4489 | + . |
4490 | + You should have received a copy of the GNU General Public License |
4491 | + along with this program. If not, see <http://www.gnu.org/licenses/>. |
4492 | |
4493 | === added directory 'charms/jenkins-slave/files' |
4494 | === added directory 'charms/jenkins-slave/files/default' |
4495 | === added file 'charms/jenkins-slave/files/default/jenkins-slave' |
4496 | --- charms/jenkins-slave/files/default/jenkins-slave 1970-01-01 00:00:00 +0000 |
4497 | +++ charms/jenkins-slave/files/default/jenkins-slave 2017-03-14 23:38:01 +0000 |
4498 | @@ -0,0 +1,51 @@ |
4499 | +# defaults for jenkins-slave component of the jenkins continuous integration |
4500 | +# system |
4501 | + |
4502 | +# pulled in from the init script; makes things easier. |
4503 | +NAME=jenkins-slave |
4504 | + |
4505 | +# location of java |
4506 | +JAVA=/usr/bin/java |
4507 | + |
4508 | +# arguments to pass to java - optional |
4509 | +#JAVA_ARGS="-Xmx256m" |
4510 | + |
4511 | +# for daemon to use |
4512 | +PIDFILE=/var/run/jenkins/$NAME.pid |
4513 | + |
4514 | +# user id to be invoked as (otherwise will run as root; not wise!) |
4515 | +JENKINS_USER=jenkins |
4516 | + |
4517 | +# location of jenkins arch indep files |
4518 | +JENKINS_ROOT=/usr/share/jenkins |
4519 | + |
4520 | +# jenkins home location |
4521 | +JENKINS_HOME=/var/lib/jenkins |
4522 | + |
4523 | +# jenkins /run location |
4524 | +JENKINS_RUN=/var/run/jenkins |
4525 | + |
4526 | +# URL of jenkins server to connect to |
4527 | +# Not specifying this parameter will stop the slave |
4528 | +# job from running. |
4529 | +#JENKINS_URL="" |
4530 | + |
4531 | +# Name of slave configuration to use at JENKINS_URL |
4532 | +# Override if it need to be something other than the |
4533 | +# hostname of the server the slave is running on. |
4534 | +JENKINS_HOSTNAME="$(hostname)" |
4535 | + |
4536 | +# Log file location for use in Debian init script |
4537 | +JENKINS_SLAVE_LOG=/var/log/jenkins/$NAME.log |
4538 | + |
4539 | +# OS LIMITS SETUP |
4540 | +# comment this out to observe /etc/security/limits.conf |
4541 | +# this is on by default because http://github.com/feniix/hudson/commit/d13c08ea8f5a3fa730ba174305e6429b74853927 |
4542 | +# reported that Ubuntu's PAM configuration doesn't include pam_limits.so, and as a result the # of file |
4543 | +# descriptors are forced to 1024 regardless of /etc/security/limits.confa |
4544 | +# NOTE - Ubuntu Users - this is not used by the upstart configuration - please use an upstart overrides file |
4545 | +# to change the OS limits setup. |
4546 | +MAXOPENFILES=8192 |
4547 | + |
4548 | +# Arguments to pass to jenkins slave on startup |
4549 | +JENKINS_ARGS="-jnlpUrl $JENKINS_URL/computer/$NAME/slave-agent.jnlp" |
4550 | |
4551 | === added directory 'charms/jenkins-slave/files/init' |
4552 | === added directory 'charms/jenkins-slave/files/init.d' |
4553 | === added file 'charms/jenkins-slave/files/init/jenkins-slave.conf' |
4554 | --- charms/jenkins-slave/files/init/jenkins-slave.conf 1970-01-01 00:00:00 +0000 |
4555 | +++ charms/jenkins-slave/files/init/jenkins-slave.conf 2017-03-14 23:38:01 +0000 |
4556 | @@ -0,0 +1,19 @@ |
4557 | +description "Jenkins CI Slave Agent" |
4558 | +author "James Page <james.page@ubuntu.com>" |
4559 | + |
4560 | +start on runlevel [2345] |
4561 | +stop on runlevel [!2345] |
4562 | + |
4563 | +pre-start script |
4564 | + [ -r /etc/default/jenkins-slave ] && . /etc/default/jenkins-slave |
4565 | + [ -n "$JENKINS_URL" ] || { stop; exit 0; } |
4566 | + mkdir $JENKINS_RUN > /dev/null 2>&1 || true |
4567 | + chown -R $JENKINS_USER $JENKINS_RUN || true |
4568 | + $JENKINS_ROOT/bin/download-slave.sh $JENKINS_URL |
4569 | +end script |
4570 | + |
4571 | +script |
4572 | + [ -r /etc/default/jenkins-slave ] && . /etc/default/jenkins-slave |
4573 | + exec start-stop-daemon --start -c $JENKINS_USER --exec $JAVA --name jenkins-slave \ |
4574 | + -- $JAVA_ARGS -jar $JENKINS_RUN/slave.jar $JENKINS_ARGS |
4575 | +end script |
4576 | |
4577 | === added directory 'charms/jenkins-slave/files/logrotate.d' |
4578 | === added file 'charms/jenkins-slave/files/logrotate.d/jenkins-slave' |
4579 | --- charms/jenkins-slave/files/logrotate.d/jenkins-slave 1970-01-01 00:00:00 +0000 |
4580 | +++ charms/jenkins-slave/files/logrotate.d/jenkins-slave 2017-03-14 23:38:01 +0000 |
4581 | @@ -0,0 +1,9 @@ |
4582 | +/var/log/jenkins/jenkins-slave.log { |
4583 | + daily |
4584 | + copytruncate |
4585 | + missingok |
4586 | + rotate 7 |
4587 | + compress |
4588 | + delaycompress |
4589 | + notifempty |
4590 | +} |
4591 | |
4592 | === added directory 'charms/jenkins-slave/files/systemd' |
4593 | === added directory 'charms/jenkins-slave/files/systemd/system' |
4594 | === added file 'charms/jenkins-slave/files/systemd/system/jenkins-slave.service' |
4595 | --- charms/jenkins-slave/files/systemd/system/jenkins-slave.service 1970-01-01 00:00:00 +0000 |
4596 | +++ charms/jenkins-slave/files/systemd/system/jenkins-slave.service 2017-03-14 23:38:01 +0000 |
4597 | @@ -0,0 +1,10 @@ |
4598 | +[Unit] |
4599 | +Description=Jenkins CI Slave Agent |
4600 | +Wants=network-online.target |
4601 | +After=network-online.target |
4602 | + |
4603 | +[Service] |
4604 | +ExecStart=/var/lib/jenkins/bin/start-jenkins-slave.sh |
4605 | + |
4606 | +[Install] |
4607 | +WantedBy=multi-user.target |
4608 | |
4609 | === added directory 'charms/jenkins-slave/hooks' |
4610 | === added file 'charms/jenkins-slave/hooks/config-changed' |
4611 | --- charms/jenkins-slave/hooks/config-changed 1970-01-01 00:00:00 +0000 |
4612 | +++ charms/jenkins-slave/hooks/config-changed 2017-03-14 23:38:01 +0000 |
4613 | @@ -0,0 +1,64 @@ |
4614 | +#!/bin/bash |
4615 | +set -eux |
4616 | + |
4617 | +status-set maintenance "Updating scripts" || true |
4618 | +if [[ ! -d /var/lib/jenkins/bin ]]; then |
4619 | + mkdir -p /var/lib/jenkins/bin |
4620 | +fi |
4621 | +cp $JUJU_CHARM_DIR/scripts/start-jenkins-slave.sh /var/lib/jenkins/bin |
4622 | +chmod +x /var/lib/jenkins/bin/start-jenkins-slave.sh |
4623 | +cp $JUJU_CHARM_DIR/scripts/place-slave.sh /var/lib/jenkins/bin |
4624 | +chmod +x /var/lib/jenkins/bin/place-slave.sh |
4625 | + |
4626 | +status-set maintenance "Checking config" |
4627 | +PACKAGES=$(config-get packages) |
4628 | +if [[ "$PACKAGES" != "" ]]; then |
4629 | + status-set maintenance "Installing packages." || true |
4630 | + apt-get install -y $PACKAGES |
4631 | +fi |
4632 | + |
4633 | +SLAVE_NAME=$(config-get slave-name) |
4634 | +if [[ "$SLAVE_NAME" == "" ]]; then |
4635 | + SLAVE_NAME=$(echo $JUJU_UNIT_NAME | sed s,/,-,) |
4636 | +fi |
4637 | + |
4638 | +MASTER_URL=$(config-get master-url) |
4639 | +# This is a hack. We don't want to iterate, but we need to |
4640 | +# because we need the state of relations and config to know |
4641 | +# if this charm is active or something else. |
4642 | +for app in $(relation-ids slave); do |
4643 | + for unit in $(relation-list -r $app); do |
4644 | + MASTER_URL"$(relation-get -r $app url $unit)" |
4645 | + break |
4646 | + done |
4647 | +done |
4648 | +if [[ "$MASTER_URL" == "" ]]; then |
4649 | + status-set blocked "Set master-url option or relate to master" || true |
4650 | + juju-log "master-url config is not set or master needs to export its url" |
4651 | + exit 0 |
4652 | +fi |
4653 | + |
4654 | +status-set maintenance "Updating configuration." || true |
4655 | +cp $JUJU_CHARM_DIR/files/default/jenkins-slave /etc/default/jenkins-slave |
4656 | +sed -i -r \ |
4657 | + "s,NAME=jenkins-slave,NAME=$SLAVE_NAME," /etc/default/jenkins-slave |
4658 | +sed -i -r \ |
4659 | + "s,#JENKINS_URL=.*,JENKINS_URL=$MASTER_URL," /etc/default/jenkins-slave |
4660 | + |
4661 | +if [[ -d /etc/systemd ]]; then |
4662 | + cp $JUJU_CHARM_DIR/files/systemd/system/jenkins-slave.service \ |
4663 | + /etc/systemd/system/jenkins-slave.service |
4664 | + systemctl enable jenkins-slave |
4665 | +else |
4666 | + cp $JUJU_CHARM_DIR/files/init/jenkins-slave.conf \ |
4667 | + /etc/init/jenkins-slave.conf |
4668 | + ln -s /lib/init/upstart-job /etc/init.d/jenkins-slave || true |
4669 | +fi |
4670 | + |
4671 | +status-set maintenance "Checking jenkins slave.jar" || true |
4672 | +/var/lib/jenkins/bin/place-slave.sh "$MASTER_URL" |
4673 | + |
4674 | +status-set maintenance "Starting services." || true |
4675 | +service jenkins-slave stop 2>/dev/null || true |
4676 | +service jenkins-slave start || true |
4677 | +status-set active "$SLAVE_NAME is accepting work" || true |
4678 | |
4679 | === added file 'charms/jenkins-slave/hooks/install' |
4680 | --- charms/jenkins-slave/hooks/install 1970-01-01 00:00:00 +0000 |
4681 | +++ charms/jenkins-slave/hooks/install 2017-03-14 23:38:01 +0000 |
4682 | @@ -0,0 +1,20 @@ |
4683 | +#!/bin/bash |
4684 | + |
4685 | +set -eux |
4686 | + |
4687 | +status-set maintenance "Installing" || true |
4688 | +apt-get install -y adduser default-jre-headless |
4689 | + |
4690 | +if ! id jenkins > /dev/null 2>&1 ; then |
4691 | + mkdir -p /var/lib/jenkins |
4692 | + adduser --system --home /var/lib/jenkins \ |
4693 | + --group --disabled-password --quiet --shell /bin/bash \ |
4694 | + jenkins |
4695 | + chown -R jenkins:jenkins /var/lib/jenkins |
4696 | +fi |
4697 | + |
4698 | +if [[ ! -d /var/log/jenkins ]]; then |
4699 | + mkdir -p /var/log/jenkins |
4700 | +fi |
4701 | + |
4702 | +status-set maintenance "Installed" || true |
4703 | |
4704 | === added file 'charms/jenkins-slave/hooks/slave-relation-joined' |
4705 | --- charms/jenkins-slave/hooks/slave-relation-joined 1970-01-01 00:00:00 +0000 |
4706 | +++ charms/jenkins-slave/hooks/slave-relation-joined 2017-03-14 23:38:01 +0000 |
4707 | @@ -0,0 +1,20 @@ |
4708 | +#!/bin/bash |
4709 | + |
4710 | +set -e |
4711 | + |
4712 | +# Set the slave hostname to match the juju unit |
4713 | +# in the jenkins master instance |
4714 | +slavehost=$(echo ${JUJU_UNIT_NAME} | sed s,/,-,) |
4715 | +noexecutors=$(cat /proc/cpuinfo | grep processor | wc -l) |
4716 | +config_labels=$(config-get labels) |
4717 | +labels=$(uname -p) |
4718 | + |
4719 | +if [[ -n "$config_labels" ]]; then |
4720 | + labels=$config_labels |
4721 | +fi |
4722 | + |
4723 | +# Set all relations |
4724 | +relation-set executors=$noexecutors |
4725 | +relation-set labels="$labels" |
4726 | +relation-set slavehost=$slavehost |
4727 | +relation-set slaveaddress=`unit-get private-address` |
4728 | |
4729 | === added file 'charms/jenkins-slave/hooks/start' |
4730 | --- charms/jenkins-slave/hooks/start 1970-01-01 00:00:00 +0000 |
4731 | +++ charms/jenkins-slave/hooks/start 2017-03-14 23:38:01 +0000 |
4732 | @@ -0,0 +1,3 @@ |
4733 | +#!/bin/bash |
4734 | + |
4735 | +service jenkins-slave start || true |
4736 | |
4737 | === added file 'charms/jenkins-slave/hooks/stop' |
4738 | --- charms/jenkins-slave/hooks/stop 1970-01-01 00:00:00 +0000 |
4739 | +++ charms/jenkins-slave/hooks/stop 2017-03-14 23:38:01 +0000 |
4740 | @@ -0,0 +1,3 @@ |
4741 | +#!/bin/bash |
4742 | + |
4743 | +service jenkins-slave stop 2>/dev/null || true |
4744 | |
4745 | === added symlink 'charms/jenkins-slave/hooks/upgrade-charm' |
4746 | === target is u'install' |
4747 | === added file 'charms/jenkins-slave/icon.svg' |
4748 | --- charms/jenkins-slave/icon.svg 1970-01-01 00:00:00 +0000 |
4749 | +++ charms/jenkins-slave/icon.svg 2017-03-14 23:38:01 +0000 |
4750 | @@ -0,0 +1,596 @@ |
4751 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
4752 | +<!-- Created with Inkscape (http://www.inkscape.org/) --> |
4753 | + |
4754 | +<svg |
4755 | + xmlns:dc="http://purl.org/dc/elements/1.1/" |
4756 | + xmlns:cc="http://creativecommons.org/ns#" |
4757 | + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
4758 | + xmlns:svg="http://www.w3.org/2000/svg" |
4759 | + xmlns="http://www.w3.org/2000/svg" |
4760 | + xmlns:xlink="http://www.w3.org/1999/xlink" |
4761 | + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" |
4762 | + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" |
4763 | + width="96" |
4764 | + height="96" |
4765 | + id="svg6517" |
4766 | + version="1.1" |
4767 | + inkscape:version="0.48.4 r9939" |
4768 | + sodipodi:docname="icon.svg"> |
4769 | + <defs |
4770 | + id="defs6519"> |
4771 | + <linearGradient |
4772 | + inkscape:collect="always" |
4773 | + xlink:href="#Background" |
4774 | + id="linearGradient6461" |
4775 | + gradientUnits="userSpaceOnUse" |
4776 | + x1="0" |
4777 | + y1="970.29498" |
4778 | + x2="144" |
4779 | + y2="970.29498" |
4780 | + gradientTransform="matrix(0,-0.66666669,0.6660448,0,-866.25992,731.29077)" /> |
4781 | + <linearGradient |
4782 | + id="Background"> |
4783 | + <stop |
4784 | + id="stop4178" |
4785 | + offset="0" |
4786 | + style="stop-color:#49728b;stop-opacity:1" /> |
4787 | + <stop |
4788 | + id="stop4180" |
4789 | + offset="1" |
4790 | + style="stop-color:#8eabb7;stop-opacity:1" /> |
4791 | + </linearGradient> |
4792 | + <filter |
4793 | + style="color-interpolation-filters:sRGB;" |
4794 | + inkscape:label="Inner Shadow" |
4795 | + id="filter1121"> |
4796 | + <feFlood |
4797 | + flood-opacity="0.59999999999999998" |
4798 | + flood-color="rgb(0,0,0)" |
4799 | + result="flood" |
4800 | + id="feFlood1123" /> |
4801 | + <feComposite |
4802 | + in="flood" |
4803 | + in2="SourceGraphic" |
4804 | + operator="out" |
4805 | + result="composite1" |
4806 | + id="feComposite1125" /> |
4807 | + <feGaussianBlur |
4808 | + in="composite1" |
4809 | + stdDeviation="1" |
4810 | + result="blur" |
4811 | + id="feGaussianBlur1127" /> |
4812 | + <feOffset |
4813 | + dx="0" |
4814 | + dy="2" |
4815 | + result="offset" |
4816 | + id="feOffset1129" /> |
4817 | + <feComposite |
4818 | + in="offset" |
4819 | + in2="SourceGraphic" |
4820 | + operator="atop" |
4821 | + result="composite2" |
4822 | + id="feComposite1131" /> |
4823 | + </filter> |
4824 | + <filter |
4825 | + style="color-interpolation-filters:sRGB;" |
4826 | + inkscape:label="Drop Shadow" |
4827 | + id="filter950"> |
4828 | + <feFlood |
4829 | + flood-opacity="0.25" |
4830 | + flood-color="rgb(0,0,0)" |
4831 | + result="flood" |
4832 | + id="feFlood952" /> |
4833 | + <feComposite |
4834 | + in="flood" |
4835 | + in2="SourceGraphic" |
4836 | + operator="in" |
4837 | + result="composite1" |
4838 | + id="feComposite954" /> |
4839 | + <feGaussianBlur |
4840 | + in="composite1" |
4841 | + stdDeviation="1" |
4842 | + result="blur" |
4843 | + id="feGaussianBlur956" /> |
4844 | + <feOffset |
4845 | + dx="0" |
4846 | + dy="1" |
4847 | + result="offset" |
4848 | + id="feOffset958" /> |
4849 | + <feComposite |
4850 | + in="SourceGraphic" |
4851 | + in2="offset" |
4852 | + operator="over" |
4853 | + result="composite2" |
4854 | + id="feComposite960" /> |
4855 | + </filter> |
4856 | + <clipPath |
4857 | + clipPathUnits="userSpaceOnUse" |
4858 | + id="clipPath873"> |
4859 | + <g |
4860 | + transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)" |
4861 | + id="g875" |
4862 | + inkscape:label="Layer 1" |
4863 | + style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"> |
4864 | + <path |
4865 | + style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline" |
4866 | + d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z" |
4867 | + id="path877" |
4868 | + inkscape:connector-curvature="0" |
4869 | + sodipodi:nodetypes="sssssssss" /> |
4870 | + </g> |
4871 | + </clipPath> |
4872 | + <filter |
4873 | + inkscape:collect="always" |
4874 | + id="filter891" |
4875 | + inkscape:label="Badge Shadow"> |
4876 | + <feGaussianBlur |
4877 | + inkscape:collect="always" |
4878 | + stdDeviation="0.71999962" |
4879 | + id="feGaussianBlur893" /> |
4880 | + </filter> |
4881 | + <clipPath |
4882 | + id="clipPath18" |
4883 | + clipPathUnits="userSpaceOnUse"> |
4884 | + <path |
4885 | + inkscape:connector-curvature="0" |
4886 | + id="path20" |
4887 | + d="M 0,2494.84 0,0 l 1804.34,0 0,2494.84 -1804.34,0 z" /> |
4888 | + </clipPath> |
4889 | + </defs> |
4890 | + <sodipodi:namedview |
4891 | + id="base" |
4892 | + pagecolor="#ffffff" |
4893 | + bordercolor="#666666" |
4894 | + borderopacity="1.0" |
4895 | + inkscape:pageopacity="0.0" |
4896 | + inkscape:pageshadow="2" |
4897 | + inkscape:zoom="4.13" |
4898 | + inkscape:cx="88.834295" |
4899 | + inkscape:cy="49.0292" |
4900 | + inkscape:document-units="px" |
4901 | + inkscape:current-layer="layer1" |
4902 | + showgrid="false" |
4903 | + fit-margin-top="0" |
4904 | + fit-margin-left="0" |
4905 | + fit-margin-right="0" |
4906 | + fit-margin-bottom="0" |
4907 | + inkscape:window-width="1920" |
4908 | + inkscape:window-height="1056" |
4909 | + inkscape:window-x="0" |
4910 | + inkscape:window-y="24" |
4911 | + inkscape:window-maximized="1" |
4912 | + showborder="true" |
4913 | + showguides="true" |
4914 | + inkscape:guide-bbox="true" |
4915 | + inkscape:showpageshadow="false"> |
4916 | + <inkscape:grid |
4917 | + type="xygrid" |
4918 | + id="grid821" /> |
4919 | + <sodipodi:guide |
4920 | + orientation="1,0" |
4921 | + position="16,48" |
4922 | + id="guide823" /> |
4923 | + <sodipodi:guide |
4924 | + orientation="0,1" |
4925 | + position="64,80" |
4926 | + id="guide825" /> |
4927 | + <sodipodi:guide |
4928 | + orientation="1,0" |
4929 | + position="80,40" |
4930 | + id="guide827" /> |
4931 | + <sodipodi:guide |
4932 | + orientation="0,1" |
4933 | + position="64,16" |
4934 | + id="guide829" /> |
4935 | + </sodipodi:namedview> |
4936 | + <metadata |
4937 | + id="metadata6522"> |
4938 | + <rdf:RDF> |
4939 | + <cc:Work |
4940 | + rdf:about=""> |
4941 | + <dc:format>image/svg+xml</dc:format> |
4942 | + <dc:type |
4943 | + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> |
4944 | + <dc:title /> |
4945 | + </cc:Work> |
4946 | + </rdf:RDF> |
4947 | + </metadata> |
4948 | + <g |
4949 | + inkscape:label="BACKGROUND" |
4950 | + inkscape:groupmode="layer" |
4951 | + id="layer1" |
4952 | + transform="translate(268,-635.29076)" |
4953 | + style="display:inline"> |
4954 | + <path |
4955 | + style="fill:url(#linearGradient6461);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)" |
4956 | + d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z" |
4957 | + id="path6455" |
4958 | + inkscape:connector-curvature="0" |
4959 | + sodipodi:nodetypes="sssssssss" /> |
4960 | + <g |
4961 | + transform="matrix(0.19496217,0,0,-0.19496217,-239.28382,701.0732)" |
4962 | + inkscape:label="ink_ext_XXXXXX" |
4963 | + id="g10"> |
4964 | + <g |
4965 | + id="g3393"> |
4966 | + <path |
4967 | + inkscape:connector-curvature="0" |
4968 | + id="path22" |
4969 | + style="fill:#d33833;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4970 | + d="m 177.718,129.264 c 0,-49.4288 -39.175,-89.4992 -87.5,-89.4992 -48.3242,0 -87.49925,40.0704 -87.49925,89.4992 0,49.43 39.17505,89.501 87.49925,89.501 48.325,0 87.5,-40.071 87.5,-89.501" /> |
4971 | + <path |
4972 | + inkscape:connector-curvature="0" |
4973 | + id="path24" |
4974 | + style="fill:#ef3d3a;fill-opacity:1;fill-rule:nonzero;stroke:none" |
4975 | + d="m 6.28438,107.098 c 0,0 -6.33438,93.333 79.66602,96 l -5.9996,10 -46.6664,-15.667 -13.3336,-15.333 -11.66642,-22.334 -6.66719,-26 2,-17.333" /> |
4976 | + <path |
4977 | + inkscape:connector-curvature="0" |
4978 | + id="path26" |
4979 | + style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none" |
4980 | + d="M 30.2883,190.319 C 14.9363,174.611 5.43633,152.923 5.43633,128.93 l 0,0 c 0,-23.988 9.49997,-45.6788 24.85197,-61.3839 l 0,0 C 45.6477,51.841 66.8152,42.15 90.2168,42.15 l 0,0 c 23.4022,0 44.5712,9.691 59.9292,25.3961 l 0,0 c 15.351,15.7051 24.853,37.3959 24.853,61.3839 l 0,0 c 0,23.993 -9.502,45.681 -24.853,61.389 l 0,0 c -15.358,15.702 -36.527,25.393 -59.9292,25.395 l 0,0 C 66.8152,215.712 45.6477,206.021 30.2883,190.319 l 0,0 z M 26.4023,63.7469 C 10.0867,80.4328 0,103.493 0,128.93 l 0,0 c 0,25.441 10.0867,48.499 26.4023,65.186 l 0,0 c 16.3118,16.69 38.8915,27.035 63.8145,27.032 l 0,0 c 24.9232,0.003 47.5052,-10.342 63.8142,-27.032 l 0,0 c 16.317,-16.687 26.405,-39.747 26.403,-65.186 l 0,0 c 0.002,-25.437 -10.086,-48.4972 -26.403,-65.1831 l 0,0 C 137.722,47.0578 115.14,36.7141 90.2168,36.7141 l 0,0 c -24.923,0 -47.5027,10.3437 -63.8145,27.0328 l 0,0" /> |
4981 | + <path |
4982 | + inkscape:connector-curvature="0" |
4983 | + id="path28" |
4984 | + style="fill:#f0d6b7;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4985 | + d="m 127.051,128.768 -13.334,-2 -18.0002,-2 -11.6672,-0.333 -11.3328,0.333 -8.6672,2.667 -7.6668,8.333 -6,17 -1.3332,3.667 -8,2.666 -4.6668,7.667 -3.3332,11 3.6672,9.667 8.666,3 7,-3.334 3.334,-7.333 4,0.667 1.3328,1.666 -1.3328,7.667 -0.334,9.667 2,13.333 -0.0781,7.616 6.0781,9.717 10.6668,7.667 18.6672,8 20.6662,-3 18,-13 8.334,-13.333 5.333,-9.667 1.333,-24 -4,-20.667 -7.333,-18.333 -7,-9.667" /> |
4986 | + <path |
4987 | + inkscape:connector-curvature="0" |
4988 | + id="path30" |
4989 | + style="fill:#335061;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4990 | + d="m 115.717,71.102 -47.6674,-2 0,-8 4,-28 -2,-2.334 -33.3328,11.334 -2.334,4 -3.3332,37.666 -7.6656,22.667 -1.6672,5.333 26.666,18.333 8.334,3.334 7.3328,-9 6.3332,-5.667 7.334,-2.333 3.3328,-1 4,-17.333 3,-3.6668 7.6672,2.6668 -5.334,-10.334 29.0002,-13.666 -3.666,-2" /> |
4991 | + <path |
4992 | + inkscape:connector-curvature="0" |
4993 | + id="path32" |
4994 | + style="fill:#6d6b6d;fill-opacity:1;fill-rule:evenodd;stroke:none" |
4995 | + d="m 36.7168,187.435 8.666,3 7,-3.334 3.334,-7.333 4,0.667 1,4 -2,7.666 2,18.334 -1.6672,10 6,7 13,10.333 -3.6668,5 -18.3332,-9 -7.6668,-6 -4.3332,-9.333 -6.6668,-9 -2,-10.667 1.334,-11.333" /> |
4996 | + <path |
4997 | + inkscape:connector-curvature="0" |
4998 | + id="path34" |
4999 | + style="fill:#dcd9d8;fill-opacity:1;fill-rule:evenodd;stroke:none" |
5000 | + d="m 50.3828,218.768 c 0,0 5,12.333 25,18.333 20,6 1,4.334 1,4.334 l -21.666,-8.334 -8.334,-8.333 -3.666,-6.667 7.666,0.667" /> |