def install_build_prerequisites():
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])
    irods_python_ci_utilities.install_os_packages(get_build_prerequisites())
def install_messaging_package(message_broker):
    if 'apache-activemq-' in message_broker:
        version_number = message_broker.split('-')[2]
        tarfile = message_broker + '-bin.tar.gz'
        url = 'http://archive.apache.org/dist/activemq/' + version_number + '/' + tarfile
        activemq_dir = message_broker + '/bin/activemq'

        irods_python_ci_utilities.subprocess_get_output(['wget', url])
        irods_python_ci_utilities.subprocess_get_output(['tar', 'xvfz', tarfile])
        irods_python_ci_utilities.subprocess_get_output([activemq_dir, 'start'])

    if 'rabbitmq' in message_broker:
        if irods_python_ci_utilities.get_distribution() == 'Ubuntu':
            irods_python_ci_utilities.subprocess_get_output('curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.deb.sh | sudo bash', shell=True)
            irods_python_ci_utilities.subprocess_get_output(['wget', 'https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'dpkg', '-i', 'erlang-solutions_1.0_all.deb'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'apt-get', 'update', '-y'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'apt-get', 'install', 'esl-erlang=1:19.3.6', '-y'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'apt-get', 'install', 'rabbitmq-server', '-y'])

        if irods_python_ci_utilities.get_distribution() == 'Centos' or irods_python_ci_utilities.get_distribution() == 'Centos linux':
            irods_python_ci_utilities.subprocess_get_output('curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash', shell=True)
            irods_python_ci_utilities.subprocess_get_output('curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash', shell=True)
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'yum', 'install', 'erlang', '-y'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'yum', 'install', 'rabbitmq-server', '-y'])
            if irods_python_ci_utilities.get_distribution_version_major() == '6':
                irods_python_ci_utilities.subprocess_get_output(['sudo', 'update-rc.d', 'rabbitmq-server', 'defaults'])
            else:
                irods_python_ci_utilities.subprocess_get_output(['sudo', 'systemctl', 'enable', 'rabbitmq-server'])

            irods_python_ci_utilities.subprocess_get_output(['sudo', 'service', 'rabbitmq-server', 'start'])

        irods_python_ci_utilities.subprocess_get_output(['sudo', 'rabbitmq-plugins', 'enable', 'rabbitmq_amqp1_0'])
Пример #3
0
def install_build_prerequisites():
    global Java_Home
    irods_python_ci_utilities.install_os_packages(get_build_prerequisites())
    java_version_check = re.compile('openjdk version[^\d]*1\.8\.',
                                    re.MULTILINE)
    java_version_text = '\n'.join(
        irods_python_ci_utilities.subprocess_get_output(
            ['/usr/bin/java', '-version'])[1:3])
    java_real_bin = os.path.realpath('/usr/bin/java')
    Java_Home = os.path.sep.join((java_real_bin.split(os.path.sep))[:-2])
    if not java_version_check.search(java_version_text):
        raise WrongJavaAsDefault
    if irods_python_ci_utilities.get_distribution(
    ) == 'Ubuntu':  # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(
                ['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output([
                'sudo', 'add-apt-repository', '-y',
                'ppa:ubuntu-toolchain-r/test'
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.subprocess_get_output([
                'sudo', 'update-java-alternatives', '--set',
                'java-1.8.0-openjdk-amd64'
            ])
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])
def install_os_specific_dependencies_apt():
    if irods_python_ci_utilities.get_distribution(
    ) == 'Ubuntu':  # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(
                ['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output([
                'sudo', 'add-apt-repository', '-y',
                'ppa:ubuntu-toolchain-r/test'
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])

    irods_python_ci_utilities.install_os_packages([
        'fakeroot',
        'help2man',
        'libbz2-dev',
        'libcurl4-gnutls-dev',
        'libkrb5-dev',
        'libpam0g-dev',
        'libssl-dev',
        'make',
        'python-dev',
        'unixodbc',
        'unixodbc-dev',
        'zlib1g-dev',
    ])
Пример #5
0
def install_build_prerequisites_apt():
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])
    irods_python_ci_utilities.install_os_packages(get_build_prerequisites())
Пример #6
0
def install_building_dependencies_redhat():
    base = ['git', 'python-devel', 'help2man', 'unixODBC', 'fuse-devel', 'curl-devel', 'bzip2-devel', 'zlib-devel', 'pam-devel', 'openssl-devel', 'libxml2-devel', 'krb5-devel', 'unixODBC-devel', 'perl-JSON', 'python-psutil', 'fakeroot']
    version_specific = {
        '6': [],
        '7': ['mysql++-devel'],
    }
    ci.install_os_packages(base + version_specific[ci.get_distribution_version_major()])
Пример #7
0
def install_os_specific_dependencies_yum():
    packages_to_install = [
        'bzip2-devel', 'curl-devel', 'fakeroot', 'help2man', 'openssl-devel',
        'pam-devel', 'python-devel', 'unixODBC', 'unixODBC-devel', 'zlib-devel',
    ]
    if irods_python_ci_utilities.get_distribution_version_major() == '7':
        packages_to_install.append('mysql++-devel')
    irods_python_ci_utilities.install_os_packages(packages_to_install)
