def setUp(self):
        super(Test_Authentication, self).setUp()

        # load tree from file
        with open(CFG_FILE_PATH) as cfg_file:
            self.config = json.load(cfg_file)

        # local test dir
        self.testing_tmp_dir = '/tmp/irods_Test_Authentication'
        shutil.rmtree(self.testing_tmp_dir, ignore_errors=True)
        os.mkdir(self.testing_tmp_dir)

        # admin sesh
        self.admin = lib.make_session_for_existing_admin()

        # make new user with no password
        self.gsi_username = '******'
        self.gsi_user = lib.mkuser_and_return_session(
            'rodsuser', self.gsi_username, None, lib.get_hostname())

        # set auth scheme for new user (client side)
        self.gsi_user.environment_file_contents[
            'irods_authentication_scheme'] = 'GSI'

        # set auth string for new user (server side)
        #user_DN = '/O=Grid/OU=GlobusTest/OU=simpleCA-gsi1/OU=Globus Simple CA/CN=antoine de torcy'
        self.admin.run_icommand(['iadmin', 'aua', self.gsi_username, self.config['client_user_DN']])
Esempio n. 2
0
 def setUp(self):
     with lib.make_session_for_existing_admin() as admin_session:
         context_prefix = lib.get_hostname(
         ) + ':' + lib.get_irods_top_level_dir()
         admin_session.assert_icommand(
             'iadmin modresc demoResc name origResc',
             'STDOUT_SINGLELINE',
             'rename',
             stdin_string='yes\n')
         admin_session.assert_icommand(
             'iadmin mkresc demoResc load_balanced', 'STDOUT_SINGLELINE',
             'load_balanced')
         admin_session.assert_icommand(
             'iadmin mkresc rescA "unixfilesystem" ' + context_prefix +
             '/rescAVault', 'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand(
             'iadmin mkresc rescB "unixfilesystem" ' + context_prefix +
             '/rescBVault', 'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand(
             'iadmin mkresc rescC "unixfilesystem" ' + context_prefix +
             '/rescCVault', 'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand(
             'iadmin addchildtoresc demoResc rescA')
         admin_session.assert_icommand(
             'iadmin addchildtoresc demoResc rescB')
         admin_session.assert_icommand(
             'iadmin addchildtoresc demoResc rescC')
     super(Test_LoadBalanced_Resource, self).setUp()
    def setUp(self):
        super(Test_Authentication, self).setUp()

        # load configuration from file
        with open(CFG_FILE_PATH) as cfg_file:
            self.config = json.load(cfg_file)

        # local test dir
        self.testing_tmp_dir = '/tmp/irods_Test_Authentication'
        shutil.rmtree(self.testing_tmp_dir, ignore_errors=True)
        os.mkdir(self.testing_tmp_dir)

        # admin sesh
        self.admin = lib.make_session_for_existing_admin()

        # make new user with no password
        self.krb_username = '******'
        self.krb_user = lib.mkuser_and_return_session(
            'rodsuser', self.krb_username, None, lib.get_hostname())

        # set auth scheme for new user (client side)
        self.krb_user.environment_file_contents[
            'irods_authentication_scheme'] = 'krb'

        # set auth string for new user (server side)
        self.admin.run_icommand(['iadmin', 'aua', self.krb_username, self.config['client_user_principal']])
