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:
.env.admin- Admin role credentials.env.employee- Employee role credentials.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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file accsyn_python_api-3.2.0.tar.gz.
File metadata
- Download URL: accsyn_python_api-3.2.0.tar.gz
- Upload date:
- Size: 21.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.13.0 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e5298c36c0a8560d7c0c3a79451e3832c9aafbd09de18ad1ab7d668d608e2b0
|
|
| MD5 |
f0fb464aa8576c9d4258befa48ef27c7
|
|
| BLAKE2b-256 |
2863040853372ad137831432da11ef938dcae2d19d795c925a3782880de7bc40
|
File details
Details for the file accsyn_python_api-3.2.0-py3-none-any.whl.
File metadata
- Download URL: accsyn_python_api-3.2.0-py3-none-any.whl
- Upload date:
- Size: 20.6 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03620648ac5b7a645d31368ac5236414d3612bf7eff76a9efe7d7e7b36cbc7d5
|
|
| MD5 |
55e7752057d7934c4e60c7b576a82ddd
|
|
| BLAKE2b-256 |
3bd97683e97a348d0858057580cb92ceb4d976345d4a4fd9ce49dc6ae79833b0
|