Bản gốc tiếng Anh: https://argusic.com/subject/gh-action-pypi-publish

gh-action-pypi-publish

GitHub Action:octocat: được ưa chuộng, để xuất bản các file phân phối:package: của bạn lên PyPI, theo cách không cần token

Chạy được với mocknguồn: GitHubtrang chủ dự ánPythonBSD-3-Clausecommit dc37677b2e1c

Python, giấy phép BSD-3-Clause. Dự án tự gắn nhãn: actions, github action, github actions, github actions python, oidc, pypa guide, pypi và python.

gh-action-pypi-publish chạy được, với dịch vụ giả lập thay cho các dịch vụ nó phụ thuộc. Trên một máy sạch không có GPU, một agent của Argusic đã cài đặt nó trong 18 phút, gặp 1 lỗi và tự sửa hết mà không cần trợ giúp, và toàn bộ phiên làm việc được ghi lại.

All Python scripts (print-pkg-names, print-hash, oidc-exchange, attestations, create-docker-action, twine-upload.sh) are importable/syntactically valid; twine-upload.sh runs end-to-end with a mock PyPI-compatible HTTP server, prints debug output, uploads an sdist (.tar.gz) and a wheel (.whl), and exits 0

Kết quả agent đạt được trên máy sạch, bằng chính lời của nó. Cách đo

Argusic đo trên một máy mới mỗi lần. Mỗi con số đều link tới bằng chứng của nó. Điểm Argusic 56 trên 100 (trung bình điểm các lần chạy của dự án này).

Tóm tắt

kết luận
Chạy được với mock
Điểm Argusic
56 / 100
chi phí của lần chạy kiểm chứng
0,05 USD (đo thực tế)
số lần chạy đã ghi
2
test gần nhất
lượt star
1.187
fork
125
issue đang mở
31
người theo dõi
10
dung lượng
1 MB
ngày tạo
push gần nhất

Dữ liệu dự án lấy từ GitHub, có link ở đầu trang, cập nhật . Dữ liệu test của Argusic (CC BY 4.0); mỗi con số đều link tới một trang run có đầy đủ log, bản ghi và mã sha256 của chúng.

Những gì đã đo

Lấy từ lần chạy quyết định kết luận này. Mỗi dòng là một giá trị được ghi lại, không phải ước tính.

Thời gian mất cho từng lỗi khi test gh-action-pypi-publish, vẽ từ lần chạy được ghi lại
Mỗi cột là một lỗi agent đã ghi lại, kèm thời gian nó tốn. Vẽ từ lần chạy này, không lấy từ nguồn nào khác.

Những gì trục trặc, bằng chính lời của agent

Lời của chính agent, lỗi nặng nhất trước, không bao giờ viết lại thành lời khuyên.

  • PYTHONPATH unbound variable in twine-upload.sh under set -u3 phút
Thời gian cài đặt
18 phút
Từ máy sạch đến khi xong
5 phút
Lỗi gặp và đã sửa
gặp 1, tự sửa 1 mà không cần người giúp
Cách chứng minh kết quả
twine-upload.sh ran against a mock HTTP server on port 3143, exit 0; twine check passed on test dists; all Python scripts have valid syntax and import their dependencies
Số token model đã dùng
99.856
Commit chính xác đã test
dc37677b2e1c
Container image
sha256:cdd920bce783

Những gì chưa đo

Nửa còn lại, để bạn thấy rõ bằng chứng này đi xa tới đâu. Chỗ trống được ghi là chỗ trống và không bao giờ được lấp vào.

Bộ nhớ GPU cao nhất
lần này chạy trên máy CPU, nên không có GPU để đo
Hoạt động khi chạy lâu
mỗi lần thử dùng cấu hình nhỏ nhất có trong tài liệu và một khoảng thời gian cố định, nên đây là đo xem nó có chạy hay không, không đo nó chịu tải ra sao
Hoạt động với dịch vụ thật
lần chạy này chỉ được kiểm chứng với dịch vụ giả lập

Đoạn cuối của bản ghi

Những dòng cuối của phiên terminal đã quyết định kết luận này, đúng như khi được ghi lại.

