@@ -88,13 +88,41 @@ jobs:
88
88
# - name: Run integration tests
89
89
# run: pixi run --locked test-integration-ci
90
90
91
- test-linux-x86_64 :
91
+ test :
92
92
timeout-minutes : 10
93
- name : Pytest | linux x86_64
94
- runs-on : 8core_ubuntu_latest_runner
93
+ name : Build | ${{ matrix.os }} ${{ matrix.arch }}
94
+ runs-on : ${{ matrix.runner }}
95
+ strategy :
96
+ matrix :
97
+ include :
98
+ - os : linux
99
+ arch : x86_64
100
+ runner : 8core_ubuntu_latest_runner
101
+ workspace : ${{ github.workspace }}
102
+ - os : windows
103
+ arch : x86_64
104
+ runner : windows-latest
105
+ workspace : " D:/a/pixi-build-testsuite"
106
+ - os : macos
107
+ arch : aarch64
108
+ runner : macos-14
109
+ workspace : ${{ github.workspace }}
95
110
steps :
96
111
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
97
- - name : Set up pixi for downloading binary
112
+
113
+ - name : Create Dev Drive (Windows)
114
+ if : matrix.os == 'windows'
115
+ run : ${{ github.workspace }}/.github/workflows/setup-dev-drive.ps1
116
+
117
+ - name : Copy Git Repo to Dev Drive (Windows)
118
+ if : matrix.os == 'windows'
119
+ run : |
120
+ Copy-Item -Path "${{ github.workspace }}" -Destination "${{ matrix.workspace }}" -Recurse
121
+ echo "${{ matrix.workspace }}/target/pixi/release" | Out-File -Append -Encoding utf8 -FilePath $env:GITHUB_PATH
122
+ env :
123
+ TARGET_RELEASE : " target/pixi/release"
124
+
125
+ - name : Set up pixi
98
126
uses : prefix-dev/setup-pixi@main
99
127
with :
100
128
cache : true
@@ -103,13 +131,23 @@ jobs:
103
131
- name : Download artifacts from prefix-dev/pixi repository
104
132
run : |
105
133
pixi run download-artifacts pixi --token "${{ secrets.GITHUB_TOKEN }}"
134
+ env :
135
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
106
136
107
137
- name : Download artifacts from prefix-dev/pixi-build-backends repository
108
138
run : |
109
- pixi run download-artifacts pixi-build-backends --token "${{ secrets.GITHUB_TOKEN }}"
139
+ pixi run download-artifacts pixi-build-backends
140
+ env :
141
+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
142
+
143
+ - name : Setup unix binary permissions (Unix)
144
+ if : matrix.os != 'windows'
145
+ run : |
146
+ chmod a+x ${{ matrix.workspace }}/artifacts/pixi
110
147
111
148
- name : Run integration tests
112
149
run : pixi run --locked test
150
+ working-directory : ${{ matrix.workspace }}
113
151
env :
114
- PIXI_BIN_DIR : ${{ github .workspace }}/artifacts
115
- BUILD_BACKENDS_BIN_DIR : ${{ github .workspace }}/artifacts
152
+ PIXI_BIN_DIR : ${{ matrix .workspace }}/artifacts
153
+ BUILD_BACKENDS_BIN_DIR : ${{ matrix .workspace }}/artifacts
0 commit comments