def install_os_specific_dependencies_apt():
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        irods_python_ci_utilities.subprocess_get_output(['sudo', 'apt-get', 'update'], check_rc=True)
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])
    irods_python_ci_utilities.install_os_packages(['make', 'libssl-dev', 'libxml2-dev', 'libcurl4-gnutls-dev', 'gcc'])
def install_os_specific_dependencies_yum():
    packages_to_install = [
        'bzip2-devel', 'curl-devel', 'fakeroot', 'help2man', 'openssl-devel',
        'pam-devel', 'python-devel', 'unixODBC', 'unixODBC-devel', 'zlib-devel',
    ]
    if irods_python_ci_utilities.get_distribution_version_major() == '7':
        packages_to_install.append('mysql++-devel')
    irods_python_ci_utilities.install_os_packages(packages_to_install)
Пример #10
0
def install_build_prerequisites_apt():
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])
    irods_python_ci_utilities.install_os_packages(get_build_prerequisites())
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu':
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.make_symbolic_link_as_root('/usr/lib/libglobus_callout.so.0', '/usr/lib/libglobus_callout.so')
            irods_python_ci_utilities.make_symbolic_link_as_root('/usr/lib/libglobus_gss_assist.so.3', '/usr/lib/libglobus_gss_assist.so')
        elif irods_python_ci_utilities.get_distribution_version_major() == '14':
            irods_python_ci_utilities.make_symbolic_link_as_root('/usr/lib/x86_64-linux-gnu/libglobus_callout.so.0', '/usr/lib/x86_64-linux-gnu/libglobus_callout.so')
            irods_python_ci_utilities.make_symbolic_link_as_root('/usr/lib/x86_64-linux-gnu/libglobus_gss_assist.so.3', '/usr/lib/x86_64-linux-gnu/libglobus_gss_assist.so')
        elif irods_python_ci_utilities.get_distribution_version_major() == '16':
            irods_python_ci_utilities.make_symbolic_link_as_root('/usr/lib/x86_64-linux-gnu/libglobus_callout.so.0', '/usr/lib/x86_64-linux-gnu/libglobus_callout.so')
            irods_python_ci_utilities.make_symbolic_link_as_root('/usr/lib/x86_64-linux-gnu/libglobus_gss_assist.so.3', '/usr/lib/x86_64-linux-gnu/libglobus_gss_assist.so')
Пример #11
0
def restart_kerberos_yum():
    if irods_python_ci_utilities.get_distribution_version_major() == '6':
        irods_python_ci_utilities.subprocess_get_output(
            ['/etc/init.d/krb5kdc', 'restart'], check_rc=True)
        irods_python_ci_utilities.subprocess_get_output(
            ['/etc/init.d/kadmin', 'restart'], check_rc=True)
        irods_python_ci_utilities.subprocess_get_output(
            ['chkconfig', 'krb5kdc', 'on'], check_rc=True)
        irods_python_ci_utilities.subprocess_get_output(
            ['chkconfig', 'kadmin', 'on'], check_rc=True)
    elif irods_python_ci_utilities.get_distribution_version_major() == '7':
        irods_python_ci_utilities.subprocess_get_output(
            ['sudo', 'systemctl', 'restart', 'krb5kdc.service'], check_rc=True)
        irods_python_ci_utilities.subprocess_get_output(
            ['sudo', 'systemctl', 'restart', 'kadmin.service'], check_rc=True)
    else:
        assert False, 'OS unsupported: ' + irods_python_ci_utilities.get_irods_platform_string(
        )
Пример #12
0
def install_build_prerequisites():
    irods_python_ci_utilities.subprocess_get_output(['sudo', 'pip', 'install', 'boto3', '--upgrade'], check_rc=True)
    irods_python_ci_utilities.subprocess_get_output(['sudo', 'pip', 'install', 'minio==6.0.2', '--upgrade'], check_rc=True)
    irods_python_ci_utilities.subprocess_get_output(['sudo', '-EH', 'pip', 'install', 'unittest-xml-reporting==1.14.0'])
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])
def get_build_prerequisites_apt():
    pre_reqs = [
        'uuid-dev', 'libssl-dev', 'libsasl2-2', 'libsasl2-dev', 'python-dev'
    ]
    if irods_python_ci_utilities.get_distribution_version_major() == '12':
        pre_reqs = pre_reqs + ['openjdk-7-jre']
    else:
        pre_reqs = pre_reqs + ['default-jre']

    return get_build_prerequisites_all() + pre_reqs
def install_os_specific_dependencies_apt():
    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])

    irods_python_ci_utilities.install_os_packages([
        'fakeroot', 'help2man', 'libbz2-dev', 'libcurl4-gnutls-dev', 'libkrb5-dev', 'libpam0g-dev',
        'libssl-dev', 'make', 'python-dev', 'unixodbc', 'unixodbc-dev', 'zlib1g-dev',
    ])
