The GitHub Actions job "Tests" on airflow.git has succeeded.
Run started by GitHub user potiuk (triggered by vincbeck).

Head commit for run:
f56d37d9627f49643d69eea3d89165d9afb1a52b / Jarek Potiuk <[email protected]>
Improve pre-commit to generate Airflow diagrams as a code

Since we are getting more diagrams generated in Airflow using the
"diagram as a code" approach, this PR improves the pre-commit to be
more suitable to support generation of more of the images coming
from different sources, placed in different directories and generated
independently, so that the whole process is more distributed and easy
for whoever creates diagrams to add their own diagram.

The changes implemented in this PR:

* the code to generate the diagrams is now next to the diagram they
  generate. It has the same name as the diagram, but it has the .py
  extension. This way it is immediately visible where is the source
  of each diagram (right next to each diagram)

* each of the .py diagram Python files is runnable on its own. This
  way you can easily regenerate the diagrams by running corresponding
  Python file or even automate it by running "save" action and generate
  the diagrams automatically by running the Python code every time
  the file is saved. That makes a very nice workflow on iterating on
  each diagram, independently from each othere

* the pre-commit script is given a set of folders which should be
  scanned and it finds and run the diagrams on pre-commmit. It also
  creates and verifies the md5sum hash of the source Python file
  separately for each diagram and only runs diagram generation when
  the source file changed vs. last time the hash was saved and
  committed. The hash sum is stored next to the image and sources
  with .md5sum extension

Also updated documentation in the CONTRIBUTING.rst explaining how
to generate the diagrams and what is the mechanism of that
generation.

Report URL: https://github.com/apache/airflow/actions/runs/7278799608

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to