Skip to content

Commit 51cf4d2

Browse files
Fix Flux and Mac OS CI steps
The Flux CI step often fails because the `attrs` module cannot be found on the system. This commit fixes this behaviour by explicitly installing the module through `pip` in the CI workflow. As per issue lima-vm/lima#1742, the QEMU 8.1.0 Homebrew package is broken on Intel architectures. This commit adds an additional step to compile QEMU from source, which fixes the issue.
1 parent 55743d2 commit 51cf4d2

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

.github/workflows/ci-tests.yaml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,10 @@ jobs:
7070
- uses: actions/setup-node@v3
7171
with:
7272
node-version: "15"
73+
- name: "Install QEMU from binary"
74+
run: |
75+
brew install --build-from-source qemu
76+
if: ${{ startsWith(matrix.on, 'macos-') }}
7377
- name: "Install Docker (MacOS X)"
7478
uses: douglascamata/[email protected]
7579
if: ${{ startsWith(matrix.on, 'macos-') }}
@@ -153,7 +157,7 @@ jobs:
153157
- name: Install Streamflow
154158
run: |
155159
pip install .
156-
pip install lockfile
160+
pip install attrs lockfile
157161
chown -R fluxuser .
158162
- name: Start Flux and Test Workflow
159163
run: |
@@ -209,6 +213,10 @@ jobs:
209213
- uses: actions/setup-node@v3
210214
with:
211215
node-version: "15"
216+
- name: "Install QEMU from binary"
217+
run: |
218+
brew install --build-from-source qemu
219+
if: ${{ startsWith(matrix.on, 'macos-') }}
212220
- name: "Install Docker (MacOs X)"
213221
uses: douglascamata/[email protected]
214222
if: ${{ startsWith(matrix.on, 'macos-') }}

examples/flux/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ WORKDIR /code
1414

1515
# Install in development mode in case container used for development
1616
RUN pip install develop . \
17-
&& pip install \
17+
&& pip install --upgrade \
1818
attrs \
1919
lockfile \
2020
&& chown -R fluxuser /code

streamflow/deployment/deployment_manager.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ async def undeploy(self, deployment_name: str):
196196
logger.info(f"COMPLETED Undeployment of {deployment_name}")
197197
self.events_map[deployment_name].set()
198198
# Remove the current environment from all the other dependency graphs
199-
for name, deps in (
199+
for name, deps in list(
200200
(k, v) for k, v in self.dependency_graph.items() if k != deployment_name
201201
):
202202
deps.discard(deployment_name)

0 commit comments

Comments
 (0)