Skip to main content

A Python API for accsyn programmable fast and secure data delivery software

Project description

accsyn-python-api

Official accsyn fast and secure file delivery Python API

Python API support can be found here.

Changelog:

See doc/release_notes.rst

Documentation:

https://accsyn-python-api.readthedocs.io/en/latest

Development Setup:

This project uses Poetry for dependency management. To get started:

# Install Poetry (if not already installed)
curl -sSL https://install.python-poetry.org | python3 -

# Install dependencies
poetry install

# Install with documentation dependencies
poetry install --with docs

# Activate the virtual environment
poetry shell

Building Documentation:

To build the documentation locally:

# Install with docs dependencies
poetry install --with docs

# Build docs
cd doc
poetry run sphinx-build -T -E -b html -d _build/doctrees -D language=en . ../dist/doc

Or use the shorter command:

poetry run sphinx-build -b html doc dist/doc

Development Tools:

# Format code
poetry run black .

Testing:

The test suite requires role-specific credential files to test different user permissions, Tests will be skipped if the required .env files are not present. The tests also requires active accsyn clients running on behalf of the users, to be able to fully test file transfers and compute. This requires all tests to run interactively, to be able to action prompts that may appear during execution.

Prepare test credentials:

Create three .env files in the project root directory, one for each role:

  1. .env.admin - Admin role credentials
  2. .env.employee - Employee role credentials
  3. .env.standard - Standard (restricted end user) role credentials

Each .env file should contain:

ACCSYN_WORKSPACE=your_workspace
ACCSYN_API_USER=user@example.com
ACCSYN_API_KEY=your_api_key

Run tests:

# Run all tests
poetry run pytest -x -s

# Run with coverage report
poetry run pytest -x -s --cov=accsyn_api --cov-report=term-missing

# Run a specific test file
poetry run pytest -x -s tests/test_find_entitytypes.py

# Some tests have dependencies in form of running clients, run interactively:
poetry run pytest -x -s tests/test_find_entitytypes.py

Categories: Use @pytest.mark.base for tests that create entities; use @pytest.mark.extended and @pytest.mark.order(2) (or higher) for tests that depend on those entities. Run pytest -m "base or extended" to run both in order in one session.

Note: Tests that require a specific role will be skipped if the corresponding .env file is missing.

Building and publishing to PyPi:

# Build the package
poetry build

# Publish to PyPI (requires authentication)
poetry publish

# Or publish to test PyPI first
poetry config repositories.testpypi https://test.pypi.org/legacy/
poetry publish -r testpypi

Poetry can use saved credentials (poetry config pypi-token.pypi <token>) or username/password flags such as poetry publish --username <user> --password <pass>.

accsyn(r) - secure high speed file delivery and workflow sync https://accsyn.com https://support.accsyn.com

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

accsyn_python_api-3.3.4.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

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

accsyn_python_api-3.3.4-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file accsyn_python_api-3.3.4.tar.gz.

File metadata

  • Download URL: accsyn_python_api-3.3.4.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.0 Darwin/23.6.0

File hashes

Hashes for accsyn_python_api-3.3.4.tar.gz
Algorithm Hash digest
SHA256 d3d031843f4f454efef56c1428e9a6bcfae6ea37e9bf5bccaad8809a043a4f6a
MD5 db3f1095e1e6aa01b63ce71891492fcc
BLAKE2b-256 8008c14e4f191fdd34123ab57cadc34dbdc05f584a4eba9a24b8139a1109e3fd

See more details on using hashes here.

File details

Details for the file accsyn_python_api-3.3.4-py3-none-any.whl.

File metadata

  • Download URL: accsyn_python_api-3.3.4-py3-none-any.whl
  • Upload date:
  • Size: 22.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.0 Darwin/23.6.0

File hashes

Hashes for accsyn_python_api-3.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 27025143f0ad07ab648bc2dac7a85f50b9aafbf9e806c2d313f1aa5676839804
MD5 d04d1a1e0ead3e1020700d48e349f644
BLAKE2b-256 6715fa1f6c49350975bdeafe2f4e4256a896c4dab373be5422b56e9ee3fa761d

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