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

Remove additional generation of dependencies when building CI images #36283

Merged
merged 1 commit into from
Dec 18, 2023

Conversation

potiuk
Copy link
Member

@potiuk potiuk commented Dec 18, 2023

When generated dependencies are not properly updated, we had a special step where the dependencies were generated "just in case" before CI image was built, because otherwise building the CI image could have failed with strange "failed because of conflicting dependencies" without a clue what was the root cause.

However, the pre-commit did not return error exit code - because for the pre-commit, it is enough that a file is modified during pre-commit to fail the pre-commit in general.

That had a nasty side effect because the built CI image actually already contained properly generated dependencies (by this step), and it did not properly detected cases where the ones in the repository were added manually and not generated with pre-commit.

This PR fixes it - instead of generating and building such image in CI it will now fail the CI image building step but with clear instructions what to do.

The CI job step uses now regular breeze command rather than running the script manually but also the script returns error code in case the generated dependencies have been updated.


^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named {pr_number}.significant.rst or {issue_number}.significant.rst, in newsfragments.

When generated dependencies are not properly updated, we had a special
step where the dependencies were generated "just in case" before CI
image was built, because otherwise building the CI image could have
failed with strange "failed because of conflicting dependencies"
without a clue what was the root cause.

However, the pre-commit did not return error exit code - because for the
pre-commit, it is enough that a file is modified during pre-commit to
fail the pre-commit in general.

That had a nasty side effect because the built CI image actually already
contained properly generated dependencies (by this step), and it did not
properly detected cases where the ones in the repository were added
manually and not generated with pre-commit.

This PR fixes it - instead of generating and building such image in
CI it will now fail the CI image building step but with clear
instructions what to do.

The CI job step uses now regular breeze command rather than running
the script manually but also the script returns error code in case
the generated dependencies have been updated.
@potiuk potiuk force-pushed the fix-generated-dependencies-script branch from 895c72d to 03fae3d Compare December 18, 2023 17:16
@potiuk
Copy link
Member Author

potiuk commented Dec 18, 2023

Ah.. I knew why I had the script now - no CI image locally :). Brought back the script running manually but sys.exit(1) shoudl do the job

@potiuk potiuk merged commit 33a2fbe into main Dec 18, 2023
79 checks passed
@Taragolis Taragolis deleted the fix-generated-dependencies-script branch December 27, 2023 10:33
potiuk added a commit that referenced this pull request Dec 30, 2023
…36283)

When generated dependencies are not properly updated, we had a special
step where the dependencies were generated "just in case" before CI
image was built, because otherwise building the CI image could have
failed with strange "failed because of conflicting dependencies"
without a clue what was the root cause.

However, the pre-commit did not return error exit code - because for the
pre-commit, it is enough that a file is modified during pre-commit to
fail the pre-commit in general.

That had a nasty side effect because the built CI image actually already
contained properly generated dependencies (by this step), and it did not
properly detected cases where the ones in the repository were added
manually and not generated with pre-commit.

This PR fixes it - instead of generating and building such image in
CI it will now fail the CI image building step but with clear
instructions what to do.

The CI job step uses now regular breeze command rather than running
the script manually but also the script returns error code in case
the generated dependencies have been updated.

(cherry picked from commit 33a2fbe)
@potiuk potiuk added the changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..) label Dec 30, 2023
@potiuk potiuk added this to the Airflow 2.8.1 milestone Dec 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:dev-tools changelog:skip Changes that should be skipped from the changelog (CI, tests, etc..)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants