Ctrl + K
DocumentationLog inGet started

tessl/pypi-apache-airflow-providers-ftp

tessl install tessl/pypi-apache-airflow-providers-ftp@3.13.0

Provider package for Apache Airflow that enables FTP file transfer protocol operations including hooks, operators, and sensors for workflow integration.

Agent Success

Agent success rate when using this tile

84%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.06x

Baseline

Agent success rate without this tile

79%

task.mdevals/scenario-3/

FTP Directory Manager

A utility for managing remote FTP directory structures and retrieving metadata.

Overview

Build a Python module that provides functionality for managing directories on an FTP server. The module should handle listing directory contents, retrieving detailed metadata, and managing directory structures.

Capabilities

Directory Content Listing

  • Lists all files and subdirectories in /data/uploads directory on the FTP server @test
  • Returns an empty list when listing an empty directory /empty_dir @test

Directory Metadata Retrieval

  • Retrieves structured metadata (file types, sizes, modification times) for all entries in /reports directory @test
  • Returns metadata as a dictionary with filenames as keys and attributes as values @test

Directory Creation

  • Creates a new directory /archive/2024 on the remote FTP server @test
  • Successfully handles creation when parent directory already exists @test

Directory Deletion

  • Deletes an empty directory /temp/old_logs from the remote FTP server @test
  • Raises an appropriate error when attempting to delete a non-existent directory @test

Implementation

@generates

API

from typing import List, Dict, Any

class FTPDirectoryManager:
    """Manager for FTP directory operations."""

    def __init__(self, ftp_conn_id: str):
        """
        Initialize the FTP directory manager.

        Args:
            ftp_conn_id: Airflow connection ID for FTP server
        """
        pass

    def list_directory(self, path: str) -> List[str]:
        """
        List all files and subdirectories in the specified remote directory.

        Args:
            path: Remote directory path

        Returns:
            List of filenames and directory names
        """
        pass

    def describe_directory(self, path: str) -> Dict[str, Dict[str, Any]]:
        """
        Retrieve detailed metadata for all entries in the specified directory.

        Args:
            path: Remote directory path

        Returns:
            Dictionary mapping filenames to their metadata attributes
        """
        pass

    def create_directory(self, path: str) -> None:
        """
        Create a new directory on the remote FTP server.

        Args:
            path: Remote directory path to create
        """
        pass

    def delete_directory(self, path: str) -> None:
        """
        Delete a directory from the remote FTP server.

        Args:
            path: Remote directory path to delete

        Raises:
            Exception: If directory does not exist or cannot be deleted
        """
        pass

Dependencies { .dependencies }

apache-airflow-providers-ftp { .dependency }

Provides FTP operations support for Apache Airflow including hooks for FTP server interaction.

@satisfied-by

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/apache-airflow-providers-ftp@3.13.x
tile.json