CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-apache-airflow-backport-providers-apache-sqoop

Apache Airflow backport provider package for Apache Sqoop integration, providing SqoopHook and SqoopOperator for data import/export between relational databases and Hadoop

Overall
score

92%

Overview
Eval results
Files

task.mdevals/scenario-10/

Credential-Safe Sqoop Runner

Design a small utility that assembles and executes Sqoop CLI commands while keeping credentials hidden in logs and failing fast when the Sqoop process reports an error.

Capabilities

Builds Sqoop command from Airflow connection

  • When provided a connection ID, base Sqoop arguments (for example, an import directive), and optional extra options, it produces a full CLI argument list that includes host, port, schema, username, and password from the connection plus any supplied or connection-level extras (such as job tracker, namenode, libjars, files, archives, or a password file). @test

Produces a masked command for logging

  • The utility returns a masked, human-readable command string where any credentials from the connection are obfuscated so they cannot leak into logs. @test

Executes Sqoop with fail-fast behavior

  • Running the prepared command executes Sqoop as a subprocess and raises the package's standard exception for hook failures when the exit code is non-zero, including stderr output in the error. @test

Implementation

@generates

API

from typing import Any, Dict, List, Tuple

def prepare_command(conn_id: str, base_args: List[str], extra_options: Dict[str, Any] | None = None) -> Tuple[List[str], str]:
    """Builds the full Sqoop CLI argument list from the connection plus base arguments and optional extras, returning both the raw args and a masked command string for logging."""

def run_command(command: List[str]) -> str:
    """Executes the Sqoop command using the package's subprocess helper, returning stdout on success and raising the package's standard exception type on any non-zero exit."""

Dependencies { .dependencies }

apache-airflow-backport-providers-apache-sqoop { .dependency }

Provides Sqoop connection hooks, credential masking, and subprocess execution with fail-fast behavior.

Install with Tessl CLI

npx tessl i tessl/pypi-apache-airflow-backport-providers-apache-sqoop

tile.json