Skip to main content

A tool for auto deploy cert to cloud storage service provider.

Project description

certship

PyPI version CI License

中文说明 (Chinese README)

Author blog: https://laofahai.cool

A Python tool that uses acme.sh to automatically apply for certificates and deploy them to cloud platforms (such as Alibaba Cloud AliOSS).

Install dependencies

You can install certship directly from PyPI:

pip install certship

Or use poetry for development:

poetry install

Usage

You can run the tool via poetry:

poetry run certship --help

Or directly after pip install:

certship --help

Or with Python module:

python3 -m certship.cli --help

Example

certship \
  --domain <your domain> \
  --dns-provider <dns provider, default ali> \
  --platform alioss \
  --oss-bucket <OSS bucket name> \
  --oss-endpoint <OSS endpoint> \
  --ali-key <Aliyun AccessKeyId> \
  --ali-secret <Aliyun AccessKeySecret> \
  [--ecc] [--run] [--force] [--debug]

Arguments

  • --domain: The domain to apply for the certificate (required)
  • --dns-provider: DNS provider, default is ali (optional, any DNS plugin supported by acme.sh)
  • --platform: Target platform, currently only supports alioss or tencentcos (required)
  • --oss-bucket: Aliyun OSS bucket name (required for alioss)
  • --oss-endpoint: OSS endpoint (required for alioss)
  • --ali-key: Aliyun AccessKeyId (required for alioss)
  • --ali-secret: Aliyun AccessKeySecret (required for alioss)
  • --ecc: Use ECC certificate (optional)
  • --run: Issue and deploy certificate (optional, if not set, only deploys existing certificate)
  • --force: Force certificate renewal (optional)
  • --debug: acme.sh debug mode (optional)

Requirements

  • Python 3.8+
  • poetry
  • acme.sh (must be installed and configured, defaults to Let's Encrypt)
  • ossutil64 (must be installed and configured for AliOSS)

Typical workflow

  1. Install dependencies: poetry install
  2. Install acme.sh and configure DNS API
  3. Install and configure ossutil64 (requires yundun-cert:CreateSSLCertificate permission)
  4. Run the above command to automatically issue and bind the certificate

Supported platforms

  • Alibaba Cloud AliOSS
  • Tencent Cloud COS
  • Local Nginx
  • Qiniu Cloud

PRs are welcome!

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

certship-0.1.13.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

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

certship-0.1.13-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file certship-0.1.13.tar.gz.

File metadata

  • Download URL: certship-0.1.13.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for certship-0.1.13.tar.gz
Algorithm Hash digest
SHA256 a776059e633d5e0d778ba20df86f3979c1cc3128ea71088cb4c7761ea12483ca
MD5 d2ca421a657722da739c430e8ddd8b06
BLAKE2b-256 281d9e1462272cb5c0fb5723d654116cbfc51e5ab6eaa98a0b19ca9f77bfed43

See more details on using hashes here.

File details

Details for the file certship-0.1.13-py3-none-any.whl.

File metadata

  • Download URL: certship-0.1.13-py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for certship-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 1aff120e1c6944eccac4ae5ac255a4873ef4e22ec18ecdf5cb125c2cb450cc61
MD5 f3b9b769c3726d05c95b3d2f50a7f0d7
BLAKE2b-256 db6b61fcf98a2cde0c831aa97345928791700c1f0f6cbc65c5cf9d4ed96d5df4

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