Compress runtime/modules to reduce deployment package unzipped size
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- aws, powershell
- Lĩnh vực
- build-system, cloud
Hướng nghiên cứu
Bắt đầu bằng việc xem xét quy trình đóng gói bản phát hành của Linux PowerShell và cách các dependency của module được đưa vào deployment ZIP. So sánh artifact 172 MB hiện tại với runtime được nén hoặc các module được đóng gói được đề xuất, đồng thời xem xét các đường dẫn /opt và /tmp của AWS Lambda đã đề cập. Hoàn tất có nghĩa là artifact bản phát hành nhỏ hơn đáng kể, các dependency của module vẫn khả dụng và việc xác minh artifact không còn bị chặn.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
AWS Lambda limits ZIP deployment packages to 250 MB on-disk. The Linux PowerShell release builds are ~170 MB in the current release, which takes up ~70% of that cap. (Community members' attempts at producing "slim" PowerShell containers only reduce sizes by ~30MB, which isn't a ton in broader context.)
Pure PowerShell script modules are generally quite small, but compiled CLR module assemblies or autogenerated modules (e.g. Microsoft.Graph.*, Az.*, AWS.Tools.*) can get very large.
The current architecture only allows for ~80MB of module dependencies - AWS.Tools.S3 and Microsoft.Graph.Users (with respective dependencies) breaches the 250MB cap.
Compressing the PowerShell runtime itself would:
- Free up >100MB of deployment package size (172MB vs 66 MB)
- Unblock build artifact verification (PowerShell publishes SHAs of release artifacts)
Supporting compressed module dependencies (e.g. /opt/modules-packed.zip or /opt/modules-packed/*.nupkg gets unpacked to /tmp/modules-unpacked and added to PSModulePath) could help the situation as well.
- Ngôn ngữ chính
- PowerShell
- Star
- 65
- Fork
- 21
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của awslabs/aws-lambda-powershell-runtime
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
awslabs/aws-lambda-powershell-runtime#44 · 2 bình luận ·
-
JSON logging supportĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 30/100
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
awslabs/aws-lambda-powershell-runtime#30 · 3 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
awslabs/aws-lambda-powershell-runtime#22 · 9 bình luận ·
-
PowerShell deployment exampleĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 35/100
awslabs/aws-lambda-powershell-runtime#16 · 10 bình luận ·
Tất cả issue của awslabs/aws-lambda-powershell-runtime
Issue tương tự
-
Support git worktreesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
block/artifact-swap#176 ·
-
area:lint-tooling bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
InauguralSystems/EigenScript#1340 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Mend: dependency security vulnerability untriaged
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
opensearch-project/OpenSearch-Dashboards#12816 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày