Skip to content

ci: Use install-action instead of cargo install to speed up CI#23477

Merged
alamb merged 1 commit into
apache:mainfrom
2010YOUY01:ci-install-action
Jul 13, 2026
Merged

ci: Use install-action instead of cargo install to speed up CI#23477
alamb merged 1 commit into
apache:mainfrom
2010YOUY01:ci-install-action

Conversation

@2010YOUY01

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

  • Closes #.

Rationale for this change

For CI dependencies installed with cargo install, it's possible to use install-action instead for faster setup. (former compiles the binary, the latter directly download the release version) , each of them should get ~1min faster.

What changes are included in this PR?

  • Use install-action instead of cargo install for existing CI jobs
  • Add a new CI job to enforce this convention (grep cargo install for all Github Action scripts)

Are these changes tested?

Are there any user-facing changes?

@github-actions github-actions Bot added the development-process Related to development process of DataFusion label Jul 11, 2026
@2010YOUY01
2010YOUY01 marked this pull request as draft July 11, 2026 13:41
@2010YOUY01

Copy link
Copy Markdown
Contributor Author

The step of installing cargo machete improved from 41s to 3s

https://github.com/apache/datafusion/actions/runs/29175818974/job/86604744160
https://github.com/apache/datafusion/actions/runs/29154744229/job/86549929396?pr=23477

Other cargo dependencies should have a similar speedup. Note some of them are not faster, because install-action don't support all cargo dependencies, unsupported ones will fallback to cargo install. It seems all of them can be manually added by sending a PR to install-action

See https://github.com/taiki-e/install-action/blob/main/TOOLS.md

@2010YOUY01
2010YOUY01 marked this pull request as ready for review July 12, 2026 02:09

@comphead comphead left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thanks @2010YOUY01 lets see this in practice, hope it would make easier with retries and https issues during download

@alamb
alamb added this pull request to the merge queue Jul 13, 2026
@alamb

alamb commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Thanks @2010YOUY01 and @comphead

Merged via the queue into apache:main with commit 04b19a3 Jul 13, 2026
37 checks passed
philippemnoel pushed a commit to paradedb/datafusion that referenced this pull request Jul 17, 2026
## Which issue does this PR close?

<!--
We generally require a GitHub issue to be filed for all bug fixes and
enhancements and this helps us generate change logs for our releases.
You can link an issue to this PR using the GitHub syntax. For example
`Closes apache#123` indicates that this PR will close issue apache#123.
-->

- Closes #.

## Rationale for this change

<!--
Why are you proposing this change? If this is already explained clearly
in the issue then this section is not needed.
Explaining clearly why changes are proposed helps reviewers understand
your changes and offer better suggestions for fixes.
-->
Follow-up to apache#23477. The
original PR missed one instance; this PR applies the same change to that
case.

## What changes are included in this PR?

<!--
There is no need to duplicate the description in the issue here but it
is sometimes worth providing a summary of the individual changes in this
PR.
-->

## Are these changes tested?

<!--
We typically require tests for all PRs in order to:
1. Prevent the code from being accidentally broken by subsequent changes
2. Serve as another way to document the expected behavior of the code

If tests are not included in your PR, please explain why (for example,
are they covered by existing tests)?
-->

## Are there any user-facing changes?

<!--
If there are user-facing changes then we may require documentation to be
updated before approving the PR.
-->

<!--
If there are any breaking changes to public APIs, please add the `api
change` label.
-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

development-process Related to development process of DataFusion

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants