@@ -7,38 +7,41 @@ setup() {
7
7
export LC_ALL=C.UTF-8
8
8
export LANG=C.UTF-8
9
9
fi
10
-
11
- cd test
12
-
13
- npm i ..
14
10
}
15
11
16
12
teardown () {
17
- sls requirements clean
18
13
rm -rf puck puck2 puck3 node_modules .serverless .requirements.zip .requirements-cache
19
14
if [ -f serverless.yml.bak ]; then mv serverless.yml.bak serverless.yml; fi
20
15
}
21
16
22
17
@test " py3.6 can package flask with default options" {
18
+ cd tests/base
19
+ npm i $( npm pack ../..)
23
20
sls package
24
21
unzip .serverless/sls-py-req-test.zip -d puck
25
22
ls puck/flask
26
23
}
27
24
28
25
@test " py3.6 can package flask with zip option" {
26
+ cd tests/base
27
+ npm i $( npm pack ../..)
29
28
sls --zip=true package
30
29
unzip .serverless/sls-py-req-test.zip -d puck
31
30
ls puck/.requirements.zip puck/unzip_requirements.py
32
31
! ls puck/flask
33
32
}
34
33
35
34
@test " py3.6 doesn't package boto3 by default" {
35
+ cd tests/base
36
+ npm i $( npm pack ../..)
36
37
sls package
37
38
unzip .serverless/sls-py-req-test.zip -d puck
38
39
! ls puck/boto3
39
40
}
40
41
41
42
@test " py3.6 doesn't package bottle with noDeploy option" {
43
+ cd tests/base
44
+ npm i $( npm pack ../..)
42
45
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n noDeploy: [bottle]/' serverless.yml
43
46
sls package
44
47
unzip .serverless/sls-py-req-test.zip -d puck
@@ -47,111 +50,128 @@ teardown() {
47
50
}
48
51
49
52
@test " py3.6 can package flask with zip & dockerizePip option" {
50
- [ -z " $CIRCLE_BRANCH " ] || skip " Volumes are weird in CircleCI https://circleci.com/docs/2.0/building-docker-images/#mounting-folders"
53
+ cd tests/base
54
+ npm i $( npm pack ../..)
51
55
! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
52
56
sls --dockerizePip=true --zip=true package
53
57
unzip .serverless/sls-py-req-test.zip -d puck
54
58
ls puck/.requirements.zip puck/unzip_requirements.py
55
59
}
56
60
57
61
@test " py3.6 can package flask with dockerizePip option" {
58
- [ -z " $CIRCLE_BRANCH " ] || skip " Volumes are weird in CircleCI https://circleci.com/docs/2.0/building-docker-images/#mounting-folders"
62
+ cd tests/base
63
+ npm i $( npm pack ../..)
59
64
! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
60
65
sls --dockerizePip=true package
61
66
unzip .serverless/sls-py-req-test.zip -d puck
62
67
ls puck/flask
63
68
}
64
69
65
70
@test " py3.6 uses cache with dockerizePip option" {
66
- [ -z " $CIRCLE_BRANCH " ] || skip " Volumes are weird in CircleCI https://circleci.com/docs/2.0/building-docker-images/#mounting-folders"
71
+ cd tests/base
72
+ npm i $( npm pack ../..)
67
73
! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
68
74
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n pipCmdExtraArgs: ["--cache-dir", ".requirements-cache"]/' serverless.yml
69
75
sls --dockerizePip=true package
70
76
ls .requirements-cache/http
71
77
}
72
78
73
79
@test " py2.7 can package flask with default options" {
80
+ cd tests/base
81
+ npm i $( npm pack ../..)
74
82
sls --runtime=python2.7 package
75
83
unzip .serverless/sls-py-req-test.zip -d puck
76
84
ls puck/flask
77
85
}
78
86
79
87
@test " py2.7 can package flask with zip option" {
88
+ cd tests/base
89
+ npm i $( npm pack ../..)
80
90
sls --runtime=python2.7 --zip=true package
81
91
unzip .serverless/sls-py-req-test.zip -d puck
82
92
ls puck/.requirements.zip puck/unzip_requirements.py
83
93
}
84
94
85
95
@test " py2.7 doesn't package boto3 by default" {
96
+ cd tests/base
97
+ npm i $( npm pack ../..)
86
98
sls package
87
99
unzip .serverless/sls-py-req-test.zip -d puck
88
100
! ls puck/boto3
89
101
}
90
102
91
103
@test " py2.7 doesn't package bottle with noDeploy option" {
104
+ cd tests/base
105
+ npm i $( npm pack ../..)
92
106
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n noDeploy: [bottle]/' serverless.yml
93
107
sls --runtime=python2.7 package
94
108
unzip .serverless/sls-py-req-test.zip -d puck
95
109
! ls puck/bottle.py
96
110
}
97
111
98
112
@test " py2.7 can package flask with zip & dockerizePip option" {
99
- [ -z " $CIRCLE_BRANCH " ] || skip " Volumes are weird in CircleCI https://circleci.com/docs/2.0/building-docker-images/#mounting-folders"
113
+ cd tests/base
114
+ npm i $( npm pack ../..)
100
115
! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
101
116
sls --dockerizePip=true --runtime=python2.7 --zip=true package
102
117
unzip .serverless/sls-py-req-test.zip -d puck
103
118
ls puck/.requirements.zip puck/unzip_requirements.py
104
119
}
105
120
106
121
@test " py2.7 can package flask with dockerizePip option" {
107
- [ -z " $CIRCLE_BRANCH " ] || skip " Volumes are weird in CircleCI https://circleci.com/docs/2.0/building-docker-images/#mounting-folders"
122
+ cd tests/base
123
+ npm i $( npm pack ../..)
108
124
! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
109
125
sls --dockerizePip=true --runtime=python2.7 package
110
126
unzip .serverless/sls-py-req-test.zip -d puck
111
127
ls puck/flask
112
128
}
113
129
114
130
@test " pipenv py3.6 can package flask with default options" {
115
- cd .. /pipenv-example
116
- npm i ..
131
+ cd tests /pipenv
132
+ npm i $( npm pack ../.. )
117
133
sls package
118
134
unzip .serverless/sls-py-req-test.zip -d puck
119
135
ls puck/flask
120
136
}
121
137
122
138
@test " pipenv py3.6 can package flask with zip option" {
123
- cd .. /pipenv-example
124
- npm i ..
139
+ cd tests /pipenv
140
+ npm i $( npm pack ../.. )
125
141
sls --zip=true package
126
142
unzip .serverless/sls-py-req-test.zip -d puck
127
143
ls puck/.requirements.zip puck/unzip_requirements.py
128
144
}
129
145
130
146
@test " pipenv py3.6 doesn't package boto3 by default" {
131
- cd .. /pipenv-example
132
- npm i ..
147
+ cd tests /pipenv
148
+ npm i $( npm pack ../.. )
133
149
sls package
134
150
unzip .serverless/sls-py-req-test.zip -d puck
135
151
! ls puck/boto3
136
152
}
137
153
138
154
@test " pipenv py3.6 doesn't package bottle with noDeploy option" {
139
- cd .. /pipenv-example
140
- npm i ..
155
+ cd tests /pipenv
156
+ npm i $( npm pack ../.. )
141
157
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n noDeploy: [bottle]/' serverless.yml
142
158
sls package
143
159
unzip .serverless/sls-py-req-test.zip -d puck
144
160
! ls puck/bottle.py
145
161
}
146
162
147
163
@test " py3.6 can package flask with zip option and no explicit include" {
164
+ cd tests/base
165
+ npm i $( npm pack ../..)
148
166
sed -i' .bak' -e ' s/include://' -e ' s/^.*handler.py//' serverless.yml
149
167
sls --zip=true package
150
168
unzip .serverless/sls-py-req-test.zip -d puck
151
169
ls puck/.requirements.zip puck/unzip_requirements.py
152
170
}
153
171
154
172
@test " py3.6 can package flask with package individually option" {
173
+ cd tests/base
174
+ npm i $( npm pack ../..)
155
175
sls --individually=true package
156
176
unzip .serverless/hello.zip -d puck
157
177
unzip .serverless/hello2.zip -d puck2
@@ -162,6 +182,8 @@ teardown() {
162
182
}
163
183
164
184
@test " py2.7 can package flask with package individually option" {
185
+ cd tests/base
186
+ npm i $( npm pack ../..)
165
187
sls --individually=true --runtime=python2.7 package
166
188
unzip .serverless/hello.zip -d puck
167
189
unzip .serverless/hello2.zip -d puck2
@@ -172,8 +194,8 @@ teardown() {
172
194
}
173
195
174
196
@test " py3.6 can package only requirements of module" {
175
- cd ../test-indiv
176
- npm i ..
197
+ cd tests/individually
198
+ npm i $( npm pack ../.. )
177
199
sls package
178
200
unzip .serverless/module1.zip -d puck
179
201
unzip .serverless/module2.zip -d puck2
@@ -188,6 +210,8 @@ teardown() {
188
210
}
189
211
190
212
@test " py3.6 can package lambda-decorators using vendor option" {
213
+ cd tests/base
214
+ npm i $( npm pack ../..)
191
215
sls --vendor=./vendor package
192
216
unzip .serverless/sls-py-req-test.zip -d puck
193
217
ls puck/flask
0 commit comments