Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
ó
±EYc@sËddlmZddlmZddlmZddlmZddlmZddl	m
Z
ddlmZ
ddlmZdd	lmZddlmZdd
lmZejeƒZdZidd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6idd
6fZejjdejejejfd„ƒYƒZejjdejejfd„ƒYƒZdS(iÿÿÿÿ(tlog(tversionutils(tavailability_zones(tdb(t	exception(t_LW(tbase(tservice(tobjects(tfieldsis4.0tcompute_rpcs4.4s4.5s4.6s4.7s4.8s4.9s4.10s4.11s4.12s4.13tServicecBs?eZdZiejdeƒd6ejdeƒd6ejdeƒd6ejdeƒd6ejƒd6ejƒd6ejdeƒd	6ejdeƒd
6ejdƒd6ej	deƒd
6ejƒd6ejƒd6ZiZ
eZd„Z
d„Zd„Zed„ƒZd„Zejd„ƒZejd„ƒZejd„ƒZeejed„ƒƒZejed„ƒZejd„ƒZd„Zejd„ƒZejd„ƒZ d„Z!ejd„ƒZ"e#d „ƒZ$e#d!„ƒZ%eejed"„ƒƒZ&ejed#„ƒZ'ejed$„ƒZ(RS(%s1.20t	read_onlytidtnullablethosttbinaryttopictreport_counttdisabledtdisabled_reasontavailability_zonetComputeNodetcompute_nodetlast_seen_uptforced_downtversioncOsMd|kr'tjddddƒ‚ntt|ƒj||Žt|_dS(NRtactiontinittreasonsVersion field is immutable(RtObjectActionErrortsuperRt__init__tSERVICE_VERSIONR(tselftargstkwargs((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyR s
	cCsºtt|ƒj|||ƒtj|ƒ}|d	krMd|krM|d=n|d
krod|kro|d=n|dkr‘d|kr‘|d=n|dkr¶|j|j||ƒndS(
NiiRiRi
Ri
(ii(ii(ii
(ii
(RRt!obj_make_compatible_from_manifestRtconvert_version_to_tuplet_do_compute_nodet_context(R"t	primitivettarget_versiontversion_manifestt_target_version((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyR%¡s



cCs`y+|d}tjj||dƒd}Wntk
r?dSX|jd|d|ƒ|d<dS(NRRiR*R+R(RtComputeNodeListtget_all_by_hostt	Exceptiontobj_to_primitive(R"tcontextR)R+R*tcompute((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyR'²s
	
	cCs›d}x{|jD]p}||kr4||kr4qn|dkrFqq|dkrrt|tj|ƒ||ƒq||||<qW||_|jƒ|S(NRRR(savailability_zone(R	tsetattrRtget_attrnameR(tobj_reset_changes(R1Rt
db_servicet
allow_missingtkey((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt_from_db_objectÀs 	
cCsÖ|js*tjddd|jƒƒ‚ntjdi|d6|jƒd6|jd6ƒ|dkrƒtjd	dd
d|ƒ‚n|jdkr°t	j
j|j|jƒ}ntj
d
|jƒ‚|d|_dS(Ntmethodt
obj_load_attrtobjtypes-Lazy-loading '%(attr)s' on %(name)s id %(id)stattrtnameR
RRRsattribute %s not lazy-loadablesnova-computet
service_idi(R(RtOrphanedObjectErrortobj_nametLOGtdebugR
RRRR-R.RtServiceNotFoundR(R"tattrnamet
compute_nodes((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyR;Ós 		

		cCs(tj||ƒ}|j||ƒ|ƒS(N(Rtservice_getR9(tclsR1R?R6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt	get_by_idîscCs+tj|||ƒ}|j||ƒ|ƒS(N(Rtservice_get_by_host_and_topicR9(RHR1RRR6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_by_host_and_topicóscCsGytj|||ƒ}Wntjk
r0dSX|j||ƒ|ƒS(N(Rtservice_get_by_host_and_binaryRtHostBinaryNotFoundR9(RHR1RRR6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_by_host_and_binaryøs	cCstj||ƒS(N(Rtservice_get_by_compute_host(R1Rt	use_slave((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt_db_service_get_by_compute_hostscCs.|j||d|ƒ}|j||ƒ|ƒS(NRP(RQR9(RHR1RRPR6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_by_compute_hosts	cCs+tj|||ƒ}|j||ƒ|ƒS(N(RRLR9(RHR1RRR6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_by_argsscCso|jdƒsdS|jdƒs&dS|j|j|jƒ}||jkrktjd|jd|ƒ‚ndS(sEnforce that we are not older that the minimum version.

        This is a loose check to avoid creating or updating our service
        record if we would do so with a version that is older that the current
        minimum of all services. This could happen if we were started with
        older code by accident, either due to a rollback or an old and
        un-updated node suddenly coming back onto the network.

        There is technically a race here between the check and the update,
        but since the minimum version should always roll forward and never
        backwards, we don't need to worry about doing it atomically. Further,
        the consequence for getting this wrong is minor, in that we'll just
        fail to send messages that other services understand.
        RNRtthisvertminver(tobj_attr_is_settget_minimum_versionR(RRRt
ServiceTooOld(R"RU((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt_check_minimum_versionscCso|jdƒr*tjddddƒ‚n|jƒ|jƒ}tj|j|ƒ}|j|j||ƒdS(NR
RtcreateRsalready created(	RVRRRYtobj_get_changesRtservice_createR(R9(R"tupdatesR6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyRZ+s
cCsh|jƒ}|jddƒ|jƒtj|j|j|ƒ}|j|j||ƒ|j	|ƒdS(NR
(
R[tpoptNoneRYRtservice_updateR(R
R9t _send_status_update_notification(R"R]R6((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytsave5s
c	Cs’t|jƒƒjdddhƒrŽtj|ƒ}tjdtjj|ƒdtj	dddt
jjƒd	t
j
jd
|ƒj|jƒndS(NRRRt	publishert
event_typetobjectRRtprioritytpayload(tsettkeystintersectiontservice_notificationtServiceStatusPayloadtServiceStatusNotificationtnotificationtNotificationPublishertfrom_service_objt	EventTypeR	tNotificationActiontUPDATEtNotificationPrioritytINFOtemitR((R"R]Rg((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyRa?s				cCstj|j|jƒdS(N(Rtservice_destroyR(R
(R"((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytdestroyOscCs|jƒt|_dS(N(tclear_min_version_cachetTruet_SERVICE_VERSION_CACHING(RH((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytenable_min_version_cacheSs
cCs
i|_dS(N(t_MIN_VERSION_CACHE(RH((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyRyXscCstj||ƒS(N(Rtservice_get_minimum_version(R1tbinariesRP((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt_db_service_get_minimum_version\scstd„|DƒƒsPtjtdƒdj|ƒƒtjddddƒ‚nˆjsvt‡fd†|DƒƒrÀˆj	||d	|ƒ}|rÖd
„|j
ƒDƒ}ˆjj|ƒqÖn‡fd†|Dƒ}|rñt
|jƒƒ}nd}t|ƒ}|S(
Ncss|]}|jdƒVqdS(snova-N(t
startswith(t.0R((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pys	<genexpr>css>get_minimum_version called with likely-incorrect binaries `%s't,RRWRsInvalid binary prefixc3s|]}|ˆjkVqdS(N(R}(R‚R(RH(sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pys	<genexpr>jsRPcSs%i|]\}}|pd|“qS(i((R‚RR((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pys
<dictcomp>os	cs i|]}ˆj||“qS((R}(R‚R(RH(sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pys
<dictcomp>ts	i(tallRBtwarningRtjoinRRR{tanyR€titemsR}tupdatetmintvaluestint(RHR1RRPtmin_versionsR((RHsI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_minimum_version_multias*


cCs|j||gd|ƒS(NRP(RŽ(RHR1RRP((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyRWs()t__name__t
__module__tVERSIONR	tIntegerFieldRztStringFieldtBooleanFieldtObjectFieldt
DateTimeFieldR}tFalseR{R R%R'tstaticmethodR9R;Rtremotable_classmethodRIRKRNRtselect_db_reader_modeRQRRRSRYt	remotableRZRbRaRxtclassmethodR|RyR€RŽRW(((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyRcsX


						

	tServiceListcBs‡eZdZiejdƒd6Zejd„ƒZejed„ƒZ	ejd„ƒZ
ejded„ƒZejd„ƒZ
RS(	s1.19RRcCs1tj||ƒ}tj|||ƒtj|ƒS(N(Rtservice_get_all_by_topicRt
obj_make_listRR(RHR1Rtdb_services((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_by_topic¤scCs7tj||d|ƒ}tj|||ƒtj|ƒS(Ntinclude_disabled(Rtservice_get_all_by_binaryRRŸRR(RHR1RR¢R ((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt
get_by_binary¬scCs1tj||ƒ}tj|||ƒtj|ƒS(N(Rtservice_get_all_by_hostRRŸRR(RHR1RR ((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_by_host³scCsOtj|d|ƒ}|r0tj||ƒ}ntj|||ƒtj|ƒS(NR(Rtservice_get_allRtset_availability_zonesRRŸRR(RHR1Rt	set_zonesR ((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_all¹scCs7tj||dtƒ}tj|||ƒtj|ƒS(NR¢(Rt#service_get_all_computes_by_hv_typeR—RRŸRR(RHR1thv_typeR ((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pytget_all_computes_by_hv_typeÂsN(RRR‘R	tListOfObjectsFieldRR™R¡R—R¤R¦R_RªR­(((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyR‡sN( toslo_logRtloggingt
oslo_utilsRtnovaRRRt	nova.i18nRtnova.notifications.objectsRRnRRkRtnova.objectsR	t	getLoggerRRBR!tSERVICE_VERSION_HISTORYtNovaObjectRegistrytregistertNovaPersistentObjectt
NovaObjecttNovaObjectDictCompatRtObjectListBaseR(((sI/home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/service.pyt<module>sD














ÿ#