Esempio n. 4
0
    def setUp(self):
        super(Test_AllRules, self).setUp()

        self.rods_session = lib.make_session_for_existing_admin()  # some rules hardcode 'rods' and 'tempZone'

        hostname = socket.gethostname()
        hostuser = getpass.getuser()
        progname = __file__
        dir_w = rules30dir + ".."
        self.rods_session.assert_icommand('icd')  # to get into the home directory (for testallrules assumption)
        self.rods_session.assert_icommand('iadmin mkuser devtestuser rodsuser')
        self.rods_session.assert_icommand('iadmin mkresc testallrulesResc unixfilesystem ' + hostname + ':/tmp/' +
                                          hostuser + '/pydevtest_testallrulesResc', 'STDOUT_SINGLELINE', 'unixfilesystem')
        self.rods_session.assert_icommand('imkdir sub1')
        self.rods_session.assert_icommand('imkdir sub3')
        self.rods_session.assert_icommand('imkdir forphymv')
        self.rods_session.assert_icommand('imkdir ruletest')
        self.rods_session.assert_icommand('imkdir test')
        self.rods_session.assert_icommand('imkdir test/phypathreg')
        self.rods_session.assert_icommand('imkdir ruletest/subforrmcoll')
        self.rods_session.assert_icommand('iput ' + progname + ' test/foo1')
        self.rods_session.assert_icommand('icp test/foo1 sub1/dcmetadatatarget')
        self.rods_session.assert_icommand('icp test/foo1 sub1/mdcopysource')
        self.rods_session.assert_icommand('icp test/foo1 sub1/mdcopydest')
        self.rods_session.assert_icommand('icp test/foo1 sub1/foo1')
        self.rods_session.assert_icommand('icp test/foo1 sub1/foo2')
        self.rods_session.assert_icommand('icp test/foo1 sub1/foo3')
        self.rods_session.assert_icommand('icp test/foo1 forphymv/phymvfile')
        self.rods_session.assert_icommand('icp test/foo1 sub1/objunlink1')
        self.rods_session.assert_icommand('irm sub1/objunlink1')  # put it in the trash
        self.rods_session.assert_icommand('icp test/foo1 sub1/objunlink2')
        self.rods_session.assert_icommand('irepl -R testallrulesResc sub1/objunlink2')
        self.rods_session.assert_icommand('icp test/foo1 sub1/freebuffer')
        self.rods_session.assert_icommand('icp test/foo1 sub1/automove')
        self.rods_session.assert_icommand('icp test/foo1 test/versiontest.txt')
        self.rods_session.assert_icommand('icp test/foo1 test/metadata-target.txt')
        self.rods_session.assert_icommand('icp test/foo1 test/ERAtestfile.txt')
        self.rods_session.assert_icommand('ichmod read devtestuser test/ERAtestfile.txt')
        self.rods_session.assert_icommand('imeta add -d test/ERAtestfile.txt Fun 99 Balloons')
        self.rods_session.assert_icommand('icp test/foo1 sub1/for_versioning.txt')
        self.rods_session.assert_icommand('imkdir sub1/SaveVersions')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/devtestuser-account-ACL.txt test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/load-metadata.txt test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/load-usermods.txt test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/sample.email test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/email.tag test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/sample.email test/sample2.email')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/email.tag test/email2.tag')

        # setup for rulemsiAdmChangeCoreRE and the likes
        empty_core_file_name = 'empty.test.re'
        new_core_file_name = 'new.test.re'
        with open(self.conf_dir + '/' + empty_core_file_name, 'w'):
            pass
        shutil.copy(self.conf_dir + "/core.re", self.conf_dir + "/core.re.bckp")           # back up core.re
        shutil.copy(self.conf_dir + "/core.re", self.conf_dir + "/" + new_core_file_name)   # copy core.re
