Socket
Socket
Sign inDemoInstall

dagsesh

Package Overview
Dependencies
6
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    dagsesh

Dagsesh: Airflow session manager


Maintainers
1

Readme

Dagsesh: Airflow DAG Session Manager

Overview

An Apache Airflow session context manager that overrides the default AIRFLOW_HOME path with a random, ephemeral alternate.

Why is this useful? As per the Airflow configuration docs:

The first time you run Airflow, it will create a file called airflow.cfg in your $AIRFLOW_HOME directory (~/airflow by default).

Dagsesh delays the creation of AIRFLOW_HOME using a lazy-loading facility whilst injecting it with a random alternate. Great if you want to create a pristine Airflow environment for repeatable testing.

Dagsesh can be used as a convenient pytest plugin to prime an Airflow environment for testing.

top

Prerequisites

top

Getting Started

Makester is used as the Integrated Developer Platform.

(macOS Users) Upgrading GNU Make

Follow these notes to get GNU make.

Creating the Local Environment

Get the code and change into the top level git project directory:

git clone git@github.com:loum/dagsesh.git && cd dagsesh

NOTE: Run all commands from the top-level directory of the git repository.

For first-time setup, get the Makester project:

git submodule update --init

Initialise the environment:

make init-dev
Local Environment Maintenance

Keep Makester project up-to-date with:

git submodule update --remote --merge

top

Help

There should be a make target to get most things done. Check the help for more information:

make help

top

Running the Test Harness

We use pytest. To run the tests:

make tests

top

Using dagsesh Plugin in your Project's Test Suite

Add the dagsesh package as a dependency to your project's development environment so that the plugin is installed and visible in your PYTHONPATH. dagsesh takes care of the distribution's entry point so that pytest automatically finds the plugin module. Nothing else needs to be done.

NOTE: See Making your plugin installable by others for more information.


top

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc