Skip to main content

A simple TOML configuration for EWS settings

Project description

ews-core-config

PyPI version PyPI - License PyPI - Python Version PyPI - Wheel

Ruff Precommit

Installation

Install with

pipx install ews-core-config[cli]

What does it do

It looks for a ~/.config/ews/ews_config.toml file.

See an example configuration in this discussion.

The default config is found in the file config.py.

Usage

Libraries developed by EWS Consulting can require this package as an optional dependency under the extra ews.

This can be done in the pyproject.toml file.

[project.optional-dependencies]
ews = ["ews-core-config"]

This installation will be like:

pip install ews-my-awesome-library[ews]

Then, in the code:

import contextlib
with contextlib.suppress(ImportError):
    from ews_core_config.config import read_settings
    read_settings()
my_password = os.getenv("EWS_SHAREPOINT_USERNAME", "")

This will read your config file and set all the environment variables.

For instance, other libraries (like the one used to retrieve files on our SharePoint) will have access to the env. variable EWS_SHAREPOINT_USERNAME and EWS_SHAREPOINT_PASSWORD.

Alternatively, you can directly retrieve the settings from the module.

from ews_core_config.config import read_settings
EWSSettings = read_settings()
username = EWSSettings.sharepoint_username
assert username != "", "Please set your SharePoint user name!"

This is not the preferred way. Indeed, it might be easier to refractor libraries to make them independent of our library if they just use environment variables.

Installation with pipx

pipx install .[cli] --editable --force

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

ews_core_config-20240414.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

ews_core_config-20240414-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file ews_core_config-20240414.tar.gz.

File metadata

  • Download URL: ews_core_config-20240414.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for ews_core_config-20240414.tar.gz
Algorithm Hash digest
SHA256 74452325134c33b0bbf610f143d3b1e53260ff1b293f2ff63bce9e4a4b1e9951
MD5 418dee96e4b5abfda55bb696150384f0
BLAKE2b-256 9c51e9ee9138c920d93e27e4e5ea218456995f8f2c463bd87c40515d74cd18ae

See more details on using hashes here.

File details

Details for the file ews_core_config-20240414-py3-none-any.whl.

File metadata

File hashes

Hashes for ews_core_config-20240414-py3-none-any.whl
Algorithm Hash digest
SHA256 2025b25b418244cd47704a0aa1d7e3a99a0962a726bee3a272b21b17e275c692
MD5 2b5bb28ef35c525f8a8cc0e51ed89a81
BLAKE2b-256 afb80db11287b5bcd078023ea683c5b23e34b467d611512f5fe78f2e594d368e

See more details on using hashes here.

Supported by

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