You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ni...@apache.org on 2014/10/11 20:46:52 UTC
[28/50] [abbrv] git commit: Fixed singleton impl of the configuration
class Fixed minor issues in dependancies
Fixed singleton impl of the configuration class
Fixed minor issues in dependancies
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/2261bbec
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/2261bbec
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/2261bbec
Branch: refs/heads/master
Commit: 2261bbec4bbabd36aace3b4dbeae860007d54ed8
Parents: 105a09e
Author: Chamila de Alwis <ch...@wso2.com>
Authored: Fri Oct 3 04:22:56 2014 +0530
Committer: Chamila de Alwis <ch...@wso2.com>
Committed: Thu Oct 9 15:41:22 2014 +0530
----------------------------------------------------------------------
.../cartridge-agent/agent.py | 3 +-
.../modules/artifactmgt/git/agentgithandler.py | 17 +++---
.../config/cartridgeagentconfiguration.py | 58 +++++++++-----------
.../modules/topology/topologycontext.py | 24 +++++++-
.../modules/util/cartridgeagentutils.py | 39 +------------
.../modules/util/extensionutils.py | 2 +
6 files changed, 60 insertions(+), 83 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/2261bbec/tools/python-cartridge-agent/cartridge-agent/agent.py
----------------------------------------------------------------------
diff --git a/tools/python-cartridge-agent/cartridge-agent/agent.py b/tools/python-cartridge-agent/cartridge-agent/agent.py
index 4858b9d..8ba2740 100644
--- a/tools/python-cartridge-agent/cartridge-agent/agent.py
+++ b/tools/python-cartridge-agent/cartridge-agent/agent.py
@@ -11,10 +11,11 @@ from modules.tenant.tenantcontext import *
from modules.topology.topologycontext import *
from modules.datapublisher.logpublisher import *
from modules.config import cartridgeagentconfiguration
+from modules.extensions import defaultextensionhandler
class CartridgeAgent(threading.Thread):
- extension_handler = None
+ extension_handler = defaultextensionhandler.DefaultExtensionHandler()
def __init__(self):
threading.Thread.__init__(self)
http://git-wip-us.apache.org/repos/asf/stratos/blob/2261bbec/tools/python-cartridge-agent/cartridge-agent/modules/artifactmgt/git/agentgithandler.py
----------------------------------------------------------------------
diff --git a/tools/python-cartridge-agent/cartridge-agent/modules/artifactmgt/git/agentgithandler.py b/tools/python-cartridge-agent/cartridge-agent/modules/artifactmgt/git/agentgithandler.py
index be46c5d..5353b8f 100644
--- a/tools/python-cartridge-agent/cartridge-agent/modules/artifactmgt/git/agentgithandler.py
+++ b/tools/python-cartridge-agent/cartridge-agent/modules/artifactmgt/git/agentgithandler.py
@@ -5,7 +5,10 @@ import urllib2
from ... util.log import LogFactory
from ... util import cartridgeagentutils, extensionutils, cartridgeagentconstants
-
+from gitrepository import GitRepository
+from ... config import cartridgeagentconfiguration
+from ... util.asyncscheduledtask import AsyncScheduledTask
+from ... artifactmgt.repositoryinformation import RepositoryInformation
class AgentGitHandler:
"""
@@ -18,7 +21,7 @@ class AgentGitHandler:
SUPER_TENANT_REPO_PATH = "/repository/deployment/server/"
TENANT_REPO_PATH = "/repository/tenants/"
- extension_handler = cartridgeagentutils.get_extension_handler()
+ extension_handler = None
__git_repositories = {}
# (tenant_id => gitrepository.GitRepository)
@@ -113,6 +116,8 @@ class AgentGitHandler:
@staticmethod
def pull(repo_context):
repo = Repo(repo_context.local_repo_path)
+ from ....agent import CartridgeAgent
+ AgentGitHandler.extension_handler = CartridgeAgent.extension_handler
try:
repo.git.checkout("master")
pull_output = repo.git.pull()
@@ -476,10 +481,4 @@ class ArtifactUpdateTask(Thread):
self.log.exception("Auto checkout task failed")
if self.auto_commit:
- AgentGitHandler.commit(self.repo_info)
-
-
-from gitrepository import GitRepository
-from ... config import cartridgeagentconfiguration
-from ... util.asyncscheduledtask import AsyncScheduledTask
-from ... artifactmgt.repositoryinformation import RepositoryInformation
\ No newline at end of file
+ AgentGitHandler.commit(self.repo_info)
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/stratos/blob/2261bbec/tools/python-cartridge-agent/cartridge-agent/modules/config/cartridgeagentconfiguration.py
----------------------------------------------------------------------
diff --git a/tools/python-cartridge-agent/cartridge-agent/modules/config/cartridgeagentconfiguration.py b/tools/python-cartridge-agent/cartridge-agent/modules/config/cartridgeagentconfiguration.py
index 27c9a89..415a54e 100644
--- a/tools/python-cartridge-agent/cartridge-agent/modules/config/cartridgeagentconfiguration.py
+++ b/tools/python-cartridge-agent/cartridge-agent/modules/config/cartridgeagentconfiguration.py
@@ -111,8 +111,7 @@ class CartridgeAgentConfiguration:
self.log_file_paths = None
is_multi_str = self.read_property(cartridgeagentconstants.CLUSTER_ID)
- self.is_multitenant = True if str(
- is_multi_str).lower().strip() == "true" else False
+ self.is_multitenant = True if str(is_multi_str).lower().strip() == "true" else False
try:
self.persistence_mappings = self.read_property(
@@ -123,47 +122,36 @@ class CartridgeAgentConfiguration:
try:
is_commit_str = self.read_property(cartridgeagentconstants.COMMIT_ENABLED)
- self.is_commits_enabled = True if str(
- is_commit_str).lower().strip() == "true" else False
+ self.is_commits_enabled = True if str(is_commit_str).lower().strip() == "true" else False
except ParameterNotFoundException:
try:
is_commit_str = self.read_property(cartridgeagentconstants.AUTO_COMMIT)
- self.is_commits_enabled = True if str(
- is_commit_str).lower().strip() == "true" else False
+ self.is_commits_enabled = True if str(is_commit_str).lower().strip() == "true" else False
except ParameterNotFoundException:
self.log.info(
"%r is not found and setting it to false" % cartridgeagentconstants.COMMIT_ENABLED)
self.is_commits_enabled = False
auto_checkout_str = self.read_property(cartridgeagentconstants.AUTO_CHECKOUT, False)
- self.is_checkout_enabled = True if str(
- auto_checkout_str).lower().strip() == "true" else False
+ self.is_checkout_enabled = True if str(auto_checkout_str).lower().strip() == "true" else False
self.listen_address = self.read_property(
cartridgeagentconstants.LISTEN_ADDRESS, False)
try:
int_repo_str = self.read_property(cartridgeagentconstants.PROVIDER)
- self.is_internal_repo = True if str(
- int_repo_str).strip().lower() == cartridgeagentconstants.INTERNAL else False
+ self.is_internal_repo = True if str(int_repo_str).strip().lower() == cartridgeagentconstants.INTERNAL else False
except ParameterNotFoundException:
self.log.info(" INTERNAL payload parameter is not found")
self.is_internal_repo = False
- self.tenant_id = self.read_property(
- cartridgeagentconstants.TENANT_ID)
- self.lb_cluster_id = self.read_property(
- cartridgeagentconstants.LB_CLUSTER_ID)
- self.min_count = self.read_property(
- cartridgeagentconstants.MIN_INSTANCE_COUNT)
- self.lb_private_ip = self.read_property(
- cartridgeagentconstants.LB_PRIVATE_IP, False)
- self.lb_public_ip = self.read_property(
- cartridgeagentconstants.LB_PUBLIC_IP, False)
- self.tenant_repository_path = self.read_property(
- cartridgeagentconstants.TENANT_REPO_PATH, False)
- self.super_tenant_repository_path = self.read_property(
- cartridgeagentconstants.SUPER_TENANT_REPO_PATH, False)
+ self.tenant_id = self.read_property(cartridgeagentconstants.TENANT_ID)
+ self.lb_cluster_id = self.read_property(cartridgeagentconstants.LB_CLUSTER_ID)
+ self.min_count = self.read_property(cartridgeagentconstants.MIN_INSTANCE_COUNT)
+ self.lb_private_ip = self.read_property(cartridgeagentconstants.LB_PRIVATE_IP, False)
+ self.lb_public_ip = self.read_property(cartridgeagentconstants.LB_PUBLIC_IP, False)
+ self.tenant_repository_path = self.read_property(cartridgeagentconstants.TENANT_REPO_PATH, False)
+ self.super_tenant_repository_path = self.read_property(cartridgeagentconstants.SUPER_TENANT_REPO_PATH, False)
try:
self.deployment = self.read_property(
@@ -175,14 +163,14 @@ class CartridgeAgentConfiguration:
if self.deployment is None:
self.manager_service_name = None
- if self.deployment.lower() == cartridgeagentconstants.DEPLOYMENT_MANAGER.lower():
+ if str(self.deployment).lower() == cartridgeagentconstants.DEPLOYMENT_MANAGER.lower():
self.manager_service_name = self.service_name
- elif self.deployment.lower() == cartridgeagentconstants.DEPLOYMENT_WORKER.lower():
+ elif str(self.deployment).lower() == cartridgeagentconstants.DEPLOYMENT_WORKER.lower():
self.deployment = self.read_property(
cartridgeagentconstants.MANAGER_SERVICE_TYPE)
- elif self.deployment.lower() == cartridgeagentconstants.DEPLOYMENT_DEFAULT.lower():
+ elif str(self.deployment).lower() == cartridgeagentconstants.DEPLOYMENT_DEFAULT.lower():
self.deployment = None
else:
self.deployment = None
@@ -191,14 +179,14 @@ class CartridgeAgentConfiguration:
if self.deployment is None:
self.worker_service_name = None
- if self.deployment.lower() == cartridgeagentconstants.DEPLOYMENT_WORKER.lower():
+ if str(self.deployment).lower() == cartridgeagentconstants.DEPLOYMENT_WORKER.lower():
self.manager_service_name = self.service_name
- elif self.deployment.lower() == cartridgeagentconstants.DEPLOYMENT_MANAGER.lower():
+ elif str(self.deployment).lower() == cartridgeagentconstants.DEPLOYMENT_MANAGER.lower():
self.deployment = self.read_property(
cartridgeagentconstants.WORKER_SERVICE_TYPE)
- elif self.deployment.lower() == cartridgeagentconstants.DEPLOYMENT_DEFAULT.lower():
+ elif str(self.deployment).lower() == cartridgeagentconstants.DEPLOYMENT_DEFAULT.lower():
self.deployment = None
else:
self.deployment = None
@@ -288,12 +276,16 @@ class CartridgeAgentConfiguration:
instance = None
- def __new__(cls, *args, **kwargs):
+ # def __new__(cls, *args, **kwargs):
+ # if not CartridgeAgentConfiguration.instance:
+ # CartridgeAgentConfiguration.instance = CartridgeAgentConfiguration.__CartridgeAgentConfiguration()
+ #
+ # return CartridgeAgentConfiguration.instance
+
+ def __init__(self):
if not CartridgeAgentConfiguration.instance:
CartridgeAgentConfiguration.instance = CartridgeAgentConfiguration.__CartridgeAgentConfiguration()
- return CartridgeAgentConfiguration.instance
-
def __getattr__(self, name):
return getattr(self.instance, name)
http://git-wip-us.apache.org/repos/asf/stratos/blob/2261bbec/tools/python-cartridge-agent/cartridge-agent/modules/topology/topologycontext.py
----------------------------------------------------------------------
diff --git a/tools/python-cartridge-agent/cartridge-agent/modules/topology/topologycontext.py b/tools/python-cartridge-agent/cartridge-agent/modules/topology/topologycontext.py
index 4a13765..21972ef 100644
--- a/tools/python-cartridge-agent/cartridge-agent/modules/topology/topologycontext.py
+++ b/tools/python-cartridge-agent/cartridge-agent/modules/topology/topologycontext.py
@@ -1,4 +1,4 @@
-from ..util import cartridgeagentutils, cartridgeagentconstants
+from ..util import cartridgeagentconstants
class Topology:
@@ -207,7 +207,7 @@ class Cluster:
self.hostnames.append(hostname)
def set_tenant_range(self, tenant_range):
- cartridgeagentutils.validate_tenant_range(tenant_range)
+ self.validate_tenant_range(tenant_range)
self.tenant_range = tenant_range
def get_members(self):
@@ -277,6 +277,26 @@ class Cluster:
return False
+ def validate_tenant_range(self, tenant_range):
+ """
+ Validates the tenant range to be either '*' or a delimeted range of numbers
+ :param str tenant_range: The tenant range string to be validated
+ :return: void if the provided tenant range is valid, RuntimeError if otherwise
+ :exception: RuntimeError if the tenant range is invalid
+ """
+ valid = False
+ if tenant_range == "*":
+ valid = True
+ else:
+ arr = tenant_range.split(cartridgeagentconstants.TENANT_RANGE_DELIMITER)
+ if len(arr) == 2:
+ if arr[0].isdigit() and arr[1].isdigit():
+ valid = True
+ elif arr[0].isdigit() and arr[1] == "*":
+ valid = True
+
+ if not valid:
+ raise RuntimeError("Tenant range %r is not valid" % tenant_range)
class Member:
"""
http://git-wip-us.apache.org/repos/asf/stratos/blob/2261bbec/tools/python-cartridge-agent/cartridge-agent/modules/util/cartridgeagentutils.py
----------------------------------------------------------------------
diff --git a/tools/python-cartridge-agent/cartridge-agent/modules/util/cartridgeagentutils.py b/tools/python-cartridge-agent/cartridge-agent/modules/util/cartridgeagentutils.py
index 81b2b92..7a7a4fe 100644
--- a/tools/python-cartridge-agent/cartridge-agent/modules/util/cartridgeagentutils.py
+++ b/tools/python-cartridge-agent/cartridge-agent/modules/util/cartridgeagentutils.py
@@ -1,12 +1,10 @@
from Crypto.Cipher import AES
import base64
-import logging
import os
import time
import socket
import shutil
-import cartridgeagentconstants
from log import LogFactory
unpad = lambda s: s[0:-ord(s[-1])]
@@ -15,16 +13,6 @@ log = LogFactory().get_log(__name__)
current_milli_time = lambda: int(round(time.time() * 1000))
-extension_handler = None
-
-
-def get_extension_handler():
- global extension_handler
- if extension_handler is None:
- extension_handler = defaultextensionhandler.DefaultExtensionHandler()
-
- return extension_handler
-
def decrypt_password(pass_str, secret):
"""
@@ -138,28 +126,6 @@ def check_ports_active(ip_address, ports):
return True
-def validate_tenant_range(tenant_range):
- """
- Validates the tenant range to be either '*' or a delimeted range of numbers
- :param str tenant_range: The tenant range string to be validated
- :return: void if the provided tenant range is valid, RuntimeError if otherwise
- :exception: RuntimeError if the tenant range is invalid
- """
- valid = False
- if tenant_range == "*":
- valid = True
- else:
- arr = tenant_range.split(cartridgeagentconstants.TENANT_RANGE_DELIMITER)
- if len(arr) == 2:
- if arr[0].isdigit() and arr[1].isdigit():
- valid = True
- elif arr[0].isdigit() and arr[1] == "*":
- valid = True
-
- if not valid:
- raise RuntimeError("Tenant range %r is not valid" % tenant_range)
-
-
def get_carbon_server_property(property_key):
"""
Reads the carbon.xml file and returns the value for the property key.
@@ -179,7 +145,4 @@ def get_working_dir():
:rtype : str
"""
#"/path/to/cartridge-agent/modules/util/".split("modules") returns ["/path/to/cartridge-agent/", "/util"]
- return os.path.abspath(os.path.dirname(__file__)).split("modules")[0]
-
-
-from ..extensions import defaultextensionhandler
+ return os.path.abspath(os.path.dirname(__file__)).split("modules")[0]
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/stratos/blob/2261bbec/tools/python-cartridge-agent/cartridge-agent/modules/util/extensionutils.py
----------------------------------------------------------------------
diff --git a/tools/python-cartridge-agent/cartridge-agent/modules/util/extensionutils.py b/tools/python-cartridge-agent/cartridge-agent/modules/util/extensionutils.py
index 013713b..9cf8ba3 100644
--- a/tools/python-cartridge-agent/cartridge-agent/modules/util/extensionutils.py
+++ b/tools/python-cartridge-agent/cartridge-agent/modules/util/extensionutils.py
@@ -4,6 +4,8 @@ import subprocess
import time
from log import LogFactory
+from .. config import cartridgeagentconfiguration
+
log = LogFactory().get_log(__name__)