1
1
# Note: This GitLab CI configuration is used for internal testing, users can ignore it.
2
-
2
+ include :
3
+ - project : ' ${CI_PROJECT_NAMESPACE}/ci-libs-for-client-libraries'
4
+ file :
5
+ - ' /${CI_PROJECT_NAME}/.gitlab-ci.yml'
6
+
3
7
# Global --------------------------
4
8
5
9
image : python:3.10
6
10
7
11
variables :
8
12
PIP_CACHE_DIR : " ${CI_PROJECT_DIR}/.cache/pip"
9
-
13
+ XDG_CACHE_HOME : " ${CI_PROJECT_DIR}/.cache"
14
+ POETRY_VIRTUALENVS_IN_PROJECT : " true"
15
+ REQUESTS_CA_BUNDLE : " /etc/ssl/certs/ca-certificates.crt"
16
+
10
17
cache :
11
18
key :
12
19
prefix : ${CI_JOB_IMAGE}
@@ -24,9 +31,11 @@ stages:
24
31
- publish
25
32
26
33
before_script :
34
+ - python3 -m venv .venv
35
+ - source .venv/bin/activate
36
+ - pip install --upgrade pip
27
37
- pip install poetry
28
38
- poetry --version
29
- - poetry config virtualenvs.in-project true
30
39
- poetry install -vv
31
40
32
41
# stage: check ----------------------
@@ -51,21 +60,9 @@ package:
51
60
52
61
# stage: test -------------------------
53
62
54
- .use-test-server-template : &use_test_server_template
55
- secrets :
56
- DEEPL_AUTH_KEY :
57
- vault : jenkins/client_libraries/test_auth_key@backend
58
- file : false
59
- DEEPL_SERVER_URL :
60
- vault : jenkins/client_libraries/test_server_url@backend
61
- file : false
62
-
63
63
test :
64
- << : *use_test_server_template
65
64
stage : test
66
- services :
67
- - name : $DOCKER_REGISTRY/deepl/deepl-mock
68
- alias : deepl-mock
65
+ extends : .test
69
66
parallel :
70
67
matrix :
71
68
- DOCKER_IMAGE : " python:3.10"
@@ -119,18 +116,11 @@ test:
119
116
# stage: publish -------------------------
120
117
121
118
pypi upload :
119
+ extends : .publish
122
120
stage : publish
123
121
dependencies :
124
122
- package
125
123
rules :
126
124
- if : ' $CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+$/'
127
125
script :
128
- - poetry publish --verbose --no-interaction --username $PYPI_USERNAME --password $PYPI_PASSWORD
129
- secrets :
130
- PYPI_USERNAME :
131
- vault : jenkins/client_libraries/pypi_username@backend
132
- file : false
133
- PYPI_PASSWORD :
134
- vault : jenkins/client_libraries/pypi_password@backend
135
- file : false
136
-
126
+ - poetry publish --verbose --no-interaction
0 commit comments