@@ -11,14 +11,10 @@ inputs:
11
11
# note: the caller really drives this in a matrix strategy run for unit tests.
12
12
# this default value is used for the rest of the workflow.
13
13
default : " 3.11"
14
- poetry -version :
15
- description : " Poetry version to install"
14
+ uv -version :
15
+ description : " UV version to install"
16
16
required : true
17
- default : " 2.0.0"
18
- use-poetry-cache :
19
- description : " Restore poetry cache"
20
- required : true
21
- default : " true"
17
+ default : " 0.5.16"
22
18
go :
23
19
description : " Install go"
24
20
required : true
@@ -39,41 +35,22 @@ runs:
39
35
using : " composite"
40
36
steps :
41
37
42
- # note: go mod and build is automatically cached on default with v4+
43
- - uses : actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0
38
+ - uses : actions/setup-go@f111f3307d8850f501ac008e886eec1fd1932a34 # v5.3.0
44
39
with :
45
40
go-version : ${{ inputs.go-version }}
46
41
47
- - uses : actions /setup-python@v4
42
+ - uses : astral-sh /setup-uv@f94ec6bedd8674c4426838e6b50417d36b6ab231 # v5.3.1
48
43
with :
49
- python-version : ${{ inputs.python-version }}
50
-
51
- - name : Install poetry
52
- shell : bash
53
- run : |
54
- python -m pip install poetry==${{ inputs.poetry-version }}
55
- poetry self add "poetry-dynamic-versioning[plugin]"
44
+ enable-cache : true
56
45
57
- - name : Cache Poetry virtualenv
58
- uses : actions/cache@v3
59
- if : inputs.use-poetry-cache == 'true'
60
- id : cache
46
+ - uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4.0
61
47
with :
62
- path : ~/.virtualenvs
63
- key : ${{ inputs.cache-key-prefix }}-python-${{ inputs.python-version }}-poetry-${{ inputs.poetry-version }}-${{ hashFiles('poetry.lock') }}
64
- restore-keys : |
65
- ${{ inputs.cache-key-prefix }}-python-${{ inputs.python-version }}-poetry-${{ inputs.poetry-version }}
66
-
67
- - name : Setup Poetry config
68
- shell : bash
69
- run : |
70
- poetry config virtualenvs.in-project false
71
- poetry config virtualenvs.path ~/.virtualenvs
48
+ python-version : ${{ inputs.python-version }}
72
49
73
50
- name : Restore tool cache
74
51
id : tool-cache
75
52
if : inputs.tools == 'true'
76
- uses : actions/cache@v3
53
+ uses : actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
77
54
with :
78
55
path : ${{ github.workspace }}/.tmp
79
56
key : ${{ inputs.cache-key-prefix }}-${{ runner.os }}-tool-${{ hashFiles('Makefile') }}
@@ -89,13 +66,13 @@ runs:
89
66
run : |
90
67
DEBIAN_FRONTEND=noninteractive sudo apt update && sudo -E apt install -y ${{ inputs.bootstrap-apt-packages }}
91
68
92
- - name : Install dependencies and package
69
+ - name : Install project + dependencies
93
70
shell : bash
94
- run : poetry install
71
+ run : uv sync --all-extras --dev
95
72
96
73
- name : Restore tox cache
97
74
id : cache-tox
98
- uses : actions/cache@v3
75
+ uses : actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
99
76
with :
100
77
path : .tox
101
78
key : ${{ inputs.cache-key-prefix }}-${{ runner.os }}-${{ inputs.python-version }}-${{ hashFiles('pyproject.toml') }}-${{ hashFiles('tox.ini') }}
0 commit comments