@@ -11,7 +11,6 @@ setup() {
11
11
# Please note: If you update change the requirements.txt in test/base this value will
12
12
# change. Run a test which uses this variable manually step by step and list the cache
13
13
# folder to find the new hash if you do this
14
- export CACHE_FOLDER_HASH=" b8b9d2be59f6f2ea5778e8b2aa4d2ddc_slspyc"
15
14
if [ -d " ${USR_CACHE_DIR} " ] ; then
16
15
rm -Rf " ${USR_CACHE_DIR} "
17
16
fi
@@ -151,8 +150,6 @@ teardown() {
151
150
@test " py3.6 uses download cache with useDownloadCache option" {
152
151
cd tests/base
153
152
npm i $( npm pack ../..)
154
- docker & > /dev/null || skip " docker not present"
155
- ! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
156
153
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useDownloadCache: true/' serverless.yml
157
154
sls package
158
155
USR_CACHE_DIR=` node -e ' console.log(require("../../lib/shared").getUserCachePath())' `
@@ -162,8 +159,6 @@ teardown() {
162
159
@test " py3.6 uses download cache with cacheLocation option" {
163
160
cd tests/base
164
161
npm i $( npm pack ../..)
165
- docker & > /dev/null || skip " docker not present"
166
- ! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
167
162
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useDownloadCache: true\n cacheLocation: .requirements-cache/' serverless.yml
168
163
sls package
169
164
ls .requirements-cache/downloadCacheslspyc/http
@@ -193,11 +188,10 @@ teardown() {
193
188
@test " py3.6 uses static and download cache" {
194
189
cd tests/base
195
190
npm i $( npm pack ../..)
196
- docker & > /dev/null || skip " docker not present"
197
- ! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
198
191
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useDownloadCache: true\n useStaticCache: true/' serverless.yml
199
192
sls package
200
- USR_CACHE_DIR=` node -e ' console.log(require("../../lib/shared").getUserCachePath())' `
193
+ USR_CACHE_DIR=` node -e ' console.log(require("./node_modules/serverless-python-requirements/lib/shared").getUserCachePath())' `
194
+ CACHE_FOLDER_HASH=$( md5sum <( grep -v boto3 requirements.txt| sort) | cut -d' ' -f1) _slspyc
201
195
ls $USR_CACHE_DIR /$CACHE_FOLDER_HASH /flask
202
196
ls $USR_CACHE_DIR /downloadCacheslspyc/http
203
197
}
@@ -210,43 +204,41 @@ teardown() {
210
204
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useDownloadCache: true\n useStaticCache: true/' serverless.yml
211
205
sls --dockerizePip=true package
212
206
USR_CACHE_DIR=` node -e ' console.log(require("../../lib/shared").getUserCachePath())' `
207
+ CACHE_FOLDER_HASH=$( md5sum <( grep -v boto3 requirements.txt| sort) | cut -d' ' -f1) _slspyc
213
208
ls $USR_CACHE_DIR /$CACHE_FOLDER_HASH /flask
214
209
ls $USR_CACHE_DIR /downloadCacheslspyc/http
215
210
}
216
211
217
212
@test " py3.6 uses static cache" {
218
213
cd tests/base
219
214
npm i $( npm pack ../..)
220
- docker & > /dev/null || skip " docker not present"
221
- ! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
222
215
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useStaticCache: true/' serverless.yml
223
216
sls package
224
217
USR_CACHE_DIR=` node -e ' console.log(require("../../lib/shared").getUserCachePath())' `
218
+ CACHE_FOLDER_HASH=$( md5sum <( grep -v boto3 requirements.txt| sort) | cut -d' ' -f1) _slspyc
225
219
ls $USR_CACHE_DIR /$CACHE_FOLDER_HASH /flask
226
220
ls $USR_CACHE_DIR /$CACHE_FOLDER_HASH /.completed_requirements
227
221
}
228
222
229
223
@test " py3.6 uses static cache with cacheLocation option" {
230
224
cd tests/base
231
225
npm i $( npm pack ../..)
232
- docker & > /dev/null || skip " docker not present"
233
- ! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
234
226
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useStaticCache: true\n cacheLocation: .requirements-cache/' serverless.yml
235
227
sls package
236
228
USR_CACHE_DIR=` node -e ' console.log(require("../../lib/shared").getUserCachePath())' `
229
+ CACHE_FOLDER_HASH=$( md5sum <( grep -v boto3 requirements.txt| sort) | cut -d' ' -f1) _slspyc
237
230
ls .requirements-cache/$CACHE_FOLDER_HASH /flask
238
231
ls .requirements-cache/$CACHE_FOLDER_HASH /.completed_requirements
239
232
}
240
233
241
234
@test " py3.6 checking that static cache actually pulls from cache (by poisoning it)" {
242
235
cd tests/base
243
236
npm i $( npm pack ../..)
244
- docker & > /dev/null || skip " docker not present"
245
- ! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
246
237
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useStaticCache: true/' serverless.yml
247
238
sls package
248
239
cp .serverless/sls-py-req-test.zip ./puck
249
240
USR_CACHE_DIR=` node -e ' console.log(require("../../lib/shared").getUserCachePath())' `
241
+ CACHE_FOLDER_HASH=$( md5sum <( grep -v boto3 requirements.txt| sort) | cut -d' ' -f1) _slspyc
250
242
echo " injected new file into static cache folder" > $USR_CACHE_DIR /$CACHE_FOLDER_HASH /injected_file_is_bad_form
251
243
sls package
252
244
[ ` wc -c ./.serverless/sls-py-req-test.zip | awk ' { print $1 }' ` -gt ` wc -c ./puck | awk ' { print $1 }' ` ]
@@ -259,6 +251,7 @@ teardown() {
259
251
! uname -sm| grep Linux || groups| grep docker || id -u| egrep ' ^0$' || skip " can't dockerize on linux if not root & not in docker group"
260
252
perl -p -i' .bak' -e ' s/(pythonRequirements:$)/\1\n useStaticCache: true/' serverless.yml
261
253
sls --dockerizePip=true --slim=true package
254
+ CACHE_FOLDER_HASH=$( md5sum <( grep -v boto3 requirements.txt| sort) | cut -d' ' -f1) _slspyc
262
255
ls $USR_CACHE_DIR /$CACHE_FOLDER_HASH /flask
263
256
unzip .serverless/sls-py-req-test.zip -d puck
264
257
test $( find puck -name " *.pyc" | wc -l) -eq 0
0 commit comments