def install_build_prerequisites():
    irods_python_ci_utilities.subprocess_get_output(['sudo', '-EH', 'pip', 'install', 'unittest-xml-reporting==1.14.0'])

    if irods_python_ci_utilities.get_distribution() == 'Ubuntu': # cmake from externals requires newer libstdc++ on ub12
        if irods_python_ci_utilities.get_distribution_version_major() == '12':
            irods_python_ci_utilities.install_os_packages(['python-software-properties'])
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
            irods_python_ci_utilities.subprocess_get_output(['sudo', 'update-java-alternatives', '--set', 'java-1.7.0-openjdk-amd64'])
            irods_python_ci_utilities.install_os_packages(['libstdc++6'])

    irods_python_ci_utilities.install_os_packages(get_build_prerequisites())
Пример #16
0
def install_building_dependencies_debian():
    ci.install_os_packages(['git', 'g++', 'make', 'python-dev', 'help2man', 'unixodbc', 'libfuse-dev', 'libcurl4-gnutls-dev', 'libbz2-dev', 'zlib1g-dev', 'libpam0g-dev', 'libssl-dev', 'libxml2-dev', 'libkrb5-dev', 'unixodbc-dev', 'libjson-perl', 'python-psutil', 'fakeroot'])
    if ci.get_distribution_version_major() == '12':
        ci.install_os_packages(['python-software-properties'])
        ci.subprocess_get_output(['sudo', 'add-apt-repository', '-y', 'ppa:ubuntu-toolchain-r/test'], check_rc=True)
        ci.install_os_packages(['libstdc++6'])
Пример #17
0
def install_testing_dependencies():
    ci.subprocess_get_output(['sudo', '-E', 'pip2', 'install', '--upgrade', 'unittest-xml-reporting==1.14.0'], check_rc=True)
    if not (ci.get_distribution() == 'Ubuntu' and ci.get_distribution_version_major() == '12'):
        ci.install_os_packages(['python-jsonschema'])
def get_build_prerequisites_apt():
    if irods_python_ci_utilities.get_distribution_version_major() == '12':
        return['openjdk-7-jre']+get_build_prerequisites_all()

    else:
        return['default-jre']+get_build_prerequisites_all()
def configure_client_apt(database):
    if database == 'postgres':
        irods_python_ci_utilities.subprocess_get_output(['apt-get', 'update'],
                                                        check_rc=True)
        irods_python_ci_utilities.install_os_packages(
            ['postgresql-client', 'odbc-postgresql', 'unixodbc', 'super'])
    elif database == 'mysql':
        #pass
        irods_python_ci_utilities.subprocess_get_output(['apt-get', 'update'],
                                                        check_rc=True)
        irods_python_ci_utilities.install_os_packages([
            'mysql-client', 'libpcre3-dev', 'libmysqlclient-dev',
            'build-essential', 'libtool', 'autoconf', 'unixodbc'
        ])
        if irods_python_ci_utilities.get_distribution_version_major() == '16':
            tar_output_dir = tempfile.mkdtemp(
                prefix='irods_mysql_connector_tar_extraction')
            irods_python_ci_utilities.subprocess_get_output([
                'tar', 'xf',
                '/projects/irods/vsphere-testing/externals/mysql-connector-odbc-5.3.7-linux-ubuntu16.04-x86-64bit.tar.gz',
                '--directory', tar_output_dir
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.subprocess_get_output([
                'sudo', 'cp',
                os.path.join(
                    tar_output_dir,
                    'mysql-connector-odbc-5.3.7-linux-ubuntu16.04-x86-64bit',
                    'lib', 'libmyodbc5a.so'), '/usr/lib'
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.subprocess_get_output([
                'sudo', 'cp',
                os.path.join(
                    tar_output_dir,
                    'mysql-connector-odbc-5.3.7-linux-ubuntu16.04-x86-64bit',
                    'lib', 'libmyodbc5S.so'), '/usr/lib'
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.subprocess_get_output([
                'sudo', 'cp',
                os.path.join(
                    tar_output_dir,
                    'mysql-connector-odbc-5.3.7-linux-ubuntu16.04-x86-64bit',
                    'lib', 'libmyodbc5w.so'), '/usr/lib'
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.subprocess_get_output([
                'sudo',
                os.path.join(
                    tar_output_dir,
                    'mysql-connector-odbc-5.3.7-linux-ubuntu16.04-x86-64bit',
                    'bin', 'myodbc-installer'), '-d', '-a', '-n',
                'MySQL ODBC 5.3 Unicode Driver', '-t',
                'DRIVER=/usr/lib/libmyodbc5w.so;SETUP=/usr/lib/myodbc5S.so'
            ],
                                                            check_rc=True)
            irods_python_ci_utilities.subprocess_get_output([
                'sudo',
                os.path.join(
                    tar_output_dir,
                    'mysql-connector-odbc-5.3.7-linux-ubuntu16.04-x86-64bit',
                    'bin', 'myodbc-installer'), '-d', '-a', '-n',
                'MySQL ODBC 5.3 ANSI Driver', '-t',
                'DRIVER=/usr/lib/libmyodbc5a.so;SETUP=/usr/lib/myodbc5S.so'
            ],
                                                            check_rc=True)
    elif database == 'oracle':
        install_oracle_dependencies()
        install_oracle_client()