Esempio n. 5
0
    def setUp(self):
        super(Test_AllRules, self).setUp()

        self.rods_session = lib.make_session_for_existing_admin()  # some rules hardcode 'rods' and 'tempZone'

        hostname = socket.gethostname()
        hostuser = getpass.getuser()
        progname = __file__
        dir_w = rulesdir + ".."
        self.rods_session.assert_icommand('icd')  # to get into the home directory (for testallrules assumption)
        self.rods_session.assert_icommand('iadmin mkuser devtestuser rodsuser')
        self.rods_session.assert_icommand('iadmin mkresc testallrulesResc unixfilesystem ' + hostname + ':/tmp/' +
                                          hostuser + '/pydevtest_testallrulesResc', 'STDOUT_SINGLELINE', 'unixfilesystem')
        self.rods_session.assert_icommand('imkdir sub1')
        self.rods_session.assert_icommand('imkdir sub3')
        self.rods_session.assert_icommand('imkdir forphymv')
        self.rods_session.assert_icommand('imkdir ruletest')
        self.rods_session.assert_icommand('imkdir test')
        self.rods_session.assert_icommand('imkdir test/phypathreg')
        self.rods_session.assert_icommand('imkdir ruletest/subforrmcoll')
        self.rods_session.assert_icommand('iput ' + progname + ' test/foo1')
        self.rods_session.assert_icommand('icp test/foo1 sub1/dcmetadatatarget')
        self.rods_session.assert_icommand('icp test/foo1 sub1/mdcopysource')
        self.rods_session.assert_icommand('icp test/foo1 sub1/mdcopydest')
        self.rods_session.assert_icommand('icp test/foo1 sub1/foo1')
        self.rods_session.assert_icommand('icp test/foo1 sub1/foo2')
        self.rods_session.assert_icommand('icp test/foo1 sub1/foo3')
        self.rods_session.assert_icommand('icp test/foo1 forphymv/phymvfile')
        self.rods_session.assert_icommand('icp test/foo1 sub1/objunlink1')
        self.rods_session.assert_icommand('irm sub1/objunlink1')  # put it in the trash
        self.rods_session.assert_icommand('icp test/foo1 sub1/objunlink2')
        self.rods_session.assert_icommand('irepl -R testallrulesResc sub1/objunlink2')
        self.rods_session.assert_icommand('icp test/foo1 sub1/freebuffer')
        self.rods_session.assert_icommand('icp test/foo1 sub1/automove')
        self.rods_session.assert_icommand('icp test/foo1 test/versiontest.txt')
        self.rods_session.assert_icommand('icp test/foo1 test/metadata-target.txt')
        self.rods_session.assert_icommand('icp test/foo1 test/ERAtestfile.txt')
        self.rods_session.assert_icommand('ichmod read devtestuser test/ERAtestfile.txt')
        self.rods_session.assert_icommand('imeta add -d test/ERAtestfile.txt Fun 99 Balloons')
        self.rods_session.assert_icommand('icp test/foo1 sub1/for_versioning.txt')
        self.rods_session.assert_icommand('imkdir sub1/SaveVersions')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/devtestuser-account-ACL.txt test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/load-metadata.txt test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/load-usermods.txt test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/sample.email test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/email.tag test')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/sample.email test/sample2.email')
        self.rods_session.assert_icommand('iput ' + dir_w + '/misc/email.tag test/email2.tag')

        # setup for rulemsiAdmChangeCoreRE and the likes
        empty_core_file_name = 'empty.test.re'
        new_core_file_name = 'new.test.re'
        with open(self.conf_dir + '/' + empty_core_file_name, 'w'):
            pass
        shutil.copy(self.conf_dir + "/core.re", self.conf_dir + "/core.re.bckp")           # back up core.re
        shutil.copy(self.conf_dir + "/core.re", self.conf_dir + "/" + new_core_file_name)   # copy core.re
 def setUp(self):
     hostname = lib.get_hostname()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand("iadmin modresc demoResc name origResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
         admin_session.assert_icommand("iadmin mkresc demoResc compound", 'STDOUT_SINGLELINE', 'compound')
         admin_session.assert_icommand("iadmin mkresc cacheResc 'unixfilesystem' "+hostname+":/var/lib/irods/cacheRescVault", 'STDOUT_SINGLELINE', 'cacheResc')
         admin_session.assert_icommand("iadmin mkresc archiveResc wos "+hostname+":/empty/path wos_host=http://wos.edc.renci.org;wos_policy=Howard", 'STDOUT_SINGLELINE', 'archiveResc')
         admin_session.assert_icommand("iadmin addchildtoresc demoResc cacheResc cache")
         admin_session.assert_icommand("iadmin addchildtoresc demoResc archiveResc archive")
     super(Test_Compound_with_WOS_Resource, self).setUp()
Esempio n. 7
0
 def tearDown(self):
     super(Test_MSOSuite, self).tearDown()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc archiveResc")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc cacheResc")
         admin_session.assert_icommand("iadmin rmresc archiveResc")
         admin_session.assert_icommand("iadmin rmresc cacheResc")
         admin_session.assert_icommand("iadmin rmresc demoResc")
         admin_session.assert_icommand("iadmin modresc origResc name demoResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
     shutil.rmtree(lib.get_irods_top_level_dir() + "/cacheRescVault")
Esempio n. 8
0
    def test_phybun_from_devtest(self):
        with lib.make_session_for_existing_admin() as rods_admin:
            rods_admin.run_icommand(['ichmod', 'own', self.admin.username, '/' + self.admin.zone_name])

        # build expected variables with similar devtest names
        progname = __file__
        myssize = str(os.stat(progname).st_size)
        username = self.admin.username
        irodszone = self.admin.zone_name
        testuser1 = self.user0.username
        irodshome = self.admin.session_collection
        irodsdefresource = self.admin.default_resource
        dir_w = "."
        sfile2 = dir_w + "/sfile2"
        commands.getstatusoutput("cat " + progname + " " + progname + " > " + sfile2)
        mysdir = "/tmp/irodssdir"
        myldir = dir_w + "/ldir"
        if os.path.exists(myldir):
            shutil.rmtree(myldir)
        self.admin.assert_icommand("imkdir icmdtest")

        # make a directory containing 20 small files
        if not os.path.isdir(mysdir):
            os.mkdir(mysdir)
        for i in range(20):
            mysfile = mysdir + "/sfile" + str(i)
            shutil.copyfile(progname, mysfile)

        # iphybun test
        self.admin.assert_icommand("iput -rR " + self.testresc + " " + mysdir + " " + irodshome + "/icmdtestp")
        self.admin.assert_icommand("iphybun -KR " + self.anotherresc + " " + irodshome + "/icmdtestp")
        self.admin.assert_icommand("itrim -rS " + self.testresc + " -N1 " +
                   irodshome + "/icmdtestp", 'STDOUT', "files trimmed")
        output = commands.getstatusoutput("ils -L " + irodshome + "/icmdtestp/sfile1 | tail -n1 | awk '{ print $NF }'")
        print output[1]
        bunfile = output[1]
        self.admin.assert_icommand("irepl --purgec -R " + self.anotherresc + " " + bunfile)
        self.admin.assert_icommand("itrim -rS " + self.testresc + " -N1 " +
                   irodshome + "/icmdtestp", 'STDOUT', "files trimmed")
        # get the name of bundle file
        self.admin.assert_icommand("irm -f --empty " + bunfile)
        # should not be able to remove it because it is not empty
        self.admin.assert_icommand("ils " + bunfile, 'STDOUT', bunfile)
        self.admin.assert_icommand("irm -rvf " + irodshome + "/icmdtestp", 'STDOUT', "num files done")
        self.admin.assert_icommand("irm -f --empty " + bunfile)
        if os.path.exists(dir_w + "/testp"):
            shutil.rmtree(dir_w + "/testp")
        shutil.rmtree(mysdir)

        # cleanup
        os.unlink(sfile2)
        if os.path.exists(myldir):
            shutil.rmtree(myldir)
        if os.path.exists(mysdir):
            shutil.rmtree(mysdir)
Esempio n. 9
0
 def setUp(self):
     hostname = lib.get_hostname()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand("iadmin modresc demoResc name origResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
         admin_session.assert_icommand("iadmin mkresc demoResc compound", 'STDOUT_SINGLELINE', 'compound')
         admin_session.assert_icommand("iadmin mkresc cacheResc 'unixfilesystem' " + hostname + ":" +
                                       lib.get_irods_top_level_dir() + "/cacheRescVault", 'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand("iadmin mkresc archiveResc mso " + hostname + ":/fake/vault/", 'STDOUT_SINGLELINE', 'mso')
         admin_session.assert_icommand("iadmin addchildtoresc demoResc cacheResc cache")
         admin_session.assert_icommand("iadmin addchildtoresc demoResc archiveResc archive")
     super(Test_MSOSuite, self).setUp()
Esempio n. 10
0
    def setUp(self):
        # make session with existing admin account
        self.admin_session = lib.make_session_for_existing_admin()

        # load federation settings in dictionary (all lower case)
        self.config = {}
        for key, val in configuration.FEDERATION.__dict__.items():
            if not key.startswith("__"):
                self.config[key.lower()] = val
        self.config["local_zone"] = self.admin_session.zone_name

        super(Test_Admin_Commands, self).setUp()
Esempio n. 11
0
 def setUp(self):
     with lib.make_session_for_existing_admin() as admin_session:
         context_prefix = lib.get_hostname() + ':' + lib.get_irods_top_level_dir()
         admin_session.assert_icommand('iadmin modresc demoResc name origResc', 'STDOUT', 'rename', stdin_string='yes\n')
         admin_session.assert_icommand('iadmin mkresc demoResc load_balanced', 'STDOUT', 'load_balanced')
         admin_session.assert_icommand('iadmin mkresc rescA "unixfilesystem" ' + context_prefix + '/rescAVault', 'STDOUT', 'unixfilesystem')
         admin_session.assert_icommand('iadmin mkresc rescB "unixfilesystem" ' + context_prefix + '/rescBVault', 'STDOUT', 'unixfilesystem')
         admin_session.assert_icommand('iadmin mkresc rescC "unixfilesystem" ' + context_prefix + '/rescCVault', 'STDOUT', 'unixfilesystem')
         admin_session.assert_icommand('iadmin addchildtoresc demoResc rescA')
         admin_session.assert_icommand('iadmin addchildtoresc demoResc rescB')
         admin_session.assert_icommand('iadmin addchildtoresc demoResc rescC')
     super(Test_LoadBalanced_Resource, self).setUp()
Esempio n. 12
0
    def tearDown(self):
        print "run_resource_teardown - BEGIN"
        os.unlink(self.testfile)
        self.admin.run_icommand('icd')
        self.admin.run_icommand(['irm', self.testfile, '../public/' + self.testfile])
        self.admin.run_icommand('irm -rf ../../bundle')

        super(ResourceBase, self).tearDown()
        with lib.make_session_for_existing_admin() as admin_session:
            admin_session.run_icommand('irmtrash -M')
            admin_session.run_icommand(['iadmin', 'rmresc', self.testresc])
            admin_session.run_icommand(['iadmin', 'rmresc', self.anotherresc])
            print "run_resource_teardown - END"
Esempio n. 13
0
 def tearDown(self):
     super(Test_LoadBalanced_Resource, self).tearDown()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc rescA")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc rescB")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc rescC")
         admin_session.assert_icommand("iadmin rmresc rescA")
         admin_session.assert_icommand("iadmin rmresc rescB")
         admin_session.assert_icommand("iadmin rmresc rescC")
         admin_session.assert_icommand("iadmin rmresc demoResc")
         admin_session.assert_icommand("iadmin modresc origResc name demoResc", 'STDOUT', 'rename', stdin_string='yes\n')
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescAVault", ignore_errors=True)
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescBVault", ignore_errors=True)
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescCVault", ignore_errors=True)
Esempio n. 14
0
 def tearDown(self):
     super(Test_LoadBalanced_Resource, self).tearDown()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc rescA")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc rescB")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc rescC")
         admin_session.assert_icommand("iadmin rmresc rescA")
         admin_session.assert_icommand("iadmin rmresc rescB")
         admin_session.assert_icommand("iadmin rmresc rescC")
         admin_session.assert_icommand("iadmin rmresc demoResc")
         admin_session.assert_icommand("iadmin modresc origResc name demoResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescAVault", ignore_errors=True)
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescBVault", ignore_errors=True)
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescCVault", ignore_errors=True)
 def setUp(self):
     hostname = lib.get_hostname()
     with lib.make_session_for_existing_admin() as admin_session:
         keypairfile='/projects/irods/vsphere-testing/externals/amazon_web_services-CI.keypair'
         s3hostname='s3.amazonaws.com'
         s3bucketname='irods-ci'
         s3proto='http'
         s3stsdate=''
         admin_session.assert_icommand("iadmin modresc demoResc name origResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
         admin_session.assert_icommand("iadmin mkresc demoResc compound", 'STDOUT_SINGLELINE', 'compound')
         admin_session.assert_icommand("iadmin mkresc cacheResc 'unixfilesystem' "+hostname+":/var/lib/irods/cacheRescVault", 'STDOUT_SINGLELINE', 'cacheResc')
         admin_session.assert_icommand('iadmin mkresc archiveResc s3 '+hostname+':/'+s3bucketname+'/irods/Vault "S3_DEFAULT_HOSTNAME='+s3hostname+';S3_AUTH_FILE='+keypairfile+';S3_RETRY_COUNT=15;S3_WAIT_TIME_SEC=1;S3_PROTO='+s3proto+';S3_STSDATE='+s3stsdate+'"', 'STDOUT_SINGLELINE', 'archiveResc')
         admin_session.assert_icommand("iadmin addchildtoresc demoResc cacheResc cache")
         admin_session.assert_icommand("iadmin addchildtoresc demoResc archiveResc archive")
     super(Test_Compound_with_S3_Resource, self).setUp()
Esempio n. 16
0
 def tearDown(self):
     super(Test_MSOSuite, self).tearDown()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand(
             "iadmin rmchildfromresc demoResc archiveResc")
         admin_session.assert_icommand(
             "iadmin rmchildfromresc demoResc cacheResc")
         admin_session.assert_icommand("iadmin rmresc archiveResc")
         admin_session.assert_icommand("iadmin rmresc cacheResc")
         admin_session.assert_icommand("iadmin rmresc demoResc")
         admin_session.assert_icommand(
             "iadmin modresc origResc name demoResc",
             'STDOUT_SINGLELINE',
             'rename',
             stdin_string='yes\n')
     shutil.rmtree(lib.get_irods_top_level_dir() + "/cacheRescVault")
Esempio n. 17
0
 def setUp(self):
     with lib.make_session_for_existing_admin() as admin_session:
         context_prefix = lib.get_hostname() + ':' + lib.get_irods_top_level_dir()
         admin_session.assert_icommand('iadmin modresc demoResc name origResc', 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
         admin_session.assert_icommand('iadmin mkresc demoResc deferred', 'STDOUT_SINGLELINE', 'deferred')
         admin_session.assert_icommand('iadmin mkresc defResc1 deferred', 'STDOUT_SINGLELINE', 'deferred')
         admin_session.assert_icommand('iadmin mkresc defResc2 deferred', 'STDOUT_SINGLELINE', 'deferred')
         admin_session.assert_icommand('iadmin mkresc defResc3 deferred', 'STDOUT_SINGLELINE', 'deferred')
         admin_session.assert_icommand('iadmin mkresc defResc4 deferred', 'STDOUT_SINGLELINE', 'deferred')
         admin_session.assert_icommand('iadmin mkresc rescA "unixfilesystem" ' + context_prefix + '/rescAVault', 'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand('iadmin mkresc rescB "unixfilesystem" ' + context_prefix + '/rescBVault', 'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand('iadmin addchildtoresc defResc3 rescA')
         admin_session.assert_icommand('iadmin addchildtoresc defResc4 rescB')
         admin_session.assert_icommand('iadmin addchildtoresc demoResc defResc1')
         admin_session.assert_icommand('iadmin addchildtoresc demoResc defResc2')
         admin_session.assert_icommand('iadmin addchildtoresc defResc1 defResc3')
         admin_session.assert_icommand('iadmin addchildtoresc defResc2 defResc4')
     super(Test_DeferredToDeferred, self).setUp()
 def setUp(self):
     hostname = lib.get_hostname()
     with lib.make_session_for_existing_admin() as admin_session:
         self.archive_naming_policy='decoupled'
         keypairfile='/projects/irods/vsphere-testing/externals/amazon_web_services-CI.keypair'
         self.s3bucketname=os.environ.get('S3BUCKET', 'irods-ci')
         s3stsdate='date'
         s3params=( 'S3_DEFAULT_HOSTNAME=s3.amazonaws.com;S3_AUTH_FILE=' +  keypairfile +
                    ';S3_RETRY_COUNT=15;S3_WAIT_TIME_SEC=1;S3_PROTO=HTTPS;S3_MPU_CHUNK=10;S3_MPU_THREADS=4;S3_STSDATE=' + s3stsdate +
                    ';ARCHIVE_NAMING_POLICY=' + self.archive_naming_policy
         )
         s3params=os.environ.get('S3PARAMS', s3params);
         admin_session.assert_icommand("iadmin modresc demoResc name origResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
         admin_session.assert_icommand("iadmin mkresc demoResc compound", 'STDOUT_SINGLELINE', 'compound')
         admin_session.assert_icommand("iadmin mkresc cacheResc 'unixfilesystem' "+hostname+":/var/lib/irods/cacheRescVault", 'STDOUT_SINGLELINE', 'cacheResc')
         admin_session.assert_icommand('iadmin mkresc archiveResc s3 '+hostname+':/'+self.s3bucketname+'/irods/Vault "'+s3params+'"', 'STDOUT_SINGLELINE', 'archiveResc')
         admin_session.assert_icommand("iadmin addchildtoresc demoResc cacheResc cache")
         admin_session.assert_icommand("iadmin addchildtoresc demoResc archiveResc archive")
     super(Test_Compound_with_S3_Resource, self).setUp()
Esempio n. 19
0
 def tearDown(self):
     super(Test_DeferredToDeferred, self).tearDown()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand("iadmin rmchildfromresc defResc3 rescA")
         admin_session.assert_icommand("iadmin rmchildfromresc defResc4 rescB")
         admin_session.assert_icommand("iadmin rmchildfromresc defResc1 defResc3")
         admin_session.assert_icommand("iadmin rmchildfromresc defResc2 defResc4")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc defResc1")
         admin_session.assert_icommand("iadmin rmchildfromresc demoResc defResc2")
         admin_session.assert_icommand("iadmin rmresc rescA")
         admin_session.assert_icommand("iadmin rmresc rescB")
         admin_session.assert_icommand("iadmin rmresc defResc1")
         admin_session.assert_icommand("iadmin rmresc defResc2")
         admin_session.assert_icommand("iadmin rmresc defResc3")
         admin_session.assert_icommand("iadmin rmresc defResc4")
         admin_session.assert_icommand("iadmin rmresc demoResc")
         admin_session.assert_icommand("iadmin modresc origResc name demoResc", 'STDOUT_SINGLELINE', 'rename', stdin_string='yes\n')
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescAVault", ignore_errors=True)
     shutil.rmtree(lib.get_irods_top_level_dir() + "/rescBVault", ignore_errors=True)
Esempio n. 20
0
 def setUp(self):
     hostname = lib.get_hostname()
     with lib.make_session_for_existing_admin() as admin_session:
         admin_session.assert_icommand(
             "iadmin modresc demoResc name origResc",
             'STDOUT_SINGLELINE',
             'rename',
             stdin_string='yes\n')
         admin_session.assert_icommand("iadmin mkresc demoResc compound",
                                       'STDOUT_SINGLELINE', 'compound')
         admin_session.assert_icommand(
             "iadmin mkresc cacheResc 'unixfilesystem' " + hostname + ":" +
             lib.get_irods_top_level_dir() + "/cacheRescVault",
             'STDOUT_SINGLELINE', 'unixfilesystem')
         admin_session.assert_icommand(
             "iadmin mkresc archiveResc mso " + hostname + ":/fake/vault/",
             'STDOUT_SINGLELINE', 'mso')
         admin_session.assert_icommand(
             "iadmin addchildtoresc demoResc cacheResc cache")
         admin_session.assert_icommand(
             "iadmin addchildtoresc demoResc archiveResc archive")
     super(Test_MSOSuite, self).setUp()
Esempio n. 21
0
    def test_iput_ibun_gzip_bzip2_from_devtest(self):
        # build expected variables with similar devtest names
        with lib.make_session_for_existing_admin() as rods_admin:
            rods_admin.assert_icommand(['ichmod', 'own', self.admin.username, '/' + self.admin.zone_name])

        progname = __file__
        myssize = str(os.stat(progname).st_size)
        username = self.admin.username
        irodszone = self.admin.zone_name
        testuser1 = self.user0.username
        irodshome = self.admin.session_collection
        irodsdefresource = self.admin.default_resource
        dir_w = "."
        sfile2 = dir_w + "/sfile2"
        commands.getstatusoutput("cat " + progname + " " + progname + " > " + sfile2)
        mysdir = "/tmp/irodssdir"
        myldir = dir_w + "/ldir"
        if os.path.exists(myldir):
            shutil.rmtree(myldir)
        self.admin.assert_icommand("imkdir icmdtest")

        # make a directory containing 20 small files
        if not os.path.isdir(mysdir):
            os.mkdir(mysdir)
        for i in range(20):
            mysfile = mysdir + "/sfile" + str(i)
            shutil.copyfile(progname, mysfile)

        # we put foo1 in $irodsdefresource and foo2 in testresource
        self.admin.assert_icommand("iput -K --wlock " + progname + " " + irodshome + "/icmdtest/foo1")
        self.admin.assert_icommand("icp -K -R " + self.testresc + " " +
                   irodshome + "/icmdtest/foo1 " + irodshome + "/icmdtest/foo2")

        self.admin.assert_icommand("irepl -B -R " + self.testresc + " " + irodshome + "/icmdtest/foo1")
        phypath = dir_w + "/" + "foo1." + str(random.randrange(10000000))
        self.admin.assert_icommand("iput -kfR " + irodsdefresource + " " + sfile2 + " " + irodshome + "/icmdtest/foo1")
        # show have 2 different copies
        self.admin.assert_icommand("ils -l " + irodshome + "/icmdtest/foo1", 'STDOUT', ["foo1", myssize])
        self.admin.assert_icommand("ils -l " + irodshome + "/icmdtest/foo1",
                   'STDOUT', ["foo1", str(os.stat(sfile2).st_size)])
        # update all old copies
        self.admin.assert_icommand("irepl -U " + irodshome + "/icmdtest/foo1")
        # make sure the old size is not there
        self.admin.assert_icommand_fail("ils -l " + irodshome + "/icmdtest/foo1", 'STDOUT', myssize)
        self.admin.assert_icommand("itrim -S " + irodsdefresource + " " + irodshome + "/icmdtest/foo1")
        # bulk test
        self.admin.assert_icommand("iput -bIvPKr " + mysdir + " " + irodshome + "/icmdtest", 'STDOUT', "Bulk upload")
        # iput with a lot of options
        rsfile = dir_w + "/rsfile"
        if os.path.isfile(rsfile):
            os.unlink(rsfile)
        self.admin.assert_icommand("iput -PkITr -X " + rsfile + " --retries 10 " +
                   mysdir + " " + irodshome + "/icmdtestw", 'STDOUT', "Processing")
        self.admin.assert_icommand("imv " + irodshome + "/icmdtestw " + irodshome + "/icmdtestw1")
        self.admin.assert_icommand("ils -lr " + irodshome + "/icmdtestw1", 'STDOUT', "sfile10")
        self.admin.assert_icommand("ils -Ar " + irodshome + "/icmdtestw1", 'STDOUT', "sfile10")
        self.admin.assert_icommand("irm -rvf " + irodshome + "/icmdtestw1", 'STDOUT', "num files done")
        if os.path.isfile(rsfile):
            os.unlink(rsfile)
        self.admin.assert_icommand("iget -vIKPfr -X rsfile --retries 10 " +
                   irodshome + "/icmdtest " + dir_w + "/testx", 'STDOUT', "opened")
        if os.path.isfile(rsfile):
            os.unlink(rsfile)
        commands.getstatusoutput("tar -chf " + dir_w + "/testx.tar -C " + dir_w + "/testx .")
        self.admin.assert_icommand("iput " + dir_w + "/testx.tar " + irodshome + "/icmdtestx.tar")
        self.admin.assert_icommand("ibun -x " + irodshome + "/icmdtestx.tar " + irodshome + "/icmdtestx")
        self.admin.assert_icommand("ils -lr " + irodshome + "/icmdtestx", 'STDOUT', ["foo2"])
        self.admin.assert_icommand("ils -lr " + irodshome + "/icmdtestx", 'STDOUT', ["sfile10"])
        self.admin.assert_icommand("ibun -cDtar " + irodshome + "/icmdtestx1.tar " + irodshome + "/icmdtestx")
        self.admin.assert_icommand("ils -l " + irodshome + "/icmdtestx1.tar", 'STDOUT', "testx1.tar")
        if os.path.exists(dir_w + "/testx1"):
            shutil.rmtree(dir_w + "/testx1")
        os.mkdir(dir_w + "/testx1")
        if os.path.isfile(dir_w + "/testx1.tar"):
            os.unlink(dir_w + "/testx1.tar")
        self.admin.assert_icommand("iget " + irodshome + "/icmdtestx1.tar " + dir_w + "/testx1.tar")
        commands.getstatusoutput("tar -xvf " + dir_w + "/testx1.tar -C " + dir_w + "/testx1")
        output = commands.getstatusoutput("diff -r " + dir_w + "/testx " + dir_w + "/testx1/icmdtestx")
        print "output is [" + str(output) + "]"
        assert output[0] == 0
        assert output[1] == "", "diff output was not empty..."

        # test ibun with gzip
        self.admin.assert_icommand("ibun -cDgzip " + irodshome + "/icmdtestx1.tar.gz " + irodshome + "/icmdtestx")
        self.admin.assert_icommand("ibun -x " + irodshome + "/icmdtestx1.tar.gz " + irodshome + "/icmdtestgz")
        if os.path.isfile("icmdtestgz"):
            os.unlink("icmdtestgz")
        self.admin.assert_icommand("iget -vr " + irodshome + "/icmdtestgz " + dir_w + "", 'STDOUT', "icmdtestgz")
        output = commands.getstatusoutput("diff -r " + dir_w + "/testx " + dir_w + "/icmdtestgz/icmdtestx")
        print "output is [" + str(output) + "]"
        assert output[0] == 0
        assert output[1] == "", "diff output was not empty..."
        shutil.rmtree(dir_w + "/icmdtestgz")
        self.admin.assert_icommand("ibun --add " + irodshome + "/icmdtestx1.tar.gz " + irodshome + "/icmdtestgz")
        self.admin.assert_icommand("irm -rf " + irodshome + "/icmdtestx1.tar.gz " + irodshome + "/icmdtestgz")

        # test ibun with bzip2
        self.admin.assert_icommand("ibun -cDbzip2 " + irodshome + "/icmdtestx1.tar.bz2 " + irodshome + "/icmdtestx")
        self.admin.assert_icommand("ibun -xb " + irodshome + "/icmdtestx1.tar.bz2 " + irodshome + "/icmdtestbz2")
        if os.path.isfile("icmdtestbz2"):
            os.unlink("icmdtestbz2")
        self.admin.assert_icommand("iget -vr " + irodshome + "/icmdtestbz2 " + dir_w + "", 'STDOUT', "icmdtestbz2")
        output = commands.getstatusoutput("diff -r " + dir_w + "/testx " + dir_w + "/icmdtestbz2/icmdtestx")
        print "output is [" + str(output) + "]"
        assert output[0] == 0
        assert output[1] == "", "diff output was not empty..."
        shutil.rmtree(dir_w + "/icmdtestbz2")
        self.admin.assert_icommand("irm -rf " + irodshome + "/icmdtestx1.tar.bz2")
        self.admin.assert_icommand("iphybun -R " + self.anotherresc + " -Dbzip2 " + irodshome + "/icmdtestbz2")
        self.admin.assert_icommand("itrim -N1 -S " + self.testresc + " -r " + irodshome + "/icmdtestbz2", 'STDOUT', "Total size trimmed")
        self.admin.assert_icommand("itrim -N1 -S " + irodsdefresource + " -r " + irodshome + "/icmdtestbz2", 'STDOUT', "Total size trimmed")

        # get the name of bundle file
        output = commands.getstatusoutput(
            "ils -L " + irodshome + "/icmdtestbz2/icmdtestx/foo1 | tail -n1 | awk '{ print $NF }'")
        print output[1]
        bunfile = output[1]
        self.admin.assert_icommand("ils --bundle " + bunfile, 'STDOUT', "Subfiles")
        self.admin.assert_icommand("irm -rf " + irodshome + "/icmdtestbz2")
        self.admin.assert_icommand("irm -f --empty " + bunfile)

        # cleanup
        os.unlink(dir_w + "/testx1.tar")
        os.unlink(dir_w + "/testx.tar")
        shutil.rmtree(dir_w + "/testx1")
        shutil.rmtree(dir_w + "/testx")
        os.unlink(sfile2)
        if os.path.exists(myldir):
            shutil.rmtree(myldir)
        if os.path.exists(mysdir):
            shutil.rmtree(mysdir)