Here is the final assessment:
**Time spent:** ~18 minutes
**Install:** `pypa/gh-action-pypi-publish` dependencies installed in a Python 3.12 venv (46 package…
**Error found and fixed:** `twine-upload.sh` line 18 referenced `${PYTHONPATH}` unguarded under `se…
**Verification:** Built a test package, ran `twine check` (passed), `print-pkg-names.py` (emits `te…
tokens used
99,856
Here is the final assessment:
**Time spent:** ~18 minutes
**Install:** `pypa/gh-action-pypi-publish` dependencies installed in a Python 3.12 venv (46 package…
**Error found and fixed:** `twine-upload.sh` line 18 referenced `${PYTHONPATH}` unguarded under `se…
**Verification:** Built a test package, ran `twine check` (passed), `print-pkg-names.py` (emits `te…

Xem lại toàn bộ phiên, mọi lệnh từ máy sạch tới thời điểm này.

Cách test

Một agent, một container, không có người giúp. Agent cài dự án theo đúng cách tài liệu của dự án hướng dẫn, chạy nó, và sửa những gì bị hỏng. Mọi thứ bên dưới được ghi lại đúng như đã diễn ra: phiên terminal, log và commit chính xác. Toàn bộ phương pháp.

Điểm mạnh và giới hạn

Dữ kiện đo được, không phải ý kiến. Cách viết nội dung.

Những gì suôn sẻ

  • Tự khắc phục cả 1 lỗi mà không cần người can thiệp, cho thấy các lỗi được ghi trong tài liệu đủ rõ để giải quyết.
  • Giấy phép BSD-3-Clause, theo thông tin từ nơi lưu trữ dự án.
  • Đã đo 2 lần, nên kết quả không phải của một lần duy nhất.

Những gì không suôn sẻ, hoặc chưa biết

  • Chỉ đạt trạng thái chạy được với dịch vụ giả lập, nên ở đây không có gì chứng minh nó chạy với dịch vụ thật.
  • Mất 18 phút để cài đặt, chậm hơn trung vị của 10 dự án tương đương mà Argusic đã đo.

Trong 11 dự án actions mà Argusic đã cài đặt và bấm giờ, gh-action-pypi-publish đứng thứ 11 về tốc độ đạt trạng thái chạy được, và 6 trên 11 dự án đạt được trạng thái đó.

Cũng đã test, cùng lĩnh vực

Mỗi dự án ở đây đều được Argusic cài đặt và chạy trên máy sạch. Không có dự án nào chưa test xuất hiện ở đây.

Lịch sử chạy

test bởilần thửkết quảđiểmchi phí USDthời điểm
Argusic Runner2/3Chạy được với mock92,000,05
Argusic Runner1/3Không chạy20,000,11

Chủ đề (từ GitHub)

actionsgithub-actiongithub-actionsgithub-actions-pythonoidcpypa-guidepypipythonpython-packagingreleaserelease-automationrelease-helpersecretstestpypitwineuploadworkflowworkflow-automationworkflows

Nhúng badge

Markdown cho README của dự án. Badge link về trang này; điều khoản ở trang điều khoản.

[![Tested by Argusic](https://argusic.com/badge/gh-action-pypi-publish.svg)](https://argusic.com/subject/gh-action-pypi-publish)

Câu hỏi

gh-action-pypi-publish có chạy được không?
gh-action-pypi-publish chạy được, với mock thay cho các dịch vụ bên ngoài. Argusic đã cài đặt và khởi chạy nó trên một máy sạch trong 18 phút, gặp 1 lỗi trên đường đi, và ghi lại phiên làm việc.
Argusic đã test gh-action-pypi-publish như thế nào?
Trên một máy mới, dùng một lần, mọi lệnh đều được ghi lại và repo được ghim ở commit dc37677b2e1c. Có 2 lần thử được ghi lại, và toàn bộ phương pháp nằm ở trang phương pháp.
Test gh-action-pypi-publish tốn bao nhiêu?
Lần chạy đưa ra kết luận này tốn 0,05 USD: chi phí máy và model thật, không phải giá niêm yết theo triệu token. Con số được ghi trên trang của lần chạy đó.
Cài đặt gh-action-pypi-publish mất bao lâu?
18 phút trong lần chạy quyết định kết luận này, từ máy sạch đến trạng thái chạy được. Đó là một lần thử đo được, không phải số trung bình.
gh-action-pypi-publish có cần GPU không?
Không cần để khởi động. Argusic đã đạt trạng thái chạy được trên một máy không có GPU.
Cài đặt gh-action-pypi-publish thì gặp lỗi gì?
1 lỗi xảy ra trong lần chạy được ghi lại, và 1 lỗi đã được sửa mà không cần người giúp. Từng lỗi, cùng thời gian nó tốn, được liệt kê trên trang này.
gh-action-pypi-publish so với các lựa chọn khác thế nào?
Trong 11 dự án actions mà Argusic đã cài đặt và bấm giờ, gh-action-pypi-publish đứng thứ 11 về tốc độ đạt trạng thái chạy được, và 6 trên 11 dự án đạt được trạng thái đó.
Bằng chứng cho gh-action-pypi-publish ở đâu?
Cả 2 lần chạy được ghi lại đều nằm trên trang này, mỗi lần link tới log đầy đủ và terminal recording, được lưu kèm dấu vân tay sha256 để không thể bị sửa lén.

Discussion