Skip to main content

A tool for adding items to the inhibition list via API

Project description

inhibitor_tool

📌 Introduction

inhibitor_tool is a Python CLI tool that allows users to send, remove, and list inhibition requests via an API.
It supports authentication through environment variables loaded from auth_token.


🛠 Installation

You can install the package using pip:

pip3 install inhibitor_tool

🔧 Configuration

1️⃣ Set Up Authentication

Before using inhibitor_tool, you must configure authentication credentials in ~/.auth_token and load them into the environment:

echo 'export USERNAME="mmwei3"' >> ~/.auth_token
echo 'export PASSWORD="mmwei3password"' >> ~/.auth_token
echo 'export LOGIN_URL="https://auth.example.com/token"' >> ~/.auth_token
echo 'export INHIBIT_URL="https://inhibitor.example.com/add"' >> ~/.auth_token
echo 'export REMOVE_URL="https://inhibitor.example.com/remove"' >> ~/.auth_token
echo 'export LIST_URL="https://inhibitor.example.com/list"' >> ~/.auth_token

source ~/.auth_token

💡 Important: The source ~/.auth_token command must be executed every time a new session is started.


🚀 Usage

2️⃣ Inhibit an Item (Default TTL: 3 hours)

inhibitor-tool add --content "MaliciousIP:192.168.1.1"

3️⃣ Specify a Custom TTL

inhibitor-tool add --content "MaliciousIP:192.168.1.1" --ttl 6
  • --ttl 6 means the inhibition will last 6 hours (default is 3 hours).

4️⃣ Add a Custom Remark

inhibitor-tool add --content "MaliciousIP:192.168.1.1" --ttl 6 --remark "Security alert"
  • The remark helps track the reason for inhibition.
  • If omitted, it defaults to "tmp_inhibitor".

5️⃣ Remove an Inhibition

inhibitor-tool remove --content "MaliciousIP:192.168.1.1"
  • This command removes an inhibition entry matching the provided content.

6️⃣ List Active Inhibitions

inhibitor-tool list
  • Displays active inhibitions in a shell-friendly table format.

🔹 JSON Output Format

inhibitor-tool list --json
  • Outputs inhibition data in JSON format, suitable for scripting.

7️⃣ Check Version

inhibitor-tool --version
inhibitor-tool -V

📜 Open-Source Information

  • Author: mmwei3
  • Email: mmwei3@iflytek.com
  • Contact: 178555350258
  • Date: 2025-03-19
  • License: MIT License

📦 Packaging & Deployment

8️⃣ Build the Package

python setup.py sdist bdist_wheel

9️⃣ Install from Local Package

pip3 install dist/inhibitor_tool-1.0.0-py3-none-any.whl

🔟 Uninstall the Package

pip3 uninstall inhibitor_tool

📜 License (MIT)

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction...

📌 Dependencies (requirements.txt)

requests

This README.md provides a clear, structured, and fully configurable CLI tool for API-based inhibition with authentication, deletion support, and pip installation. 🚀

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

inhibitor_tool-5.2.1.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

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

inhibitor_tool-5.2.1-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file inhibitor_tool-5.2.1.tar.gz.

File metadata

  • Download URL: inhibitor_tool-5.2.1.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.10.0 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/1.0.0 urllib3/1.26.20 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.8

File hashes

Hashes for inhibitor_tool-5.2.1.tar.gz
Algorithm Hash digest
SHA256 5f781048d30bb9e60d4bee97a2adcedd6e235aa4ef3fcf9c54ed6bbc350a1f50
MD5 0cf35d893fc040b90c6ac98355be81c5
BLAKE2b-256 fa1cf6224a42fd8a1c8723ea70775395469e58b75c4e27cde98777db9b502274

See more details on using hashes here.

File details

Details for the file inhibitor_tool-5.2.1-py3-none-any.whl.

File metadata

  • Download URL: inhibitor_tool-5.2.1-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.10.0 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/1.0.0 urllib3/1.26.20 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.8

File hashes

Hashes for inhibitor_tool-5.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3df2ddaf68a8a74be9b12db2ea3f78529b5c220db3f5717dcf34b0ef5b1ad545
MD5 160bac5d0db62bb5b5fe4bccf49fdbb8
BLAKE2b-256 77e452b073a9b636c0789a9478ccd8f7d277efe5ecfa86b11aeb92d1875f4261

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