setup-python
Hành động này cung cấp chức năng sau cho người dùng GitHub Action:
- Cài đặt phiên bản Python hoặc Pypy và [theo mặc định] thêm nó vào đường dẫn
- Tùy chọn bộ nhớ đệm phụ thuộc cho pip, pipenv và thơ
- Đăng ký trình khớp vấn đề cho đầu ra lỗi
Cách sử dụng cơ bản
Xem hành động.yml
Python
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.10' - run: python my_script.py
Pypy
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py
Đầu vào python-version
là tùy chọn. Nếu không được cung cấp, hành động sẽ cố gắng giải quyết phiên bản từ tệp .python-version
mặc định. Nếu tệp .python-version
không tồn tại python hoặc phiên bản pypy từ đường dẫn sẽ được sử dụng. Phiên bản mặc định của Python hoặc Pypy trong đường dẫn khác nhau giữa các vận động viên và có thể được thay đổi bất ngờ vì vậy chúng tôi khuyên bạn nên luôn luôn sử dụng setup-python
.
Hành động trước tiên sẽ kiểm tra bộ đệm công cụ cục bộ cho trận đấu Semver. Nếu không thể tìm thấy một phiên bản cụ thể trong bộ đệm công cụ, hành động sẽ cố gắng tải xuống phiên bản Python từ các bản phát hành của GitHub và cho Pypy từ Pypy's Dist chính thức.
Để biết thông tin liên quan đến các phiên bản Python hoặc Pypy được lưu trong bộ đệm cục bộ trên các vận động viên được lưu trữ của GitHub, hãy xem hình ảnh chạy của GitHub Action.
Cú pháp phiên bản được hỗ trợ
Đầu vào python-version
hỗ trợ đặc tả phiên bản ngữ nghĩa và một số ký hiệu phiên bản đặc biệt [ví dụ: semver ranges
, x.y-dev syntax
, v.v.], để biết các ví dụ chi tiết, vui lòng tham khảo phần: Sử dụng đầu vào phiên bản Python của Hướng dẫn sử dụng nâng cao.
Kiến trúc được hỗ trợ
Sử dụng đầu vào
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py0 Có thể chỉ định kiến trúc thông dịch Python hoặc Pypy cần thiết:
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py1 hoặc
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py2. Nếu đầu vào không được chỉ định, kiến trúc mặc định là
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py2.
Bộ đệm phụ thuộc gói
Hành động có chức năng tích hợp để lưu trữ và khôi phục các phụ thuộc. Nó sử dụng bộ công cụ/bộ đệm dưới mui xe để lưu trữ phụ thuộc nhưng yêu cầu cài đặt cấu hình ít hơn. Người quản lý gói được hỗ trợ là
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py4,
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py5 và
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py6. Đầu vào
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py7 là tùy chọn và bộ nhớ đệm bị tắt theo mặc định.
Hành động mặc định là tìm kiếm tệp phụ thuộc [
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py8 cho PIP,
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py9 cho PipENV hoặc
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.9' cache: 'pip' # caching pip dependencies - run: pip install -r requirements.txt0 cho thơ] trong kho lưu trữ và sử dụng băm của nó như một phần của khóa bộ đệm. Đầu vào
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.9' cache: 'pip' # caching pip dependencies - run: pip install -r requirements.txt1 được sử dụng cho các trường hợp khi nhiều tệp phụ thuộc được sử dụng, chúng được đặt trong các thư mục con khác nhau hoặc các tệp khác nhau cho băm muốn được sử dụng.
- Đối với
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py
4, hành động sẽ lưu trữ thư mục bộ đệm toàn cầu - Đối với
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py
5, hành động sẽ lưu trữ thư mục VirtualEnv - Đối với
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py
6, hành động sẽ lưu trữ thư mục VirtualEnv
Bộ nhớ đệm phụ thuộc PIP:
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.9' cache: 'pip' # caching pip dependencies - run: pip install -r requirements.txt
Lưu ý: Bộ đệm được khôi phục sẽ không được sử dụng nếu tệp yêu cầu.txt không được cập nhật trong một thời gian dài và phiên bản mới hơn của phụ thuộc có sẵn có thể dẫn đến sự gia tăng tổng thời gian xây dựng. Restored cache will not be used if the requirements.txt file is not updated for a long time and a newer version of the dependency is available which can lead to an increase in total build time.
Định dạng tệp yêu cầu cho phép chỉ định các phiên bản phụ thuộc bằng cách sử dụng các toán tử logic [ví dụ: chardet> = 3.0.4] hoặc chỉ định các phụ thuộc mà không có bất kỳ phiên bản nào. Trong trường hợp này, lệnh PIP Install -r Yêu cầu.TXT sẽ luôn cố gắng cài đặt phiên bản gói mới nhất có sẵn. Để chắc chắn rằng bộ đệm sẽ được sử dụng, vui lòng bám vào phiên bản phụ thuộc cụ thể và cập nhật thủ công nếu cần thiết.
Xem các ví dụ về việc sử dụng
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py7 và
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.9' cache: 'pip' # caching pip dependencies - run: pip install -r requirements.txt1 cho
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py5 và
steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: 'pypy3.9' - run: python my_script.py6 trong phần: Bộ nhớ đệm của Hướng dẫn sử dụng nâng cao.
Sử dụng nâng cao
- Sử dụng đầu vào phiên bản python
- Sử dụng đầu vào phiên bản python
- Kiểm tra phiên bản mới nhất
- Gói lưu trữ
- Đầu ra và biến môi trường
- Các phiên bản có sẵn của Python và Pypy
- Bộ đệm công cụ được lưu trữ
- Sử dụng
setup-python
với một người chạy tự lưu trữ - Sử dụng
setup-python
trên Ghes
Giấy phép
Các kịch bản và tài liệu trong dự án này được phát hành theo giấy phép MIT.
Đóng góp
Đóng góp được chào đón! Xem hướng dẫn của người đóng góp của chúng tôi.