Description of problem: Spec URL: Will update SRPM URL: Will update Description: senlin wiki https://wiki.openstack.org/wiki/Senlin Senlin is a clustering service for OpenStack clouds. It creates and operates clusters of homogeneous objects exposed by other OpenStack services. The goal is to make orchestration of collections of similar objects easier. Senlin interacts with other OpenStack services so that clusters of resources exposed by those services can be created and operated. These interactions are mostly done through the via profile plugins. Each profile type implementation enable Senlin to create, update, delete a specific type of resources. A Cluster can be associated with different Policy objects that can be checked/enforced at varying enforcement levels. Through service APIs, a user can dynamically add Node to and remove node from a cluster, attach and detach policies, such as creation policy, deletion policy, load-balancing policy, scaling policy, health policy etc. Through integration with other OpenStack projects, users will be enabled to manage deployments and orchestrations large-scale resource pools much easier. Senlin is designed to be capable of managing different types of objects. An object’s lifecycle is managed using Profile Type implementations, which are plugins that can be dynamically loaded by the service engine.
Hello, I'd like to have a look at packaging this. Any objections please let me know!
First stab at spec file. It has been about 7 years since I last played with spec files so please go easy. :) Github project: https://github.com/snecklifter/senlin-rdo-rpm Spec file: https://raw.githubusercontent.com/snecklifter/senlin-rdo-rpm/master/openstack-senlin.spec
Initial licensecheck output: ./.coveragerc: *No copyright* UNKNOWN ./.gitreview: *No copyright* UNKNOWN ./.testr.conf: *No copyright* UNKNOWN ./CONTRIBUTING.rst: *No copyright* UNKNOWN ./FEATURES.rst: *No copyright* UNKNOWN ./HACKING.rst: *No copyright* UNKNOWN ./LICENSE: *No copyright* Apache (v2.0) ./README.rst: *No copyright* UNKNOWN ./TODO.rst: *No copyright* UNKNOWN ./babel.cfg: *No copyright* UNKNOWN ./install.sh: *No copyright* UNKNOWN ./requirements.txt: *No copyright* UNKNOWN ./setup.cfg: *No copyright* Apache ./setup.py: Apache (v2.0) GENERATED FILE ./test-requirements.txt: *No copyright* UNKNOWN ./tox.ini: *No copyright* UNKNOWN ./uninstall.sh: *No copyright* UNKNOWN ./devstack/README.rst: *No copyright* UNKNOWN ./devstack/apache-senlin.template: *No copyright* UNKNOWN ./devstack/plugin.sh: *No copyright* UNKNOWN ./devstack/settings: *No copyright* UNKNOWN ./doc/Makefile: *No copyright* UNKNOWN ./doc/README.rst: *No copyright* UNKNOWN ./rally-jobs/README.rst: *No copyright* UNKNOWN ./rally-jobs/senlin-senlin.yaml: *No copyright* UNKNOWN ./senlin/__init__.py: *No copyright* Apache (v2.0) ./senlin/version.py: *No copyright* Apache (v2.0) ./tools/README.rst: *No copyright* GENERATED FILE ./tools/config-generator.conf: *No copyright* UNKNOWN ./tools/cover.sh: *No copyright* Apache (v2.0) ./tools/gen-config: *No copyright* UNKNOWN ./tools/gen-pot-files: *No copyright* UNKNOWN ./tools/senlin-db-recreate: *No copyright* UNKNOWN ./tools/setup-service: *No copyright* UNKNOWN ./api-ref/source/actions.inc: *No copyright* UNKNOWN ./api-ref/source/build_info.inc: *No copyright* UNKNOWN ./api-ref/source/cluster_policies.inc: *No copyright* UNKNOWN ./api-ref/source/clusters.inc: *No copyright* UNKNOWN ./api-ref/source/conf.py: *No copyright* Apache (v2.0) GENERATED FILE ./api-ref/source/events.inc: *No copyright* UNKNOWN ./api-ref/source/index.rst: *No copyright* UNKNOWN ./api-ref/source/nodes.inc: *No copyright* UNKNOWN ./api-ref/source/parameters.yaml: *No copyright* UNKNOWN ./api-ref/source/policies.inc: *No copyright* UNKNOWN ./api-ref/source/policy_types.inc: *No copyright* UNKNOWN ./api-ref/source/profile_types.inc: *No copyright* UNKNOWN ./api-ref/source/profiles.inc: *No copyright* UNKNOWN ./api-ref/source/receivers.inc: *No copyright* UNKNOWN ./api-ref/source/services.inc: *No copyright* UNKNOWN ./api-ref/source/status.yaml: *No copyright* UNKNOWN ./api-ref/source/versions.inc: *No copyright* UNKNOWN ./api-ref/source/webhooks.inc: *No copyright* UNKNOWN ./contrib/vdu/README.rst: *No copyright* UNKNOWN ./contrib/vdu/requirements.txt: *No copyright* UNKNOWN ./contrib/vdu/setup.cfg: *No copyright* Apache ./contrib/vdu/setup.py: Apache (v2.0) GENERATED FILE ./devstack/lib/senlin: *No copyright* UNKNOWN ./doc/source/conf.py: *No copyright* Apache (v2.0) ./doc/source/configuration.rst: *No copyright* UNKNOWN ./doc/source/glossary.rst: *No copyright* Apache (v2.0) ./doc/source/index.rst: *No copyright* Apache (v2.0) ./doc/source/install.rst: *No copyright* Apache (v2.0) ./doc/source/overview.rst: *No copyright* Apache (v2.0) ./doc/specs/README.rst: *No copyright* UNKNOWN ./doc/specs/template.rst: *No copyright* CC by (v3.0) GENERATED FILE ./doc/specs/workflow-recover.rst: *No copyright* CC by (v3.0) ./etc/senlin/README-senlin.conf.txt: *No copyright* UNKNOWN ./etc/senlin/api-paste.ini: *No copyright* UNKNOWN ./etc/senlin/policy.json: *No copyright* UNKNOWN ./examples/policies/affinity_policy.yaml: *No copyright* UNKNOWN ./examples/policies/batch_policy.yaml: *No copyright* UNKNOWN ./examples/policies/deletion_policy.yaml: *No copyright* UNKNOWN ./examples/policies/health_policy_event.yaml: *No copyright* UNKNOWN ./examples/policies/health_policy_poll.yaml: *No copyright* UNKNOWN ./examples/policies/lb_policy.yaml: *No copyright* UNKNOWN ./examples/policies/placement_region.yaml: *No copyright* UNKNOWN ./examples/policies/placement_zone.yaml: *No copyright* UNKNOWN ./examples/policies/scaling_policy.yaml: *No copyright* UNKNOWN ./examples/profiles/README.rst: *No copyright* UNKNOWN ./rally-jobs/plugins/senlin_plugin.py: *No copyright* Apache (v2.0) ./releasenotes/notes/action-policy-optimization-06ea45eb3dcbe33a.yaml: *No copyright* UNKNOWN ./releasenotes/notes/affinity-policy-fix-72ae92dc8ffcff00.yaml: *No copyright* UNKNOWN ./releasenotes/notes/api-ref-fixes-19bc963430c32ecf.yaml: *No copyright* UNKNOWN ./releasenotes/notes/az-info-9344b8d54c0b2665.yaml: *No copyright* UNKNOWN ./releasenotes/notes/batch-scheduling-ca5d98d41fc72973.yaml: *No copyright* UNKNOWN ./releasenotes/notes/capacity-calculation-4fd389ff12107dfb.yaml: *No copyright* UNKNOWN ./releasenotes/notes/clean-actions-for-cluster-node-438ca5268e7fd258.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-check-interval-b01e8140cc83760e.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-collect-90e460c7bfede347.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-delete-conflict-94261706eb29e9bb.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-desired-capacity-d876347f69b04b4f.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-node-dependents-3bdbebd773d276d1.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-node-status-e7fced162b415452.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-ops-433a5aa608a0eb7f.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-recover-d87d429873b376db.yaml: *No copyright* UNKNOWN ./releasenotes/notes/cluster-status-update-dd9133092aef05ab.yaml: *No copyright* UNKNOWN ./releasenotes/notes/compute-instance-fencing-63b931cdf35b127c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/config-doc-cb8b37e360422301.yaml: *No copyright* UNKNOWN ./releasenotes/notes/container-ops-e57d096742202206.yaml: *No copyright* UNKNOWN ./releasenotes/notes/container-profile-152bf2908c70ffad.yaml: *No copyright* UNKNOWN ./releasenotes/notes/db-action-retries-d471fe85b4510afd.yaml: *No copyright* UNKNOWN ./releasenotes/notes/delete-batch-a16ee5ed2512eab7.yaml: *No copyright* UNKNOWN ./releasenotes/notes/deletion-policy-11bcb7c0e90bbfcc.yaml: *No copyright* UNKNOWN ./releasenotes/notes/deletion-policy-node-delete-dc70da377b2a4f77.yaml: *No copyright* UNKNOWN ./releasenotes/notes/destroy-nodes-after-remove-37bffdc35a9b7a96.yaml: *No copyright* UNKNOWN ./releasenotes/notes/doc-fixes-cd8c7006f8c66387.yaml: *No copyright* UNKNOWN ./releasenotes/notes/doc-fixes-e60bb1a486f67e0c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/drop-py34-support-21e20efb9bf0b326.yaml: *No copyright* UNKNOWN ./releasenotes/notes/dynamic-timer-67f053499f4b32e2.yaml: *No copyright* UNKNOWN ./releasenotes/notes/enforce-multi-tenancy-ee27b9bfec7ba405.yaml: *No copyright* UNKNOWN ./releasenotes/notes/error-messages-bd8b5a6d12e2c4af.yaml: *No copyright* UNKNOWN ./releasenotes/notes/event-for-derived-actions-8bd44367fa683dbc.yaml: *No copyright* UNKNOWN ./releasenotes/notes/event-list-b268bb778efa9ee1.yaml: *No copyright* UNKNOWN ./releasenotes/notes/event-purge-db868a063e18eafb.yaml: *No copyright* UNKNOWN ./releasenotes/notes/event-table-change-dcb42c8b6d145fec.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-action-triggering-e880b02234028315.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-cluster-index-ae0060b6337d6d55.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-cooldown-5082711989ecd536.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-db-deadlock-1d2bdb9ce785734a.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-delete-apis-bf9f47b5fcf8f3e6.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-desired-when-omitted-e7ffc0aa72ab8cc9.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-dup-of-action-dump-0b95a07adf3ccdba.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-health-mgr-opts-99898614f37c5d74.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-network-error-handling-e78da90b6bc2319c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-node-recover-5af129bf0688577d.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-node-status-for-lb-fc7714da09bec2fb.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-recover-trigger-749600f500f7bf4a.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-registry-claim-5421dca1ed9b0783.yaml: *No copyright* UNKNOWN ./releasenotes/notes/fix-tag-for-stacks-2ef70be061e80253.yaml: *No copyright* UNKNOWN ./releasenotes/notes/forbid-cluster-deletion-a8b0f55aaf0aa106.yaml: *No copyright* UNKNOWN ./releasenotes/notes/gc-for-dead-engine-2246c714edc9a2df.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-check-interval-b3850c072600bfdf.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-lb-polling-32d83803c77cc1d8.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-manager-listener-8ddbe169e510031b.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-policy-actions-936db8bc3ed08aec.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-policy-properties-056d5b4aa63312c9.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-policy-suspend-7aa33fc981c0f2c9.yaml: *No copyright* UNKNOWN ./releasenotes/notes/health-reboot-9f74c263f7fb6767.yaml: *No copyright* UNKNOWN ./releasenotes/notes/heat-listener-b908d0988840e1f3.yaml: *No copyright* UNKNOWN ./releasenotes/notes/keystone-conformance-4e729da9e88b4fb3.yaml: *No copyright* UNKNOWN ./releasenotes/notes/lb-node-actions-95545338ae622f5c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/lb-policy-02782a1b98142742.yaml: *No copyright* UNKNOWN ./releasenotes/notes/lb-support-to-recover-8f822d3c2665e225.yaml: *No copyright* UNKNOWN ./releasenotes/notes/lb-timeout-option-990ba1f359b5daab.yaml: *No copyright* UNKNOWN ./releasenotes/notes/lock-break-for-dead-service-0abd3d3ea333622c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/message-receiver-3432826515f8e70c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/metadata-query-profile-9c45d99db7b30207.yaml: *No copyright* UNKNOWN ./releasenotes/notes/more-policy-validation-ace6a4f890b2a500.yaml: *No copyright* UNKNOWN ./releasenotes/notes/more-server-operations-dd77e83b705c28f0.yaml: *No copyright* UNKNOWN ./releasenotes/notes/new-api-doc-f21eb0a9f53d7643.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-action-logic-4d3e94818cccaa3e.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-check-50d4b67796e17afb.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-check-before-recover-abf887a39ab0d355.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-create-affinity-ec126ccd3e9e0957.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-create-az-d886dea98a25229f.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-create-region-0cbac0918c703e27.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-op-api-a7bede34c51854ee.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-ops-115d9d64f6e261db.yaml: *No copyright* UNKNOWN ./releasenotes/notes/node-update-timestamp-43b9639e22267598.yaml: *No copyright* UNKNOWN ./releasenotes/notes/non-operation-recover-cf0f3c0ac62bb0f3.yaml: *No copyright* UNKNOWN ./releasenotes/notes/notification-operations-c7bdaa9b56e5011f.yaml: *No copyright* UNKNOWN ./releasenotes/notes/notification-support-a7e2ebc816bb4009.yaml: *No copyright* UNKNOWN ./releasenotes/notes/notification-transport-ae49e9cb1813cd96.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-az-fccf8db758642d34.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-metadata-fix-89b7a2e06c3ce59f.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-server-addresses-fd8afddc3fb36a0c.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-server-validation-60612c1185738104.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-server-validation-d36dbcf64fb90a43.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-update-opt-7372e4d189e483aa.yaml: *No copyright* UNKNOWN ./releasenotes/notes/nova-update-validation-dca7de984c2071d1.yaml: *No copyright* UNKNOWN ./releasenotes/notes/ocata-2-c2e184a0b76231e8.yaml: *No copyright* UNKNOWN ./releasenotes/notes/options-shuffled-29c6cfac72aaf8ff.yaml: *No copyright* UNKNOWN ./releasenotes/notes/oslo-versioned-object-support-cc9463490306c26f.yaml: *No copyright* UNKNOWN ./releasenotes/notes/param-check-cluster-update-58d4712a33f74c6e.yaml: *No copyright* UNKNOWN ./releasenotes/notes/path-check-collect-1e542762cbcd65d2.yaml: *No copyright* UNKNOWN ./releasenotes/notes/policy-enabling-61d0c38aecf314eb.yaml: *No copyright* UNKNOWN ./releasenotes/notes/policy-performance-4d2fa57ccc45bbf1.yaml: *No copyright* UNKNOWN ./releasenotes/notes/policy-validate-04cbc74d2c025fcc.yaml: *No copyright* UNKNOWN ./releasenotes/notes/policy-validation-477a103aa83835f9.yaml: *No copyright* UNKNOWN ./releasenotes/notes/profile-only-update-5cdb3ae46a8139a8.yaml: *No copyright* UNKNOWN ./releasenotes/notes/profile-type-ops-1f0f2e6e6b5b1999.yaml: *No copyright* UNKNOWN ./releasenotes/notes/profile-validate-45a9bc520880bc6b.yaml: *No copyright* UNKNOWN ./releasenotes/notes/receiver-create-check-2225f536f5150065.yaml: *No copyright* UNKNOWN ./releasenotes/notes/receiver-create-trust-bd5fdeb059e68330.yaml: *No copyright* UNKNOWN ./releasenotes/notes/receiver-filter-by-user-ab35a2ab8e2690d1.yaml: *No copyright* UNKNOWN ./releasenotes/notes/remove-bdm-v1-4533677f3bca3c5d.yaml: *No copyright* UNKNOWN ./releasenotes/notes/resize-params-ab4942dc11f05d9a.yaml: *No copyright* UNKNOWN ./releasenotes/notes/scaling-policy-validation-e2a1d3049e03c316.yaml: *No copyright* UNKNOWN ./releasenotes/notes/scheduler-enhancement-09f86efe4dde4051.yaml: *No copyright* UNKNOWN ./releasenotes/notes/secure-password-e60243ae2befbbf6.yaml: *No copyright* UNKNOWN ./releasenotes/notes/senlin-osprofiler-fc8cb7161bdb1a6e.yaml: *No copyright* UNKNOWN ./releasenotes/notes/server-image-id-27c1619fa818c6a0.yaml: *No copyright* UNKNOWN ./releasenotes/notes/service-cleanup-afacddfacd7b4dcd.yaml: *No copyright* UNKNOWN ./releasenotes/notes/service-status-report-625bc25b89907e07.yaml: *No copyright* UNKNOWN ./releasenotes/notes/setup-script-648e9bfb89bb6255.yaml: *No copyright* UNKNOWN ./releasenotes/notes/support-status-f7383a53ddcae908.yaml: *No copyright* UNKNOWN ./releasenotes/notes/tempest-api-test-support-c86091a7ba5fb789.yaml: *No copyright* UNKNOWN ./releasenotes/notes/tempest-functional-test-383dad4d9acff97e.yaml: *No copyright* UNKNOWN ./releasenotes/notes/template-url-19075b68d9a35a80.yaml: *No copyright* UNKNOWN ./releasenotes/notes/tools-setup-d73e3298328c5355.yaml: *No copyright* UNKNOWN ./releasenotes/notes/versioned-rpc-requests-2df5d878c279e933.yaml: *No copyright* UNKNOWN ./releasenotes/notes/zaqar-support-470e824b7737e939.yaml: *No copyright* UNKNOWN ./releasenotes/source/conf.py: *No copyright* Apache (v2.0) GENERATED FILE ./releasenotes/source/index.rst: *No copyright* Apache (v2.0) ./releasenotes/source/mitaka.rst: *No copyright* UNKNOWN ./releasenotes/source/newton.rst: *No copyright* UNKNOWN ./releasenotes/source/ocata.rst: *No copyright* UNKNOWN ./releasenotes/source/unreleased.rst: *No copyright* UNKNOWN ./senlin/cmd/__init__.py: *No copyright* Apache (v2.0) ./senlin/cmd/api.py: *No copyright* Apache (v2.0) ./senlin/cmd/api_wsgi.py: *No copyright* Apache (v2.0) ./senlin/cmd/engine.py: *No copyright* Apache (v2.0) ./senlin/cmd/manage.py: *No copyright* Apache (v2.0) ./senlin/common/config.py: *No copyright* Apache (v2.0) ./senlin/common/constraints.py: *No copyright* Apache (v2.0) ./senlin/common/consts.py: *No copyright* Apache (v2.0) ./senlin/common/context.py: *No copyright* Apache (v2.0) ./senlin/common/exception.py: Apache (v2.0) ./senlin/common/i18n.py: Apache (v2.0) ./senlin/common/messaging.py: *No copyright* Apache (v2.0) ./senlin/common/policy.py: *No copyright* Apache (v2.0) ./senlin/common/profiler.py: *No copyright* Apache (v2.0) ./senlin/common/scaleutils.py: *No copyright* Apache (v2.0) ./senlin/common/schema.py: *No copyright* Apache (v2.0) ./senlin/common/utils.py: *No copyright* Apache (v2.0) ./senlin/db/api.py: *No copyright* Apache (v2.0) ./senlin/db/utils.py: *No copyright* Apache (v2.0) ./senlin/drivers/base.py: *No copyright* Apache (v2.0) ./senlin/engine/cluster.py: *No copyright* Apache (v2.0) ./senlin/engine/cluster_policy.py: *No copyright* Apache (v2.0) ./senlin/engine/dispatcher.py: *No copyright* Apache (v2.0) ./senlin/engine/environment.py: *No copyright* Apache (v2.0) ./senlin/engine/event.py: *No copyright* Apache (v2.0) ./senlin/engine/health_manager.py: *No copyright* Apache (v2.0) ./senlin/engine/node.py: *No copyright* Apache (v2.0) ./senlin/engine/parser.py: *No copyright* Apache (v2.0) ./senlin/engine/registry.py: *No copyright* Apache (v2.0) ./senlin/engine/scheduler.py: *No copyright* Apache (v2.0) ./senlin/engine/senlin_lock.py: *No copyright* Apache (v2.0) ./senlin/engine/service.py: *No copyright* Apache (v2.0) ./senlin/events/base.py: *No copyright* Apache (v2.0) ./senlin/events/database.py: *No copyright* Apache (v2.0) ./senlin/events/message.py: *No copyright* Apache (v2.0) ./senlin/hacking/checks.py: *No copyright* Apache (v2.0) ./senlin/objects/__init__.py: *No copyright* Apache (v2.0) ./senlin/objects/action.py: *No copyright* Apache (v2.0) ./senlin/objects/base.py: *No copyright* Apache (v2.0) ./senlin/objects/cluster.py: *No copyright* Apache (v2.0) ./senlin/objects/cluster_lock.py: *No copyright* Apache (v2.0) ./senlin/objects/cluster_policy.py: *No copyright* Apache (v2.0) ./senlin/objects/credential.py: *No copyright* Apache (v2.0) ./senlin/objects/dependency.py: *No copyright* Apache (v2.0) ./senlin/objects/event.py: *No copyright* Apache (v2.0) ./senlin/objects/fields.py: *No copyright* Apache (v2.0) ./senlin/objects/health_registry.py: *No copyright* Apache (v2.0) ./senlin/objects/node.py: *No copyright* Apache (v2.0) ./senlin/objects/node_lock.py: *No copyright* Apache (v2.0) ./senlin/objects/notification.py: *No copyright* Apache (v2.0) ./senlin/objects/policy.py: *No copyright* Apache (v2.0) ./senlin/objects/profile.py: *No copyright* Apache (v2.0) ./senlin/objects/receiver.py: *No copyright* Apache (v2.0) ./senlin/objects/service.py: *No copyright* Apache (v2.0) ./senlin/policies/affinity_policy.py: *No copyright* Apache (v2.0) ./senlin/policies/base.py: *No copyright* Apache (v2.0) ./senlin/policies/batch_policy.py: *No copyright* Apache (v2.0) ./senlin/policies/deletion_policy.py: *No copyright* Apache (v2.0) ./senlin/policies/health_policy.py: *No copyright* Apache (v2.0) ./senlin/policies/lb_policy.py: *No copyright* Apache (v2.0) ./senlin/policies/region_placement.py: *No copyright* Apache (v2.0) ./senlin/policies/scaling_policy.py: *No copyright* Apache (v2.0) ./senlin/policies/zone_placement.py: *No copyright* Apache (v2.0) ./senlin/profiles/base.py: *No copyright* Apache (v2.0) ./senlin/rpc/client.py: *No copyright* Apache (v2.0) ./api-ref/source/samples/action-get-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/actions-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/build-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-add-nodes-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-attach-policy-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-attrs-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-check-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-create-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-create-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-del-nodes-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-detach-policy-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-operation-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-policies-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-policy-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-recover-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-replace-nodes-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-resize-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-scale-in-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-scale-out-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-update-policy-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-update-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/cluster-update-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/clusters-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/event-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/events-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-adopt-preview-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-adopt-preview-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-adopt-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-adopt-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-check-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-create-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-create-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-operation-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-recover-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/node-update-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-create-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-create-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-type-show-response-v1.5.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-type-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-types-list-response-v1.5.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-types-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-update-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-update-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-validate-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/policy-validate-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-create-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-create-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-type-ops-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-type-show-response-v1.5.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-type-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-types-list-response-v1.5.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-types-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-update-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-update-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-validate-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/profile-validate-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/receiver-create-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/receiver-create-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/receiver-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/receiver-update-request.json: *No copyright* UNKNOWN ./api-ref/source/samples/receiver-update-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/receivers-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/services-list-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/version-show-response.json: *No copyright* UNKNOWN ./api-ref/source/samples/versions-list-response.json: *No copyright* UNKNOWN ./contrib/vdu/examples/vdu.yaml: *No copyright* UNKNOWN ./contrib/vdu/vdu/server.py: *No copyright* Apache (v2.0) ./doc/source/developer/action.rst: *No copyright* Apache (v2.0) ./doc/source/developer/api_microversion.rst: *No copyright* Apache (v2.0) ./doc/source/developer/authorization.rst: *No copyright* Apache (v2.0) ./doc/source/developer/cluster.rst: *No copyright* Apache (v2.0) ./doc/source/developer/event_dispatcher.rst: *No copyright* Apache (v2.0) ./doc/source/developer/node.rst: *No copyright* Apache (v2.0) ./doc/source/developer/osprofiler.rst: *No copyright* Apache (v2.0) ./doc/source/developer/plugin_guide.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policy.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policy_type.rst: *No copyright* Apache (v2.0) ./doc/source/developer/profile.rst: *No copyright* Apache (v2.0) ./doc/source/developer/profile_type.rst: *No copyright* Apache (v2.0) ./doc/source/developer/receiver.rst: *No copyright* Apache (v2.0) ./doc/source/developer/reviews.rst: *No copyright* Apache (v2.0) ./doc/source/developer/testing.rst: *No copyright* Apache (v2.0) ./doc/source/man/index.rst: *No copyright* UNKNOWN ./doc/source/man/senlin-api.rst: *No copyright* UNKNOWN ./doc/source/man/senlin-engine.rst: *No copyright* UNKNOWN ./doc/source/man/senlin-manage.rst: *No copyright* UNKNOWN ./doc/source/scenarios/affinity.rst: *No copyright* Apache (v2.0) ./doc/source/scenarios/autoscaling_ceilometer.rst: *No copyright* Apache (v2.0) ./doc/source/scenarios/autoscaling_heat.rst: *No copyright* Apache (v2.0) ./doc/source/scenarios/autoscaling_overview.rst: *No copyright* Apache (v2.0) ./doc/source/scenarios/ex_lbas.yaml: *No copyright* UNKNOWN ./doc/source/tutorial/autoscaling.rst: *No copyright* Apache (v2.0) ./doc/source/tutorial/basics.rst: *No copyright* Apache (v2.0) ./doc/source/tutorial/heat.rst: *No copyright* Apache (v2.0) ./doc/source/tutorial/policies.rst: *No copyright* Apache (v2.0) ./doc/source/tutorial/receivers.rst: *No copyright* Apache (v2.0) ./doc/source/user/actions.rst: *No copyright* Apache (v2.0) ./doc/source/user/bindings.rst: *No copyright* Apache (v2.0) ./doc/source/user/clusters.rst: *No copyright* Apache (v2.0) ./doc/source/user/events.rst: *No copyright* Apache (v2.0) GENERATED FILE ./doc/source/user/membership.rst: *No copyright* Apache (v2.0) ./doc/source/user/nodes.rst: *No copyright* Apache (v2.0) ./doc/source/user/policies.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types.rst: *No copyright* Apache (v2.0) ./doc/source/user/profile_types.rst: *No copyright* Apache (v2.0) ./doc/source/user/profiles.rst: *No copyright* Apache (v2.0) ./doc/source/user/receivers.rst: *No copyright* Apache (v2.0) ./doc/specs/approved/README.rst: *No copyright* UNKNOWN ./doc/specs/approved/container-cluster.rst: *No copyright* Apache (v2.0) ./doc/specs/approved/generic-event.rst: *No copyright* CC by (v3.0) GENERATED FILE ./doc/specs/rejected/README.rst: *No copyright* UNKNOWN ./examples/policies/WIP/batching_1_1_0.yaml: *No copyright* UNKNOWN ./examples/policies/WIP/health_policy_lb.yaml: *No copyright* UNKNOWN ./examples/policies/WIP/lb_policy_aws.spec: *No copyright* UNKNOWN ./examples/profiles/docker_container/docker_basic.yaml: *No copyright* UNKNOWN ./examples/profiles/nova_server/cirros_basic.yaml: *No copyright* UNKNOWN ./senlin/api/common/serializers.py: *No copyright* Apache (v2.0) ./senlin/api/common/util.py: *No copyright* Apache (v2.0) ./senlin/api/common/version_request.py: *No copyright* Apache (v2.0) ./senlin/api/common/versioned_method.py: *No copyright* Apache (v2.0) ./senlin/api/common/wsgi.py: *No copyright* Apache (v2.0) ./senlin/api/middleware/__init__.py: *No copyright* Apache (v2.0) ./senlin/api/middleware/context.py: *No copyright* Apache (v2.0) ./senlin/api/middleware/fault.py: *No copyright* Apache (v2.0) ./senlin/api/middleware/trust.py: *No copyright* Apache (v2.0) ./senlin/api/middleware/version_negotiation.py: *No copyright* Apache (v2.0) ./senlin/api/middleware/webhook.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/history.rst: *No copyright* UNKNOWN ./senlin/api/openstack/versions.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/api.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migration.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/models.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/types.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/utils.py: *No copyright* Apache (v2.0) ./senlin/drivers/container/docker_v1.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/__init__.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/ceilometer_v2.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/cinder_v2.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/glance_v2.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/heat_v1.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/keystone_v3.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/lbaas.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/mistral_v2.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/neutron_v2.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/nova_v2.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/sdk.py: *No copyright* Apache (v2.0) ./senlin/drivers/openstack/zaqar_v2.py: *No copyright* Apache (v2.0) ./senlin/engine/actions/base.py: *No copyright* Apache (v2.0) ./senlin/engine/actions/cluster_action.py: *No copyright* Apache (v2.0) ./senlin/engine/actions/custom_action.py: *No copyright* Apache (v2.0) ./senlin/engine/actions/node_action.py: *No copyright* Apache (v2.0) ./senlin/engine/receivers/base.py: *No copyright* Apache (v2.0) ./senlin/engine/receivers/message.py: *No copyright* Apache (v2.0) ./senlin/engine/receivers/webhook.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/actions.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/build_info.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/cluster_policies.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/clusters.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/credentials.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/events.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/nodes.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/policies.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/policy_type.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/profile_type.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/profiles.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/receivers.py: *No copyright* Apache (v2.0) ./senlin/objects/requests/webhooks.py: *No copyright* Apache (v2.0) ./senlin/profiles/container/docker.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/README.rst: *No copyright* UNKNOWN ./senlin/tests/tempest/README.rst: *No copyright* UNKNOWN ./senlin/tests/tempest/base.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/config.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/plugin.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/post_test_hook.sh: *No copyright* Apache (v2.0) ./senlin/tests/tempest/pre_test_hook.sh: *No copyright* Apache (v2.0) ./senlin/tests/unit/__init__.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/fakes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_constraints.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_context.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_exception.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_messaging.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_scaleutils.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_schema.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_common_utils.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_hacking.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/test_rpc_client.py: *No copyright* Apache (v2.0) ./doc/source/developer/policies/affinity_v1.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policies/deletion_v1.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policies/health_v1.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policies/load_balance_v1.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policies/region_v1.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policies/scaling_v1.rst: *No copyright* Apache (v2.0) ./doc/source/developer/policies/zone_v1.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/affinity.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/batch.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/deletion.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/health.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/load_balancing.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/region_placement.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/scaling.rst: *No copyright* Apache (v2.0) ./doc/source/user/policy_types/zone_placement.rst: *No copyright* Apache (v2.0) ./examples/profiles/heat_stack/nova_server/heat_stack_nova_server.yaml: *No copyright* UNKNOWN ./examples/profiles/heat_stack/nova_server/nova_server_template.yaml: *No copyright* UNKNOWN ./examples/profiles/heat_stack/random_string/heat_stack_random_string.yaml: *No copyright* UNKNOWN ./examples/profiles/heat_stack/random_string/random_string_template.yaml: *No copyright* UNKNOWN ./senlin/api/openstack/v1/actions.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/build_info.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/cluster_policies.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/clusters.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/events.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/nodes.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/policies.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/policy_types.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/profile_types.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/profiles.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/receivers.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/router.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/services.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/version.py: *No copyright* Apache (v2.0) ./senlin/api/openstack/v1/webhooks.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/README: *No copyright* UNKNOWN ./senlin/db/sqlalchemy/migrate_repo/manage.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/migrate.cfg: *No copyright* UNKNOWN ./senlin/locale/zh_CN/LC_MESSAGES/senlin-log-critical.po: *No copyright* UNKNOWN ./senlin/locale/zh_CN/LC_MESSAGES/senlin-log-error.po: *No copyright* UNKNOWN ./senlin/locale/zh_CN/LC_MESSAGES/senlin-log-warning.po: *No copyright* UNKNOWN ./senlin/profiles/os/heat/stack.py: *No copyright* Apache (v2.0) ./senlin/profiles/os/nova/server.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/__init__.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/heat_v1.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/lbaas.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/mistral_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/neutron_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/nova_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/drivers/openstack/sdk.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/base.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/common/clustering_client.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/common/compute_client.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/common/constants.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/common/messaging_client.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/common/network_client.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/common/utils.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/base.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_batch_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_cluster_basic.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_cluster_membership.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_cluster_scaling.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_lb_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_node_basic.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_receiver.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/functional/test_scaling_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/integration/base.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/integration/test_heat_stack_cluster.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/integration/test_nova_server_cluster.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/integration/test_receiver.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/shared.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/common/base.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/common/utils.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/shared.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_action_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_cluster_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_cluster_policy_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_cred_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_event_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_lock_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_node_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_policy_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_profile_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_receiver_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_registry_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_service_api.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_sqlalchemy_types.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/db/test_sqlalchemy_utils.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_ceilometer_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_cinder_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_docker_v1.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_driver.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_glance_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_heat_v1.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_keystone_v3.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_lbaas_driver.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_mistral_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_neutron_v2_driver.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_nova_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_sdk.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/drivers/test_zaqar_v2.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_cluster.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_cluster_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_dispatcher.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_engine_parser.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_engine_startstop.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_environment.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_event.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_health_manager.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_node.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_registry.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_scheduler.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/test_senlin_lock.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/events/test_base.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/events/test_database.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/events/test_message.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_action.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_base.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_cluster.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_cluster_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_event.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_fields.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_health_registry.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_node.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_notification.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_profile.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/test_receiver.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_affinity.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_batch_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_deletion_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_health_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_lb_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_region_placement.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_scaling_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/policies/test_zone_placement.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/profiles/test_container_docker.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/profiles/test_heat_stack.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/profiles/test_nova_server.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/profiles/test_nova_server_update.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/profiles/test_nova_server_validate.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/profiles/test_profile_base.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/001_first_version.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/002_service_table.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/003_action_tenant.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/004_health_registry.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/005_event_column_name.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/006_node_cluster_dependents_column.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/007_placeholder.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/008_placeholder.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/009_placeholder.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/010_user_project_length.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/011_registry_enable.py: *No copyright* Apache (v2.0) ./senlin/db/sqlalchemy/migrate_repo/versions/012_cluster_config.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/actions/test_action_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/actions/test_action_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/actions/test_action_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/actions/test_action_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/api_versions/test_api_version_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/api_versions/test_api_version_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/api_versions/test_api_versions_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/build_info/test_build_info.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/cluster_policies/test_cluster_policy_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/cluster_policies/test_cluster_policy_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/cluster_policies/test_cluster_policy_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/cluster_policies/test_cluster_policy_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_action_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_add_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_check.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_collect.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_create.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_create_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_del_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_delete.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_delete_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_policy_attach.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_policy_detach.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_policy_update.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_recover.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_replace_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_resize.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_scale_in.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_scale_out.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_update.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_update_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/clusters/test_cluster_update_profile.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/events/test_event_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/events/test_event_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/events/test_event_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/events/test_event_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_action_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_check.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_create.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_create_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_delete.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_delete_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_operation.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_recover.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_update.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_update_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/nodes/test_node_update_profile.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_create.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_create_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_delete.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_delete_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_update.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_update_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_validate.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policies/test_policy_validate_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policy_types/test_policy_type_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policy_types/test_policy_type_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/policy_types/test_policy_type_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profile_types/test_profile_type_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profile_types/test_profile_type_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profile_types/test_profile_type_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_create.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_create_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_delete.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_delete_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_update.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_update_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_validate.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/profiles/test_profile_validate_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_create.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_create_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_delete.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_delete_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_list.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_list_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_show.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_receiver_show_negative.py: *No copyright* Apache (v2.0) ./senlin/tests/tempest/api/receivers/test_webhook_trigger.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/common/test_serializers.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/common/test_util.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/common/test_version_request.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/common/test_wsgi.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/test_context.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/test_fault.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/test_middleware_filters.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/test_trust.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/test_version_negotiation.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/test_webhook.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/test_versions.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_action_base.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_add_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_attach_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_check.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_cluster_action.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_create.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_custom_action.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_del_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_delete.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_node_action.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_operation.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_recover.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_replace_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_resize.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_scale_in.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_scale_out.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_update.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_update_policy.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/actions/test_wait.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/receivers/test_message.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/receivers/test_receiver.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/receivers/test_webhook.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_actions.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_cluster_op.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_cluster_policies.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_clusters.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_credentials.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_events.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_policies.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_policy_types.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_profile_types.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_profiles.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_receivers.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/engine/service/test_webhooks.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_actions.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_cluster_policies.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_clusters.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_credentials.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_events.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_policies.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_policy_type.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_profile_type.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_profiles.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_receivers.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/objects/requests/test_webhooks.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/middleware/policy/check_admin.json: *No copyright* UNKNOWN ./senlin/tests/unit/api/middleware/policy/notallowed.json: *No copyright* UNKNOWN ./senlin/tests/unit/api/openstack/v1/test_actions.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_buildinfo.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_cluster_policies.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_clusters.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_events.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_nodes.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_policies.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_policy_types.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_profile_types.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_profiles.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_receivers.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_router.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_services.py: Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_version.py: *No copyright* Apache (v2.0) ./senlin/tests/unit/api/openstack/v1/test_webhooks.py: *No copyright* Apache (v2.0) The project is licensed using the Apache 2.0 license. I see some files are licensed using the Creative Commons Attribution 3.0 Unported License, but those are specs and I assume they will not be included in the package.
(In reply to Christopher Brown from comment #2) > First stab at spec file. It has been about 7 years since I last played with > spec files so please go easy. :) > > Github project: > > https://github.com/snecklifter/senlin-rdo-rpm > > Spec file: > > https://raw.githubusercontent.com/snecklifter/senlin-rdo-rpm/master/ > openstack-senlin.spec great. Maybe the requires files need to be added? pbr!=2.1.0,>=2.0.0 # Apache-2.0 Babel!=2.4.0,>=2.3.4 # BSD docker>=2.0.0 # Apache-2.0 eventlet!=0.18.3,!=0.20.1,<0.21.0,>=0.18.2 # MIT jsonpath-rw<2.0,>=1.2.0 # Apache-2.0 jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT keystoneauth1>=2.21.0 # Apache-2.0 keystonemiddleware>=4.12.0 # Apache-2.0 microversion-parse>=0.1.2 # Apache-2.0 openstacksdk>=0.9.17 # Apache-2.0 oslo.config!=4.3.0,!=4.4.0,>=4.0.0 # Apache-2.0 oslo.context>=2.14.0 # Apache-2.0 oslo.db>=4.23.0 # Apache-2.0 oslo.i18n!=3.15.2,>=2.1.0 # Apache-2.0 oslo.log>=3.22.0 # Apache-2.0 oslo.messaging!=5.25.0,>=5.24.2 # Apache-2.0 oslo.middleware>=3.27.0 # Apache-2.0 oslo.policy>=1.23.0 # Apache-2.0 oslo.serialization>=1.10.0 # Apache-2.0 oslo.service>=1.10.0 # Apache-2.0 oslo.utils>=3.20.0 # Apache-2.0 oslo.versionedobjects>=1.17.0 # Apache-2.0 osprofiler>=1.4.0 # Apache-2.0 PasteDeploy>=1.5.0 # MIT pytz>=2013.6 # MIT PyYAML>=3.10.0 # MIT qpid-python;python_version=='2.7' # Apache-2.0 requests>=2.14.2 # Apache-2.0 Routes>=2.3.1 # MIT six>=1.9.0 # MIT SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT sqlalchemy-migrate>=0.11.0 # Apache-2.0 stevedore>=1.20.0 # Apache-2.0 WebOb>=1.7.1 # MIT
(In reply to Javier Peña from comment #3) > Initial licensecheck output: > > ./.coveragerc: *No copyright* UNKNOWN > ./.gitreview: *No copyright* UNKNOWN > ./.testr.conf: *No copyright* UNKNOWN > ./CONTRIBUTING.rst: *No copyright* UNKNOWN > ./FEATURES.rst: *No copyright* UNKNOWN > ./HACKING.rst: *No copyright* UNKNOWN > ./LICENSE: *No copyright* Apache (v2.0) > ./README.rst: *No copyright* UNKNOWN > ./TODO.rst: *No copyright* UNKNOWN > ./babel.cfg: *No copyright* UNKNOWN > ./install.sh: *No copyright* UNKNOWN > ./requirements.txt: *No copyright* UNKNOWN > ./setup.cfg: *No copyright* Apache > ./setup.py: Apache (v2.0) GENERATED FILE > ./test-requirements.txt: *No copyright* UNKNOWN > ./tox.ini: *No copyright* UNKNOWN > ./uninstall.sh: *No copyright* UNKNOWN > ./devstack/README.rst: *No copyright* UNKNOWN > ./devstack/apache-senlin.template: *No copyright* UNKNOWN > ./devstack/plugin.sh: *No copyright* UNKNOWN > ./devstack/settings: *No copyright* UNKNOWN > ./doc/Makefile: *No copyright* UNKNOWN > ./doc/README.rst: *No copyright* UNKNOWN > ./rally-jobs/README.rst: *No copyright* UNKNOWN > ./rally-jobs/senlin-senlin.yaml: *No copyright* UNKNOWN > ./senlin/__init__.py: *No copyright* Apache (v2.0) > ./senlin/version.py: *No copyright* Apache (v2.0) > ./tools/README.rst: *No copyright* GENERATED FILE > ./tools/config-generator.conf: *No copyright* UNKNOWN > ./tools/cover.sh: *No copyright* Apache (v2.0) > ./tools/gen-config: *No copyright* UNKNOWN > ./tools/gen-pot-files: *No copyright* UNKNOWN > ./tools/senlin-db-recreate: *No copyright* UNKNOWN > ./tools/setup-service: *No copyright* UNKNOWN > ./api-ref/source/actions.inc: *No copyright* UNKNOWN > ./api-ref/source/build_info.inc: *No copyright* UNKNOWN > ./api-ref/source/cluster_policies.inc: *No copyright* UNKNOWN > ./api-ref/source/clusters.inc: *No copyright* UNKNOWN > ./api-ref/source/conf.py: *No copyright* Apache (v2.0) GENERATED FILE > ./api-ref/source/events.inc: *No copyright* UNKNOWN > ./api-ref/source/index.rst: *No copyright* UNKNOWN > ./api-ref/source/nodes.inc: *No copyright* UNKNOWN > ./api-ref/source/parameters.yaml: *No copyright* UNKNOWN > ./api-ref/source/policies.inc: *No copyright* UNKNOWN > ./api-ref/source/policy_types.inc: *No copyright* UNKNOWN > ./api-ref/source/profile_types.inc: *No copyright* UNKNOWN > ./api-ref/source/profiles.inc: *No copyright* UNKNOWN > ./api-ref/source/receivers.inc: *No copyright* UNKNOWN > ./api-ref/source/services.inc: *No copyright* UNKNOWN > ./api-ref/source/status.yaml: *No copyright* UNKNOWN > ./api-ref/source/versions.inc: *No copyright* UNKNOWN > ./api-ref/source/webhooks.inc: *No copyright* UNKNOWN > ./contrib/vdu/README.rst: *No copyright* UNKNOWN > ./contrib/vdu/requirements.txt: *No copyright* UNKNOWN > ./contrib/vdu/setup.cfg: *No copyright* Apache > ./contrib/vdu/setup.py: Apache (v2.0) GENERATED FILE > ./devstack/lib/senlin: *No copyright* UNKNOWN > ./doc/source/conf.py: *No copyright* Apache (v2.0) > ./doc/source/configuration.rst: *No copyright* UNKNOWN > ./doc/source/glossary.rst: *No copyright* Apache (v2.0) > ./doc/source/index.rst: *No copyright* Apache (v2.0) > ./doc/source/install.rst: *No copyright* Apache (v2.0) > ./doc/source/overview.rst: *No copyright* Apache (v2.0) > ./doc/specs/README.rst: *No copyright* UNKNOWN > ./doc/specs/template.rst: *No copyright* CC by (v3.0) GENERATED FILE > ./doc/specs/workflow-recover.rst: *No copyright* CC by (v3.0) > ./etc/senlin/README-senlin.conf.txt: *No copyright* UNKNOWN > ./etc/senlin/api-paste.ini: *No copyright* UNKNOWN > ./etc/senlin/policy.json: *No copyright* UNKNOWN > ./examples/policies/affinity_policy.yaml: *No copyright* UNKNOWN > ./examples/policies/batch_policy.yaml: *No copyright* UNKNOWN > ./examples/policies/deletion_policy.yaml: *No copyright* UNKNOWN > ./examples/policies/health_policy_event.yaml: *No copyright* UNKNOWN > ./examples/policies/health_policy_poll.yaml: *No copyright* UNKNOWN > ./examples/policies/lb_policy.yaml: *No copyright* UNKNOWN > ./examples/policies/placement_region.yaml: *No copyright* UNKNOWN > ./examples/policies/placement_zone.yaml: *No copyright* UNKNOWN > ./examples/policies/scaling_policy.yaml: *No copyright* UNKNOWN > ./examples/profiles/README.rst: *No copyright* UNKNOWN > ./rally-jobs/plugins/senlin_plugin.py: *No copyright* Apache (v2.0) > ./releasenotes/notes/action-policy-optimization-06ea45eb3dcbe33a.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/affinity-policy-fix-72ae92dc8ffcff00.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/api-ref-fixes-19bc963430c32ecf.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/az-info-9344b8d54c0b2665.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/batch-scheduling-ca5d98d41fc72973.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/capacity-calculation-4fd389ff12107dfb.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/clean-actions-for-cluster-node-438ca5268e7fd258.yaml: > *No copyright* UNKNOWN > ./releasenotes/notes/cluster-check-interval-b01e8140cc83760e.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/cluster-collect-90e460c7bfede347.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/cluster-delete-conflict-94261706eb29e9bb.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/cluster-desired-capacity-d876347f69b04b4f.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/cluster-node-dependents-3bdbebd773d276d1.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/cluster-node-status-e7fced162b415452.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/cluster-ops-433a5aa608a0eb7f.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/cluster-recover-d87d429873b376db.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/cluster-status-update-dd9133092aef05ab.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/compute-instance-fencing-63b931cdf35b127c.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/config-doc-cb8b37e360422301.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/container-ops-e57d096742202206.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/container-profile-152bf2908c70ffad.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/db-action-retries-d471fe85b4510afd.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/delete-batch-a16ee5ed2512eab7.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/deletion-policy-11bcb7c0e90bbfcc.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/deletion-policy-node-delete-dc70da377b2a4f77.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/destroy-nodes-after-remove-37bffdc35a9b7a96.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/doc-fixes-cd8c7006f8c66387.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/doc-fixes-e60bb1a486f67e0c.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/drop-py34-support-21e20efb9bf0b326.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/dynamic-timer-67f053499f4b32e2.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/enforce-multi-tenancy-ee27b9bfec7ba405.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/error-messages-bd8b5a6d12e2c4af.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/event-for-derived-actions-8bd44367fa683dbc.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/event-list-b268bb778efa9ee1.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/event-purge-db868a063e18eafb.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/event-table-change-dcb42c8b6d145fec.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-action-triggering-e880b02234028315.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-cluster-index-ae0060b6337d6d55.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/fix-cooldown-5082711989ecd536.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/fix-db-deadlock-1d2bdb9ce785734a.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/fix-delete-apis-bf9f47b5fcf8f3e6.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/fix-desired-when-omitted-e7ffc0aa72ab8cc9.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-dup-of-action-dump-0b95a07adf3ccdba.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-health-mgr-opts-99898614f37c5d74.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-network-error-handling-e78da90b6bc2319c.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-node-recover-5af129bf0688577d.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/fix-node-status-for-lb-fc7714da09bec2fb.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-recover-trigger-749600f500f7bf4a.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-registry-claim-5421dca1ed9b0783.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/fix-tag-for-stacks-2ef70be061e80253.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/forbid-cluster-deletion-a8b0f55aaf0aa106.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/gc-for-dead-engine-2246c714edc9a2df.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/health-check-interval-b3850c072600bfdf.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/health-lb-polling-32d83803c77cc1d8.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/health-manager-listener-8ddbe169e510031b.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/health-policy-actions-936db8bc3ed08aec.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/health-policy-properties-056d5b4aa63312c9.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/health-policy-suspend-7aa33fc981c0f2c9.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/health-reboot-9f74c263f7fb6767.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/heat-listener-b908d0988840e1f3.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/keystone-conformance-4e729da9e88b4fb3.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/lb-node-actions-95545338ae622f5c.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/lb-policy-02782a1b98142742.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/lb-support-to-recover-8f822d3c2665e225.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/lb-timeout-option-990ba1f359b5daab.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/lock-break-for-dead-service-0abd3d3ea333622c.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/message-receiver-3432826515f8e70c.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/metadata-query-profile-9c45d99db7b30207.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/more-policy-validation-ace6a4f890b2a500.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/more-server-operations-dd77e83b705c28f0.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/new-api-doc-f21eb0a9f53d7643.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/node-action-logic-4d3e94818cccaa3e.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/node-check-50d4b67796e17afb.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/node-check-before-recover-abf887a39ab0d355.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/node-create-affinity-ec126ccd3e9e0957.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/node-create-az-d886dea98a25229f.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/node-create-region-0cbac0918c703e27.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/node-op-api-a7bede34c51854ee.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/node-ops-115d9d64f6e261db.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/node-update-timestamp-43b9639e22267598.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/non-operation-recover-cf0f3c0ac62bb0f3.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/notification-operations-c7bdaa9b56e5011f.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/notification-support-a7e2ebc816bb4009.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/notification-transport-ae49e9cb1813cd96.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/nova-az-fccf8db758642d34.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/nova-metadata-fix-89b7a2e06c3ce59f.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/nova-server-addresses-fd8afddc3fb36a0c.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/nova-server-validation-60612c1185738104.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/nova-server-validation-d36dbcf64fb90a43.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/nova-update-opt-7372e4d189e483aa.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/nova-update-validation-dca7de984c2071d1.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/ocata-2-c2e184a0b76231e8.yaml: *No copyright* UNKNOWN > ./releasenotes/notes/options-shuffled-29c6cfac72aaf8ff.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/oslo-versioned-object-support-cc9463490306c26f.yaml: > *No copyright* UNKNOWN > ./releasenotes/notes/param-check-cluster-update-58d4712a33f74c6e.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/path-check-collect-1e542762cbcd65d2.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/policy-enabling-61d0c38aecf314eb.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/policy-performance-4d2fa57ccc45bbf1.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/policy-validate-04cbc74d2c025fcc.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/policy-validation-477a103aa83835f9.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/profile-only-update-5cdb3ae46a8139a8.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/profile-type-ops-1f0f2e6e6b5b1999.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/profile-validate-45a9bc520880bc6b.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/receiver-create-check-2225f536f5150065.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/receiver-create-trust-bd5fdeb059e68330.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/receiver-filter-by-user-ab35a2ab8e2690d1.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/remove-bdm-v1-4533677f3bca3c5d.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/resize-params-ab4942dc11f05d9a.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/scaling-policy-validation-e2a1d3049e03c316.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/scheduler-enhancement-09f86efe4dde4051.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/secure-password-e60243ae2befbbf6.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/senlin-osprofiler-fc8cb7161bdb1a6e.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/server-image-id-27c1619fa818c6a0.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/service-cleanup-afacddfacd7b4dcd.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/service-status-report-625bc25b89907e07.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/setup-script-648e9bfb89bb6255.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/support-status-f7383a53ddcae908.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/tempest-api-test-support-c86091a7ba5fb789.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/tempest-functional-test-383dad4d9acff97e.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/template-url-19075b68d9a35a80.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/tools-setup-d73e3298328c5355.yaml: *No copyright* > UNKNOWN > ./releasenotes/notes/versioned-rpc-requests-2df5d878c279e933.yaml: *No > copyright* UNKNOWN > ./releasenotes/notes/zaqar-support-470e824b7737e939.yaml: *No copyright* > UNKNOWN > ./releasenotes/source/conf.py: *No copyright* Apache (v2.0) GENERATED FILE > ./releasenotes/source/index.rst: *No copyright* Apache (v2.0) > ./releasenotes/source/mitaka.rst: *No copyright* UNKNOWN > ./releasenotes/source/newton.rst: *No copyright* UNKNOWN > ./releasenotes/source/ocata.rst: *No copyright* UNKNOWN > ./releasenotes/source/unreleased.rst: *No copyright* UNKNOWN > ./senlin/cmd/__init__.py: *No copyright* Apache (v2.0) > ./senlin/cmd/api.py: *No copyright* Apache (v2.0) > ./senlin/cmd/api_wsgi.py: *No copyright* Apache (v2.0) > ./senlin/cmd/engine.py: *No copyright* Apache (v2.0) > ./senlin/cmd/manage.py: *No copyright* Apache (v2.0) > ./senlin/common/config.py: *No copyright* Apache (v2.0) > ./senlin/common/constraints.py: *No copyright* Apache (v2.0) > ./senlin/common/consts.py: *No copyright* Apache (v2.0) > ./senlin/common/context.py: *No copyright* Apache (v2.0) > ./senlin/common/exception.py: Apache (v2.0) > ./senlin/common/i18n.py: Apache (v2.0) > ./senlin/common/messaging.py: *No copyright* Apache (v2.0) > ./senlin/common/policy.py: *No copyright* Apache (v2.0) > ./senlin/common/profiler.py: *No copyright* Apache (v2.0) > ./senlin/common/scaleutils.py: *No copyright* Apache (v2.0) > ./senlin/common/schema.py: *No copyright* Apache (v2.0) > ./senlin/common/utils.py: *No copyright* Apache (v2.0) > ./senlin/db/api.py: *No copyright* Apache (v2.0) > ./senlin/db/utils.py: *No copyright* Apache (v2.0) > ./senlin/drivers/base.py: *No copyright* Apache (v2.0) > ./senlin/engine/cluster.py: *No copyright* Apache (v2.0) > ./senlin/engine/cluster_policy.py: *No copyright* Apache (v2.0) > ./senlin/engine/dispatcher.py: *No copyright* Apache (v2.0) > ./senlin/engine/environment.py: *No copyright* Apache (v2.0) > ./senlin/engine/event.py: *No copyright* Apache (v2.0) > ./senlin/engine/health_manager.py: *No copyright* Apache (v2.0) > ./senlin/engine/node.py: *No copyright* Apache (v2.0) > ./senlin/engine/parser.py: *No copyright* Apache (v2.0) > ./senlin/engine/registry.py: *No copyright* Apache (v2.0) > ./senlin/engine/scheduler.py: *No copyright* Apache (v2.0) > ./senlin/engine/senlin_lock.py: *No copyright* Apache (v2.0) > ./senlin/engine/service.py: *No copyright* Apache (v2.0) > ./senlin/events/base.py: *No copyright* Apache (v2.0) > ./senlin/events/database.py: *No copyright* Apache (v2.0) > ./senlin/events/message.py: *No copyright* Apache (v2.0) > ./senlin/hacking/checks.py: *No copyright* Apache (v2.0) > ./senlin/objects/__init__.py: *No copyright* Apache (v2.0) > ./senlin/objects/action.py: *No copyright* Apache (v2.0) > ./senlin/objects/base.py: *No copyright* Apache (v2.0) > ./senlin/objects/cluster.py: *No copyright* Apache (v2.0) > ./senlin/objects/cluster_lock.py: *No copyright* Apache (v2.0) > ./senlin/objects/cluster_policy.py: *No copyright* Apache (v2.0) > ./senlin/objects/credential.py: *No copyright* Apache (v2.0) > ./senlin/objects/dependency.py: *No copyright* Apache (v2.0) > ./senlin/objects/event.py: *No copyright* Apache (v2.0) > ./senlin/objects/fields.py: *No copyright* Apache (v2.0) > ./senlin/objects/health_registry.py: *No copyright* Apache (v2.0) > ./senlin/objects/node.py: *No copyright* Apache (v2.0) > ./senlin/objects/node_lock.py: *No copyright* Apache (v2.0) > ./senlin/objects/notification.py: *No copyright* Apache (v2.0) > ./senlin/objects/policy.py: *No copyright* Apache (v2.0) > ./senlin/objects/profile.py: *No copyright* Apache (v2.0) > ./senlin/objects/receiver.py: *No copyright* Apache (v2.0) > ./senlin/objects/service.py: *No copyright* Apache (v2.0) > ./senlin/policies/affinity_policy.py: *No copyright* Apache (v2.0) > ./senlin/policies/base.py: *No copyright* Apache (v2.0) > ./senlin/policies/batch_policy.py: *No copyright* Apache (v2.0) > ./senlin/policies/deletion_policy.py: *No copyright* Apache (v2.0) > ./senlin/policies/health_policy.py: *No copyright* Apache (v2.0) > ./senlin/policies/lb_policy.py: *No copyright* Apache (v2.0) > ./senlin/policies/region_placement.py: *No copyright* Apache (v2.0) > ./senlin/policies/scaling_policy.py: *No copyright* Apache (v2.0) > ./senlin/policies/zone_placement.py: *No copyright* Apache (v2.0) > ./senlin/profiles/base.py: *No copyright* Apache (v2.0) > ./senlin/rpc/client.py: *No copyright* Apache (v2.0) > ./api-ref/source/samples/action-get-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/actions-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/build-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-add-nodes-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-attach-policy-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-attrs-list-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-check-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-create-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-create-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-del-nodes-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-detach-policy-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-operation-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-policies-list-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-policy-show-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-recover-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-replace-nodes-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-resize-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-scale-in-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-scale-out-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-update-policy-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/cluster-update-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/cluster-update-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/clusters-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/event-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/events-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-adopt-preview-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/node-adopt-preview-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/node-adopt-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-adopt-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-check-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-create-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-create-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-operation-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-recover-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/node-update-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-create-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-create-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-type-show-response-v1.5.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/policy-type-show-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/policy-types-list-response-v1.5.json: *No > copyright* UNKNOWN > ./api-ref/source/samples/policy-types-list-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/policy-update-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-update-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-validate-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/policy-validate-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/profile-create-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/profile-create-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/profile-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/profile-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/profile-type-ops-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/profile-type-show-response-v1.5.json: *No > copyright* UNKNOWN > ./api-ref/source/samples/profile-type-show-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/profile-types-list-response-v1.5.json: *No > copyright* UNKNOWN > ./api-ref/source/samples/profile-types-list-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/profile-update-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/profile-update-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/profile-validate-request.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/profile-validate-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/receiver-create-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/receiver-create-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/receiver-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/receiver-update-request.json: *No copyright* UNKNOWN > ./api-ref/source/samples/receiver-update-response.json: *No copyright* > UNKNOWN > ./api-ref/source/samples/receivers-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/services-list-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/version-show-response.json: *No copyright* UNKNOWN > ./api-ref/source/samples/versions-list-response.json: *No copyright* UNKNOWN > ./contrib/vdu/examples/vdu.yaml: *No copyright* UNKNOWN > ./contrib/vdu/vdu/server.py: *No copyright* Apache (v2.0) > ./doc/source/developer/action.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/api_microversion.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/authorization.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/cluster.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/event_dispatcher.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/node.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/osprofiler.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/plugin_guide.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policy.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policy_type.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/profile.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/profile_type.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/receiver.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/reviews.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/testing.rst: *No copyright* Apache (v2.0) > ./doc/source/man/index.rst: *No copyright* UNKNOWN > ./doc/source/man/senlin-api.rst: *No copyright* UNKNOWN > ./doc/source/man/senlin-engine.rst: *No copyright* UNKNOWN > ./doc/source/man/senlin-manage.rst: *No copyright* UNKNOWN > ./doc/source/scenarios/affinity.rst: *No copyright* Apache (v2.0) > ./doc/source/scenarios/autoscaling_ceilometer.rst: *No copyright* Apache > (v2.0) > ./doc/source/scenarios/autoscaling_heat.rst: *No copyright* Apache (v2.0) > ./doc/source/scenarios/autoscaling_overview.rst: *No copyright* Apache (v2.0) > ./doc/source/scenarios/ex_lbas.yaml: *No copyright* UNKNOWN > ./doc/source/tutorial/autoscaling.rst: *No copyright* Apache (v2.0) > ./doc/source/tutorial/basics.rst: *No copyright* Apache (v2.0) > ./doc/source/tutorial/heat.rst: *No copyright* Apache (v2.0) > ./doc/source/tutorial/policies.rst: *No copyright* Apache (v2.0) > ./doc/source/tutorial/receivers.rst: *No copyright* Apache (v2.0) > ./doc/source/user/actions.rst: *No copyright* Apache (v2.0) > ./doc/source/user/bindings.rst: *No copyright* Apache (v2.0) > ./doc/source/user/clusters.rst: *No copyright* Apache (v2.0) > ./doc/source/user/events.rst: *No copyright* Apache (v2.0) GENERATED FILE > ./doc/source/user/membership.rst: *No copyright* Apache (v2.0) > ./doc/source/user/nodes.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policies.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types.rst: *No copyright* Apache (v2.0) > ./doc/source/user/profile_types.rst: *No copyright* Apache (v2.0) > ./doc/source/user/profiles.rst: *No copyright* Apache (v2.0) > ./doc/source/user/receivers.rst: *No copyright* Apache (v2.0) > ./doc/specs/approved/README.rst: *No copyright* UNKNOWN > ./doc/specs/approved/container-cluster.rst: *No copyright* Apache (v2.0) > ./doc/specs/approved/generic-event.rst: *No copyright* CC by (v3.0) > GENERATED FILE > ./doc/specs/rejected/README.rst: *No copyright* UNKNOWN > ./examples/policies/WIP/batching_1_1_0.yaml: *No copyright* UNKNOWN > ./examples/policies/WIP/health_policy_lb.yaml: *No copyright* UNKNOWN > ./examples/policies/WIP/lb_policy_aws.spec: *No copyright* UNKNOWN > ./examples/profiles/docker_container/docker_basic.yaml: *No copyright* > UNKNOWN > ./examples/profiles/nova_server/cirros_basic.yaml: *No copyright* UNKNOWN > ./senlin/api/common/serializers.py: *No copyright* Apache (v2.0) > ./senlin/api/common/util.py: *No copyright* Apache (v2.0) > ./senlin/api/common/version_request.py: *No copyright* Apache (v2.0) > ./senlin/api/common/versioned_method.py: *No copyright* Apache (v2.0) > ./senlin/api/common/wsgi.py: *No copyright* Apache (v2.0) > ./senlin/api/middleware/__init__.py: *No copyright* Apache (v2.0) > ./senlin/api/middleware/context.py: *No copyright* Apache (v2.0) > ./senlin/api/middleware/fault.py: *No copyright* Apache (v2.0) > ./senlin/api/middleware/trust.py: *No copyright* Apache (v2.0) > ./senlin/api/middleware/version_negotiation.py: *No copyright* Apache (v2.0) > ./senlin/api/middleware/webhook.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/history.rst: *No copyright* UNKNOWN > ./senlin/api/openstack/versions.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/api.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migration.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/models.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/types.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/utils.py: *No copyright* Apache (v2.0) > ./senlin/drivers/container/docker_v1.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/__init__.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/ceilometer_v2.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/cinder_v2.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/glance_v2.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/heat_v1.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/keystone_v3.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/lbaas.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/mistral_v2.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/neutron_v2.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/nova_v2.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/sdk.py: *No copyright* Apache (v2.0) > ./senlin/drivers/openstack/zaqar_v2.py: *No copyright* Apache (v2.0) > ./senlin/engine/actions/base.py: *No copyright* Apache (v2.0) > ./senlin/engine/actions/cluster_action.py: *No copyright* Apache (v2.0) > ./senlin/engine/actions/custom_action.py: *No copyright* Apache (v2.0) > ./senlin/engine/actions/node_action.py: *No copyright* Apache (v2.0) > ./senlin/engine/receivers/base.py: *No copyright* Apache (v2.0) > ./senlin/engine/receivers/message.py: *No copyright* Apache (v2.0) > ./senlin/engine/receivers/webhook.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/actions.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/build_info.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/cluster_policies.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/clusters.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/credentials.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/events.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/nodes.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/policies.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/policy_type.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/profile_type.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/profiles.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/receivers.py: *No copyright* Apache (v2.0) > ./senlin/objects/requests/webhooks.py: *No copyright* Apache (v2.0) > ./senlin/profiles/container/docker.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/README.rst: *No copyright* UNKNOWN > ./senlin/tests/tempest/README.rst: *No copyright* UNKNOWN > ./senlin/tests/tempest/base.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/config.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/plugin.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/post_test_hook.sh: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/pre_test_hook.sh: *No copyright* Apache (v2.0) > ./senlin/tests/unit/__init__.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/fakes.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_constraints.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_context.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_exception.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_messaging.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_policy.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_scaleutils.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_schema.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_common_utils.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_hacking.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/test_rpc_client.py: *No copyright* Apache (v2.0) > ./doc/source/developer/policies/affinity_v1.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policies/deletion_v1.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policies/health_v1.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policies/load_balance_v1.rst: *No copyright* Apache > (v2.0) > ./doc/source/developer/policies/region_v1.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policies/scaling_v1.rst: *No copyright* Apache (v2.0) > ./doc/source/developer/policies/zone_v1.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types/affinity.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types/batch.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types/deletion.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types/health.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types/load_balancing.rst: *No copyright* Apache > (v2.0) > ./doc/source/user/policy_types/region_placement.rst: *No copyright* Apache > (v2.0) > ./doc/source/user/policy_types/scaling.rst: *No copyright* Apache (v2.0) > ./doc/source/user/policy_types/zone_placement.rst: *No copyright* Apache > (v2.0) > ./examples/profiles/heat_stack/nova_server/heat_stack_nova_server.yaml: *No > copyright* UNKNOWN > ./examples/profiles/heat_stack/nova_server/nova_server_template.yaml: *No > copyright* UNKNOWN > ./examples/profiles/heat_stack/random_string/heat_stack_random_string.yaml: > *No copyright* UNKNOWN > ./examples/profiles/heat_stack/random_string/random_string_template.yaml: > *No copyright* UNKNOWN > ./senlin/api/openstack/v1/actions.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/build_info.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/cluster_policies.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/clusters.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/events.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/nodes.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/policies.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/policy_types.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/profile_types.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/profiles.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/receivers.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/router.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/services.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/version.py: *No copyright* Apache (v2.0) > ./senlin/api/openstack/v1/webhooks.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/README: *No copyright* UNKNOWN > ./senlin/db/sqlalchemy/migrate_repo/manage.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/migrate.cfg: *No copyright* UNKNOWN > ./senlin/locale/zh_CN/LC_MESSAGES/senlin-log-critical.po: *No copyright* > UNKNOWN > ./senlin/locale/zh_CN/LC_MESSAGES/senlin-log-error.po: *No copyright* UNKNOWN > ./senlin/locale/zh_CN/LC_MESSAGES/senlin-log-warning.po: *No copyright* > UNKNOWN > ./senlin/profiles/os/heat/stack.py: *No copyright* Apache (v2.0) > ./senlin/profiles/os/nova/server.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/__init__.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/heat_v1.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/lbaas.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/mistral_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/neutron_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/nova_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/drivers/openstack/sdk.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/api/base.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/common/clustering_client.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/common/compute_client.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/common/constants.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/common/messaging_client.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/common/network_client.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/common/utils.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/functional/base.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/functional/test_batch_policy.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/functional/test_cluster_basic.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/functional/test_cluster_membership.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/functional/test_cluster_scaling.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/functional/test_lb_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/functional/test_node_basic.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/functional/test_receiver.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/functional/test_scaling_policy.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/integration/base.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/integration/test_heat_stack_cluster.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/integration/test_nova_server_cluster.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/integration/test_receiver.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/shared.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/common/base.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/common/utils.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/shared.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_action_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_cluster_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_cluster_policy_api.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/db/test_cred_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_event_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_lock_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_node_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_policy_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_profile_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_receiver_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_registry_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_service_api.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_sqlalchemy_types.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/db/test_sqlalchemy_utils.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_ceilometer_v2.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/drivers/test_cinder_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_docker_v1.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_driver.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_glance_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_heat_v1.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_keystone_v3.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_lbaas_driver.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/drivers/test_mistral_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_neutron_v2_driver.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/drivers/test_nova_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_sdk.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/drivers/test_zaqar_v2.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_cluster.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_cluster_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/test_dispatcher.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_engine_parser.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/test_engine_startstop.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/test_environment.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_event.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_health_manager.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/test_node.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_registry.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_scheduler.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/test_senlin_lock.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/events/test_base.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/events/test_database.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/events/test_message.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_action.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_base.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_cluster.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_cluster_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/test_event.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_fields.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_health_registry.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/test_node.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_notification.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/test_policy.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_profile.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/objects/test_receiver.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/policies/test_affinity.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/policies/test_batch_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/policies/test_deletion_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/policies/test_health_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/policies/test_lb_policy.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/policies/test_policy.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/policies/test_region_placement.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/policies/test_scaling_policy.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/policies/test_zone_placement.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/profiles/test_container_docker.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/profiles/test_heat_stack.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/profiles/test_nova_server.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/profiles/test_nova_server_update.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/profiles/test_nova_server_validate.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/profiles/test_profile_base.py: *No copyright* Apache > (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/001_first_version.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/002_service_table.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/003_action_tenant.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/004_health_registry.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/005_event_column_name.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/ > 006_node_cluster_dependents_column.py: *No copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/007_placeholder.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/008_placeholder.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/009_placeholder.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/010_user_project_length.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/011_registry_enable.py: *No > copyright* Apache (v2.0) > ./senlin/db/sqlalchemy/migrate_repo/versions/012_cluster_config.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/actions/test_action_list.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/actions/test_action_list_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/actions/test_action_show.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/actions/test_action_show_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/api_versions/test_api_version_show.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/api_versions/test_api_version_show_negative.py: > *No copyright* Apache (v2.0) > ./senlin/tests/tempest/api/api_versions/test_api_versions_list.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/build_info/test_build_info.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/cluster_policies/test_cluster_policy_list.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/cluster_policies/ > test_cluster_policy_list_negative.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/api/cluster_policies/test_cluster_policy_show.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/cluster_policies/ > test_cluster_policy_show_negative.py: *No copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_action_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_add_nodes.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_check.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_collect.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_create.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_create_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_del_nodes.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_delete.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_delete_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_list.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_list_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_policy_attach.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_policy_detach.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_policy_update.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_recover.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_replace_nodes.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_resize.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_scale_in.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_scale_out.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_show.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_show_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_update.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_update_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/clusters/test_cluster_update_profile.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/events/test_event_list.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/events/test_event_list_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/events/test_event_show.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/events/test_event_show_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_action_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_check.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_create.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_create_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_delete.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_delete_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_list.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_list_negative.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_operation.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_recover.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_show.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_show_negative.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_update.py: *No copyright* Apache > (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_update_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/nodes/test_node_update_profile.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_create.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_create_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_delete.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_delete_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_list.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_list_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_show.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_show_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_update.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_update_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_validate.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/policies/test_policy_validate_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policy_types/test_policy_type_list.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policy_types/test_policy_type_show.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/policy_types/test_policy_type_show_negative.py: > *No copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profile_types/test_profile_type_list.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profile_types/test_profile_type_show.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profile_types/test_profile_type_show_negative.py: > *No copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_create.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_create_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_delete.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_delete_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_list.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_list_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_show.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_show_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_update.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_update_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_validate.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/profiles/test_profile_validate_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_create.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_create_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_delete.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_delete_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_list.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_list_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_show.py: *No copyright* > Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_receiver_show_negative.py: *No > copyright* Apache (v2.0) > ./senlin/tests/tempest/api/receivers/test_webhook_trigger.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/api/common/test_serializers.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/common/test_util.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/api/common/test_version_request.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/api/common/test_wsgi.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/api/middleware/test_context.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/middleware/test_fault.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/middleware/test_middleware_filters.py: *No > copyright* Apache (v2.0) > ./senlin/tests/unit/api/middleware/test_trust.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/middleware/test_version_negotiation.py: *No > copyright* Apache (v2.0) > ./senlin/tests/unit/api/middleware/test_webhook.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/test_versions.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_action_base.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_add_nodes.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_attach_policy.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_check.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_cluster_action.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_create.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_custom_action.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_del_nodes.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_delete.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_node_action.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_operation.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_recover.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_replace_nodes.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_resize.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_scale_in.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_scale_out.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_update.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/actions/test_update_policy.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/actions/test_wait.py: *No copyright* Apache (v2.0) > ./senlin/tests/unit/engine/receivers/test_message.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/receivers/test_receiver.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/receivers/test_webhook.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_actions.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_cluster_op.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_cluster_policies.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/service/test_clusters.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_credentials.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/service/test_events.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_nodes.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_policies.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_policy_types.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/service/test_profile_types.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/engine/service/test_profiles.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_receivers.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/engine/service/test_webhooks.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_actions.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_cluster_policies.py: *No > copyright* Apache (v2.0) > ./senlin/tests/unit/objects/requests/test_clusters.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_credentials.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/objects/requests/test_events.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_nodes.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_policies.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_policy_type.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/objects/requests/test_profile_type.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/objects/requests/test_profiles.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/objects/requests/test_receivers.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/objects/requests/test_webhooks.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/middleware/policy/check_admin.json: *No copyright* > UNKNOWN > ./senlin/tests/unit/api/middleware/policy/notallowed.json: *No copyright* > UNKNOWN > ./senlin/tests/unit/api/openstack/v1/test_actions.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_buildinfo.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_cluster_policies.py: *No > copyright* Apache (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_clusters.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_events.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_nodes.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_policies.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_policy_types.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_profile_types.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_profiles.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_receivers.py: *No copyright* > Apache (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_router.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_services.py: Apache (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_version.py: *No copyright* Apache > (v2.0) > ./senlin/tests/unit/api/openstack/v1/test_webhooks.py: *No copyright* Apache > (v2.0) > > The project is licensed using the Apache 2.0 license. I see some files are > licensed using the Creative Commons Attribution 3.0 Unported License, but > those are specs and I assume they will not be included in the package. I think 3.0 is wrong. Will update it 2.0.
copyrights have been removed
(In reply to XueFeng Liu from comment #6) > copyrights have been removed Thanks. Initial spec is now completing checks at: https://review.rdoproject.org/r/#/c/7470/
(In reply to Christopher Brown from comment #7) > (In reply to XueFeng Liu from comment #6) > > copyrights have been removed > > Thanks. Initial spec is now completing checks at: > > https://review.rdoproject.org/r/#/c/7470/ Great:)
Package reviewer is the assignee in package reviews, not packager.
fedora-review results: Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. Note: License file license.png is not marked as %license See: http://fedoraproject.org/wiki/Packaging/LicensingGuidelines#License_Text ===== MUST items ===== Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Apache (v2.0)", "*No copyright* Apache", "*No copyright* CC by (v3.0)", "Unknown or generated", "*No copyright* Apache (v2.0)". 302 files have unknown license. Detailed output of licensecheck in /tmp /openstack-senlin/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: Package must own all directories that it creates. Note: Directories without known owners: /usr/lib/systemd/system, /etc/logrotate.d, /usr/lib/python2.7/site-packages/senlin/tests, /usr/lib/systemd [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: The spec file handles locales properly. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [x]: Package contains systemd file(s) if in need. [x]: Package is not known to require an ExcludeArch tag. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: Package requires other packages for directories it uses. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: %config files are marked noreplace or the reason is justified. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: No %config files under /usr. [x]: Package does not use a name that already exists. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 0 bytes in 0 files. [x]: Packages must not store files under /srv, /opt or /usr/local Python: [x]: Python eggs must not download any dependencies during the build process. [x]: A package which is used by another package via an egg interface should provide egg info. [x]: Package meets the Packaging Guidelines::Python [x]: Package contains BR: python2-devel or python3-devel [x]: Binary eggs must be removed in %prep ===== SHOULD items ===== Generic: [x]: Avoid bundling fonts in non-fonts packages. Note: Package contains font files [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [x]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in python- senlin , python-senlin-tests-tempest , python-senlin-tests-unit , openstack-senlin-common , openstack-senlin-doc , openstack-senlin-api , openstack-senlin-engine [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Scriptlets must be sane, if used. [x]: SourceX tarball generation or download is documented. Note: Package contains tarball without URL, check comments [x]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Spec use %global instead of %define unless justified. Note: %define requiring justification: %define upstream_version 4.0.0.0b3.dev57 [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: SourceX is a working URL. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). Rpmlint ------- Checking: python-senlin-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm python-senlin-tests-tempest-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm python-senlin-tests-unit-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm openstack-senlin-common-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm openstack-senlin-doc-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm openstack-senlin-api-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm openstack-senlin-engine-4.0.0-0.20170718122527.eb26b48.el7.centos.noarch.rpm openstack-senlin-4.0.0-0.20170718122527.eb26b48.el7.centos.src.rpm python-senlin.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous python-senlin.noarch: E: no-changelogname-tag python-senlin.noarch: W: no-documentation python-senlin.noarch: E: wrong-script-interpreter /usr/lib/python2.7/site-packages/senlin/cmd/engine.py /usr/bin/env python python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/cmd/engine.py 644 /usr/bin/env python python-senlin.noarch: E: wrong-script-interpreter /usr/lib/python2.7/site-packages/senlin/db/sqlalchemy/migrate_repo/manage.py /usr/bin/env python python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/db/sqlalchemy/migrate_repo/manage.py 644 /usr/bin/env python python-senlin.noarch: E: wrong-script-interpreter /usr/lib/python2.7/site-packages/senlin/cmd/api_wsgi.py /usr/bin/env python python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/cmd/api_wsgi.py 644 /usr/bin/env python python-senlin.noarch: E: wrong-script-interpreter /usr/lib/python2.7/site-packages/senlin/cmd/api.py /usr/bin/env python python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/cmd/api.py 644 /usr/bin/env python python-senlin-tests-tempest.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous python-senlin-tests-tempest.noarch: E: no-changelogname-tag python-senlin-tests-tempest.noarch: W: no-documentation python-senlin-tests-unit.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous python-senlin-tests-unit.noarch: E: no-changelogname-tag python-senlin-tests-unit.noarch: W: no-documentation openstack-senlin-common.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous openstack-senlin-common.noarch: E: no-changelogname-tag openstack-senlin-common.noarch: W: no-documentation openstack-senlin-common.noarch: W: non-standard-uid /var/log/senlin senlin openstack-senlin-common.noarch: E: non-standard-dir-perm /var/log/senlin 750 openstack-senlin-common.noarch: E: incoherent-logrotate-file /etc/logrotate.d/openstack-senlin openstack-senlin-common.noarch: W: non-standard-gid /etc/senlin/policy.json senlin openstack-senlin-common.noarch: E: non-readable /etc/senlin/policy.json 640 openstack-senlin-common.noarch: W: non-standard-gid /usr/share/senlin/senlin-dist.conf senlin openstack-senlin-common.noarch: E: non-readable /usr/share/senlin/senlin-dist.conf 640 openstack-senlin-common.noarch: W: non-standard-gid /etc/senlin/senlin.conf senlin openstack-senlin-common.noarch: E: non-readable /etc/senlin/senlin.conf 640 openstack-senlin-common.noarch: W: non-standard-gid /etc/senlin/api-paste.ini senlin openstack-senlin-common.noarch: E: non-readable /etc/senlin/api-paste.ini 640 openstack-senlin-common.noarch: W: no-manual-page-for-binary senlin-wsgi-api openstack-senlin-common.noarch: W: no-manual-page-for-binary senlin-manage openstack-senlin-doc.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous openstack-senlin-doc.noarch: E: no-changelogname-tag openstack-senlin-api.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous openstack-senlin-api.noarch: E: no-changelogname-tag openstack-senlin-api.noarch: W: no-documentation openstack-senlin-api.noarch: W: no-manual-page-for-binary senlin-api openstack-senlin-engine.noarch: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous openstack-senlin-engine.noarch: E: no-changelogname-tag openstack-senlin-engine.noarch: W: no-documentation openstack-senlin-engine.noarch: W: no-manual-page-for-binary senlin-engine openstack-senlin.src: W: spelling-error %description -l en_US homogenous -> homogeneous, homologous, endogenous openstack-senlin.src: E: no-changelogname-tag openstack-senlin.src: W: invalid-url Source0: senlin-4.0.0.0b3.dev57-0.20170718122527.eb26b48.tar.gz 8 packages and 0 specfiles checked; 22 errors, 24 warnings. Rpmlint (installed packages) ---------------------------- python-senlin-tests-tempest.noarch: E: no-changelogname-tag python-senlin-tests-tempest.noarch: W: no-documentation python-senlin.noarch: E: no-changelogname-tag python-senlin.noarch: W: no-documentation python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/db/sqlalchemy/migrate_repo/manage.py 0644L /usr/bin/env python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/cmd/engine.py 0644L /usr/bin/env python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/cmd/api_wsgi.py 0644L /usr/bin/env python-senlin.noarch: E: non-executable-script /usr/lib/python2.7/site-packages/senlin/cmd/api.py 0644L /usr/bin/env openstack-senlin-common.noarch: E: no-changelogname-tag openstack-senlin-common.noarch: W: no-documentation openstack-senlin-common.noarch: W: non-standard-gid /etc/senlin/policy.json senlin openstack-senlin-common.noarch: E: non-readable /etc/senlin/policy.json 0640L openstack-senlin-common.noarch: W: non-standard-gid /usr/share/senlin/senlin-dist.conf senlin openstack-senlin-common.noarch: E: non-readable /usr/share/senlin/senlin-dist.conf 0640L openstack-senlin-common.noarch: W: non-standard-gid /etc/senlin/api-paste.ini senlin openstack-senlin-common.noarch: E: non-readable /etc/senlin/api-paste.ini 0640L openstack-senlin-common.noarch: E: incoherent-logrotate-file /etc/logrotate.d/openstack-senlin openstack-senlin-common.noarch: W: non-standard-gid /etc/senlin/senlin.conf senlin openstack-senlin-common.noarch: E: non-readable /etc/senlin/senlin.conf 0640L openstack-senlin-common.noarch: W: non-standard-uid /var/log/senlin senlin openstack-senlin-common.noarch: E: non-standard-dir-perm /var/log/senlin 0750L openstack-senlin-common.noarch: W: no-manual-page-for-binary senlin-manage openstack-senlin-common.noarch: W: no-manual-page-for-binary senlin-wsgi-api openstack-senlin-doc.noarch: E: no-changelogname-tag openstack-senlin-api.noarch: E: no-changelogname-tag openstack-senlin-api.noarch: W: only-non-binary-in-usr-lib openstack-senlin-api.noarch: W: no-documentation openstack-senlin-api.noarch: W: no-manual-page-for-binary senlin-api python-senlin-tests-unit.noarch: E: no-changelogname-tag python-senlin-tests-unit.noarch: W: no-documentation openstack-senlin-engine.noarch: E: no-changelogname-tag openstack-senlin-engine.noarch: W: only-non-binary-in-usr-lib openstack-senlin-engine.noarch: W: no-documentation openstack-senlin-engine.noarch: W: no-manual-page-for-binary senlin-engine 7 packages and 0 specfiles checked; 17 errors, 17 warnings. Requires -------- python-senlin-tests-tempest (rpmlib, GLIBC filtered): /bin/bash python(abi) python-senlin python-tempest python-senlin (rpmlib, GLIBC filtered): python(abi) python-babel python-docker python-eventlet python-jsonpath-rw python-jsonschema python-keystoneauth1 python-keystonemiddleware python-microversion-parse python-migrate python-openstacksdk python-oslo-config python-oslo-context python-oslo-db python-oslo-i18n python-oslo-log python-oslo-messaging python-oslo-middleware python-oslo-policy python-oslo-serialization python-oslo-service python-oslo-utils python-oslo-versionedobjects python-osprofiler python-paste-deploy python-pbr python-qpid python-requests python-routes python-six python-sqlalchemy python-stevedore python-webob openstack-senlin-common (rpmlib, GLIBC filtered): /bin/sh /usr/bin/python2 config(openstack-senlin-common) python-senlin openstack-senlin-doc (rpmlib, GLIBC filtered): openstack-senlin-api (rpmlib, GLIBC filtered): /bin/sh /usr/bin/python2 openstack-senlin-common python-senlin-tests-unit (rpmlib, GLIBC filtered): python(abi) python-mock python-os-testr python-oslotest python-senlin python-testrepository python-testscenarios python-testtools openstack-senlin-engine (rpmlib, GLIBC filtered): /bin/sh /usr/bin/python2 openstack-senlin-common Provides -------- python-senlin-tests-tempest: python-senlin-tests-tempest python-senlin: python-senlin openstack-senlin-common: config(openstack-senlin-common) openstack-senlin-common openstack-senlin-doc: openstack-senlin-doc openstack-senlin-api: openstack-senlin-api python-senlin-tests-unit: python-senlin-tests-unit openstack-senlin-engine: openstack-senlin-engine Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -m dlrn-master -rn openstack-senlin-4.0.0-0.20170718122527.eb26b48.el7.centos.src.rpm Buildroot used: dlrn-centos-master-x86_64-1 Active plugins: Python, Generic, Shell-api Disabled plugins: Java, C/C++, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6 Some comments about found issues: - License file license.png is not marked as %license: license file is LICENSE which has been included as %license, so it's correct. - Files reported as non-readable: /var/log/senlin, /etc/senlin/policy.json, /usr/share/senlin/senlin-dist.conf, /etc/senlin/senlin.conf and /etc/senlin/api-paste.ini . File permissions are correct from a security perspective, only root and senlin group has read permissions which is right: - no-changelogname-tag errors: this spec is for DLRN which does not use changelog. - non-executable-script: the files with this warning are not actually scripts but python files used by binaries. they wouldn't need shebang header but that should be fixed upstream. - wrong-script-interpreter: warning about using "/usr/bin/env python". See https://fedoraproject.org/wiki/Script_Interpreters_(draft) . This should be fixed upstream and it's not a blocker. - non-standard-dir-perm for /var/log/senlin. 0750 permissions mode is correct for this directory. - incoherent-logrotate-file: according to the error definition "The log file or directory name should be the same as the package name in lower case." logrotate file name is the same as package name, openstack-senlin so it seems correct. This package is APPROVED
Package merged, closing.