@@ -10,13 +10,14 @@ PY39_DIST_ARM64=$DIST_DIR/python39.arm64.zip
10
10
PY310_DIST_ARM64=$DIST_DIR /python310.arm64.zip
11
11
PY311_DIST_ARM64=$DIST_DIR /python311.arm64.zip
12
12
PY312_DIST_ARM64=$DIST_DIR /python312.arm64.zip
13
+ PY313_DIST_ARM64=$DIST_DIR /python313.arm64.zip
13
14
14
15
PY38_DIST_X86_64=$DIST_DIR /python38.x86_64.zip
15
16
PY39_DIST_X86_64=$DIST_DIR /python39.x86_64.zip
16
17
PY310_DIST_X86_64=$DIST_DIR /python310.x86_64.zip
17
18
PY311_DIST_X86_64=$DIST_DIR /python311.x86_64.zip
18
19
PY312_DIST_X86_64=$DIST_DIR /python312.x86_64.zip
19
-
20
+ PY313_DIST_X86_64= $DIST_DIR /python313.x86_64.zip
20
21
21
22
source ../libBuild.sh
22
23
@@ -275,6 +276,56 @@ function publish-python312-x86 {
275
276
done
276
277
}
277
278
279
+ function build-python313-arm64 {
280
+ echo " Building New Relic layer for python3.13 (arm64)"
281
+ rm -rf $BUILD_DIR $PY313_DIST_ARM64
282
+ mkdir -p $DIST_DIR
283
+ pip install --no-cache-dir -qU newrelic -t $BUILD_DIR /lib/python3.13/site-packages
284
+ cp newrelic_lambda_wrapper.py $BUILD_DIR /lib/python3.13/site-packages/newrelic_lambda_wrapper.py
285
+ cp -r newrelic_lambda $BUILD_DIR /lib/python3.13/site-packages/newrelic_lambda
286
+ find $BUILD_DIR -name ' __pycache__' -exec rm -rf {} +
287
+ download_extension arm64
288
+ zip -rq $PY313_DIST_ARM64 $BUILD_DIR $EXTENSION_DIST_DIR $EXTENSION_DIST_PREVIEW_FILE
289
+ rm -rf $BUILD_DIR $EXTENSION_DIST_DIR $EXTENSION_DIST_PREVIEW_FILE
290
+ echo " Build complete: ${PY313_DIST_ARM64} "
291
+ }
292
+
293
+ function build-python313-x86 {
294
+ echo " Building New Relic layer for python3.13 (x86_64)"
295
+ rm -rf $BUILD_DIR $PY313_DIST_X86_64
296
+ mkdir -p $DIST_DIR
297
+ pip install --no-cache-dir -qU newrelic -t $BUILD_DIR /lib/python3.13/site-packages
298
+ cp newrelic_lambda_wrapper.py $BUILD_DIR /lib/python3.13/site-packages/newrelic_lambda_wrapper.py
299
+ cp -r newrelic_lambda $BUILD_DIR /lib/python3.13/site-packages/newrelic_lambda
300
+ find $BUILD_DIR -name ' __pycache__' -exec rm -rf {} +
301
+ download_extension x86_64
302
+ zip -rq $PY313_DIST_X86_64 $BUILD_DIR $EXTENSION_DIST_DIR $EXTENSION_DIST_PREVIEW_FILE
303
+ rm -rf $BUILD_DIR $EXTENSION_DIST_DIR $EXTENSION_DIST_PREVIEW_FILE
304
+ echo " Build complete: ${PY313_DIST_X86_64} "
305
+ }
306
+
307
+ function publish-python313-arm64 {
308
+ if [ ! -f $PY313_DIST_ARM64 ]; then
309
+ echo " Package not found: ${PY313_DIST_ARM64} "
310
+ exit 1
311
+ fi
312
+
313
+ for region in " ${REGIONS_ARM[@]} " ; do
314
+ publish_layer $PY313_DIST_ARM64 $region python3.13 arm64
315
+ done
316
+ }
317
+
318
+ function publish-python313-x86 {
319
+ if [ ! -f $PY313_DIST_X86_64 ]; then
320
+ echo " Package not found: ${PY313_DIST_X86_64} "
321
+ exit 1
322
+ fi
323
+
324
+ for region in " ${REGIONS_X86[@]} " ; do
325
+ publish_layer $PY313_DIST_X86_64 $region python3.13 x86_64
326
+ done
327
+ }
328
+
278
329
case " $1 " in
279
330
" python3.8" )
280
331
build-python38-arm64
@@ -316,6 +367,14 @@ case "$1" in
316
367
publish-python312-x86
317
368
publish_docker_ecr $PY312_DIST_X86_64 python3.12 x86_64
318
369
;;
370
+ " python3.13" )
371
+ build-python313-arm64
372
+ publish-python313-arm64
373
+ publish_docker_ecr $PY313_DIST_ARM64 python3.13 arm64
374
+ build-python313-x86
375
+ publish-python313-x86
376
+ publish_docker_ecr $PY313_DIST_X86_64 python3.13 x86_64
377
+ ;;
319
378
* )
320
379
usage
321
380
;;
0 commit comments