airflow.models.dagcode

Module Contents

airflow.models.dagcode.log[source]
class airflow.models.dagcode.DagCode(full_filepath: str, source_code: Optional[str] = None)[source]

Bases: airflow.models.base.Base

A table for DAGs code.

dag_code table contains code of DAG files synchronized by scheduler. This feature is controlled by:

  • [core] store_dag_code = True: enable this feature

For details on dag serialization see SerializedDagModel

__tablename__ = dag_code[source]
fileloc_hash[source]
fileloc[source]
last_updated[source]
source_code[source]
sync_to_db(self, session=None)[source]

Writes code into database.

Parameters

session -- ORM Session

classmethod bulk_sync_to_db(cls, filelocs: Iterable[str], session=None)[source]

Writes code in bulk into database.

Parameters
  • filelocs -- file paths of DAGs to sync

  • session -- ORM Session

classmethod remove_deleted_code(cls, alive_dag_filelocs: List[str], session=None)[source]

Deletes code not included in alive_dag_filelocs.

Parameters
  • alive_dag_filelocs -- file paths of alive DAGs

  • session -- ORM Session

classmethod has_dag(cls, fileloc: str, session=None)[source]

Checks a file exist in dag_code table.

Parameters
  • fileloc -- the file to check

  • session -- ORM Session

classmethod get_code_by_fileloc(cls, fileloc: str)[source]

Returns source code for a given fileloc.

Parameters

fileloc -- file path of a DAG

Returns

source code as string

classmethod code(cls, fileloc)[source]

Returns source code for this DagCode object.

Returns

source code as string

static _get_code_from_file(fileloc)[source]
classmethod _get_code_from_db(cls, fileloc, session=None)[source]
static dag_fileloc_hash(full_filepath: str)[source]

Hashing file location for indexing.

Parameters

full_filepath -- full filepath of DAG file

Returns

hashed full_filepath

Was this entry helpful?