From d802d177c722718136d97915d28db133c5499bc6 Mon Sep 17 00:00:00 2001 From: Thomas Herve Date: Tue, 3 Jan 2017 14:02:25 +0100 Subject: [PATCH] Move elements at the top level --- .gitignore | 5 + .gitreview | 4 + .testr.conf | 4 + .../elements/README.rst => README.rst | 2 +- .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-ansible | 0 .../install.d/hook-ansible.py | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-apply-config | 0 .../install.d/hook-apply-config.py | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-cfn-init | 0 .../install.d/hook-cfn-init.py | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-chef | 0 .../install.d/hook-chef.py | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-docker-cmd | 0 .../install.d/hook-docker-cmd.py | 0 .../configure.d/50-heat-config-docker-cmd | 0 .../README.rst | 0 .../element-deps | 0 .../50-heat-config-hook-docker-compose | 0 .../install.d/hook-docker-compose.py | 0 .../configure.d/50-heat-config-docker-compose | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-hiera | 0 .../install.d/hook-hiera.py | 0 .../README.rst | 0 .../element-deps | 0 .../extra-data.d/50-docker-images | 0 .../install.d/50-heat-config-kubelet | 0 .../install.d/hook-kubelet.py | 0 .../configure.d/50-heat-config-kubelet | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-puppet | 0 .../install.d/hook-puppet.py | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-salt | 0 .../install.d/hook-salt.py | 0 .../README.rst | 0 .../element-deps | 0 .../install.d/50-heat-config-hook-script | 0 .../install.d/hook-script.py | 0 .../heat-config => heat-config}/README.rst | 0 .../bin/heat-config-notify | 0 .../bin/heat-config-rebuild-deployed | 0 .../heat-config => heat-config}/element-deps | 0 .../50-heat-config-package | 0 .../50-heat-config-soure | 0 .../var/run/heat-config/heat-config | 0 .../configure.d/55-heat-config | 0 .../__init__.py => requirements.txt | 0 test-requirements.txt | 19 +++ tests/{software_config => }/common.py | 0 .../{software_config => }/config-tool-fake.py | 0 tests/heat_config_notify.py | 1 + tests/{software_config => }/hook-fake.py | 0 tests/hook_kubelet.py | 1 + tests/software_config/heat_config_notify.py | 1 - tests/software_config/hook_kubelet.py | 1 - tests/software_config/test_hook_atomic.py | 115 ------------------ .../{software_config => }/test_heat_config.py | 5 +- .../test_heat_config_docker_compose.py | 5 +- .../test_heat_config_kubelet.py | 5 +- .../test_heat_config_notify.py | 4 +- .../test_hook_ansible.py | 5 +- .../test_hook_apply_config.py | 5 +- .../test_hook_cfn_init.py | 5 +- tests/{software_config => }/test_hook_chef.py | 5 +- .../test_hook_docker_cmd.py | 9 +- .../test_hook_docker_compose.py | 5 +- .../{software_config => }/test_hook_hiera.py | 5 +- .../test_hook_kubelet.py | 2 +- .../{software_config => }/test_hook_puppet.py | 5 +- tests/{software_config => }/test_hook_salt.py | 5 +- .../{software_config => }/test_hook_script.py | 5 +- tox.ini | 22 ++++ 86 files changed, 88 insertions(+), 162 deletions(-) create mode 100644 .gitignore create mode 100644 .gitreview create mode 100644 .testr.conf rename hot/software-config/elements/README.rst => README.rst (95%) rename {hot/software-config/elements/heat-config-ansible => heat-config-ansible}/README.rst (100%) rename {hot/software-config/elements/heat-config-ansible => heat-config-ansible}/element-deps (100%) rename {hot/software-config/elements/heat-config-ansible => heat-config-ansible}/install.d/50-heat-config-hook-ansible (100%) rename {hot/software-config/elements/heat-config-ansible => heat-config-ansible}/install.d/hook-ansible.py (100%) rename {hot/software-config/elements/heat-config-apply-config => heat-config-apply-config}/README.rst (100%) rename {hot/software-config/elements/heat-config-apply-config => heat-config-apply-config}/element-deps (100%) rename {hot/software-config/elements/heat-config-apply-config => heat-config-apply-config}/install.d/50-heat-config-apply-config (100%) rename {hot/software-config/elements/heat-config-apply-config => heat-config-apply-config}/install.d/hook-apply-config.py (100%) rename {hot/software-config/elements/heat-config-cfn-init => heat-config-cfn-init}/README.rst (100%) rename {hot/software-config/elements/heat-config-cfn-init => heat-config-cfn-init}/element-deps (100%) rename {hot/software-config/elements/heat-config-cfn-init => heat-config-cfn-init}/install.d/50-heat-config-hook-cfn-init (100%) rename {hot/software-config/elements/heat-config-cfn-init => heat-config-cfn-init}/install.d/hook-cfn-init.py (100%) rename {hot/software-config/elements/heat-config-chef => heat-config-chef}/README.rst (100%) rename {hot/software-config/elements/heat-config-chef => heat-config-chef}/element-deps (100%) rename {hot/software-config/elements/heat-config-chef => heat-config-chef}/install.d/50-heat-config-hook-chef (100%) rename {hot/software-config/elements/heat-config-chef => heat-config-chef}/install.d/hook-chef.py (100%) rename {hot/software-config/elements/heat-config-docker-cmd => heat-config-docker-cmd}/README.rst (100%) rename {hot/software-config/elements/heat-config-docker-cmd => heat-config-docker-cmd}/element-deps (100%) rename {hot/software-config/elements/heat-config-docker-cmd => heat-config-docker-cmd}/install.d/50-heat-config-hook-docker-cmd (100%) rename {hot/software-config/elements/heat-config-docker-cmd => heat-config-docker-cmd}/install.d/hook-docker-cmd.py (100%) rename {hot/software-config/elements/heat-config-docker-cmd => heat-config-docker-cmd}/os-refresh-config/configure.d/50-heat-config-docker-cmd (100%) rename {hot/software-config/elements/heat-config-docker-compose => heat-config-docker-compose}/README.rst (100%) rename {hot/software-config/elements/heat-config-docker-compose => heat-config-docker-compose}/element-deps (100%) rename {hot/software-config/elements/heat-config-docker-compose => heat-config-docker-compose}/install.d/50-heat-config-hook-docker-compose (100%) rename {hot/software-config/elements/heat-config-docker-compose => heat-config-docker-compose}/install.d/hook-docker-compose.py (100%) rename {hot/software-config/elements/heat-config-docker-compose => heat-config-docker-compose}/os-refresh-config/configure.d/50-heat-config-docker-compose (100%) rename {hot/software-config/elements/heat-config-hiera => heat-config-hiera}/README.rst (100%) rename {hot/software-config/elements/heat-config-hiera => heat-config-hiera}/element-deps (100%) rename {hot/software-config/elements/heat-config-hiera => heat-config-hiera}/install.d/50-heat-config-hook-hiera (100%) rename {hot/software-config/elements/heat-config-hiera => heat-config-hiera}/install.d/hook-hiera.py (100%) rename {hot/software-config/elements/heat-config-kubelet => heat-config-kubelet}/README.rst (100%) rename {hot/software-config/elements/heat-config-kubelet => heat-config-kubelet}/element-deps (100%) rename {hot/software-config/elements/heat-config-kubelet => heat-config-kubelet}/extra-data.d/50-docker-images (100%) rename {hot/software-config/elements/heat-config-kubelet => heat-config-kubelet}/install.d/50-heat-config-kubelet (100%) rename {hot/software-config/elements/heat-config-kubelet => heat-config-kubelet}/install.d/hook-kubelet.py (100%) rename {hot/software-config/elements/heat-config-kubelet => heat-config-kubelet}/os-refresh-config/configure.d/50-heat-config-kubelet (100%) rename {hot/software-config/elements/heat-config-puppet => heat-config-puppet}/README.rst (100%) rename {hot/software-config/elements/heat-config-puppet => heat-config-puppet}/element-deps (100%) rename {hot/software-config/elements/heat-config-puppet => heat-config-puppet}/install.d/50-heat-config-hook-puppet (100%) rename {hot/software-config/elements/heat-config-puppet => heat-config-puppet}/install.d/hook-puppet.py (100%) rename {hot/software-config/elements/heat-config-salt => heat-config-salt}/README.rst (100%) rename {hot/software-config/elements/heat-config-salt => heat-config-salt}/element-deps (100%) rename {hot/software-config/elements/heat-config-salt => heat-config-salt}/install.d/50-heat-config-hook-salt (100%) rename {hot/software-config/elements/heat-config-salt => heat-config-salt}/install.d/hook-salt.py (100%) rename {hot/software-config/elements/heat-config-script => heat-config-script}/README.rst (100%) rename {hot/software-config/elements/heat-config-script => heat-config-script}/element-deps (100%) rename {hot/software-config/elements/heat-config-script => heat-config-script}/install.d/50-heat-config-hook-script (100%) rename {hot/software-config/elements/heat-config-script => heat-config-script}/install.d/hook-script.py (100%) rename {hot/software-config/elements/heat-config => heat-config}/README.rst (100%) rename {hot/software-config/elements/heat-config => heat-config}/bin/heat-config-notify (100%) rename {hot/software-config/elements/heat-config => heat-config}/bin/heat-config-rebuild-deployed (100%) rename {hot/software-config/elements/heat-config => heat-config}/element-deps (100%) rename {hot/software-config/elements/heat-config => heat-config}/install.d/heat-config-package-install/50-heat-config-package (100%) rename {hot/software-config/elements/heat-config => heat-config}/install.d/heat-config-source-install/50-heat-config-soure (100%) rename {hot/software-config/elements/heat-config => heat-config}/os-apply-config/var/run/heat-config/heat-config (100%) rename {hot/software-config/elements/heat-config => heat-config}/os-refresh-config/configure.d/55-heat-config (100%) rename tests/software_config/__init__.py => requirements.txt (100%) create mode 100644 test-requirements.txt rename tests/{software_config => }/common.py (100%) rename tests/{software_config => }/config-tool-fake.py (100%) create mode 120000 tests/heat_config_notify.py rename tests/{software_config => }/hook-fake.py (100%) create mode 120000 tests/hook_kubelet.py delete mode 120000 tests/software_config/heat_config_notify.py delete mode 120000 tests/software_config/hook_kubelet.py delete mode 100644 tests/software_config/test_hook_atomic.py rename tests/{software_config => }/test_heat_config.py (98%) rename tests/{software_config => }/test_heat_config_docker_compose.py (97%) rename tests/{software_config => }/test_heat_config_kubelet.py (97%) rename tests/{software_config => }/test_heat_config_notify.py (98%) rename tests/{software_config => }/test_hook_ansible.py (98%) rename tests/{software_config => }/test_hook_apply_config.py (96%) rename tests/{software_config => }/test_hook_cfn_init.py (97%) rename tests/{software_config => }/test_hook_chef.py (98%) rename tests/{software_config => }/test_hook_docker_cmd.py (97%) rename tests/{software_config => }/test_hook_docker_compose.py (97%) rename tests/{software_config => }/test_hook_hiera.py (95%) rename tests/{software_config => }/test_hook_kubelet.py (98%) rename tests/{software_config => }/test_hook_puppet.py (98%) rename tests/{software_config => }/test_hook_salt.py (97%) rename tests/{software_config => }/test_hook_script.py (97%) create mode 100644 tox.ini diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7693c17 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +*.pyc +*.swp +*~ +.tox +.testrepository diff --git a/.gitreview b/.gitreview new file mode 100644 index 0000000..ece5ffc --- /dev/null +++ b/.gitreview @@ -0,0 +1,4 @@ +[gerrit] +host=review.openstack.org +port=29418 +project=openstack/heat-agents.git diff --git a/.testr.conf b/.testr.conf new file mode 100644 index 0000000..a2ff14b --- /dev/null +++ b/.testr.conf @@ -0,0 +1,4 @@ +[DEFAULT] +test_command=${PYTHON:-python} -m subunit.run discover -t ./ . $LISTOPT $IDOPTION +test_id_option=--load-list $IDFILE +test_list_option=--list diff --git a/hot/software-config/elements/README.rst b/README.rst similarity index 95% rename from hot/software-config/elements/README.rst rename to README.rst index db80340..3d798f2 100644 --- a/hot/software-config/elements/README.rst +++ b/README.rst @@ -27,7 +27,7 @@ with the following: git clone https://git.openstack.org/openstack/heat-templates.git git clone https://git.openstack.org/openstack/dib-utils.git export PATH="${PWD}/dib-utils/bin:$PATH" - export ELEMENTS_PATH=tripleo-image-elements/elements:heat-templates/hot/software-config/elements + export ELEMENTS_PATH=tripleo-image-elements/elements:heat-agents/ diskimage-builder/bin/disk-image-create vm \ fedora selinux-permissive \ os-collect-config \ diff --git a/hot/software-config/elements/heat-config-ansible/README.rst b/heat-config-ansible/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-ansible/README.rst rename to heat-config-ansible/README.rst diff --git a/hot/software-config/elements/heat-config-ansible/element-deps b/heat-config-ansible/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-ansible/element-deps rename to heat-config-ansible/element-deps diff --git a/hot/software-config/elements/heat-config-ansible/install.d/50-heat-config-hook-ansible b/heat-config-ansible/install.d/50-heat-config-hook-ansible similarity index 100% rename from hot/software-config/elements/heat-config-ansible/install.d/50-heat-config-hook-ansible rename to heat-config-ansible/install.d/50-heat-config-hook-ansible diff --git a/hot/software-config/elements/heat-config-ansible/install.d/hook-ansible.py b/heat-config-ansible/install.d/hook-ansible.py similarity index 100% rename from hot/software-config/elements/heat-config-ansible/install.d/hook-ansible.py rename to heat-config-ansible/install.d/hook-ansible.py diff --git a/hot/software-config/elements/heat-config-apply-config/README.rst b/heat-config-apply-config/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-apply-config/README.rst rename to heat-config-apply-config/README.rst diff --git a/hot/software-config/elements/heat-config-apply-config/element-deps b/heat-config-apply-config/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-apply-config/element-deps rename to heat-config-apply-config/element-deps diff --git a/hot/software-config/elements/heat-config-apply-config/install.d/50-heat-config-apply-config b/heat-config-apply-config/install.d/50-heat-config-apply-config similarity index 100% rename from hot/software-config/elements/heat-config-apply-config/install.d/50-heat-config-apply-config rename to heat-config-apply-config/install.d/50-heat-config-apply-config diff --git a/hot/software-config/elements/heat-config-apply-config/install.d/hook-apply-config.py b/heat-config-apply-config/install.d/hook-apply-config.py similarity index 100% rename from hot/software-config/elements/heat-config-apply-config/install.d/hook-apply-config.py rename to heat-config-apply-config/install.d/hook-apply-config.py diff --git a/hot/software-config/elements/heat-config-cfn-init/README.rst b/heat-config-cfn-init/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-cfn-init/README.rst rename to heat-config-cfn-init/README.rst diff --git a/hot/software-config/elements/heat-config-cfn-init/element-deps b/heat-config-cfn-init/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-cfn-init/element-deps rename to heat-config-cfn-init/element-deps diff --git a/hot/software-config/elements/heat-config-cfn-init/install.d/50-heat-config-hook-cfn-init b/heat-config-cfn-init/install.d/50-heat-config-hook-cfn-init similarity index 100% rename from hot/software-config/elements/heat-config-cfn-init/install.d/50-heat-config-hook-cfn-init rename to heat-config-cfn-init/install.d/50-heat-config-hook-cfn-init diff --git a/hot/software-config/elements/heat-config-cfn-init/install.d/hook-cfn-init.py b/heat-config-cfn-init/install.d/hook-cfn-init.py similarity index 100% rename from hot/software-config/elements/heat-config-cfn-init/install.d/hook-cfn-init.py rename to heat-config-cfn-init/install.d/hook-cfn-init.py diff --git a/hot/software-config/elements/heat-config-chef/README.rst b/heat-config-chef/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-chef/README.rst rename to heat-config-chef/README.rst diff --git a/hot/software-config/elements/heat-config-chef/element-deps b/heat-config-chef/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-chef/element-deps rename to heat-config-chef/element-deps diff --git a/hot/software-config/elements/heat-config-chef/install.d/50-heat-config-hook-chef b/heat-config-chef/install.d/50-heat-config-hook-chef similarity index 100% rename from hot/software-config/elements/heat-config-chef/install.d/50-heat-config-hook-chef rename to heat-config-chef/install.d/50-heat-config-hook-chef diff --git a/hot/software-config/elements/heat-config-chef/install.d/hook-chef.py b/heat-config-chef/install.d/hook-chef.py similarity index 100% rename from hot/software-config/elements/heat-config-chef/install.d/hook-chef.py rename to heat-config-chef/install.d/hook-chef.py diff --git a/hot/software-config/elements/heat-config-docker-cmd/README.rst b/heat-config-docker-cmd/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-docker-cmd/README.rst rename to heat-config-docker-cmd/README.rst diff --git a/hot/software-config/elements/heat-config-docker-cmd/element-deps b/heat-config-docker-cmd/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-docker-cmd/element-deps rename to heat-config-docker-cmd/element-deps diff --git a/hot/software-config/elements/heat-config-docker-cmd/install.d/50-heat-config-hook-docker-cmd b/heat-config-docker-cmd/install.d/50-heat-config-hook-docker-cmd similarity index 100% rename from hot/software-config/elements/heat-config-docker-cmd/install.d/50-heat-config-hook-docker-cmd rename to heat-config-docker-cmd/install.d/50-heat-config-hook-docker-cmd diff --git a/hot/software-config/elements/heat-config-docker-cmd/install.d/hook-docker-cmd.py b/heat-config-docker-cmd/install.d/hook-docker-cmd.py similarity index 100% rename from hot/software-config/elements/heat-config-docker-cmd/install.d/hook-docker-cmd.py rename to heat-config-docker-cmd/install.d/hook-docker-cmd.py diff --git a/hot/software-config/elements/heat-config-docker-cmd/os-refresh-config/configure.d/50-heat-config-docker-cmd b/heat-config-docker-cmd/os-refresh-config/configure.d/50-heat-config-docker-cmd similarity index 100% rename from hot/software-config/elements/heat-config-docker-cmd/os-refresh-config/configure.d/50-heat-config-docker-cmd rename to heat-config-docker-cmd/os-refresh-config/configure.d/50-heat-config-docker-cmd diff --git a/hot/software-config/elements/heat-config-docker-compose/README.rst b/heat-config-docker-compose/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-docker-compose/README.rst rename to heat-config-docker-compose/README.rst diff --git a/hot/software-config/elements/heat-config-docker-compose/element-deps b/heat-config-docker-compose/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-docker-compose/element-deps rename to heat-config-docker-compose/element-deps diff --git a/hot/software-config/elements/heat-config-docker-compose/install.d/50-heat-config-hook-docker-compose b/heat-config-docker-compose/install.d/50-heat-config-hook-docker-compose similarity index 100% rename from hot/software-config/elements/heat-config-docker-compose/install.d/50-heat-config-hook-docker-compose rename to heat-config-docker-compose/install.d/50-heat-config-hook-docker-compose diff --git a/hot/software-config/elements/heat-config-docker-compose/install.d/hook-docker-compose.py b/heat-config-docker-compose/install.d/hook-docker-compose.py similarity index 100% rename from hot/software-config/elements/heat-config-docker-compose/install.d/hook-docker-compose.py rename to heat-config-docker-compose/install.d/hook-docker-compose.py diff --git a/hot/software-config/elements/heat-config-docker-compose/os-refresh-config/configure.d/50-heat-config-docker-compose b/heat-config-docker-compose/os-refresh-config/configure.d/50-heat-config-docker-compose similarity index 100% rename from hot/software-config/elements/heat-config-docker-compose/os-refresh-config/configure.d/50-heat-config-docker-compose rename to heat-config-docker-compose/os-refresh-config/configure.d/50-heat-config-docker-compose diff --git a/hot/software-config/elements/heat-config-hiera/README.rst b/heat-config-hiera/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-hiera/README.rst rename to heat-config-hiera/README.rst diff --git a/hot/software-config/elements/heat-config-hiera/element-deps b/heat-config-hiera/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-hiera/element-deps rename to heat-config-hiera/element-deps diff --git a/hot/software-config/elements/heat-config-hiera/install.d/50-heat-config-hook-hiera b/heat-config-hiera/install.d/50-heat-config-hook-hiera similarity index 100% rename from hot/software-config/elements/heat-config-hiera/install.d/50-heat-config-hook-hiera rename to heat-config-hiera/install.d/50-heat-config-hook-hiera diff --git a/hot/software-config/elements/heat-config-hiera/install.d/hook-hiera.py b/heat-config-hiera/install.d/hook-hiera.py similarity index 100% rename from hot/software-config/elements/heat-config-hiera/install.d/hook-hiera.py rename to heat-config-hiera/install.d/hook-hiera.py diff --git a/hot/software-config/elements/heat-config-kubelet/README.rst b/heat-config-kubelet/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-kubelet/README.rst rename to heat-config-kubelet/README.rst diff --git a/hot/software-config/elements/heat-config-kubelet/element-deps b/heat-config-kubelet/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-kubelet/element-deps rename to heat-config-kubelet/element-deps diff --git a/hot/software-config/elements/heat-config-kubelet/extra-data.d/50-docker-images b/heat-config-kubelet/extra-data.d/50-docker-images similarity index 100% rename from hot/software-config/elements/heat-config-kubelet/extra-data.d/50-docker-images rename to heat-config-kubelet/extra-data.d/50-docker-images diff --git a/hot/software-config/elements/heat-config-kubelet/install.d/50-heat-config-kubelet b/heat-config-kubelet/install.d/50-heat-config-kubelet similarity index 100% rename from hot/software-config/elements/heat-config-kubelet/install.d/50-heat-config-kubelet rename to heat-config-kubelet/install.d/50-heat-config-kubelet diff --git a/hot/software-config/elements/heat-config-kubelet/install.d/hook-kubelet.py b/heat-config-kubelet/install.d/hook-kubelet.py similarity index 100% rename from hot/software-config/elements/heat-config-kubelet/install.d/hook-kubelet.py rename to heat-config-kubelet/install.d/hook-kubelet.py diff --git a/hot/software-config/elements/heat-config-kubelet/os-refresh-config/configure.d/50-heat-config-kubelet b/heat-config-kubelet/os-refresh-config/configure.d/50-heat-config-kubelet similarity index 100% rename from hot/software-config/elements/heat-config-kubelet/os-refresh-config/configure.d/50-heat-config-kubelet rename to heat-config-kubelet/os-refresh-config/configure.d/50-heat-config-kubelet diff --git a/hot/software-config/elements/heat-config-puppet/README.rst b/heat-config-puppet/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-puppet/README.rst rename to heat-config-puppet/README.rst diff --git a/hot/software-config/elements/heat-config-puppet/element-deps b/heat-config-puppet/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-puppet/element-deps rename to heat-config-puppet/element-deps diff --git a/hot/software-config/elements/heat-config-puppet/install.d/50-heat-config-hook-puppet b/heat-config-puppet/install.d/50-heat-config-hook-puppet similarity index 100% rename from hot/software-config/elements/heat-config-puppet/install.d/50-heat-config-hook-puppet rename to heat-config-puppet/install.d/50-heat-config-hook-puppet diff --git a/hot/software-config/elements/heat-config-puppet/install.d/hook-puppet.py b/heat-config-puppet/install.d/hook-puppet.py similarity index 100% rename from hot/software-config/elements/heat-config-puppet/install.d/hook-puppet.py rename to heat-config-puppet/install.d/hook-puppet.py diff --git a/hot/software-config/elements/heat-config-salt/README.rst b/heat-config-salt/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-salt/README.rst rename to heat-config-salt/README.rst diff --git a/hot/software-config/elements/heat-config-salt/element-deps b/heat-config-salt/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-salt/element-deps rename to heat-config-salt/element-deps diff --git a/hot/software-config/elements/heat-config-salt/install.d/50-heat-config-hook-salt b/heat-config-salt/install.d/50-heat-config-hook-salt similarity index 100% rename from hot/software-config/elements/heat-config-salt/install.d/50-heat-config-hook-salt rename to heat-config-salt/install.d/50-heat-config-hook-salt diff --git a/hot/software-config/elements/heat-config-salt/install.d/hook-salt.py b/heat-config-salt/install.d/hook-salt.py similarity index 100% rename from hot/software-config/elements/heat-config-salt/install.d/hook-salt.py rename to heat-config-salt/install.d/hook-salt.py diff --git a/hot/software-config/elements/heat-config-script/README.rst b/heat-config-script/README.rst similarity index 100% rename from hot/software-config/elements/heat-config-script/README.rst rename to heat-config-script/README.rst diff --git a/hot/software-config/elements/heat-config-script/element-deps b/heat-config-script/element-deps similarity index 100% rename from hot/software-config/elements/heat-config-script/element-deps rename to heat-config-script/element-deps diff --git a/hot/software-config/elements/heat-config-script/install.d/50-heat-config-hook-script b/heat-config-script/install.d/50-heat-config-hook-script similarity index 100% rename from hot/software-config/elements/heat-config-script/install.d/50-heat-config-hook-script rename to heat-config-script/install.d/50-heat-config-hook-script diff --git a/hot/software-config/elements/heat-config-script/install.d/hook-script.py b/heat-config-script/install.d/hook-script.py similarity index 100% rename from hot/software-config/elements/heat-config-script/install.d/hook-script.py rename to heat-config-script/install.d/hook-script.py diff --git a/hot/software-config/elements/heat-config/README.rst b/heat-config/README.rst similarity index 100% rename from hot/software-config/elements/heat-config/README.rst rename to heat-config/README.rst diff --git a/hot/software-config/elements/heat-config/bin/heat-config-notify b/heat-config/bin/heat-config-notify similarity index 100% rename from hot/software-config/elements/heat-config/bin/heat-config-notify rename to heat-config/bin/heat-config-notify diff --git a/hot/software-config/elements/heat-config/bin/heat-config-rebuild-deployed b/heat-config/bin/heat-config-rebuild-deployed similarity index 100% rename from hot/software-config/elements/heat-config/bin/heat-config-rebuild-deployed rename to heat-config/bin/heat-config-rebuild-deployed diff --git a/hot/software-config/elements/heat-config/element-deps b/heat-config/element-deps similarity index 100% rename from hot/software-config/elements/heat-config/element-deps rename to heat-config/element-deps diff --git a/hot/software-config/elements/heat-config/install.d/heat-config-package-install/50-heat-config-package b/heat-config/install.d/heat-config-package-install/50-heat-config-package similarity index 100% rename from hot/software-config/elements/heat-config/install.d/heat-config-package-install/50-heat-config-package rename to heat-config/install.d/heat-config-package-install/50-heat-config-package diff --git a/hot/software-config/elements/heat-config/install.d/heat-config-source-install/50-heat-config-soure b/heat-config/install.d/heat-config-source-install/50-heat-config-soure similarity index 100% rename from hot/software-config/elements/heat-config/install.d/heat-config-source-install/50-heat-config-soure rename to heat-config/install.d/heat-config-source-install/50-heat-config-soure diff --git a/hot/software-config/elements/heat-config/os-apply-config/var/run/heat-config/heat-config b/heat-config/os-apply-config/var/run/heat-config/heat-config similarity index 100% rename from hot/software-config/elements/heat-config/os-apply-config/var/run/heat-config/heat-config rename to heat-config/os-apply-config/var/run/heat-config/heat-config diff --git a/hot/software-config/elements/heat-config/os-refresh-config/configure.d/55-heat-config b/heat-config/os-refresh-config/configure.d/55-heat-config similarity index 100% rename from hot/software-config/elements/heat-config/os-refresh-config/configure.d/55-heat-config rename to heat-config/os-refresh-config/configure.d/55-heat-config diff --git a/tests/software_config/__init__.py b/requirements.txt similarity index 100% rename from tests/software_config/__init__.py rename to requirements.txt diff --git a/test-requirements.txt b/test-requirements.txt new file mode 100644 index 0000000..402c212 --- /dev/null +++ b/test-requirements.txt @@ -0,0 +1,19 @@ +coverage>=3.6 +discover +dpath>=1.3.2 +fixtures>=0.3.14 +# Hacking already pins down pep8, pyflakes and flake8 +hacking>=0.10.0,<0.11 +mock>=1.0 +requests>=1.2.1,!=2.4.0 +requests-mock>=0.4.0 # Apache-2.0 +salt +testrepository>=0.0.18 +testscenarios>=0.4 +testtools>=0.9.34 +yamllint>=1.2.0 +os-apply-config + +python-heatclient>=1.2.0 +python-keystoneclient>=0.10.0 +python-openstackclient>=2.1.0 diff --git a/tests/software_config/common.py b/tests/common.py similarity index 100% rename from tests/software_config/common.py rename to tests/common.py diff --git a/tests/software_config/config-tool-fake.py b/tests/config-tool-fake.py similarity index 100% rename from tests/software_config/config-tool-fake.py rename to tests/config-tool-fake.py diff --git a/tests/heat_config_notify.py b/tests/heat_config_notify.py new file mode 120000 index 0000000..3196433 --- /dev/null +++ b/tests/heat_config_notify.py @@ -0,0 +1 @@ +../heat-config/bin/heat-config-notify \ No newline at end of file diff --git a/tests/software_config/hook-fake.py b/tests/hook-fake.py similarity index 100% rename from tests/software_config/hook-fake.py rename to tests/hook-fake.py diff --git a/tests/hook_kubelet.py b/tests/hook_kubelet.py new file mode 120000 index 0000000..e0c54aa --- /dev/null +++ b/tests/hook_kubelet.py @@ -0,0 +1 @@ +../heat-config-kubelet/install.d/hook-kubelet.py \ No newline at end of file diff --git a/tests/software_config/heat_config_notify.py b/tests/software_config/heat_config_notify.py deleted file mode 120000 index 3dcf1f9..0000000 --- a/tests/software_config/heat_config_notify.py +++ /dev/null @@ -1 +0,0 @@ -../../hot/software-config/elements/heat-config/bin/heat-config-notify \ No newline at end of file diff --git a/tests/software_config/hook_kubelet.py b/tests/software_config/hook_kubelet.py deleted file mode 120000 index cb59984..0000000 --- a/tests/software_config/hook_kubelet.py +++ /dev/null @@ -1 +0,0 @@ -../../hot/software-config/elements/heat-config-kubelet/install.d/hook-kubelet.py \ No newline at end of file diff --git a/tests/software_config/test_hook_atomic.py b/tests/software_config/test_hook_atomic.py deleted file mode 100644 index 95b068c..0000000 --- a/tests/software_config/test_hook_atomic.py +++ /dev/null @@ -1,115 +0,0 @@ -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -import json -import os - -import fixtures - -from tests.software_config import common - - -class HookAtomicTest(common.RunScriptTest): - data = { - "id": "abcdef001", - "group": "atomic", - "inputs": [], - "config": { - "command": "install", - "image": "imain/atomic-install-rabbitmq" - } - } - - def setUp(self): - super(HookAtomicTest, self).setUp() - self.hook_path = self.relative_path( - __file__, - '../..', - 'hot/software-config/heat-container-agent', - 'scripts/hooks/atomic') - - self.fake_tool_path = self.relative_path( - __file__, - 'config-tool-fake.py') - - self.working_dir = self.useFixture(fixtures.TempDir()) - self.outputs_dir = self.useFixture(fixtures.TempDir()) - self.test_state_path = self.outputs_dir.join('test_state.json') - - self.env = os.environ.copy() - self.env.update({ - 'HEAT_ATOMIC_WORKING': self.working_dir.join(), - 'HEAT_ATOMIC_CMD': self.fake_tool_path, - 'TEST_STATE_PATH': self.test_state_path, - }) - - def test_hook(self): - - self.env.update({ - 'TEST_RESPONSE': json.dumps({ - 'stdout': 'Downloading xxx', - 'stderr': '' - }) - }) - returncode, stdout, stderr = self.run_cmd( - [self.hook_path], self.env, json.dumps(self.data)) - - self.assertEqual(0, returncode, stderr) - - self.assertEqual({ - 'deploy_stdout': 'Downloading xxx', - 'deploy_stderr': '', - 'deploy_status_code': 0 - }, json.loads(stdout)) - - state = self.json_from_file(self.test_state_path) - self.assertEqual( - [ - self.fake_tool_path, - 'install', - 'imain/atomic-install-rabbitmq', - '-n abcdef001', - '' - ], - state['args']) - - def test_hook_failed(self): - - self.env.update({ - 'TEST_RESPONSE': json.dumps({ - 'stdout': '', - 'stderr': 'Container exists...', - 'returncode': 1 - }) - }) - returncode, stdout, stderr = self.run_cmd( - [self.hook_path], self.env, json.dumps(self.data)) - - self.assertEqual(0, returncode, stderr) - - self.assertEqual({ - 'deploy_stdout': '', - 'deploy_stderr': 'Container exists...', - 'deploy_status_code': 1 - }, json.loads(stdout)) - - state = self.json_from_file(self.test_state_path) - self.assertEqual( - [ - self.fake_tool_path, - 'install', - 'imain/atomic-install-rabbitmq', - '-n abcdef001', - '' - ], - state['args']) diff --git a/tests/software_config/test_heat_config.py b/tests/test_heat_config.py similarity index 98% rename from tests/software_config/test_heat_config.py rename to tests/test_heat_config.py index 0392acf..8c4c7bd 100644 --- a/tests/software_config/test_heat_config.py +++ b/tests/test_heat_config.py @@ -20,7 +20,7 @@ import tempfile import fixtures from testtools import matchers -from tests.software_config import common +from tests import common class HeatConfigTest(common.RunScriptTest): @@ -128,8 +128,7 @@ class HeatConfigTest(common.RunScriptTest): self.heat_config_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config/os-refresh-config/configure.d/55-heat-config') self.hooks_dir = self.useFixture(fixtures.TempDir()) diff --git a/tests/software_config/test_heat_config_docker_compose.py b/tests/test_heat_config_docker_compose.py similarity index 97% rename from tests/software_config/test_heat_config_docker_compose.py rename to tests/test_heat_config_docker_compose.py index 358ed6f..2a4c2c8 100644 --- a/tests/software_config/test_heat_config_docker_compose.py +++ b/tests/test_heat_config_docker_compose.py @@ -18,7 +18,7 @@ import tempfile import fixtures import yaml -from tests.software_config import common +from tests import common class HeatConfigDockerComposeORCTest(common.RunScriptTest): @@ -72,8 +72,7 @@ class HeatConfigDockerComposeORCTest(common.RunScriptTest): self.fake_hook_path = self.relative_path(__file__, 'hook-fake.py') self.heat_config_docker_compose_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-docker-compose/os-refresh-config/configure.d/' '50-heat-config-docker-compose') diff --git a/tests/software_config/test_heat_config_kubelet.py b/tests/test_heat_config_kubelet.py similarity index 97% rename from tests/software_config/test_heat_config_kubelet.py rename to tests/test_heat_config_kubelet.py index 03d2eed..93455e1 100644 --- a/tests/software_config/test_heat_config_kubelet.py +++ b/tests/test_heat_config_kubelet.py @@ -18,7 +18,7 @@ import tempfile import fixtures from testtools import matchers -from tests.software_config import common +from tests import common class HeatConfigKubeletORCTest(common.RunScriptTest): @@ -99,8 +99,7 @@ class HeatConfigKubeletORCTest(common.RunScriptTest): self.heat_config_kubelet_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-kubelet/os-refresh-config/configure.d/' '50-heat-config-kubelet') diff --git a/tests/software_config/test_heat_config_notify.py b/tests/test_heat_config_notify.py similarity index 98% rename from tests/software_config/test_heat_config_notify.py rename to tests/test_heat_config_notify.py index c3d5d20..80bd971 100644 --- a/tests/software_config/test_heat_config_notify.py +++ b/tests/test_heat_config_notify.py @@ -18,8 +18,8 @@ import tempfile import fixtures import mock -from tests.software_config import common -from tests.software_config import heat_config_notify as hcn +from tests import common +from tests import heat_config_notify as hcn class HeatConfigNotifyTest(common.RunScriptTest): diff --git a/tests/software_config/test_hook_ansible.py b/tests/test_hook_ansible.py similarity index 98% rename from tests/software_config/test_hook_ansible.py rename to tests/test_hook_ansible.py index 6849472..6573a63 100644 --- a/tests/software_config/test_hook_ansible.py +++ b/tests/test_hook_ansible.py @@ -18,7 +18,7 @@ import os import fixtures -from tests.software_config import common +from tests import common class HookAnsibleTest(common.RunScriptTest): @@ -62,8 +62,7 @@ class HookAnsibleTest(common.RunScriptTest): super(HookAnsibleTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-ansible/install.d/hook-ansible.py') self.fake_tool_path = self.relative_path( diff --git a/tests/software_config/test_hook_apply_config.py b/tests/test_hook_apply_config.py similarity index 96% rename from tests/software_config/test_hook_apply_config.py rename to tests/test_hook_apply_config.py index 5aa27d7..98c2f1a 100644 --- a/tests/software_config/test_hook_apply_config.py +++ b/tests/test_hook_apply_config.py @@ -18,7 +18,7 @@ import os import tempfile import yaml -from tests.software_config import common +from tests import common log = logging.getLogger('test_hook_apply_config') @@ -36,8 +36,7 @@ class HookApplyConfigTest(common.RunScriptTest): super(HookApplyConfigTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-apply-config/install.d/hook-apply-config.py') self.metadata_dir = self.useFixture(fixtures.TempDir()) diff --git a/tests/software_config/test_hook_cfn_init.py b/tests/test_hook_cfn_init.py similarity index 97% rename from tests/software_config/test_hook_cfn_init.py rename to tests/test_hook_cfn_init.py index 8bb9275..6f6c9a8 100644 --- a/tests/software_config/test_hook_cfn_init.py +++ b/tests/test_hook_cfn_init.py @@ -16,7 +16,7 @@ import os import fixtures -from tests.software_config import common +from tests import common class HookCfnInitTest(common.RunScriptTest): @@ -31,8 +31,7 @@ class HookCfnInitTest(common.RunScriptTest): super(HookCfnInitTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-cfn-init/install.d/hook-cfn-init.py') self.fake_tool_path = self.relative_path( diff --git a/tests/software_config/test_hook_chef.py b/tests/test_hook_chef.py similarity index 98% rename from tests/software_config/test_hook_chef.py rename to tests/test_hook_chef.py index 8322037..b0a4865 100644 --- a/tests/software_config/test_hook_chef.py +++ b/tests/test_hook_chef.py @@ -19,7 +19,7 @@ import mock import StringIO import sys -from tests.software_config import common +from tests import common log = logging.getLogger('test_hook_chef') @@ -56,8 +56,7 @@ class HookChefTest(common.RunScriptTest): super(HookChefTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-chef/install.d/hook-chef.py') sys.stdin = StringIO.StringIO() sys.stdout = StringIO.StringIO() diff --git a/tests/software_config/test_hook_docker_cmd.py b/tests/test_hook_docker_cmd.py similarity index 97% rename from tests/software_config/test_hook_docker_cmd.py rename to tests/test_hook_docker_cmd.py index 354c831..aaaeca9 100644 --- a/tests/software_config/test_hook_docker_cmd.py +++ b/tests/test_hook_docker_cmd.py @@ -19,7 +19,7 @@ import tempfile import fixtures from testtools import matchers -from tests.software_config import common +from tests import common class HookDockerCmdTest(common.RunScriptTest): @@ -55,14 +55,13 @@ class HookDockerCmdTest(common.RunScriptTest): super(HookDockerCmdTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-docker-cmd/install.d/hook-docker-cmd.py') self.cleanup_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements/heat-config-docker-cmd/', + '..', + 'heat-config-docker-cmd/', 'os-refresh-config/configure.d/50-heat-config-docker-cmd') self.fake_tool_path = self.relative_path( diff --git a/tests/software_config/test_hook_docker_compose.py b/tests/test_hook_docker_compose.py similarity index 97% rename from tests/software_config/test_hook_docker_compose.py rename to tests/test_hook_docker_compose.py index f9cc904..5ba962d 100644 --- a/tests/software_config/test_hook_docker_compose.py +++ b/tests/test_hook_docker_compose.py @@ -16,7 +16,7 @@ import os import fixtures -from tests.software_config import common +from tests import common class HookDockerComposeTest(common.RunScriptTest): @@ -72,8 +72,7 @@ class HookDockerComposeTest(common.RunScriptTest): super(HookDockerComposeTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-docker-compose/install.d/hook-docker-compose.py') self.fake_tool_path = self.relative_path( diff --git a/tests/software_config/test_hook_hiera.py b/tests/test_hook_hiera.py similarity index 95% rename from tests/software_config/test_hook_hiera.py rename to tests/test_hook_hiera.py index 8e6e6c4..9c87352 100644 --- a/tests/software_config/test_hook_hiera.py +++ b/tests/test_hook_hiera.py @@ -18,7 +18,7 @@ import os import tempfile import yaml -from tests.software_config import common +from tests import common log = logging.getLogger('test_hook_hiera_config') @@ -51,8 +51,7 @@ class HookHieraTest(common.RunScriptTest): super(HookHieraTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-hiera/install.d/hook-hiera.py') self.hieradata_dir = self.useFixture(fixtures.TempDir()).join() diff --git a/tests/software_config/test_hook_kubelet.py b/tests/test_hook_kubelet.py similarity index 98% rename from tests/software_config/test_hook_kubelet.py rename to tests/test_hook_kubelet.py index de4c235..37b734e 100644 --- a/tests/software_config/test_hook_kubelet.py +++ b/tests/test_hook_kubelet.py @@ -16,7 +16,7 @@ import mock import re import testtools -from tests.software_config import hook_kubelet +from tests import hook_kubelet class HookKubeletTest(testtools.TestCase): diff --git a/tests/software_config/test_hook_puppet.py b/tests/test_hook_puppet.py similarity index 98% rename from tests/software_config/test_hook_puppet.py rename to tests/test_hook_puppet.py index cd01c94..b776f46 100644 --- a/tests/software_config/test_hook_puppet.py +++ b/tests/test_hook_puppet.py @@ -17,7 +17,7 @@ import os import fixtures -from tests.software_config import common +from tests import common class HookPuppetTest(common.RunScriptTest): @@ -48,8 +48,7 @@ class HookPuppetTest(common.RunScriptTest): super(HookPuppetTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-puppet/install.d/hook-puppet.py') self.fake_tool_path = self.relative_path( diff --git a/tests/software_config/test_hook_salt.py b/tests/test_hook_salt.py similarity index 97% rename from tests/software_config/test_hook_salt.py rename to tests/test_hook_salt.py index 372a624..d640627 100644 --- a/tests/software_config/test_hook_salt.py +++ b/tests/test_hook_salt.py @@ -17,7 +17,7 @@ import logging import os import yaml -from tests.software_config import common +from tests import common log = logging.getLogger('test_hook_salt') @@ -64,8 +64,7 @@ class HookSaltTest(common.RunScriptTest): super(HookSaltTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-salt/install.d/hook-salt.py') self.working_dir = self.useFixture(fixtures.TempDir()) diff --git a/tests/software_config/test_hook_script.py b/tests/test_hook_script.py similarity index 97% rename from tests/software_config/test_hook_script.py rename to tests/test_hook_script.py index 2e0d5e8..e846149 100644 --- a/tests/software_config/test_hook_script.py +++ b/tests/test_hook_script.py @@ -16,7 +16,7 @@ import os import fixtures -from tests.software_config import common +from tests import common class HookScriptTest(common.RunScriptTest): @@ -25,8 +25,7 @@ class HookScriptTest(common.RunScriptTest): super(HookScriptTest, self).setUp() self.hook_path = self.relative_path( __file__, - '../..', - 'hot/software-config/elements', + '..', 'heat-config-script/install.d/hook-script.py') self.fake_tool_path = self.relative_path( diff --git a/tox.ini b/tox.ini new file mode 100644 index 0000000..1dffeda --- /dev/null +++ b/tox.ini @@ -0,0 +1,22 @@ +[tox] +envlist = py27,pep8 +minversion = 1.6 +skipsdist = True + +[testenv] +setenv = VIRTUAL_ENV={envdir} +deps = -r{toxinidir}/requirements.txt + -r{toxinidir}/test-requirements.txt +commands = bash -c 'if [ ! -d ./.testrepository ] ; then testr init ; fi' + testr run {posargs} + +[testenv:pep8] +commands = flake8 + +[testenv:venv] +commands = {posargs} + +[flake8] +show-source = True +builtins = _ +exclude=.venv,.git,.tox,*lib/python*,private,.eggs