Compare commits
5 Commits
842458f20c
...
5e59eb4302
Author | SHA1 | Date | |
---|---|---|---|
5e59eb4302 | |||
884787f31d | |||
9d98d5d8d1 | |||
4d2c491733 | |||
a5b7d2773e |
22
.devcontainer/devcontainer.json
Normal file
22
.devcontainer/devcontainer.json
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
||||||
|
// README at: https://github.com/devcontainers/templates/tree/main/src/python
|
||||||
|
{
|
||||||
|
"name": "Python 3",
|
||||||
|
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
||||||
|
"image": "mcr.microsoft.com/devcontainers/python:1-3.12-bullseye"
|
||||||
|
|
||||||
|
// Features to add to the dev container. More info: https://containers.dev/features.
|
||||||
|
// "features": {},
|
||||||
|
|
||||||
|
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
||||||
|
// "forwardPorts": [],
|
||||||
|
|
||||||
|
// Use 'postCreateCommand' to run commands after the container is created.
|
||||||
|
// "postCreateCommand": "pip3 install --user -r requirements.txt",
|
||||||
|
|
||||||
|
// Configure tool-specific properties.
|
||||||
|
// "customizations": {},
|
||||||
|
|
||||||
|
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
||||||
|
// "remoteUser": "root"
|
||||||
|
}
|
17
Jenkinsfile
vendored
17
Jenkinsfile
vendored
@ -1,14 +1,21 @@
|
|||||||
pipeline {
|
pipeline {
|
||||||
agent any
|
agent {
|
||||||
|
kubernetes {
|
||||||
|
cloud 'rsys-devel'
|
||||||
|
defaultContainer 'pip'
|
||||||
|
inheritFrom 'pip'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
stage("install") {
|
stage("install") {
|
||||||
steps {
|
steps {
|
||||||
sh 'mamba env update --file environment.yml --prefix ./env || mamba env create --force --file environment.yml --prefix ./env'
|
sh 'pip install -r requirements.txt'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
stage("unit tests") {
|
stage("unit tests") {
|
||||||
steps {
|
steps {
|
||||||
sh "python -m pytest --junitxml=test_results.xml"
|
sh returnStatus: true, script: "python -m pytest --junitxml=test_results.xml"
|
||||||
xunit checksName: '', tools: [JUnit(excludesPattern: '', pattern: 'test_results.xml', stopProcessingIfError: true)]
|
xunit checksName: '', tools: [JUnit(excludesPattern: '', pattern: 'test_results.xml', stopProcessingIfError: true)]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -17,11 +24,13 @@ pipeline {
|
|||||||
sh 'rm -rf ./dist/*'
|
sh 'rm -rf ./dist/*'
|
||||||
sh 'rm -rf ./docs/build/*'
|
sh 'rm -rf ./docs/build/*'
|
||||||
sh "python -m build"
|
sh "python -m build"
|
||||||
|
container('sphinx') {
|
||||||
sh 'sphinx-apidoc -o docs/source/autodoc/bmlsa src/bmlsa --force'
|
sh 'sphinx-apidoc -o docs/source/autodoc/bmlsa src/bmlsa --force'
|
||||||
sh 'sphinx-build -M html ./docs/source ./docs/build'
|
sh 'sphinx-build -M html ./docs/source ./docs/build'
|
||||||
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'docs/build/html', reportFiles: 'index.html', reportName: 'Documentation', reportTitles: ''])
|
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'docs/build/html', reportFiles: 'index.html', reportName: 'Documentation', reportTitles: ''])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
stage("test installation") {
|
stage("test installation") {
|
||||||
steps {
|
steps {
|
||||||
sh "pip install dist/*.whl --force-reinstall"
|
sh "pip install dist/*.whl --force-reinstall"
|
||||||
@ -39,7 +48,7 @@ pipeline {
|
|||||||
branch '**/master'
|
branch '**/master'
|
||||||
}
|
}
|
||||||
steps {
|
steps {
|
||||||
withCredentials([usernamePassword(credentialsId: 'rs-git-package-registry-ydeng', passwordVariable: 'PASS', usernameVariable: 'USER')]) {
|
withCredentials([usernamePassword(credentialsId: '4d6f64be-d26d-4f95-8de3-b6a9b0beb311', passwordVariable: 'PASS', usernameVariable: 'USER')]) {
|
||||||
sh returnStatus: true, script: 'python -m twine upload --repository-url https://git.reslate.systems/api/packages/${USER}/pypi -u ${USER} -p ${PASS} --non-interactive --disable-progress-bar --verbose dist/*'
|
sh returnStatus: true, script: 'python -m twine upload --repository-url https://git.reslate.systems/api/packages/${USER}/pypi -u ${USER} -p ${PASS} --non-interactive --disable-progress-bar --verbose dist/*'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
6
requirements.txt
Normal file
6
requirements.txt
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
biopython==1.81
|
||||||
|
pytest
|
||||||
|
hypothesis
|
||||||
|
twine
|
||||||
|
build
|
||||||
|
setuptools
|
Loading…
x
Reference in New Issue
Block a user