mik-laj commented on a change in pull request #13409:
URL: https://github.com/apache/airflow/pull/13409#discussion_r550729182
##########
File path: scripts/ci/libraries/_build_images.sh
##########
@@ -955,50 +979,33 @@ It can mean one of those:
2) You changed some dependencies in setup.py or setup.cfg and they are
conflicting.
+
In case 1) - apologies for the trouble.Please let committers know and they
will fix it. You might
be asked to rebase to the latest master after the problem is fixed.
In case 2) - Follow the steps below:
-* consult the committers if you are unsure what to do. Just comment in the PR
that you need help, if you do,
- but try to follow those instructions first!
-
-* ask the committer to set 'upgrade to newer dependencies'. All dependencies
in your PR will be updated
- to latest 'good' versions and you will be able to check if they are not
conflicting.
-
-* run locally the image that is failing with Breeze:
-
- ./breeze ${1}--github-image-id ${GITHUB_REGISTRY_PULL_IMAGE_TAG} --backend
${BACKEND="sqlite"} --python ${PYTHON_MAJOR_MINOR_VERSION}
-
-* your setup.py and setup.cfg will be mounted to the container. You will be
able to iterate with
- different setup.py versions.
-
-* in container your can run 'pipdeptree' to figure out where the dependency
conflict comes from.
-
-* Some useful commands that can help yoy to find out dependencies you have:
-
- * 'pipdeptree | less' (you can then search through the dependencies with
vim-like shortcuts)
-
- * 'pipdeptree > /files/pipdeptree.txt' - this will produce a
pipdeptree.txt file in your source
- 'files' directory and you can open it in editor of your choice,
-
- * 'pipdeptree | grep YOUR_DEPENDENCY' - to see all the requirements your
dependency has as specified
- by other packages
-
-* figure out which dependency limits should be upgraded. Upgrade them in
corresponding setup.py extras
- and run pip to upgrade your dependencies accordingly:
-
- pip install '.[all]' --upgrade --upgrade-strategy eager
+* try to build CI and then PROD image locally with breeze, adding
--upgrade-to-newer-dependencies flag:
-* run pip check to figure out if the dependencies have been fixed. It should
let you know which dependencies
- are conflicting or (hurray!) if there are no conflicts:
+${COLOR_BLUE}
+ for python_version in ${CURRENT_PYTHON_MAJOR_MINOR_VERSIONS[*]}
+ do
+ ./breeze build-image --upgrade-to-newer-dependencies --python
"$\{python_version\}"
Review comment:
nit: As a user, I don't like pasting a lot of line bash scripts into the
terminalI guess we can just display the 4 commands that the user needs to run.
```bash
./breeze build-image --upgrade-to-newer-dependencies --python 3.7
./breeze build-image --upgrade-to-newer-dependencies --python 3.7
./breeze build-image --upgrade-to-newer-dependencies --python 3.8
./breeze build-image --upgrade-to-newer-dependencies --python 3.9
```
Or alternatively, as a one-line script.
```bash
echo ${CURRENT_PYTHON_MAJOR_MINOR_VERSIONS[*]} | xargs -t -n 1 ./breeze
build-image --upgrade-to-newer-dependencies --python
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]