From d6e28d387d786b514a2e8c0fe0403c8762c6eae1 Mon Sep 17 00:00:00 2001 From: Theofilos Manitaras Date: Thu, 21 Jun 2018 13:31:00 +0200 Subject: [PATCH 1/2] Create setup.py script for deployment to PyPI * Add the `setup.py` script. * Add the PyPI deployment steps to the deployment script. --- README.md | 2 +- ci-scripts/deploy.sh | 4 +++- setup.py | 31 +++++++++++++++++++++++++++++++ 3 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 setup.py diff --git a/README.md b/README.md index d7b99d6901..751689d7c6 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ # ReFrame -ReFrame is a new framework for writing regression tests for HPC systems. +ReFrame is a framework for writing regression tests for HPC systems. The goal of this framework is to abstract away the complexity of the interactions with the system, separating the logic of a regression test from the low-level details, which pertain to the system configuration and setup. This allows users to write easily portable regression tests, focusing only on the functionality. diff --git a/ci-scripts/deploy.sh b/ci-scripts/deploy.sh index 7b51b93fda..091f05684c 100755 --- a/ci-scripts/deploy.sh +++ b/ci-scripts/deploy.sh @@ -46,11 +46,13 @@ fi python3 -m venv venv.deployment source venv.deployment/bin/activate -pip install --upgrade pip +pip install --upgrade pip setuptools wheel twine pip install -r requirements.txt ./test_reframe.py git tag -a v$version -m "ReFrame $version" git push origin --tags +python setup.py sdist bdist_wheel +twine upload dist/* deactivate cd $oldpwd echo "Deployment was successful!" diff --git a/setup.py b/setup.py new file mode 100644 index 0000000000..cb11a3fe59 --- /dev/null +++ b/setup.py @@ -0,0 +1,31 @@ +import setuptools + +from reframe import VERSION + +with open('README.md') as read_me: + long_description = ''.join(read_me.readlines()[4:]) + +setuptools.setup( + name='ReFrame-HPC', + version=VERSION, + author='CSCS Swiss National Supercomputing Center', + description='ReFrame is a framework for writing regression tests ' + 'for HPC systems', + long_description=long_description, + long_description_content_type='text/markdown', + url='https://github.com/eth-cscs/reframe', + licence='BSD 3-Clause', + packages=setuptools.find_packages(exclude=['unittests']), + python_requires='>=3.5', + scripts=['bin/reframe'], + classifiers=( + 'Development Status :: 5 - Production/Stable', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', + 'License :: OSI Approved :: BSD License', + 'Operating System :: MacOS', + 'Operating System :: POSIX :: Linux', + 'Environment :: Console' + ), +) From 3750fd8e05ec2fc7a7d77a989d9d28d59f0dd332 Mon Sep 17 00:00:00 2001 From: Vasileios Karakasis Date: Tue, 9 Apr 2019 22:03:22 +0200 Subject: [PATCH 2/2] Add README section about getting ReFrame --- README.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/README.md b/README.md index 751689d7c6..0e78e7f9c0 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,31 @@ Writing system regression tests in a high-level modern programming language, lik Users can create their own test hierarchies, create test factories for generating multiple tests at the same time and also customize them in a simple and expressive way. +## Getting ReFrame + +You may install ReFrame directly from [PyPI](https://pypi.org/project/ReFrame-HPC/) through `pip`: + +```bash +pip install reframe-hpc +``` + +ReFrame will be available in your PATH: + +```bash +reframe -V +``` + +Alternatively, and especially if you want to contribute back to the framework, you may clone this repository: + +```bash +git clone https://github.com/eth-cscs/reframe.git +cd reframe +./bin/reframe -V +``` + +Finally, you may access all previous versions of ReFrame [here](https://github.com/eth-cscs/reframe/releases). + + ## Documentation You may find the official documentation of the latest release and the current master in the following links: