mirror of
https://github.com/certbot/certbot.git
synced 2026-08-01 19:02:52 +02:00
* Add the content interface to Certbot This commit contains a subset of the changes from 7076a55fd82116d068e2aca7239209b7203917d2. * Normalise slot parameters (cherry picked from commit 810941979bcf609c1e0be18e9263abf046b90e82) Co-authored-by: Robie Basak <robie.basak@canonical.com>
94 lines
3.1 KiB
YAML
94 lines
3.1 KiB
YAML
name: certbot
|
|
summary: Automatically configure HTTPS using Let's Encrypt
|
|
description: |
|
|
The objective of Certbot, Let's Encrypt, and the ACME (Automated
|
|
Certificate Management Environment) protocol is to make it possible
|
|
to set up an HTTPS server and have it automatically obtain a
|
|
browser-trusted certificate, without any human intervention. This is
|
|
accomplished by running a certificate management agent on the web
|
|
server.
|
|
|
|
This agent is used to:
|
|
- Automatically prove to the Let's Encrypt CA that you control the website
|
|
- Obtain a browser-trusted certificate and set it up on your web server
|
|
- Keep track of when your certificate is going to expire, and renew it
|
|
- Help you revoke the certificate if that ever becomes necessary.
|
|
confinement: classic
|
|
grade: devel
|
|
base: core18
|
|
adopt-info: certbot
|
|
|
|
apps:
|
|
certbot:
|
|
command: certbot
|
|
environment:
|
|
PATH: "$SNAP/bin:$SNAP/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
|
|
AUGEAS_LENS_LIB: "$SNAP/usr/share/augeas/lenses/dist"
|
|
LD_LIBRARY_PATH: "$SNAP/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH"
|
|
renew:
|
|
command: certbot -q renew
|
|
daemon: oneshot
|
|
environment:
|
|
PATH: "$SNAP/bin:$SNAP/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
|
|
AUGEAS_LENS_LIB: $SNAP/usr/share/augeas/lenses/dist
|
|
LD_LIBRARY_PATH: "$SNAP/usr/lib/x86_64-linux-gnu/:$LD_LIBRARY_PATH"
|
|
# Run approximately twice a day with randomization
|
|
timer: 00:00~24:00/2
|
|
|
|
parts:
|
|
python-augeas:
|
|
plugin: python
|
|
source: git://github.com/basak/python-augeas
|
|
source-branch: snap
|
|
python-version: python3
|
|
build-packages: [libaugeas-dev]
|
|
acme:
|
|
plugin: python
|
|
source: .
|
|
source-subdir: acme
|
|
constraints: [$SNAPCRAFT_PART_SRC/constraints.txt]
|
|
python-version: python3
|
|
certbot:
|
|
plugin: python
|
|
source: .
|
|
source-subdir: certbot
|
|
constraints: [$SNAPCRAFT_PART_SRC/constraints.txt]
|
|
python-version: python3
|
|
after: [acme]
|
|
override-pull: |
|
|
snapcraftctl pull
|
|
snapcraftctl set-version `cd $SNAPCRAFT_PART_SRC && git describe|sed s/^v//`
|
|
# Workaround for lack of site-packages leading to empty sitecustomize.py
|
|
stage:
|
|
- -usr/lib/python3.6/sitecustomize.py
|
|
certbot-apache:
|
|
plugin: python
|
|
source: .
|
|
source-subdir: certbot-apache
|
|
constraints: [$SNAPCRAFT_PART_SRC/constraints.txt]
|
|
python-version: python3
|
|
after: [python-augeas, certbot]
|
|
stage-packages: [libaugeas0]
|
|
stage:
|
|
# Prefer cffi
|
|
- -lib/python3.6/site-packages/augeas.py
|
|
certbot-nginx:
|
|
plugin: python
|
|
source: .
|
|
source-subdir: certbot-nginx
|
|
constraints: [$SNAPCRAFT_PART_SRC/constraints.txt]
|
|
python-version: python3
|
|
# This is the last step, compile pycache now as there should be no conflicts.
|
|
override-prime: |
|
|
snapcraftctl prime
|
|
./usr/bin/python3 -m compileall -q .
|
|
# After certbot-apache to not rebuild duplicates (essentially sharing what was already staged,
|
|
# like zope)
|
|
after: [certbot-apache]
|
|
|
|
plugs:
|
|
plugin:
|
|
interface: content
|
|
content: certbot-1
|
|
target: $SNAP/certbot-plugin
|