diff options
| author | Endi S. Dewata <edewata@redhat.com> | 2015-05-09 03:21:57 -0400 |
|---|---|---|
| committer | Endi S. Dewata <edewata@redhat.com> | 2015-05-11 10:20:41 -0400 |
| commit | f1dec6488cfb1cf883fccd6fd3aa148bb1077776 (patch) | |
| tree | 4206f427f9fda48594e8e5d866ad7e4f77746dee /base | |
| parent | 6ee510efe491b1e2afd7e9901eee690365fd8bbb (diff) | |
Refactored upgrade scripts.
The upgrade scripts have been modified to use the uid and gid
provided by PKIInstance object.
https://fedorahosted.org/pki/ticket/1341
Diffstat (limited to 'base')
9 files changed, 35 insertions, 186 deletions
diff --git a/base/server/upgrade/10.0.1/01-ReplaceRandomNumberGenerator b/base/server/upgrade/10.0.1/01-ReplaceRandomNumberGenerator index e6737d869..01614d56a 100755 --- a/base/server/upgrade/10.0.1/01-ReplaceRandomNumberGenerator +++ b/base/server/upgrade/10.0.1/01-ReplaceRandomNumberGenerator @@ -19,9 +19,7 @@ # All rights reserved. # -import grp import os -import pwd import shutil import signal import sys @@ -45,12 +43,13 @@ class ReplaceRandomNumberGenerator(pki.server.upgrade.PKIServerUpgradeScriptlet) meta_inf = os.path.join(instance.base_dir, 'webapps', subsystem.name, 'META-INF') self.backup(meta_inf) - self.create_meta_inf(meta_inf) + self.create_meta_inf(instance, meta_inf) context_xml = os.path.join(meta_inf, 'context.xml') self.backup(context_xml) self.create_context_xml( + instance, self.context_xml % (subsystem.name, subsystem.name), context_xml) @@ -76,12 +75,13 @@ class ReplaceRandomNumberGenerator(pki.server.upgrade.PKIServerUpgradeScriptlet) meta_inf = os.path.join(instance.base_dir, 'webapps', 'ROOT', 'META-INF') self.backup(meta_inf) - self.create_meta_inf(meta_inf) + self.create_meta_inf(instance, meta_inf) context_xml = os.path.join(meta_inf, 'context.xml') self.backup(context_xml) self.create_context_xml( + instance, self.context_xml % ('server', 'ROOT'), context_xml) @@ -97,12 +97,13 @@ class ReplaceRandomNumberGenerator(pki.server.upgrade.PKIServerUpgradeScriptlet) meta_inf = os.path.join(instance.base_dir, 'webapps', 'pki', 'META-INF') self.backup(meta_inf) - self.create_meta_inf(meta_inf) + self.create_meta_inf(instance, meta_inf) context_xml = os.path.join(meta_inf, 'context.xml') self.backup(context_xml) self.create_context_xml( + instance, self.context_xml % ('server', 'pki'), context_xml) @@ -113,26 +114,20 @@ class ReplaceRandomNumberGenerator(pki.server.upgrade.PKIServerUpgradeScriptlet) with open(context_xml, 'w') as f: f.write(etree.tostring(document, pretty_print=True)) - def create_meta_inf(self, path): - - uid = pwd.getpwnam('pkiuser').pw_uid - gid = grp.getgrnam('pkiuser').gr_gid + def create_meta_inf(self, instance, path): if not os.path.exists(path): os.mkdir(path) - os.chown(path, uid, gid) + os.chown(path, instance.uid, instance.gid) os.chmod(path, 0770) - def create_context_xml(self, source, target): + def create_context_xml(self, instance, source, target): if not os.path.exists(target): shutil.copyfile(source, target) - uid = pwd.getpwnam('pkiuser').pw_uid - gid = grp.getgrnam('pkiuser').gr_gid - - os.chown(target, uid, gid) + os.chown(target, instance.uid, instance.gid) os.chmod(target, 0660) def add_manager(self, document): diff --git a/base/server/upgrade/10.0.99/03-FixRegistryFile b/base/server/upgrade/10.0.99/03-FixRegistryFile index 053697f49..7940e7c46 100755 --- a/base/server/upgrade/10.0.99/03-FixRegistryFile +++ b/base/server/upgrade/10.0.99/03-FixRegistryFile @@ -19,9 +19,7 @@ # All rights reserved. # -import grp import os -import pwd import re import pki.server import pki.server.upgrade @@ -42,16 +40,7 @@ class FixRegistryFile(pki.server.upgrade.PKIServerUpgradeScriptlet): with open(registry_file, "w") as registry: for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - registry.write( re.sub(r'PKI_INSTANCE_ID', 'PKI_INSTANCE_NAME', line)) - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid - os.chown(registry_file, uid, gid) + os.chown(registry_file, instance.uid, instance.gid) diff --git a/base/server/upgrade/10.0.99/04-FixLogFileOwnership b/base/server/upgrade/10.0.99/04-FixLogFileOwnership index b63055f29..e4cb93437 100755 --- a/base/server/upgrade/10.0.99/04-FixLogFileOwnership +++ b/base/server/upgrade/10.0.99/04-FixLogFileOwnership @@ -19,10 +19,7 @@ # All rights reserved. # -import grp import os -import pwd -import re import pki.server.upgrade @@ -32,23 +29,6 @@ class FixLogFileOwnership(pki.server.upgrade.PKIServerUpgradeScriptlet): self.message = 'Fix log file ownership' def upgrade_instance(self, instance): - registry_file = os.path.join( - pki.server.REGISTRY_DIR, 'tomcat', instance.name, instance.name) - - with open(registry_file, "r") as registry: - lines = registry.readlines() - - for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid log_dir = os.path.join('/var/log/pki', instance.name) - - pki.util.chown(log_dir, uid, gid) + pki.util.chown(log_dir, instance.uid, instance.gid) diff --git a/base/server/upgrade/10.1.1/01-MoveWebApplicationContextFile b/base/server/upgrade/10.1.1/01-MoveWebApplicationContextFile index 603fc6b8f..d2526c531 100755 --- a/base/server/upgrade/10.1.1/01-MoveWebApplicationContextFile +++ b/base/server/upgrade/10.1.1/01-MoveWebApplicationContextFile @@ -19,10 +19,7 @@ # All rights reserved. # -import grp import os -import pwd -import re import pki.server.upgrade @@ -72,26 +69,8 @@ class MoveWebApplicationContextFile(pki.server.upgrade.PKIServerUpgradeScriptlet # copy context file, don't overwrite existing file pki.util.copyfile(old_context_file, new_context_file, overwrite=False) - # find uid and gid - registry_file = os.path.join( - pki.server.REGISTRY_DIR, 'tomcat', instance.name, instance.name) - - with open(registry_file, 'r') as registry: - lines = registry.readlines() - - for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid - # set file and folder ownership - pki.util.chown(catalina_dir, uid, gid) + pki.util.chown(catalina_dir, instance.uid, instance.gid) # remove old context file if os.path.exists(old_context_file): diff --git a/base/server/upgrade/10.1.99/01-MoveWebApplicationContextFile b/base/server/upgrade/10.1.99/01-MoveWebApplicationContextFile index 603fc6b8f..d2526c531 100755 --- a/base/server/upgrade/10.1.99/01-MoveWebApplicationContextFile +++ b/base/server/upgrade/10.1.99/01-MoveWebApplicationContextFile @@ -19,10 +19,7 @@ # All rights reserved. # -import grp import os -import pwd -import re import pki.server.upgrade @@ -72,26 +69,8 @@ class MoveWebApplicationContextFile(pki.server.upgrade.PKIServerUpgradeScriptlet # copy context file, don't overwrite existing file pki.util.copyfile(old_context_file, new_context_file, overwrite=False) - # find uid and gid - registry_file = os.path.join( - pki.server.REGISTRY_DIR, 'tomcat', instance.name, instance.name) - - with open(registry_file, 'r') as registry: - lines = registry.readlines() - - for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid - # set file and folder ownership - pki.util.chown(catalina_dir, uid, gid) + pki.util.chown(catalina_dir, instance.uid, instance.gid) # remove old context file if os.path.exists(old_context_file): diff --git a/base/server/upgrade/10.1.99/02-ReplaceJettisonWithJackson b/base/server/upgrade/10.1.99/02-ReplaceJettisonWithJackson index 7a6216ef4..e39acb0e0 100755 --- a/base/server/upgrade/10.1.99/02-ReplaceJettisonWithJackson +++ b/base/server/upgrade/10.1.99/02-ReplaceJettisonWithJackson @@ -19,10 +19,7 @@ # All rights reserved. # -import grp import os -import pwd -import re import subprocess import pki.server.upgrade @@ -39,24 +36,6 @@ class ReplaceJettisonWithJackson(pki.server.upgrade.PKIServerUpgradeScriptlet): # Tomcat common library common_lib = os.path.join(instance.base_dir, 'common', 'lib') - # Tomcat user and group - registry_file = os.path.join( - pki.server.REGISTRY_DIR, 'tomcat', instance.name, instance.name) - - with open(registry_file, "r") as registry: - lines = registry.readlines() - - for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid - # RESTEasy library resteasy_lib = subprocess.check_output( '. /etc/pki/pki.conf && echo $RESTEASY_LIB', @@ -74,63 +53,63 @@ class ReplaceJettisonWithJackson(pki.server.upgrade.PKIServerUpgradeScriptlet): # create new links source = os.path.join('/usr/share/java', 'jackson-annotations.jar') link = os.path.join(common_lib, 'jackson-annotations.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson', 'jackson-core-asl.jar') link = os.path.join(common_lib, 'jackson-core-asl.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java', 'jackson-core.jar') link = os.path.join(common_lib, 'jackson-core.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java', 'jackson-databind.jar') link = os.path.join(common_lib, 'jackson-databind.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson-jaxrs-providers', 'jackson-jaxrs-base.jar') link = os.path.join(common_lib, 'jackson-jaxrs-base.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson', 'jackson-jaxrs.jar') link = os.path.join(common_lib, 'jackson-jaxrs.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson-jaxrs-providers', 'jackson-jaxrs-json-provider.jar') link = os.path.join(common_lib, 'jackson-jaxrs-json-provider.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson', 'jackson-mapper-asl.jar') link = os.path.join(common_lib, 'jackson-mapper-asl.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java', 'jackson-module-jaxb-annotations.jar') link = os.path.join(common_lib, 'jackson-module-jaxb-annotations.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson', 'jackson-mrbean.jar') link = os.path.join(common_lib, 'jackson-mrbean.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson', 'jackson-smile.jar') link = os.path.join(common_lib, 'jackson-smile.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join('/usr/share/java/jackson', 'jackson-xc.jar') link = os.path.join(common_lib, 'jackson-xc.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) source = os.path.join(resteasy_lib, 'resteasy-jackson-provider.jar') link = os.path.join(common_lib, 'resteasy-jackson-provider.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) def remove_link(self, link): self.backup(link) os.remove(link) - def create_link(self, source, link, uid, gid): + def create_link(self, instance, source, link): self.backup(link) os.symlink(source, link) - os.lchown(link, uid, gid) + os.lchown(link, instance.uid, instance.gid) diff --git a/base/server/upgrade/10.1.99/03-AddedRESTEasyClient b/base/server/upgrade/10.1.99/03-AddedRESTEasyClient index 55bc8c367..63d4a93eb 100755 --- a/base/server/upgrade/10.1.99/03-AddedRESTEasyClient +++ b/base/server/upgrade/10.1.99/03-AddedRESTEasyClient @@ -19,10 +19,7 @@ # All rights reserved. # -import grp import os -import pwd -import re import subprocess import pki.server.upgrade @@ -39,24 +36,6 @@ class AddedRESTEasyClient(pki.server.upgrade.PKIServerUpgradeScriptlet): # Tomcat common library common_lib = os.path.join(instance.base_dir, 'common', 'lib') - # Tomcat user and group - registry_file = os.path.join( - pki.server.REGISTRY_DIR, 'tomcat', instance.name, instance.name) - - with open(registry_file, "r") as registry: - lines = registry.readlines() - - for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid - # RESTEasy library resteasy_lib = subprocess.check_output( '. /etc/pki/pki.conf && echo $RESTEASY_LIB', @@ -67,10 +46,10 @@ class AddedRESTEasyClient(pki.server.upgrade.PKIServerUpgradeScriptlet): # create new links source = os.path.join(resteasy_lib, 'resteasy-client.jar') link = os.path.join(common_lib, 'resteasy-client.jar') - self.create_link(source, link, uid, gid) + self.create_link(instance, source, link) - def create_link(self, source, link, uid, gid): + def create_link(self, instance, source, link): self.backup(link) os.symlink(source, link) - os.lchown(link, uid, gid) + os.lchown(link, instance.uid, instance.gid) diff --git a/base/server/upgrade/10.2.2/01-MoveWebApplicationDeploymentLocations b/base/server/upgrade/10.2.2/01-MoveWebApplicationDeploymentLocations index 20f35e837..2a1ec99d7 100755 --- a/base/server/upgrade/10.2.2/01-MoveWebApplicationDeploymentLocations +++ b/base/server/upgrade/10.2.2/01-MoveWebApplicationDeploymentLocations @@ -19,9 +19,7 @@ # All rights reserved. # -import grp import os -import pwd import shutil import signal import sys @@ -52,10 +50,7 @@ class MoveWebApplicationDeploymentLocations(pki.server.upgrade.PKIServerUpgradeS if not os.path.exists(subsystem_webapps): os.mkdir(subsystem_webapps) - uid = pwd.getpwnam('pkiuser').pw_uid - gid = grp.getgrnam('pkiuser').gr_gid - - os.chown(subsystem_webapps, uid, gid) + os.chown(subsystem_webapps, instance.uid, instance.gid) os.chmod(subsystem_webapps, 0770) # move subsystem webapp @@ -74,10 +69,7 @@ class MoveWebApplicationDeploymentLocations(pki.server.upgrade.PKIServerUpgradeS if not os.path.exists(common_webapps): os.mkdir(common_webapps) - uid = pwd.getpwnam('pkiuser').pw_uid - gid = grp.getgrnam('pkiuser').gr_gid - - os.chown(common_webapps, uid, gid) + os.chown(common_webapps, instance.uid, instance.gid) os.chmod(common_webapps, 0770) # move ROOT webapp diff --git a/base/server/upgrade/10.2.3/01-FixInstanceWorkFolderOwnership b/base/server/upgrade/10.2.3/01-FixInstanceWorkFolderOwnership index 6872a165a..700aaf3ce 100755 --- a/base/server/upgrade/10.2.3/01-FixInstanceWorkFolderOwnership +++ b/base/server/upgrade/10.2.3/01-FixInstanceWorkFolderOwnership @@ -19,10 +19,7 @@ # All rights reserved. # -import grp import os -import pwd -import re import pki.server.upgrade @@ -32,26 +29,6 @@ class FixInstanceWorkFolderOwnership(pki.server.upgrade.PKIServerUpgradeScriptle self.message = 'Fix instance work folder ownership' def upgrade_instance(self, instance): - registry_file = os.path.join( - pki.server.REGISTRY_DIR, 'tomcat', instance.name, instance.name) - - with open(registry_file, "r") as registry: - lines = registry.readlines() - - user = None - group = None - - for line in lines: - m = re.search('^PKI_USER=(.*)$', line) - if m: - user = m.group(1) - m = re.search('^PKI_GROUP=(.*)$', line) - if m: - group = m.group(1) - - uid = pwd.getpwnam(user).pw_uid - gid = grp.getgrnam(group).gr_gid dir = os.path.join(instance.base_dir, 'work/Catalina/localhost/pki') - - pki.util.chown(dir, uid, gid) + pki.util.chown(dir, instance.uid, instance.gid) |
