diff options
Diffstat (limited to 'lcm')
-rwxr-xr-x | lcm/docker/docker-env-conf.sh | 4 | ||||
-rw-r--r-- | lcm/lcm/pub/database/migrations/0001_initial.py | 358 | ||||
-rw-r--r-- | lcm/lcm/pub/database/migrations/__init__.py | 13 | ||||
-rw-r--r-- | lcm/lcm/pub/redisco/__init__.py | 26 | ||||
-rw-r--r-- | lcm/lcm/pub/redisco/containers.py | 27 |
5 files changed, 420 insertions, 8 deletions
diff --git a/lcm/docker/docker-env-conf.sh b/lcm/docker/docker-env-conf.sh index 44119a6f..dc51ba6a 100755 --- a/lcm/docker/docker-env-conf.sh +++ b/lcm/docker/docker-env-conf.sh @@ -44,13 +44,9 @@ clean_sf_cache(){ rm -rf /tmp/* } -patch_redisco_2py3(){ - sed -i 's/raise KeyError, value/raise KeyError(value)/g' /usr/local/lib/python3.6/site-packages/redisco/containers.py -} install_sf wait add_user config_logdir -patch_redisco_2py3 clean_sf_cache diff --git a/lcm/lcm/pub/database/migrations/0001_initial.py b/lcm/lcm/pub/database/migrations/0001_initial.py new file mode 100644 index 00000000..eb452f24 --- /dev/null +++ b/lcm/lcm/pub/database/migrations/0001_initial.py @@ -0,0 +1,358 @@ +# Copyright 2017 ZTE Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='CPInstModel', + fields=[ + ('cpinstanceid', models.CharField(db_column='CPINSTANCEID', max_length=255, primary_key=True, serialize=False)), + ('cpdid', models.CharField(db_column='CPDID', max_length=255)), + ('cpinstancename', models.CharField(db_column='CPINSTANCENAME', max_length=255)), + ('vlinstanceid', models.CharField(db_column='VLINSTANCEID', max_length=255)), + ('ownertype', models.IntegerField(db_column='OWNERTYPE')), + ('ownerid', models.CharField(db_column='OWNERID', max_length=255)), + ('relatedtype', models.IntegerField(db_column='RELATEDTYPE')), + ('relatedvl', models.CharField(blank=True, db_column='RELATEDVL', max_length=255, null=True)), + ('relatedcp', models.CharField(blank=True, db_column='RELATEDCP', max_length=255, null=True)), + ('relatedport', models.CharField(blank=True, db_column='RELATEDPORT', max_length=255, null=True)), + ], + options={ + 'db_table': 'CPINST', + }, + ), + migrations.CreateModel( + name='FlavourInstModel', + fields=[ + ('flavourid', models.CharField(db_column='FLAVOURID', max_length=255, primary_key=True, serialize=False)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('resourceid', models.CharField(db_column='RESOURCEID', max_length=255)), + ('name', models.CharField(db_column='NAME', max_length=255)), + ('tenant', models.CharField(db_column='TENANT', max_length=255, null=True)), + ('vcpu', models.IntegerField(db_column='VCPU', null=True)), + ('memory', models.IntegerField(db_column='MEMORY', null=True)), + ('disk', models.IntegerField(db_column='DISK', null=True)), + ('ephemeral', models.IntegerField(db_column='EPHEMERAL', null=True)), + ('swap', models.IntegerField(db_column='SWAP', null=True)), + ('isPublic', models.IntegerField(db_column='ISPUBLIC', null=True)), + ('extraspecs', models.TextField(db_column='EXTRASPECS', max_length=4096)), + ('instid', models.CharField(db_column='INSTID', max_length=255)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ], + options={ + 'db_table': 'FLAVOURINST', + }, + ), + migrations.CreateModel( + name='JobModel', + fields=[ + ('jobid', models.CharField(db_column='JOBID', max_length=255, primary_key=True, serialize=False)), + ('jobtype', models.CharField(db_column='JOBTYPE', max_length=255)), + ('jobaction', models.CharField(db_column='JOBACTION', max_length=255)), + ('resid', models.CharField(db_column='RESID', max_length=255)), + ('status', models.IntegerField(blank=True, db_column='STATUS', null=True)), + ('starttime', models.CharField(blank=True, db_column='STARTTIME', max_length=255, null=True)), + ('endtime', models.CharField(blank=True, db_column='ENDTIME', max_length=255, null=True)), + ('progress', models.IntegerField(blank=True, db_column='PROGRESS', null=True)), + ('user', models.CharField(blank=True, db_column='USER', max_length=255, null=True)), + ('parentjobid', models.CharField(blank=True, db_column='PARENTJOBID', max_length=255, null=True)), + ('resname', models.CharField(blank=True, db_column='RESNAME', max_length=255, null=True)), + ], + options={ + 'db_table': 'JOB', + }, + ), + migrations.CreateModel( + name='JobStatusModel', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('indexid', models.IntegerField(db_column='INDEXID')), + ('jobid', models.CharField(db_column='JOBID', max_length=255)), + ('status', models.CharField(db_column='STATUS', max_length=255)), + ('progress', models.IntegerField(blank=True, db_column='PROGRESS', null=True)), + ('descp', models.TextField(db_column='DESCP', max_length=1024)), + ('errcode', models.CharField(blank=True, db_column='ERRCODE', max_length=255, null=True)), + ('addtime', models.CharField(blank=True, db_column='ADDTIME', max_length=255, null=True)), + ], + options={ + 'db_table': 'JOB_STATUS', + }, + ), + migrations.CreateModel( + name='NetworkInstModel', + fields=[ + ('networkid', models.CharField(db_column='NETWORKID', max_length=255, primary_key=True, serialize=False)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('resourceid', models.CharField(db_column='RESOURCEID', max_length=255)), + ('insttype', models.IntegerField(db_column='INSTTYPE')), + ('instid', models.CharField(db_column='INSTID', max_length=255)), + ('name', models.CharField(db_column='NAME', max_length=255)), + ('tenant', models.CharField(db_column='TENANT', max_length=255, null=True)), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ('desc', models.CharField(db_column='DESC', max_length=255, null=True)), + ('vendor', models.CharField(db_column='VENDOR', max_length=255, null=True)), + ('bandwidth', models.IntegerField(db_column='BANDWIDTH', null=True)), + ('mtu', models.IntegerField(db_column='MTU', null=True)), + ('network_type', models.CharField(db_column='NETWORKTYPE', max_length=255, null=True)), + ('segmentid', models.CharField(db_column='SEGMENTID', max_length=255, null=True)), + ('networkqos', models.CharField(db_column='NETWORKQOS', max_length=255, null=True)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('physicalNetwork', models.CharField(db_column='PHYNETWORK', max_length=255, null=True)), + ('is_shared', models.IntegerField(db_column='ISSHARED', default=0, null=True)), + ('vlantrans', models.IntegerField(db_column='VLANTRANS', null=True)), + ('routerExternal', models.IntegerField(db_column='ROUTEREXTERNAL', default=0, null=True)), + ('nodeId', models.CharField(db_column='NODEID', max_length=255, null=True)), + ], + options={ + 'db_table': 'NETWORKINST', + }, + ), + migrations.CreateModel( + name='NfInstModel', + fields=[ + ('nfinstid', models.CharField(db_column='NFINSTID', max_length=200, primary_key=True, serialize=False)), + ('nf_name', models.CharField(blank=True, db_column='NFNAME', max_length=100, null=True)), + ('vnfminstid', models.CharField(db_column='VNFMINSTID', max_length=255)), + ('package_id', models.CharField(blank=True, db_column='PACKAGEID', max_length=200, null=True)), + ('status', models.CharField(blank=True, db_column='STATUS', max_length=20, null=True)), + ('flavour_id', models.CharField(blank=True, db_column='FLAVOURID', max_length=200, null=True)), + ('location', models.CharField(blank=True, db_column='LOCATION', max_length=200, null=True)), + ('version', models.CharField(db_column='VERSION', max_length=255, null=True)), + ('vendor', models.CharField(blank=True, db_column='VENDOR', max_length=255, null=True)), + ('netype', models.CharField(db_column='NETYPE', max_length=255, null=True)), + ('vnfd_model', models.TextField(blank=True, db_column='VNFDMODEL', max_length=20000, null=True)), + ('input_params', models.TextField(blank=True, db_column='INPUTPARAMS', max_length=2000, null=True)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('lastuptime', models.CharField(blank=True, db_column='LASTUPTIME', max_length=200, null=True)), + ('nf_desc', models.CharField(blank=True, db_column='VNFINSTANCEDESC', max_length=200, null=True)), + ('vnfdid', models.CharField(blank=True, db_column='VNFDID', max_length=200, null=True)), + ('vnfSoftwareVersion', models.CharField(blank=True, db_column='VNFSOFTWAREVER', max_length=200, null=True)), + ('vnfConfigurableProperties', models.TextField(blank=True, db_column='VNFCONFIGURABLEPROPERTIES', max_length=20000, null=True)), + ('localizationLanguage', models.CharField(db_column='LOCALIZATIONLANGUAGE', max_length=255, null=True)), + ('operationState', models.CharField(db_column='OPERATIONSTATE', max_length=255, null=True)), + ('resInfo', models.TextField(blank=True, db_column='RESINFO', max_length=20000, null=True)), + ('vimInfo', models.TextField(blank=True, db_column='VIMINFO', max_length=20000, null=True)), + ], + options={ + 'db_table': 'NFINST', + }, + ), + migrations.CreateModel( + name='NfvoRegInfoModel', + fields=[ + ('nfvoid', models.CharField(db_column='NFVOID', max_length=255, primary_key=True, serialize=False)), + ('vnfminstid', models.CharField(db_column='VNFMINSTID', max_length=255)), + ('apiurl', models.CharField(db_column='URL', max_length=255)), + ('nfvouser', models.CharField(db_column='USERNAME', max_length=255, null=True)), + ('nfvopassword', models.CharField(db_column='PASSWD', max_length=255, null=True)), + ('authtype', models.IntegerField(db_column='AUTHTYPE', default=2)), + ('clientcert', models.CharField(db_column='CLIENTCERT', max_length=255, null=True)), + ('servercert', models.CharField(db_column='SERVERCERT', max_length=255, null=True)), + ('regtime', models.CharField(db_column='REGTIME', max_length=255)), + ], + options={ + 'db_table': 'NFVOREGINFO', + }, + ), + migrations.CreateModel( + name='PortInstModel', + fields=[ + ('portid', models.CharField(db_column='PORTID', max_length=255, primary_key=True, serialize=False)), + ('networkid', models.CharField(db_column='NETWORKID', max_length=255)), + ('subnetworkid', models.CharField(db_column='SUBNETWORKID', max_length=255, null=True)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('resourceid', models.CharField(db_column='RESOURCEID', max_length=255)), + ('name', models.CharField(db_column='NAME', max_length=255, null=True)), + ('insttype', models.IntegerField(db_column='INSTTYPE')), + ('instid', models.CharField(db_column='INSTID', max_length=255)), + ('cpinstanceid', models.CharField(db_column='CPINSTANCEID', max_length=255, null=True)), + ('bandwidth', models.CharField(db_column='BANDWIDTH', max_length=255, null=True)), + ('operationalstate', models.CharField(db_column='OPERATIONALSTATE', max_length=255, null=True)), + ('ipaddress', models.CharField(db_column='IPADDRESS', max_length=255)), + ('macaddress', models.CharField(db_column='MACADDRESS', max_length=255)), + ('nicorder', models.CharField(db_column='NICORDER', max_length=255)), + ('floatipaddress', models.CharField(db_column='FLOATIPADDRESS', max_length=255, null=True)), + ('serviceipaddress', models.CharField(db_column='SERVICEIPADDRESS', max_length=255, null=True)), + ('typevirtualnic', models.CharField(db_column='TYPEVIRTUALNIC', max_length=255, null=True)), + ('sfcencapsulation', models.CharField(db_column='SFCENCAPSULATION', max_length=255, null=True)), + ('direction', models.CharField(db_column='DIRECTION', max_length=255, null=True)), + ('tenant', models.CharField(db_column='TENANT', max_length=255, null=True)), + ('interfacename', models.CharField(blank=True, db_column='INTERFACENAME', max_length=255, null=True)), + ('vmid', models.CharField(blank=True, db_column='VMID', max_length=255, null=True)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('securityGroups', models.CharField(db_column='SECURITYGROUPS', max_length=255)), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ('nodeId', models.CharField(db_column='NODEID', max_length=255, null=True)), + ], + options={ + 'db_table': 'PORTINST', + }, + ), + migrations.CreateModel( + name='StorageInstModel', + fields=[ + ('storageid', models.CharField(db_column='STORAGEID', max_length=255, primary_key=True, serialize=False)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('resourceid', models.CharField(db_column='RESOURCEID', max_length=255)), + ('insttype', models.IntegerField(db_column='INSTTYPE')), + ('instid', models.CharField(db_column='INSTID', max_length=255)), + ('name', models.CharField(db_column='NAME', max_length=255, null=True)), + ('storagetype', models.CharField(db_column='STORAGETYPE', max_length=255)), + ('size', models.CharField(db_column='SIZE', max_length=255)), + ('tenant', models.CharField(db_column='TENANT', max_length=50, null=True)), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('nodeId', models.CharField(db_column='NODEID', max_length=255, null=True)), + ], + options={ + 'db_table': 'STORAGEINST', + }, + ), + migrations.CreateModel( + name='SubNetworkInstModel', + fields=[ + ('subnetworkid', models.CharField(db_column='SUBNETWORKID', max_length=255, primary_key=True, serialize=False)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('resourceid', models.CharField(db_column='RESOURCEID', max_length=255)), + ('networkid', models.CharField(db_column='NETWORKID', max_length=255)), + ('insttype', models.IntegerField(db_column='INSTTYPE')), + ('instid', models.CharField(db_column='INSTID', max_length=255)), + ('name', models.CharField(db_column='NAME', max_length=255)), + ('ipversion', models.IntegerField(db_column='IPVERSION', null=True)), + ('gatewayip', models.CharField(db_column='GATEWAYIP', max_length=255, null=True)), + ('isdhcpenabled', models.IntegerField(db_column='ISDHCPENABLED', null=True)), + ('cidr', models.CharField(db_column='CIDR', max_length=255)), + ('vdsname', models.CharField(db_column='VDSNAME', max_length=255, null=True)), + ('operationalstate', models.CharField(db_column='OPERATIONALSTATE', max_length=255, null=True)), + ('tenant', models.CharField(db_column='TENANT', max_length=255, null=True)), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('dnsNameservers', models.TextField(db_column='DNSNAMESERVERS', max_length=1024)), + ('hostRoutes', models.TextField(db_column='HOSTROUTES', max_length=1024)), + ('allocationPools', models.TextField(db_column='ALLOCATIONPOOLS', max_length=1024)), + ], + options={ + 'db_table': 'SUBNETWORKINST', + }, + ), + migrations.CreateModel( + name='SubscriptionModel', + fields=[ + ('subscription_id', models.CharField(db_column='SUBSCRIPTIONID', max_length=255, primary_key=True, serialize=False)), + ('callback_uri', models.CharField(db_column='CALLBACKURI', max_length=255)), + ('auth_info', models.TextField(blank=True, db_column='AUTHINFO', max_length=20000, null=True)), + ('notification_types', models.TextField(db_column='NOTIFICATIONTYPES', null=True)), + ('operation_types', models.TextField(db_column='OPERATIONTYPES', null=True)), + ('operation_states', models.TextField(db_column='OPERATIONSTATES', null=True)), + ('vnf_instance_filter', models.TextField(db_column='VNFINSTANCEFILTER', null=True)), + ('links', models.TextField(db_column='LINKS', max_length=20000)), + ], + options={ + 'db_table': 'SUBSCRIPTION', + }, + ), + migrations.CreateModel( + name='VLInstModel', + fields=[ + ('vlinstanceid', models.CharField(db_column='VLINSTANCEID', max_length=255, primary_key=True, serialize=False)), + ('vldid', models.CharField(db_column='VLDID', max_length=255)), + ('vlinstancename', models.CharField(blank=True, db_column='VLINSTANCENAME', max_length=255, null=True)), + ('ownertype', models.IntegerField(db_column='OWNERTYPE')), + ('ownerid', models.CharField(db_column='OWNERID', max_length=255)), + ('relatednetworkid', models.CharField(blank=True, db_column='RELATEDNETWORKID', max_length=255, null=True)), + ('relatedsubnetworkid', models.CharField(blank=True, db_column='RELATEDSUBNETWORKID', max_length=255, null=True)), + ('vltype', models.IntegerField(db_column='VLTYPE', default=0)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('tenant', models.CharField(db_column='TENANT', max_length=50)), + ], + options={ + 'db_table': 'VLINST', + }, + ), + migrations.CreateModel( + name='VmInstModel', + fields=[ + ('vmid', models.CharField(db_column='VMID', max_length=255, primary_key=True, serialize=False)), + ('vimid', models.CharField(db_column='VIMID', max_length=255)), + ('tenant', models.CharField(db_column='TENANT', max_length=255, null=True)), + ('resourceid', models.CharField(db_column='RESOURCEID', max_length=255)), + ('vmname', models.CharField(db_column='VMNAME', max_length=255)), + ('nic_array', models.CharField(db_column='NICARRAY', max_length=255)), + ('metadata', models.CharField(db_column='METADATA', max_length=255)), + ('volume_array', models.CharField(db_column='VOLUMEARRAY', max_length=255)), + ('server_group', models.CharField(db_column='SERVERGROUP', max_length=255)), + ('availability_zone', models.CharField(db_column='AVAILABILITYZONE', max_length=255)), + ('flavor_id', models.CharField(db_column='FLAVORID', max_length=255)), + ('security_groups', models.CharField(db_column='SECURITYGROUPS', max_length=255)), + ('operationalstate', models.CharField(db_column='OPERATIONALSTATE', max_length=255, null=True)), + ('insttype', models.IntegerField(db_column='INSTTYPE')), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ('create_time', models.CharField(blank=True, db_column='CREATETIME', max_length=200, null=True)), + ('instid', models.CharField(db_column='INSTID', max_length=255)), + ('nodeId', models.CharField(db_column='NODEID', max_length=255, null=True)), + ], + options={ + 'db_table': 'VMINST', + }, + ), + migrations.CreateModel( + name='VNFCInstModel', + fields=[ + ('vnfcinstanceid', models.CharField(db_column='VNFCINSTANCEID', max_length=255, primary_key=True, serialize=False)), + ('vduid', models.CharField(db_column='VDUID', max_length=255)), + ('vdutype', models.CharField(db_column='VDUTYPE', max_length=255)), + ('instid', models.CharField(db_column='NFINSTID', max_length=255)), + ('vmid', models.CharField(db_column='VMID', max_length=255)), + ('is_predefined', models.IntegerField(db_column='ISPREDEFINED', default=0, null=True)), + ], + options={ + 'db_table': 'VNFCINST', + }, + ), + migrations.CreateModel( + name='VNFLcmOpOccModel', + fields=[ + ('id', models.CharField(db_column='ID', max_length=255, primary_key=True, serialize=False)), + ('operation_state', models.CharField(db_column='OPERATIONSTATE', max_length=30)), + ('state_entered_time', models.CharField(db_column='STATEENTEREDTIME', max_length=30)), + ('start_time', models.CharField(db_column='STARTTIME', max_length=30)), + ('vnf_instance_id', models.CharField(db_column='VNFINSTANCEID', max_length=255)), + ('grant_id', models.CharField(db_column='GRANTID', max_length=255, null=True)), + ('operation', models.CharField(db_column='OPERATION', max_length=30)), + ('sub_operation', models.CharField(db_column='SUBOPERATION', max_length=30, null=True)), + ('is_automatic_invocation', models.CharField(db_column='ISAUTOMATICINVOCATION', max_length=5)), + ('operation_params', models.TextField(db_column='OPERATIONPARAMS')), + ('is_cancel_pending', models.CharField(db_column='ISCANCELPENDING', max_length=5)), + ('cancel_mode', models.TextField(db_column='CANCELMODE', null=True)), + ('error', models.TextField(db_column='ERROR', null=True)), + ('resource_changes', models.TextField(db_column='RESOURCECHANGES', null=True)), + ('changed_info', models.TextField(db_column='CHANGEDINFO', null=True)), + ('changed_ext_connectivity', models.TextField(db_column='CHANGEDEXTCONNECTIVITY', null=True)), + ('links', models.TextField(db_column='LINKS')), + ], + options={ + 'db_table': 'VNFLCMOPOCCS', + }, + ), + ] diff --git a/lcm/lcm/pub/database/migrations/__init__.py b/lcm/lcm/pub/database/migrations/__init__.py new file mode 100644 index 00000000..c7b6818e --- /dev/null +++ b/lcm/lcm/pub/database/migrations/__init__.py @@ -0,0 +1,13 @@ +# Copyright 2017 ZTE Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/lcm/lcm/pub/redisco/__init__.py b/lcm/lcm/pub/redisco/__init__.py index 7d59d8d5..d488d06b 100644 --- a/lcm/lcm/pub/redisco/__init__.py +++ b/lcm/lcm/pub/redisco/__init__.py @@ -1,5 +1,27 @@ -# -*- coding: utf-8 -*- - +# Copyright (c) 2010 Tim Medina +# +# Permission is hereby granted, free of charge, to any person +# obtaining a copy of this software and associated documentation +# files (the "Software"), to deal in the Software without +# restriction, including without limitation the rights to use, +# copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following +# conditions: +# +# The above copyright notice and this permission notice shall be +# included in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +# OTHER DEALINGS IN THE SOFTWARE. +# +# The original code link is https://github.com/iamteem/redisco/tree/master/redisco/__init__.py import redis diff --git a/lcm/lcm/pub/redisco/containers.py b/lcm/lcm/pub/redisco/containers.py index 0c194c77..c2b4b178 100644 --- a/lcm/lcm/pub/redisco/containers.py +++ b/lcm/lcm/pub/redisco/containers.py @@ -1,8 +1,31 @@ +# Copyright (c) 2010 Tim Medina +# +# Permission is hereby granted, free of charge, to any person +# obtaining a copy of this software and associated documentation +# files (the "Software"), to deal in the Software without +# restriction, including without limitation the rights to use, +# copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following +# conditions: +# +# The above copyright notice and this permission notice shall be +# included in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +# OTHER DEALINGS IN THE SOFTWARE. +# +# The original code link is https://github.com/iamteem/redisco/tree/master/redisco/containers.py """ This module contains the container classes to create objects that persist directly in a Redis server. """ - import collections from functools import partial @@ -42,7 +65,7 @@ class Container(object): if hasattr(self, 'db_cache') and self.db_cache: return self.db_cache else: - from redisco import connection + from lcm.pub.redisco import connection self.db_cache = connection return self.db_cache |