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

Merge branch 'ci' into 'main'

Ci

See merge request !31
parents aa0364cf 6cc8f489
Branches
Tags
1 merge request!31Ci
Pipeline #14862 passed
# 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,27 @@ stages: # List of stages for jobs, and their order of execution ...@@ -29,22 +11,27 @@ 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 -r requirements.txt
- echo "Compile complete." - pip install -r requirements-dev.txt
- 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." - pip install -r requirements.txt
- sleep 60 - pip install -r requirements-dev.txt
- echo "Code coverage is 90%" - pip install -e .
- coverage run --source readsequencer -m pytest
- coverage report -m
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." - pip install -r requirements.txt
- sleep 10 - pip install -r requirements-dev.txt
- echo "No lint issues found." - pip install -e .
#- flake8 --docstring-convention google readsequencer/ tests/
#- pylint readsequencer/ tests/
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
from pathlib import Path
project_root_dir = Path(__file__).parent.resolve()
with open(project_root_dir / "requirements.txt", "r", encoding="utf-8") as _file:
INSTALL_REQUIRES = _file.read().splitlines()
setup( setup(
name='readsequencer', name='readsequencer',
...@@ -9,6 +13,6 @@ setup( ...@@ -9,6 +13,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