-
Notifications
You must be signed in to change notification settings - Fork 0
/
Jenkinsfile
39 lines (35 loc) · 1023 Bytes
/
Jenkinsfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
pipeline {
agent {
label "BuiltIn-Agent"
}
options {
// This is required if you want to clean before build
skipDefaultCheckout(true)
}
stages {
stage('Clone') {
steps {
cleanWs()
git branch: 'main',
url: 'https://github.com/ncstate-sat/passwords.git'
}
}
stage('Build') {
steps {
sh 'python3 -m build ./passwords'
}
}
stage('Push') {
steps {
withCredentials([usernamePassword(
credentialsId: 'jenkins-pypi-api-token',
usernameVariable: 'PYPI_USERNAME',
passwordVariable: 'PYPI_PASSWORD'
)]) {
sh 'python3 -m pip install -U twine'
sh 'python3 -m twine upload ./passwords/dist/\\* -u$PYPI_USERNAME -p$PYPI_PASSWORD'
}
}
}
}
}