Skip to content

Commit 6374ed5

Browse files
committed
fix(ci): add missing lfx build step to cross-platform workflow_dispatch
The build-if-needed job (used by workflow_dispatch) was missing the lfx package build, causing all cross-platform tests to fail with: 'No solution found: lfx>=0.4.0 required but only <=0.3.4 available' Changes: - Build lfx wheel in build-if-needed job - Upload lfx artifact (adhoc-dist-lfx) - Add lfx-artifact-name to job outputs - Update all test jobs to fallback to build-if-needed outputs for lfx artifact (matching existing base/main pattern)
1 parent b0a8662 commit 6374ed5

1 file changed

Lines changed: 21 additions & 10 deletions

File tree

.github/workflows/cross-platform-test.yml

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ jobs:
3636
outputs:
3737
base-artifact-name: ${{ steps.set-names.outputs.base-artifact-name }}
3838
main-artifact-name: ${{ steps.set-names.outputs.main-artifact-name }}
39+
lfx-artifact-name: ${{ steps.set-names.outputs.lfx-artifact-name }}
3940
steps:
4041
- name: Checkout code
4142
uses: actions/checkout@v6
@@ -58,8 +59,17 @@ jobs:
5859
# Base package builds to dist/ but should be in src/backend/base/dist/
5960
mkdir -p src/backend/base/dist
6061
mv dist/langflow_base*.whl src/backend/base/dist/
62+
- name: Build LFX package
63+
run: |
64+
cd src/lfx
65+
uv build --wheel --out-dir dist
6166
- name: Build main package
6267
run: make build_langflow args="--wheel"
68+
- name: Upload lfx artifact
69+
uses: actions/upload-artifact@v6
70+
with:
71+
name: adhoc-dist-lfx
72+
path: src/lfx/dist
6373
- name: Upload base artifact
6474
uses: actions/upload-artifact@v6
6575
with:
@@ -75,6 +85,7 @@ jobs:
7585
run: |
7686
echo "base-artifact-name=adhoc-dist-base" >> $GITHUB_OUTPUT
7787
echo "main-artifact-name=adhoc-dist-main" >> $GITHUB_OUTPUT
88+
echo "lfx-artifact-name=adhoc-dist-lfx" >> $GITHUB_OUTPUT
7889
7990
test-installation-stable:
8091
name: Install & Run - ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.python-version }}
@@ -162,10 +173,10 @@ jobs:
162173

163174
# Download artifacts for wheel installation
164175
- name: Download LFX package artifact
165-
if: steps.install-method.outputs.method == 'wheel' && inputs.lfx-artifact-name != ''
176+
if: steps.install-method.outputs.method == 'wheel' && (inputs.lfx-artifact-name != '' || needs.build-if-needed.outputs.lfx-artifact-name != '')
166177
uses: actions/download-artifact@v7
167178
with:
168-
name: ${{ inputs.lfx-artifact-name }}
179+
name: ${{ inputs.lfx-artifact-name || needs.build-if-needed.outputs.lfx-artifact-name || 'adhoc-dist-lfx' }}
169180
path: ./lfx-dist
170181

171182
- name: Download base package artifact
@@ -189,7 +200,7 @@ jobs:
189200

190201
# Wheel installation steps
191202
- name: Install LFX package from wheel (Windows)
192-
if: steps.install-method.outputs.method == 'wheel' && matrix.os == 'windows' && inputs.lfx-artifact-name != ''
203+
if: steps.install-method.outputs.method == 'wheel' && matrix.os == 'windows' && (inputs.lfx-artifact-name != '' || needs.build-if-needed.outputs.lfx-artifact-name != '')
193204
run: |
194205
ls -la ./lfx-dist/
195206
find ./lfx-dist -name "*.whl" -type f
@@ -231,7 +242,7 @@ jobs:
231242
shell: bash
232243

233244
- name: Install LFX package from wheel (Unix)
234-
if: steps.install-method.outputs.method == 'wheel' && matrix.os != 'windows' && inputs.lfx-artifact-name != ''
245+
if: steps.install-method.outputs.method == 'wheel' && matrix.os != 'windows' && (inputs.lfx-artifact-name != '' || needs.build-if-needed.outputs.lfx-artifact-name != '')
235246
run: |
236247
ls -la ./lfx-dist/
237248
find ./lfx-dist -name "*.whl" -type f
@@ -461,10 +472,10 @@ jobs:
461472

462473
# Download artifacts for wheel installation
463474
- name: Download LFX package artifact
464-
if: steps.install-method.outputs.method == 'wheel' && inputs.lfx-artifact-name != ''
475+
if: steps.install-method.outputs.method == 'wheel' && (inputs.lfx-artifact-name != '' || needs.build-if-needed.outputs.lfx-artifact-name != '')
465476
uses: actions/download-artifact@v7
466477
with:
467-
name: ${{ inputs.lfx-artifact-name }}
478+
name: ${{ inputs.lfx-artifact-name || needs.build-if-needed.outputs.lfx-artifact-name || 'adhoc-dist-lfx' }}
468479
path: ./lfx-dist
469480

470481
- name: Download base package artifact
@@ -488,7 +499,7 @@ jobs:
488499

489500
# Wheel installation steps
490501
- name: Install LFX package from wheel (Windows)
491-
if: steps.install-method.outputs.method == 'wheel' && matrix.os == 'windows' && inputs.lfx-artifact-name != ''
502+
if: steps.install-method.outputs.method == 'wheel' && matrix.os == 'windows' && (inputs.lfx-artifact-name != '' || needs.build-if-needed.outputs.lfx-artifact-name != '')
492503
run: |
493504
ls -la ./lfx-dist/
494505
find ./lfx-dist -name "*.whl" -type f
@@ -530,7 +541,7 @@ jobs:
530541
shell: bash
531542

532543
- name: Install LFX package from wheel (Unix)
533-
if: steps.install-method.outputs.method == 'wheel' && matrix.os != 'windows' && inputs.lfx-artifact-name != ''
544+
if: steps.install-method.outputs.method == 'wheel' && matrix.os != 'windows' && (inputs.lfx-artifact-name != '' || needs.build-if-needed.outputs.lfx-artifact-name != '')
534545
run: |
535546
ls -la ./lfx-dist/
536547
find ./lfx-dist -name "*.whl" -type f
@@ -575,7 +586,7 @@ jobs:
575586
if: steps.install-method.outputs.method == 'wheel' && matrix.os == 'windows'
576587
run: |
577588
# Reinstall LFX if it was provided
578-
if [ -n "${{ inputs.lfx-artifact-name }}" ]; then
589+
if [ -n "${{ inputs.lfx-artifact-name || needs.build-if-needed.outputs.lfx-artifact-name }}" ]; then
579590
LFX_WHEEL=$(find ./lfx-dist -name "*.whl" -type f | head -1)
580591
if [ -n "$LFX_WHEEL" ]; then
581592
echo "Force reinstalling LFX: $LFX_WHEEL"
@@ -603,7 +614,7 @@ jobs:
603614
if: steps.install-method.outputs.method == 'wheel' && matrix.os != 'windows'
604615
run: |
605616
# Reinstall LFX if it was provided
606-
if [ -n "${{ inputs.lfx-artifact-name }}" ]; then
617+
if [ -n "${{ inputs.lfx-artifact-name || needs.build-if-needed.outputs.lfx-artifact-name }}" ]; then
607618
LFX_WHEEL=$(find ./lfx-dist -name "*.whl" -type f | head -1)
608619
if [ -n "$LFX_WHEEL" ]; then
609620
echo "Force reinstalling LFX: $LFX_WHEEL"

0 commit comments

Comments
 (0)