Skip to content

Conversation

@panbingkun
Copy link
Contributor

@panbingkun panbingkun commented Jan 10, 2024

What changes were proposed in this pull request?

The pr aims to upgrade upload-artifact action from v3 to v4.
The pr is also an improvement after the reversal of #44438.

Why are the changes needed?

Does this PR introduce any user-facing change?

No.

How was this patch tested?

Pass GA.

Was this patch authored or co-authored using generative AI tooling?

No.

@github-actions github-actions bot added the INFRA label Jan 10, 2024
@panbingkun panbingkun changed the title Spark 46474 fix [SPARK-46474][INFRA] Upgrade upload-artifact action to v4 Jan 10, 2024
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.modules }}--${{ matrix.java }}-${{ inputs.hadoop }}-hive2.3
name: test-results-${{ matrix.modules }}--${{ matrix.java }}-${{ inputs.hadoop }}-hive2.3-${{ env.PYTHON_TO_TEST }}
Copy link
Contributor Author

@panbingkun panbingkun Jan 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is to fix the breaking change feature of the new version v4:
https://github.com/actions/upload-artifact?tab=readme-ov-file#breaking-changes
image

uses: actions/upload-artifact@v4
with:
name: unit-tests-log-${{ matrix.modules }}--${{ matrix.java }}-${{ inputs.hadoop }}-hive2.3
name: unit-tests-log-${{ matrix.modules }}--${{ matrix.java }}-${{ inputs.hadoop }}-hive2.3-${{ env.PYTHON_TO_TEST }}
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@panbingkun
Copy link
Contributor Author

panbingkun commented Jan 10, 2024

cc @HyukjinKwon @dongjoon-hyun @zhengruifeng

Why does this PR #44438 cause upload failure in build_python testing?

@panbingkun panbingkun marked this pull request as ready for review January 10, 2024 08:16
Copy link
Member

@dongjoon-hyun dongjoon-hyun left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you, @panbingkun .

cc @HyukjinKwon

@HyukjinKwon
Copy link
Member

Merged to master.

@dongjoon-hyun
Copy link
Member

Oh, it seems to fail again.

Error: Failed to CreateArtifact: Received non-retryable error: Failed request: (409) Conflict: an artifact with this name already exists on the workflow run

@dongjoon-hyun
Copy link
Member

Unfortunately, let me revert this again.

@dongjoon-hyun
Copy link
Member

This is reverted via c18c87d

@HyukjinKwon
Copy link
Member

Thanks for reverting it 👍

@panbingkun
Copy link
Contributor Author

I also noticed that, it's strange, I will investigate again.

@panbingkun
Copy link
Contributor Author

image It seems that the ` PYTHON_TO_TEST` environment variable is not effective, `Python 3.9 still` runs in various workflows, which doesn't seem to meet our expectations.

@panbingkun
Copy link
Contributor Author

panbingkun commented Jan 12, 2024

This issue is also the reason why this PR was unsuccessful.

I have found another issue, we need to use $PYTHON_TO_TEST in every step of using env: ${{ fromJSON(inputs.envs) }}, otherwise the enumeration will not be as expected.
Let's take a successful build_ python Using as an example, https://github.com/apache/spark/actions/runs/7476792796/job/20348090667

1.python 3.10
Obviously, it is meaningless to enumerate the packages of Python 3.9 when building PySpark based on Python 3.10.
https://github.com/apache/spark/actions/runs/7476792796/job/20348079659
image

2.python 3.11
https://github.com/apache/spark/actions/runs/7476792796/job/20348091081
image

cc @dongjoon-hyun @HyukjinKwon
I will first propose a separate PR to fix this issue.
#44698

HyukjinKwon pushed a commit that referenced this pull request Jan 17, 2024
### What changes were proposed in this pull request?
The pr aims to upgrade upload-artifact action from v3 to v4.
After PR #44698, our environment variable(`PYTHON_TO_TEST`) is correctly passed and assigned value.
We will bring back this PR: #44662

### Why are the changes needed?
- v4.0.0 release notes: https://github.com/actions/upload-artifact/releases/tag/v4.0.0
They have numerous performance and behavioral improvements.

- v3 VS v4: actions/upload-artifact@v3...v4.0.0

### Does this PR introduce _any_ user-facing change?
No.

### How was this patch tested?
Pass GA.

### Was this patch authored or co-authored using generative AI tooling?
No.

Closes #44728 from panbingkun/SPARK-46474_GO_AHEAD.

Authored-by: panbingkun <[email protected]>
Signed-off-by: Hyukjin Kwon <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants