Skip to content
Snippets Groups Projects
Commit 6bb2c59a authored by Christoph Harmel's avatar Christoph Harmel
Browse files

feat: updated CI, setup.py and requirements.txt

parent aa0364cf
No related branches found
No related tags found
2 merge requests!31Ci,!30feat: updated CI, setup.py and requirements.txt
Pipeline #14856 failed
# This file is a template, and might need editing before it works on your project. default: # Set default
# This is a sample GitLab CI/CD configuration file that should run without any modifications. tags:
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts, - docker
# it uses echo commands to simulate the pipeline execution. image: python:3.10-slim-buster
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
#
# You can copy and paste this template into a new `.gitlab-ci.yml` file.
# You should not add this template to an existing `.gitlab-ci.yml` file by using the `include:` keyword.
#
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
#default:
# tags:
# - docker
# image: python:3.10-slim-buster
stages: # List of stages for jobs, and their order of execution stages: # List of stages for jobs, and their order of execution
- build - build
...@@ -29,22 +11,20 @@ stages: # List of stages for jobs, and their order of execution ...@@ -29,22 +11,20 @@ stages: # List of stages for jobs, and their order of execution
build-job: # This job runs in the build stage, which runs first. build-job: # This job runs in the build stage, which runs first.
stage: build stage: build
script: script:
- echo "Compiling the code..." - pip install requirements.txt requirements-dev.txt
- echo "Compile complete." - pip install -e .
unit-test-job: # This job runs in the test stage. unit-test-job: # This job runs in the test stage.
stage: test # It only starts when the job in the build stage completes successfully. stage: test # It only starts when the job in the build stage completes successfully.
script: script:
- echo "Running unit tests... This will take about 60 seconds." - coverage run --source readsequencer -m pytest
- sleep 60 - coverage report -m
- echo "Code coverage is 90%"
lint-test-job: # This job also runs in the test stage. lint-test-job: # This job also runs in the test stage.
stage: test # It can run at the same time as unit-test-job (in parallel). stage: test # It can run at the same time as unit-test-job (in parallel).
script: script:
- echo "Linting code... This will take about 10 seconds." - flake8 --docstring-convention google readsequencer/ tests/
- sleep 10 - pylint readsequencer/ tests/
- echo "No lint issues found."
deploy-job: # This job runs in the deploy stage. deploy-job: # This job runs in the deploy stage.
stage: deploy # It only runs when *both* jobs in the test stage complete successfully. stage: deploy # It only runs when *both* jobs in the test stage complete successfully.
......
Bio
argparse
\ No newline at end of file
from setuptools import setup, find_packages from setuptools import setup, find_packages
with open(project_root_dir / "requirements.txt", "r", encoding="utf-8") as _file:
INSTALL_REQUIRES = _file.read().splitlines()
setup( setup(
name='readsequencer', name='readsequencer',
version='0.1.1', version='0.1.1',
...@@ -9,6 +12,6 @@ setup( ...@@ -9,6 +12,6 @@ setup(
author_email='christoph.harmel@unibas.ch', author_email='christoph.harmel@unibas.ch',
description='Simulates sequencing with a specified read length from sequences specified by a FASTA file.', description='Simulates sequencing with a specified read length from sequences specified by a FASTA file.',
packages=find_packages(), packages=find_packages(),
install_requires=['Bio','argparse'], install_requires=INSTALL_REQUIRES,
entry_points={'console_scripts': ['readsequencer=readsequencer.cli:main']} entry_points={'console_scripts': ['readsequencer=readsequencer.cli:main']}
) )
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment