jenkins-bot has submitted this change and it was merged.
Change subject: Don't cache the service catalog for nearly as long.
......................................................................
Don't cache the service catalog for nearly as long.
Default behavior is to cache the OpenStack service catalog for
the lifetime of a user login. That makes it pretty hard for us
to move services.
This patch changes the lifetime to 1 hour, and also adds logic
to detect an expired catalog (which was previously ignored.)
Task: T109653
Change-Id: If8d27bce5fef89633448bc66fd2a4f19ed5a3f2d
---
M nova/OpenStackNovaController.php
1 file changed, 8 insertions(+), 2 deletions(-)
Approvals:
Alex Monk: Looks good to me, approved
jenkins-bot: Verified
diff --git a/nova/OpenStackNovaController.php b/nova/OpenStackNovaController.php
index 1831dae..a575a4e 100644
--- a/nova/OpenStackNovaController.php
+++ b/nova/OpenStackNovaController.php
@@ -776,7 +776,7 @@
$expires = strtotime( $this->_get_property(
$user->access->token, 'expires' ) );
$wgMemc->set( $projectkey, $token, $expires );
$key = wfMemcKey( 'openstackmanager', 'serviceCatalog-' .
$project, $this->username );
- $wgMemc->set( $key, json_encode( $user->access->serviceCatalog
), $expires );
+ $wgMemc->set( $key, json_encode( $user->access->serviceCatalog
), 3600 );
return $token;
}
@@ -785,7 +785,13 @@
global $wgMemc;
$key = wfMemcKey( 'openstackmanager', 'serviceCatalog-' .
$this->project, $this->username );
- $serviceCatalog = json_decode( $wgMemc->get( $key ) );
+ $catalogJson = $wgMemc->get( $key );
+ if ( !$catalogJson ) {
+ # Catalog expired; refresh
+ $this->getProjectToken( $this->project );
+ $catalogJson = $wgMemc->get( $key );
+ }
+ $serviceCatalog = json_decode( $catalogJson );
$endpoints = array();
if ( $serviceCatalog ) {
foreach ( $serviceCatalog as $entry ) {
--
To view, visit https://gerrit.wikimedia.org/r/232760
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: If8d27bce5fef89633448bc66fd2a4f19ed5a3f2d
Gerrit-PatchSet: 3
Gerrit-Project: mediawiki/extensions/OpenStackManager
Gerrit-Branch: master
Gerrit-Owner: Andrew Bogott <[email protected]>
Gerrit-Reviewer: Alex Monk <[email protected]>
Gerrit-Reviewer: Rush <[email protected]>
Gerrit-Reviewer: Yuvipanda <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits