Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ci] Move pip dependencies to docker images, add ninja / shellcheck #10257

Merged
merged 2 commits into from
Mar 16, 2022

Conversation

driazati
Copy link
Member

@driazati driazati commented Feb 15, 2022

Following on from #10246, this moves the pip install-at-runtime deps to the docker image install so they are baked in. This adds some extra dependencies to support #10425 and make it so we can easily run things in parallel in CI scripts via GNU parallel and lint our bash scripts.

@driazati driazati force-pushed the pip_deps branch 2 times, most recently from 062fb5e to 0f4858c Compare February 23, 2022 00:05
@driazati driazati requested a review from Mousius February 23, 2022 00:06
@driazati driazati changed the title [ci] Move pip dependencies to docker image [ci] Move pip dependencies to docker images Feb 23, 2022
Following on from apache#10246, this moves the `pip install`-at-runtime deps to the docker image install so they are baked in.

commit-id:5fe5152b
@areusch
Copy link
Contributor

areusch commented Mar 7, 2022

@driazati what's the plan for removing task_ci_setup.sh tho?

Copy link
Contributor

@areusch areusch left a comment

Choose a reason for hiding this comment

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

actually let's discuss that first before merging, as changes between the upstream index and what we pin can cause task_ci_setup.sh to start failing

@driazati
Copy link
Member Author

driazati commented Mar 7, 2022

@driazati what's the plan for removing task_ci_setup.sh tho?

once this lands and we update the docker images we can remove the pip installs from there

actually let's discuss that first before merging, as changes between the upstream index and what we pin can cause task_ci_setup.sh to start failing

the version pins are the same so the installs intask_ci_setup.sh should be a no-op once this is added

@driazati driazati changed the title [ci] Move pip dependencies to docker images [ci] Move pip dependencies to docker images, add ninja / shellcheck Mar 7, 2022
@areusch
Copy link
Contributor

areusch commented Mar 9, 2022

i think maybe we should change task_ci_setup.sh to not install those packages if they already exist. i can't remember exactly what happened here, but there was a CI problem before where a disagreement between the pinned version of the package in task_ci_setup.sh and the pinned version in the docker/install scripts caused CI to fail. i think maybe this was due to not specifying -U in pip install? anyway, it would be great to ensure that either we use task_ci_setup.sh or we use new docker image.

Copy link
Contributor

@areusch areusch left a comment

Choose a reason for hiding this comment

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

ok, discussed offline, since we are migrating all of these to the ci image, the main thing we need to avoid the state where one version of synr is installed in ci- images and another in $TVM_HOME/.local. since we are moving all of them to ci installation, we can just rm -rf $TVM_HOME/.local in task_ci_setup.sh when we bump the docker image version. we can revert the docker image with [skip ci] to avoid breakage.

@areusch
Copy link
Contributor

areusch commented Mar 15, 2022

@Mousius can you take another look here and merge if you are good with it?

Copy link
Member

@Mousius Mousius left a comment

Choose a reason for hiding this comment

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

LGTM! Apologies for the delay!

Agree dependencies which are used as Python dependencies should come via pip. If they're not used as Python dependencies and there's a stable OS package available then we should favour the more robust OS way of delivering packages.

@Mousius Mousius merged commit 1fd1b79 into apache:main Mar 16, 2022
pfk-beta pushed a commit to pfk-beta/tvm that referenced this pull request Apr 11, 2022
…pache#10257)

Following on from apache#10246, this moves the `pip install`-at-runtime deps to the docker image install so they are baked in.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants