Exemple #1
0
class PythonTest(CppTest):
    tags = ['arrow', 'python', 'parquet', 'plasma']
    hostconfig = {
        'shm_size': '2G',  # required for plasma
    }
    properties = {
        **CppTest.properties,
        'ARROW_PYTHON': 'ON',
    }
    steps = [
        *CppTest.steps[:-1],  # excluding the last test step
        python_install,
        python_test
    ]
    images = (
        images.filter(
            name=startswith('python'),
            arch='amd64',
            os=startswith('ubuntu'),
            variant=None,  # plain linux images, not conda
            tag='worker'
        ) +
        images.filter(
            name=startswith('python'),
            arch='arm64v8',
            os='ubuntu-18.04',
            variant=None,  # plain linux images, not conda
            tag='worker'
        )
    )
Exemple #2
0
class CppBenchmark(DockerBuilder):
    tags = ['arrow', 'cpp', 'benchmark']
    properties = {
        'CMAKE_INSTALL_PREFIX': '/usr/local',
        'CMAKE_INSTALL_LIBDIR': 'lib'
    }
    steps = [
        checkout_arrow,
        Pip(['install', '-e', '.'], workdir='dev/archery'),
        Archery(
            args=util.FlattenList([
                'benchmark',
                'diff',
                '--output=diff.json',
                util.Property('benchmark_options', []),
                'WORKSPACE',
                util.Property('benchmark_baseline', 'master')
            ]),
            result_file='diff.json'
        )
    ]
    images = images.filter(
        name='cpp-benchmark',
        os=startswith('ubuntu'),
        arch='amd64',  # until ARROW-5382: SSE on ARM NEON gets resolved
        variant=None,  # plain linux images, not conda
        tag='worker'
    )
Exemple #3
0
class JavaTest(DockerBuilder):
    tags = ['arrow', 'java']
    steps = [
        checkout_arrow,
        Maven(
            args=['-B', 'test'],
            workdir='java',
            name='Maven Test',
        )
    ]
    images = images.filter(
        name=startswith('java'),
        arch='amd64',
        tag='worker'
    )
Exemple #4
0
class PythonCudaTest(PythonTest):
    tags = ['arrow', 'python', 'cuda', 'parquet', 'plasma']
    hostconfig = {
        'shm_size': '2G',  # required for plasma
        'runtime': 'nvidia',  # required for cuda
    }
    properties = {
        **PythonTest.properties,
        'ARROW_CUDA': 'ON',  # also sets PYARROW_WITH_CUDA
    }
    images = images.filter(
        name=startswith('python'),
        arch='amd64',
        variant='cuda',
        tag='worker'
    )
Exemple #5
0
class JSTest(DockerBuilder):
    tags = ['arrow', 'js']
    volumes = [
        util.Interpolate('%(prop:builddir)s:/root/.npm:rw')
    ]
    steps = [
        checkout_arrow,
        Npm(['install', '-g', 'npm@latest'], workdir='js', name='Update NPM'),
        Npm(['install'], workdir='js', name='Install Dependencies'),
        Npm(['run', 'lint'], workdir='js', name='Lint'),
        Npm(['run', 'build'], workdir='js', name='Build'),
        Npm(['run', 'test'], workdir='js', name='Test')
    ]
    images = images.filter(
        name=startswith('js'),
        arch='amd64',
        tag='worker'
    )
Exemple #6
0
class PythonCondaTest(CppCondaTest):
    tags = ['arrow', 'cpp', 'flight', 'gandiva', 'parquet', 'plasma', 'python']
    hostconfig = {
        'shm_size': '2G',  # required for plasma
    }
    properties = {
        **CppCondaTest.properties,
        'ARROW_PYTHON': 'ON'
    }
    steps = [
        *CppCondaTest.steps[:-1],
        python_install,
        python_test
    ]
    images = images.filter(
        name=startswith('python'),
        variant='conda',
        tag='worker'
    )
Exemple #7
0
class CppTest(DockerBuilder):
    tags = ['arrow', 'cpp', 'parquet', 'plasma']
    volumes = [
        util.Interpolate('%(prop:builddir)s:/root/.ccache:rw')
    ]
    properties = {
        'ARROW_PARQUET': 'ON',
        'ARROW_PLASMA': 'ON',
        'CMAKE_INSTALL_PREFIX': '/usr/local',
        'CMAKE_INSTALL_LIBDIR': 'lib'
    }
    env = {
        'PARQUET_TEST_DATA': parquet_test_data_path  # for parquet
    }
    steps = [
        checkout_arrow,
        cpp_mkdir,
        cpp_cmake,
        cpp_compile,
        cpp_install,
        cpp_test
    ]
    images = (
        images.filter(
            name='cpp',
            arch='amd64',
            os=startswith('ubuntu'),
            variant=None,  # plain linux images, not conda
            tag='worker'
        ) +
        images.filter(
            name='cpp',
            arch='arm64v8',
            os='ubuntu-18.04',
            variant=None,  # plain linux images, not conda
            tag='worker'
        )
    )
Exemple #8
0
class GoTest(DockerBuilder):
    tags = ['arrow', 'go']
    env = {
        'GO111MODULE': 'on',
    }
    steps = [
        checkout_arrow,
        Go(
            args=['get', '-v', '-t', './...'],
            workdir='go/arrow',
            name='Go Build',
        ),
        Go(
            args=['test', './...'],
            workdir='go/arrow',
            name='Go Test',
        )
    ]
    images = images.filter(
        name=startswith('go'),
        arch='amd64',
        tag='worker'
    )
Exemple #9
0
class RustTest(DockerBuilder):
    tags = ['arrow', 'rust']
    env = {
        'ARROW_TEST_DATA': arrow_test_data_path,
        'PARQUET_TEST_DATA': parquet_test_data_path
    }
    steps = [
        checkout_arrow,
        Cargo(
            args=['build'],
            workdir='rust',
            name='Rust Build'
        ),
        Cargo(
            args=['test'],
            workdir='rust',
            name='Rust Test'
        )
    ]
    images = images.filter(
        name=startswith('rust'),
        arch='amd64',
        tag='worker'
    )