def install_streamline(): import params Directory([params.conf_dir], owner=params.streamline_user, group=params.user_group, mode=0775, create_parents=True) if not os.path.exists(Script.get_stack_root() + '/' + params.version_dir) or not os.path.exists( params.install_dir): Execute('rm -rf %s' % Script.get_stack_root() + '/' + params.version_dir) Execute('rm -rf %s' % params.install_dir) Execute('wget ' + params.download_url + ' -O /tmp/' + params.filename, user=params.streamline_user) Execute('tar -zxf /tmp/' + params.filename + ' -C ' + Script.get_stack_root()) Execute('ln -s ' + Script.get_stack_root() + '/' + params.version_dir + ' ' + params.install_dir) Execute('/bin/rm -rf ' + params.install_dir + '/conf') Execute('ln -s ' + params.conf_dir + ' ' + params.install_dir + '/conf') Execute('chown -R %s:%s %s/%s' % (params.streamline_user, params.user_group, params.stack_root, params.version_dir)) Execute( 'chown -R %s:%s %s' % (params.streamline_user, params.user_group, params.install_dir)) Execute('/bin/rm -f /tmp/' + params.filename)
def create_30_config_version(self, env): package_name = 'registry' stack_root = Script.get_stack_root() current_dir = "{0}/current/registry/conf".format(stack_root) directories = [{ "conf_dir": "/etc/registry/conf", "current_dir": current_dir }] stack_version = stack_select.get_stack_version_before_install( package_name) conf_dir = "/etc/registry/conf" if stack_version: try: #Check if broken symbolic links issue exists os.stat(conf_dir) conf_select.convert_conf_directories_to_symlinks( package_name, stack_version, directories) cp_cmd = as_sudo([ "cp", "-a", "-f", "/etc/registry/conf.backup/.", "/etc/registry/conf" ]) Execute(cp_cmd, logoutput=True) except OSError as e: Logger.warning( "Detected broken symlink : {0}. Attempting to repair.". format(str(e))) #removing symlink conf directory sudo.unlink(conf_dir) #make conf dir again sudo.makedirs(conf_dir, 0755) #copy all files for files in glob.glob("/etc/registry/conf.backup/*"): cp_cmd = as_sudo(["cp", "-r", files, conf_dir]) Execute(cp_cmd, logoutput=True) conf_select.convert_conf_directories_to_symlinks( package_name, stack_version, directories)
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. """ import os import sys from resource_management import format_stack_version, Script from resource_management.libraries.functions import format from resource_management.libraries.functions.default import default import status_params # server configurations config = Script.get_config() stack_root = Script.get_stack_root() cluster_name = config['clusterName'] # security enabled security_enabled = status_params.security_enabled if security_enabled: _hostname_lowercase = config['hostname'].lower() _atlas_principal_name = config['configurations']['application-properties']['atlas.authentication.principal'] atlas_jaas_principal = _atlas_principal_name.replace('_HOST',_hostname_lowercase) atlas_keytab_path = config['configurations']['application-properties']['atlas.authentication.keytab'] stack_name = status_params.stack_name # New Cluster Stack Version that is defined during the RESTART of a Stack Upgrade