This repository has been archived on 2023-06-02. You can view files and clone it, but cannot push or open issues or pull requests.
mltraining/Jenkinsfile
Harrison 4c0e7fe25c
All checks were successful
ydeng/mltraining/pipeline/head This commit looks good
Setup as 'pip' library
2023-06-02 05:33:57 +00:00

35 lines
1.7 KiB
Groovy

pipeline {
agent any
stages {
stage("install") {
steps {
sh 'mamba env update --file environment.yml --prefix ./env || mamba env create --force --file environment.yml --prefix ./env'
sh 'echo conda environment: $CONDA_PREFIX'
}
}
stage("unit tests") {
steps {
sh returnStatus: true, script: "python -m pytest --junitxml=test_results.tests.xml --cov-report xml:test_coverage.coverage.xml --cov=mltraining"
xunit checksName: '', thresholdMode: 2, thresholds: [failed(unstableThreshold: '90')], tools: [JUnit(excludesPattern: '', pattern: 'test_results.tests.xml', stopProcessingIfError: true)]
// cobertura autoUpdateHealth: false, autoUpdateStability: false, coberturaReportFile: 'test_coverage.coverage.xml', failUnhealthy: false, failUnstable: false, maxNumberOfBuilds: 64, lineCoverageTargets: '50, 0, 0', methodCoverageTargets: '50, 0, 0', onlyStable: false, sourceEncoding: 'ASCII', zoomCoverageChart: false
}
}
stage("build") {
steps {
sh 'rm -rf ./dist/*'
sh "python -m build"
}
}
stage("publish") {
environment {
CREDS = credentials('rs-git-package-registry-ydeng')
}
when {
branch '**/main'
}
steps {
sh returnStatus: true, script: 'python -m twine upload --repository-url https://git.reslate.systems/api/packages/${CREDS_USR}/pypi -u ${CREDS_USR} -p ${CREDS_PSW} --non-interactive --disable-progress-bar --verbose dist/*'
}
}
}
}