Skip to main content

Local filesystem connector for aisquare.pipe

Project description

aisquare-pipe-local

Local filesystem source and sink connectors for aisquare.pipe. No external dependencies — uses only Python stdlib.

Install

cd connectors/local
pip install -e ".[dev]"

Configuration

config = {"base_path": "/path/to/directory"}

No authentication required — just a directory path.

Usage

Source — pull files from disk

from aisquare.pipe import Pipeline
from aisquare.pipe.core.envelope import PullParams

pipeline = Pipeline("local-source", "mock-sink")
result = pipeline.run(
    source_config={"base_path": "/data/input"},
    sink_config={},
)

# With filters
params = PullParams(params={
    "path": "reports",                      # subdirectory
    "recursive": True,                      # include nested dirs
    "extensions": [".pdf", ".csv"],         # file type filter
    "glob": "**/*.json",                    # glob pattern (alternative)
    "limit": 100,                           # max files
    "stream_threshold": 50 * 1024 * 1024,   # stream files > 50MB
})

Sink — push files to disk

from aisquare.pipe.core.envelope import PushParams

params = PushParams(params={
    "target_path": "output/2025",           # subdirectory (created automatically)
    "conflict": "rename",                   # "fail" (default), "overwrite", or "rename"
})

Connector Details

Property Source Sink
Name local-source local-sink
Types */* (any file) */* (any file)
Auth None None
Streaming Yes (configurable threshold) Yes (stream → disk)
Max file size No limit
Path traversal protection Yes Yes

Running Tests

pytest -v   # 69 tests

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aisquare_pipe_local-0.1.0.tar.gz (10.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aisquare_pipe_local-0.1.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file aisquare_pipe_local-0.1.0.tar.gz.

File metadata

  • Download URL: aisquare_pipe_local-0.1.0.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for aisquare_pipe_local-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f6e226e30e1b4a9624b560a8385f399140d04040062918e56d7796abbcf8edab
MD5 5c53e4dcd702307e627f0538502b86ea
BLAKE2b-256 30fe37b3889dda10be3a5fdb893a9aebf3cba1ed23532ea65fd2c55fb49c5c96

See more details on using hashes here.

File details

Details for the file aisquare_pipe_local-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aisquare_pipe_local-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b56afb1710141848370b9ead6c060a9dbf60ae93c5e52f5154af57e6b038017
MD5 1643ebe856291fdae295de8b572de440
BLAKE2b-256 9d91d7bfbbca7d344f6ef6e00c2cae68ba0733b9a1cf0fe49aabe3453f3f652b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page