Skip to main content

A HTTP client wrapper to handle authenticated requests to CERN internal applications

Project description

PdmV HTTP Client

This project provides an HTTP client based on requests to handle authenticated requests to CERN internal applications. Furthermore, it includes some clients to ease the interaction with the APIs of PdmV applications. This version is a refactor of the old McM Scripts project, and it is published at PyPI to be public available.

How to use this package

Prerequisite

Create an isolated virtual environment using a Python version >= 3.9 like, for instance:

python3.9 -m venv venv && source ./venv/bin/activate

Development version

If you want to set up a development environment to contribute to this project:

Install uv and the required dependencies.

pip install uv

Set the current venv to use with uv:

export UV_PROJECT_ENVIRONMENT="${VIRTUAL_ENV}"

Install the packages via: uv sync

Run the test suite via: uv run pytest -s -vv

[!IMPORTANT] Make sure your execution environment has a valid Kerberos ticket to consume CERN services!

Build package

If you just want to use this package in your own project, install it via:

pip install pdmv-http-client

Make sure to remove the sys.path.append(...) statement, if you have them in your script, to avoid overloading old versions from CERN AFS.

Examples

At the examples/ folder, you will find some scripts explaining how to use the clients and the HTTP client.

Priority change

  • If you want to use priority-changing scripts or do anything else related to cmsweb, you'll have to use voms-proxy:
    • voms-proxy-init -voms cms
    • export X509_USER_PROXY=$(voms-proxy-info --path)

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

pdmv_http_client-2.2.0.tar.gz (71.0 kB view details)

Uploaded Source

Built Distribution

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

pdmv_http_client-2.2.0-py3-none-any.whl (30.8 kB view details)

Uploaded Python 3

File details

Details for the file pdmv_http_client-2.2.0.tar.gz.

File metadata

  • Download URL: pdmv_http_client-2.2.0.tar.gz
  • Upload date:
  • Size: 71.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pdmv_http_client-2.2.0.tar.gz
Algorithm Hash digest
SHA256 37d0d8e4c394c0f2ca8306eca76930650ffa29d90f2900849ebeb9d49fd2459d
MD5 cf1154423e27d5f481717f5ab454ab13
BLAKE2b-256 24a7725bf414d9c3718de284ceeb9504381cebe4823703c659ae396b50b24feb

See more details on using hashes here.

File details

Details for the file pdmv_http_client-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: pdmv_http_client-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 30.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pdmv_http_client-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dbdf62f7d8aa55bcaad23f8eae441fe164bb2d5a17f4d1cd786f904201a12529
MD5 875f384c3198d0b599b79c62feb952da
BLAKE2b-256 19d5a42115808b10c6290c016e0704d12ece1d704309137b83cda7124bb7c1f4

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