From 278b57fb4785ce44fbba6ab841342e4920132711 Mon Sep 17 00:00:00 2001 From: Peglah Date: Wed, 8 Nov 2023 12:42:43 +0100 Subject: [PATCH 01/42] Add GleSYS DNS plugin --- Dockerfile | 1 + Dockerfile.aarch64 | 1 + readme-vars.yml | 3 ++- root/defaults/dns-conf/glesys.ini | 5 +++++ 4 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 root/defaults/dns-conf/glesys.ini diff --git a/Dockerfile b/Dockerfile index f99b3dd..3c2bc5e 100755 --- a/Dockerfile +++ b/Dockerfile @@ -107,6 +107,7 @@ RUN \ certbot-dns-dynu \ certbot-dns-freedns \ certbot-dns-gehirn \ + certbot-dns-glesys \ certbot-dns-godaddy \ certbot-dns-google \ certbot-dns-google-domains \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index ed628a6..e3d6e68 100755 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -107,6 +107,7 @@ RUN \ certbot-dns-dynu \ certbot-dns-freedns \ certbot-dns-gehirn \ + certbot-dns-glesys \ certbot-dns-godaddy \ certbot-dns-google \ certbot-dns-google-domains \ diff --git a/readme-vars.yml b/readme-vars.yml index 3cd4ccc..d047ad0 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -50,7 +50,7 @@ opt_param_usage_include_env: true opt_param_env_vars: - { env_var: "SUBDOMAINS", env_value: "www,", desc: "Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only)" } - { env_var: "CERTPROVIDER", env_value: "", desc: "Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt." } - - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } + - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } - { env_var: "PROPAGATION", env_value: "", desc: "Optionally override (in seconds) the default propagation time for the dns plugins." } - { env_var: "EMAIL", env_value: "", desc: "Optional e-mail address used for cert expiration notifications (Required for ZeroSSL)." } - { env_var: "ONLY_SUBDOMAINS", env_value: "false", desc: "If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`" } @@ -153,6 +153,7 @@ app_setup_block: | # changelog changelogs: + - { date: "08.11.23:", desc: "Add GleSYS DNS plugin." } - { date: "01.10.23:", desc: "Fix \"unrecognized arguments\" issue in DirectAdmin DNS plugin." } - { date: "28.08.23:", desc: "Add Namecheap DNS plugin." } - { date: "12.08.23:", desc: "Add FreeDNS plugin. Detect certbot DNS authenticators using CLI." } diff --git a/root/defaults/dns-conf/glesys.ini b/root/defaults/dns-conf/glesys.ini new file mode 100644 index 0000000..a4ba04c --- /dev/null +++ b/root/defaults/dns-conf/glesys.ini @@ -0,0 +1,5 @@ +# Instructions: https://github.com/runfalk/certbot-dns-glesys#usage + +# GleSYS API credentials used by Certbot +dns_glesys_user = CL00000 +dns_glesys_password = apikeygoeshere From accd20cc7af479cc797cc4d64e218058f7f2ada2 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 30 Dec 2023 03:18:23 +0000 Subject: [PATCH 02/42] Bot Updating Package Versions --- package_versions.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 38ff794..ff00953 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -24,8 +24,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.34.7 python -botocore 1.34.7 python +boto3 1.34.11 python +botocore 1.34.11 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -80,14 +80,14 @@ certbot-plugin-gandi 1.5.0 python certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python -cloudflare 2.14.3 python +cloudflare 2.15.1 python composer 2.6.6 binary configobj 5.0.8 python coreutils 9.3-r1 apk cryptography 41.0.7 python curl 8.5.0-r0 apk dataclasses-json 0.5.14 python -distro 1.8.0 python +distro 1.9.0 python dns-lexicon 3.17.0 python dnslib 0.9.23 python dnspython 2.4.2 python @@ -190,7 +190,7 @@ libzip 1.9.2-r2 apk linux-pam 1.5.2-r10 apk logrotate 3.21.0-r1 apk loopialib 0.2.0 python -lxml 4.9.4 python +lxml 5.0.0 python lz4-libs 1.9.4-r4 apk marshmallow 3.20.1 python memcached 1.6.21-r0 apk From 65f62d14a68e19e3ca4687d35f3bdb028321ca18 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 11 Nov 2023 03:21:56 +0000 Subject: [PATCH 03/42] Bot Updating Package Versions --- package_versions.txt | 100 +++++++++++++++++++++---------------------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 62b7f64..9df985e 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -3,7 +3,7 @@ ConfigArgParse 1.7 python PyJWT 2.8.0 python PyNamecheap 0.0.3 python PyYAML 6.0.1 python -Simple Launcher Executable 1.1.0.14 dotnet +SimpleLauncherExecutable 1.1.0.14 dotnet acme 2.7.4 python alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.28.78 python -botocore 1.31.78 python +boto3 1.28.84 python +botocore 1.31.84 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r4 apk @@ -76,7 +76,7 @@ certbot-dns-sakuracloud 2.6.0 python certbot-dns-standalone 1.1 python certbot-dns-transip 0.5.2 python certbot-dns-vultr 1.1.0 python -certbot-plugin-gandi 1.4.3 python +certbot-plugin-gandi 1.5.0 python certifi 2023.7.22 python cffi 1.16.0 python charset-normalizer 3.3.2 python @@ -109,8 +109,8 @@ gnupg-keyboxd 2.4.3-r0 apk gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk -google-api-core 2.12.0 python -google-api-python-client 2.106.0 python +google-api-core 2.14.0 python +google-api-python-client 2.107.0 python google-auth 2.23.4 python google-auth-httplib2 0.1.1 python googleapis-common-protos 1.61.0 python @@ -236,55 +236,55 @@ pcre2 10.42-r1 apk perl 5.36.1-r2 apk perl-error 0.17029-r1 apk perl-git 2.40.1-r0 apk -php82 8.2.10-r0 apk -php82-bcmath 8.2.10-r0 apk -php82-bz2 8.2.10-r0 apk -php82-common 8.2.10-r0 apk -php82-ctype 8.2.10-r0 apk -php82-curl 8.2.10-r0 apk -php82-dom 8.2.10-r0 apk -php82-exif 8.2.10-r0 apk -php82-fileinfo 8.2.10-r0 apk -php82-fpm 8.2.10-r0 apk -php82-ftp 8.2.10-r0 apk -php82-gd 8.2.10-r0 apk -php82-gmp 8.2.10-r0 apk -php82-iconv 8.2.10-r0 apk -php82-imap 8.2.10-r0 apk -php82-intl 8.2.10-r0 apk -php82-ldap 8.2.10-r0 apk -php82-mbstring 8.2.10-r0 apk -php82-mysqli 8.2.10-r0 apk -php82-mysqlnd 8.2.10-r0 apk -php82-opcache 8.2.10-r0 apk -php82-openssl 8.2.10-r0 apk -php82-pdo 8.2.10-r0 apk -php82-pdo_mysql 8.2.10-r0 apk -php82-pdo_odbc 8.2.10-r0 apk -php82-pdo_pgsql 8.2.10-r0 apk -php82-pdo_sqlite 8.2.10-r0 apk -php82-pear 8.2.10-r0 apk +php82 8.2.12-r0 apk +php82-bcmath 8.2.12-r0 apk +php82-bz2 8.2.12-r0 apk +php82-common 8.2.12-r0 apk +php82-ctype 8.2.12-r0 apk +php82-curl 8.2.12-r0 apk +php82-dom 8.2.12-r0 apk +php82-exif 8.2.12-r0 apk +php82-fileinfo 8.2.12-r0 apk +php82-fpm 8.2.12-r0 apk +php82-ftp 8.2.12-r0 apk +php82-gd 8.2.12-r0 apk +php82-gmp 8.2.12-r0 apk +php82-iconv 8.2.12-r0 apk +php82-imap 8.2.12-r0 apk +php82-intl 8.2.12-r0 apk +php82-ldap 8.2.12-r0 apk +php82-mbstring 8.2.12-r0 apk +php82-mysqli 8.2.12-r0 apk +php82-mysqlnd 8.2.12-r0 apk +php82-opcache 8.2.12-r0 apk +php82-openssl 8.2.12-r0 apk +php82-pdo 8.2.12-r0 apk +php82-pdo_mysql 8.2.12-r0 apk +php82-pdo_odbc 8.2.12-r0 apk +php82-pdo_pgsql 8.2.12-r0 apk +php82-pdo_sqlite 8.2.12-r0 apk +php82-pear 8.2.12-r0 apk php82-pecl-apcu 5.1.22-r0 apk php82-pecl-igbinary 3.2.14-r0 apk php82-pecl-mcrypt 1.0.6-r0 apk php82-pecl-memcached 3.2.0-r1 apk php82-pecl-msgpack 2.2.0-r0 apk php82-pecl-redis 6.0.2-r0 apk -php82-pgsql 8.2.10-r0 apk -php82-phar 8.2.10-r0 apk -php82-posix 8.2.10-r0 apk -php82-session 8.2.10-r0 apk -php82-simplexml 8.2.10-r0 apk -php82-soap 8.2.10-r0 apk -php82-sockets 8.2.10-r0 apk -php82-sodium 8.2.10-r0 apk -php82-sqlite3 8.2.10-r0 apk -php82-tokenizer 8.2.10-r0 apk -php82-xml 8.2.10-r0 apk -php82-xmlreader 8.2.10-r0 apk -php82-xmlwriter 8.2.10-r0 apk -php82-xsl 8.2.10-r0 apk -php82-zip 8.2.10-r0 apk +php82-pgsql 8.2.12-r0 apk +php82-phar 8.2.12-r0 apk +php82-posix 8.2.12-r0 apk +php82-session 8.2.12-r0 apk +php82-simplexml 8.2.12-r0 apk +php82-soap 8.2.12-r0 apk +php82-sockets 8.2.12-r0 apk +php82-sodium 8.2.12-r0 apk +php82-sqlite3 8.2.12-r0 apk +php82-tokenizer 8.2.12-r0 apk +php82-xml 8.2.12-r0 apk +php82-xmlreader 8.2.12-r0 apk +php82-xmlwriter 8.2.12-r0 apk +php82-xsl 8.2.12-r0 apk +php82-zip 8.2.12-r0 apk pinentry 1.2.1-r1 apk pip 23.3.1 python pkb-client 1.2 python @@ -323,7 +323,7 @@ soupsieve 2.5 python sqlite-libs 3.41.2-r2 apk ssl_client 1.36.1-r4 apk tiff 4.5.1-r0 apk -tldextract 5.0.1 python +tldextract 5.1.0 python typing-inspect 0.9.0 python typing_extensions 4.8.0 python tzdata 2023c-r1 apk From 52ae487beab0301fbe3b84fad605f4b6423f334e Mon Sep 17 00:00:00 2001 From: aptalca <541623+aptalca@users.noreply.github.com> Date: Mon, 13 Nov 2023 16:58:13 -0500 Subject: [PATCH 04/42] install mcrypt from community repo on alpine edge --- Dockerfile | 2 +- Dockerfile.aarch64 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3c2bc5e..6c99423 100755 --- a/Dockerfile +++ b/Dockerfile @@ -76,7 +76,7 @@ RUN \ php82-xmlreader \ php82-xsl \ whois && \ - apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \ + apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \ php82-pecl-mcrypt && \ echo "**** install certbot plugins ****" && \ if [ -z ${CERTBOT_VERSION+x} ]; then \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index e3d6e68..75282b2 100755 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -76,7 +76,7 @@ RUN \ php82-xmlreader \ php82-xsl \ whois && \ - apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \ + apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community \ php82-pecl-mcrypt && \ echo "**** install certbot plugins ****" && \ if [ -z ${CERTBOT_VERSION+x} ]; then \ From 320404d35818963cd49ffdf1bddb08f46b694e63 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Mon, 13 Nov 2023 22:20:05 +0000 Subject: [PATCH 05/42] Bot Updating Package Versions --- package_versions.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 9df985e..4d2b862 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.28.84 python -botocore 1.31.84 python +boto3 1.28.85 python +botocore 1.31.85 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r4 apk @@ -60,7 +60,7 @@ certbot-dns-he 1.0.0 python certbot-dns-hetzner 2.0.0 python certbot-dns-infomaniak 0.2.1 python certbot-dns-inwx 2.2.0 python -certbot-dns-ionos 2022.11.24 python +certbot-dns-ionos 2023.11.13.post1 python certbot-dns-linode 2.6.0 python certbot-dns-loopia 1.0.1 python certbot-dns-luadns 2.6.0 python @@ -139,7 +139,7 @@ libavif 0.11.1-r2 apk libbsd 0.11.7-r1 apk libbz2 1.0.8-r5 apk libc-utils 0.7.2-r5 apk -libcrypto3 3.1.4-r0 apk +libcrypto3 3.1.4-r1 apk libcurl 8.4.0-r0 apk libdav1d 1.2.1-r0 apk libedit 20221030.3.1-r1 apk @@ -171,7 +171,7 @@ libsasl 2.1.28-r4 apk libseccomp 2.5.4-r2 apk libsm 1.2.4-r1 apk libsodium 1.0.18-r3 apk -libssl3 3.1.4-r0 apk +libssl3 3.1.4-r1 apk libstdc++ 12.2.1_git20220924-r10 apk libtasn1 4.19.0-r1 apk libunistring 1.1-r1 apk @@ -227,7 +227,7 @@ nginx-mod-stream-geoip2 1.24.0-r7 apk nginx-vim 1.24.0-r7 apk npth 1.6-r4 apk oniguruma 6.9.8-r1 apk -openssl 3.1.4-r0 apk +openssl 3.1.4-r1 apk p11-kit 0.24.1-r2 apk packaging 23.2 python parsedatetime 2.6 python From 48dfde26c7de28884a337fb8afb0566d8605fa63 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 18 Nov 2023 03:17:25 +0000 Subject: [PATCH 06/42] Bot Updating Templated Files --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4fb4f62..a6e7451 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ SWAG - Secure Web Application Gateway (formerly known as letsencrypt, no relatio ## Supported Architectures -We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/). +We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://distribution.github.io/distribution/spec/manifest-v2-2/#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/). Simply pulling `lscr.io/linuxserver/swag:latest` should retrieve the correct image for your arch, but you can also pull specific arch images via tags. From b1cf98d2140b6a18a64c3f36231d12c1f9c3b205 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 18 Nov 2023 03:21:34 +0000 Subject: [PATCH 07/42] Bot Updating Package Versions --- package_versions.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 4d2b862..1283041 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,12 +23,12 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.28.85 python -botocore 1.31.85 python +boto3 1.29.3 python +botocore 1.32.3 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python -busybox 1.36.1-r4 apk -busybox-binsh 1.36.1-r4 apk +busybox 1.36.1-r5 apk +busybox-binsh 1.36.1-r5 apk c-client 2007f-r15 apk ca-certificates 20230506-r0 apk ca-certificates-bundle 20230506-r0 apk @@ -65,7 +65,7 @@ certbot-dns-linode 2.6.0 python certbot-dns-loopia 1.0.1 python certbot-dns-luadns 2.6.0 python certbot-dns-namecheap 1.0.0 python -certbot-dns-netcup 1.3.1 python +certbot-dns-netcup 1.4.2 python certbot-dns-njalla 1.0.0 python certbot-dns-nsone 2.6.0 python certbot-dns-ovh 2.6.0 python @@ -77,7 +77,7 @@ certbot-dns-standalone 1.1 python certbot-dns-transip 0.5.2 python certbot-dns-vultr 1.1.0 python certbot-plugin-gandi 1.5.0 python -certifi 2023.7.22 python +certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python cloudflare 2.12.4 python @@ -110,7 +110,7 @@ gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.14.0 python -google-api-python-client 2.107.0 python +google-api-python-client 2.108.0 python google-auth 2.23.4 python google-auth-httplib2 0.1.1 python googleapis-common-protos 1.61.0 python @@ -165,7 +165,7 @@ libncursesw 6.4_p20230506-r0 apk libnftnl 1.2.5-r1 apk libpanelw 6.4_p20230506-r0 apk libpng 1.6.39-r3 apk -libpq 15.4-r0 apk +libpq 15.5-r0 apk libproc2 4.0.4-r0 apk libsasl 2.1.28-r4 apk libseccomp 2.5.4-r2 apk @@ -291,7 +291,7 @@ pkb-client 1.2 python popt 1.19-r2 apk portalocker 2.8.2 python procps-ng 4.0.4-r0 apk -protobuf 4.25.0 python +protobuf 4.25.1 python publicsuffixlist 0.9.4 python pyOpenSSL 23.3.0 python pyRFC3339 1.1 python @@ -321,9 +321,9 @@ six 1.16.0 python skalibs 2.13.1.1-r1 apk soupsieve 2.5 python sqlite-libs 3.41.2-r2 apk -ssl_client 1.36.1-r4 apk +ssl_client 1.36.1-r5 apk tiff 4.5.1-r0 apk -tldextract 5.1.0 python +tldextract 5.1.1 python typing-inspect 0.9.0 python typing_extensions 4.8.0 python tzdata 2023c-r1 apk From 4cb18bc106be26045fda88ea4df5e041eec4ddf0 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sun, 30 Jul 2023 01:17:57 -0500 Subject: [PATCH 08/42] standard cron Signed-off-by: Eric Nemchik --- root/defaults/crontabs/abc | 2 + root/etc/crontabs/root | 9 ----- .../s6-rc.d/init-certbot-config/run | 11 +++--- .../dependencies.d/init-fail2ban-config | 0 .../s6-rc.d/init-crontab-config/run | 22 +++++++++++ .../type | 0 .../s6-overlay/s6-rc.d/init-crontab-config/up | 1 + .../s6-rc.d/init-crontabs-config/run | 38 ------------------- .../s6-rc.d/init-crontabs-config/up | 1 - .../dependencies.d/init-crontab-config} | 0 .../contents.d/init-crontab-config} | 0 .../user/contents.d/init-crontabs-config | 0 12 files changed, 31 insertions(+), 53 deletions(-) create mode 100644 root/defaults/crontabs/abc delete mode 100644 root/etc/crontabs/root rename root/etc/s6-overlay/s6-rc.d/{init-crontabs-config => init-crontab-config}/dependencies.d/init-fail2ban-config (100%) create mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontab-config/run rename root/etc/s6-overlay/s6-rc.d/{init-crontabs-config => init-crontab-config}/type (100%) create mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontab-config/up delete mode 100755 root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run delete mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up rename root/etc/{crontabs/abc => s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontab-config} (100%) rename root/etc/s6-overlay/s6-rc.d/{init-nginx-config/dependencies.d/init-crontabs-config => user/contents.d/init-crontab-config} (100%) delete mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontabs-config diff --git a/root/defaults/crontabs/abc b/root/defaults/crontabs/abc new file mode 100644 index 0000000..a9909e3 --- /dev/null +++ b/root/defaults/crontabs/abc @@ -0,0 +1,2 @@ +# min hour day month weekday command +8 2 * * * /app/le-renew.sh >> /config/log/letsencrypt/letsencrypt.log 2>&1 diff --git a/root/etc/crontabs/root b/root/etc/crontabs/root deleted file mode 100644 index c24fea0..0000000 --- a/root/etc/crontabs/root +++ /dev/null @@ -1,9 +0,0 @@ -# do daily/weekly/monthly maintenance -# min hour day month weekday command -*/15 * * * * run-parts /etc/periodic/15min -0 * * * * run-parts /etc/periodic/hourly -0 2 * * * run-parts /etc/periodic/daily -0 3 * * 6 run-parts /etc/periodic/weekly -0 5 1 * * run-parts /etc/periodic/monthly -# renew letsencrypt certs -8 2 * * * /app/le-renew.sh >> /config/log/letsencrypt/letsencrypt.log 2>&1 diff --git a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run index 806cf43..afa5f1a 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run +++ b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run @@ -46,6 +46,7 @@ function set_ini_value() { # ensure config files exist and has at least one value set (set_ini_value does not work on empty files) touch /config/etc/letsencrypt/cli.ini +lsiown abc:abc /config/etc/letsencrypt/cli.ini grep -qF 'agree-tos' /config/etc/letsencrypt/cli.ini || echo 'agree-tos=true' >>/config/etc/letsencrypt/cli.ini # copy dns default configs @@ -192,9 +193,9 @@ if [[ ! "${URL}" = "${ORIGURL}" ]] || REV_ACMESERVER=("https://acme-v02.api.letsencrypt.org/directory") fi if [[ -f /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem ]]; then - certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true + s6-setuidgid abc certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true else - certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true + s6-setuidgid abc certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true fi rm -rf /config/etc/letsencrypt/{accounts,archive,live,renewal} fi @@ -207,9 +208,9 @@ if [[ -f "/config/keys/letsencrypt/chain.pem" ]] && { [[ "${CERTPROVIDER}" == "l echo "The cert seems to be using the old LE root cert, which is no longer valid. Deleting and revoking." REV_ACMESERVER=("https://acme-v02.api.letsencrypt.org/directory") if [[ -f /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem ]]; then - certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true + s6-setuidgid abc certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true else - certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true + s6-setuidgid abc certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true fi rm -rf /config/etc/letsencrypt/{accounts,archive,live,renewal} fi @@ -342,7 +343,7 @@ if [[ ! -f "/config/keys/letsencrypt/fullchain.pem" ]]; then set_ini_value "eab-hmac-key" "${ZEROSSL_EAB_HMAC_KEY}" /config/etc/letsencrypt/cli.ini fi echo "Generating new certificate" - certbot certonly --non-interactive --renew-by-default + s6-setuidgid abc certbot certonly --non-interactive --renew-by-default if [[ ! -d /config/keys/letsencrypt ]]; then if [[ "${VALIDATION}" = "dns" ]]; then echo "ERROR: Cert does not exist! Please see the validation error above. Make sure you entered correct credentials into the ${DNSCREDENTIALFILE} file." diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/dependencies.d/init-fail2ban-config b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/dependencies.d/init-fail2ban-config similarity index 100% rename from root/etc/s6-overlay/s6-rc.d/init-crontabs-config/dependencies.d/init-fail2ban-config rename to root/etc/s6-overlay/s6-rc.d/init-crontab-config/dependencies.d/init-fail2ban-config diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run new file mode 100644 index 0000000..c49a50c --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run @@ -0,0 +1,22 @@ +#!/usr/bin/with-contenv bash +# shellcheck shell=bash + +# make folders +mkdir -p \ + /config/crontabs + +## abc +# if crontabs do not exist in config +if [[ ! -f /config/crontabs/abc ]]; then + # copy crontab from system + if crontab -l -u abc; then + crontab -l -u abc >/config/crontabs/abc + fi + + # if crontabs still do not exist in config (were not copied from system) + # copy crontab from included defaults (using -n, do not overwrite an existing file) + cp -n /defaults/crontabs/abc /config/crontabs/ +fi +# set permissions and import user crontabs +lsiown abc:abc /config/crontabs/abc +crontab -u abc /config/crontabs/abc diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/type similarity index 100% rename from root/etc/s6-overlay/s6-rc.d/init-crontabs-config/type rename to root/etc/s6-overlay/s6-rc.d/init-crontab-config/type diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/up b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/up new file mode 100644 index 0000000..d354111 --- /dev/null +++ b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/up @@ -0,0 +1 @@ +/etc/s6-overlay/s6-rc.d/init-crontab-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run deleted file mode 100755 index c0bb241..0000000 --- a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/run +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/with-contenv bash -# shellcheck shell=bash - -# make folders -mkdir -p \ - /config/crontabs - -## root -# if crontabs do not exist in config -if [[ ! -f /config/crontabs/root ]]; then - # copy crontab from system - if crontab -l -u root; then - crontab -l -u root >/config/crontabs/root - fi - - # if crontabs still do not exist in config (were not copied from system) - # copy crontab from included defaults (using -n, do not overwrite an existing file) - cp -n /etc/crontabs/root /config/crontabs/ 2> >(grep -v 'cp: not replacing') -fi -# set permissions and import user crontabs -lsiown root:root /config/crontabs/root -crontab -u root /config/crontabs/root - -## abc -# if crontabs do not exist in config -if [[ ! -f /config/crontabs/abc ]]; then - # copy crontab from system - if crontab -l -u abc; then - crontab -l -u abc >/config/crontabs/abc - fi - - # if crontabs still do not exist in config (were not copied from system) - # copy crontab from included defaults (using -n, do not overwrite an existing file) - cp -n /etc/crontabs/abc /config/crontabs/ 2> >(grep -v 'cp: not replacing') -fi -# set permissions and import user crontabs -lsiown abc:abc /config/crontabs/abc -crontab -u abc /config/crontabs/abc diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up b/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up deleted file mode 100644 index 006d814..0000000 --- a/root/etc/s6-overlay/s6-rc.d/init-crontabs-config/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-crontabs-config/run diff --git a/root/etc/crontabs/abc b/root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontab-config similarity index 100% rename from root/etc/crontabs/abc rename to root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontab-config diff --git a/root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontabs-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontab-config similarity index 100% rename from root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontabs-config rename to root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontab-config diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontabs-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontabs-config deleted file mode 100644 index e69de29..0000000 From 767aad228695e2e59465c5259d447e45ec605f4b Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sun, 30 Jul 2023 09:50:18 -0500 Subject: [PATCH 09/42] Fix perms Signed-off-by: Eric Nemchik --- root/etc/s6-overlay/s6-rc.d/init-crontab-config/run | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 root/etc/s6-overlay/s6-rc.d/init-crontab-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run old mode 100644 new mode 100755 From 757ef31216f0b33ce7af32422ddbee1a79f9e92c Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Mon, 31 Jul 2023 15:13:43 -0500 Subject: [PATCH 10/42] set owner of certbot folders to abc Signed-off-by: Eric Nemchik --- root/etc/s6-overlay/s6-rc.d/init-certbot-config/run | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run index afa5f1a..6515f6d 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run +++ b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run @@ -31,6 +31,12 @@ if [[ "${VALIDATION}" = "dns" ]] && ! echo "${CERTBOT_DNS_AUTHENTICATORS}" | gre sleep infinity fi +# set owner of certbot's CONFIG_DIR, WORK_DIR, and LOGS_DIR to abc +lsiown -R abc \ + /etc/letsencrypt \ + /var/lib/letsencrypt \ + /var/log/letsencrypt + # set_ini_value logic: # - if the name is not found in the file, append the name=value to the end of the file # - if the name is found in the file, replace the value From 2cd84ad12b3052a933ee0e67f4b17e56b659853f Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Fri, 18 Aug 2023 23:38:31 -0500 Subject: [PATCH 11/42] cron in base Signed-off-by: Eric Nemchik --- .../s6-rc.d/init-crontab-config/run | 22 ------------------- .../s6-rc.d/init-crontab-config/type | 1 - .../s6-overlay/s6-rc.d/init-crontab-config/up | 1 - .../dependencies.d/init-crontab-config | 0 .../dependencies.d/init-fail2ban-config | 0 .../user/contents.d/init-crontab-config | 0 6 files changed, 24 deletions(-) delete mode 100755 root/etc/s6-overlay/s6-rc.d/init-crontab-config/run delete mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontab-config/type delete mode 100644 root/etc/s6-overlay/s6-rc.d/init-crontab-config/up delete mode 100644 root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontab-config rename root/etc/s6-overlay/s6-rc.d/{init-crontab-config => init-nginx-config}/dependencies.d/init-fail2ban-config (100%) delete mode 100644 root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontab-config diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run deleted file mode 100755 index c49a50c..0000000 --- a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/run +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/with-contenv bash -# shellcheck shell=bash - -# make folders -mkdir -p \ - /config/crontabs - -## abc -# if crontabs do not exist in config -if [[ ! -f /config/crontabs/abc ]]; then - # copy crontab from system - if crontab -l -u abc; then - crontab -l -u abc >/config/crontabs/abc - fi - - # if crontabs still do not exist in config (were not copied from system) - # copy crontab from included defaults (using -n, do not overwrite an existing file) - cp -n /defaults/crontabs/abc /config/crontabs/ -fi -# set permissions and import user crontabs -lsiown abc:abc /config/crontabs/abc -crontab -u abc /config/crontabs/abc diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/type b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/type deleted file mode 100644 index bdd22a1..0000000 --- a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/type +++ /dev/null @@ -1 +0,0 @@ -oneshot diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/up b/root/etc/s6-overlay/s6-rc.d/init-crontab-config/up deleted file mode 100644 index d354111..0000000 --- a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/up +++ /dev/null @@ -1 +0,0 @@ -/etc/s6-overlay/s6-rc.d/init-crontab-config/run diff --git a/root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontab-config b/root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-crontab-config deleted file mode 100644 index e69de29..0000000 diff --git a/root/etc/s6-overlay/s6-rc.d/init-crontab-config/dependencies.d/init-fail2ban-config b/root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-fail2ban-config similarity index 100% rename from root/etc/s6-overlay/s6-rc.d/init-crontab-config/dependencies.d/init-fail2ban-config rename to root/etc/s6-overlay/s6-rc.d/init-nginx-config/dependencies.d/init-fail2ban-config diff --git a/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontab-config b/root/etc/s6-overlay/s6-rc.d/user/contents.d/init-crontab-config deleted file mode 100644 index e69de29..0000000 From 9da97969f8998d921e15e31696729f05550bdee3 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sat, 19 Aug 2023 08:42:48 -0500 Subject: [PATCH 12/42] Crontabs folder created in base Signed-off-by: Eric Nemchik --- root/etc/s6-overlay/s6-rc.d/init-folders-config/run | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root/etc/s6-overlay/s6-rc.d/init-folders-config/run b/root/etc/s6-overlay/s6-rc.d/init-folders-config/run index 87cef4e..c18da5b 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-folders-config/run +++ b/root/etc/s6-overlay/s6-rc.d/init-folders-config/run @@ -3,7 +3,7 @@ # make our folders and links mkdir -p \ - /config/{fail2ban,crontabs,dns-conf} \ + /config/{fail2ban,dns-conf} \ /config/etc/letsencrypt/renewal-hooks \ /config/log/{fail2ban,letsencrypt,nginx} \ /config/nginx/proxy-confs \ From 4d3f30b67cb3cadbd5ff584578b4bf3ef47f5a73 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sat, 19 Aug 2023 10:17:40 -0500 Subject: [PATCH 13/42] Move crontabs to etc Signed-off-by: Eric Nemchik --- root/{defaults => etc}/crontabs/abc | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename root/{defaults => etc}/crontabs/abc (100%) diff --git a/root/defaults/crontabs/abc b/root/etc/crontabs/abc similarity index 100% rename from root/defaults/crontabs/abc rename to root/etc/crontabs/abc From 85e44eb39927931576518b58a2d135628dfc82a1 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sat, 4 Nov 2023 18:36:31 -0500 Subject: [PATCH 14/42] fix chown for group Signed-off-by: Eric Nemchik --- root/etc/s6-overlay/s6-rc.d/init-certbot-config/run | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run index 6515f6d..c233e2c 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run +++ b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run @@ -32,7 +32,7 @@ if [[ "${VALIDATION}" = "dns" ]] && ! echo "${CERTBOT_DNS_AUTHENTICATORS}" | gre fi # set owner of certbot's CONFIG_DIR, WORK_DIR, and LOGS_DIR to abc -lsiown -R abc \ +lsiown -R abc:abc \ /etc/letsencrypt \ /var/lib/letsencrypt \ /var/log/letsencrypt From 70bea0a8169e09b0c866b786925934b840ba767f Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 25 Nov 2023 03:18:43 +0000 Subject: [PATCH 15/42] Bot Updating Package Versions --- package_versions.txt | 68 ++++++++++++++++++++++---------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 1283041..67b0ae3 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.29.3 python -botocore 1.32.3 python +boto3 1.29.6 python +botocore 1.32.6 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -65,7 +65,7 @@ certbot-dns-linode 2.6.0 python certbot-dns-loopia 1.0.1 python certbot-dns-luadns 2.6.0 python certbot-dns-namecheap 1.0.0 python -certbot-dns-netcup 1.4.2 python +certbot-dns-netcup 1.4.3 python certbot-dns-njalla 1.0.0 python certbot-dns-nsone 2.6.0 python certbot-dns-ovh 2.6.0 python @@ -122,7 +122,7 @@ gpgv 2.4.3-r0 apk httplib2 0.22.0 python icu-data-en 73.2-r2 apk icu-libs 73.2-r2 apk -idna 3.4 python +idna 3.5 python importlib-metadata 6.8.0 python ip6tables 1.8.9-r2 apk iptables 1.8.9-r2 apk @@ -182,7 +182,7 @@ libxau 1.0.11-r2 apk libxcb 1.15-r1 apk libxdmcp 1.1.4-r2 apk libxext 1.3.5-r2 apk -libxml2 2.11.4-r0 apk +libxml2 2.11.6-r0 apk libxpm 3.5.16-r1 apk libxslt 1.1.38-r0 apk libxt 1.3.0-r2 apk @@ -237,53 +237,53 @@ perl 5.36.1-r2 apk perl-error 0.17029-r1 apk perl-git 2.40.1-r0 apk php82 8.2.12-r0 apk -php82-bcmath 8.2.12-r0 apk -php82-bz2 8.2.12-r0 apk +php82-bcmath 8.2.13-r0 apk +php82-bz2 8.2.13-r0 apk php82-common 8.2.12-r0 apk php82-ctype 8.2.12-r0 apk php82-curl 8.2.12-r0 apk -php82-dom 8.2.12-r0 apk -php82-exif 8.2.12-r0 apk +php82-dom 8.2.13-r0 apk +php82-exif 8.2.13-r0 apk php82-fileinfo 8.2.12-r0 apk php82-fpm 8.2.12-r0 apk -php82-ftp 8.2.12-r0 apk -php82-gd 8.2.12-r0 apk -php82-gmp 8.2.12-r0 apk +php82-ftp 8.2.13-r0 apk +php82-gd 8.2.13-r0 apk +php82-gmp 8.2.13-r0 apk php82-iconv 8.2.12-r0 apk -php82-imap 8.2.12-r0 apk -php82-intl 8.2.12-r0 apk -php82-ldap 8.2.12-r0 apk +php82-imap 8.2.13-r0 apk +php82-intl 8.2.13-r0 apk +php82-ldap 8.2.13-r0 apk php82-mbstring 8.2.12-r0 apk -php82-mysqli 8.2.12-r0 apk -php82-mysqlnd 8.2.12-r0 apk -php82-opcache 8.2.12-r0 apk +php82-mysqli 8.2.13-r0 apk +php82-mysqlnd 8.2.13-r0 apk +php82-opcache 8.2.13-r0 apk php82-openssl 8.2.12-r0 apk -php82-pdo 8.2.12-r0 apk -php82-pdo_mysql 8.2.12-r0 apk -php82-pdo_odbc 8.2.12-r0 apk -php82-pdo_pgsql 8.2.12-r0 apk -php82-pdo_sqlite 8.2.12-r0 apk -php82-pear 8.2.12-r0 apk +php82-pdo 8.2.13-r0 apk +php82-pdo_mysql 8.2.13-r0 apk +php82-pdo_odbc 8.2.13-r0 apk +php82-pdo_pgsql 8.2.13-r0 apk +php82-pdo_sqlite 8.2.13-r0 apk +php82-pear 8.2.13-r0 apk php82-pecl-apcu 5.1.22-r0 apk php82-pecl-igbinary 3.2.14-r0 apk php82-pecl-mcrypt 1.0.6-r0 apk php82-pecl-memcached 3.2.0-r1 apk php82-pecl-msgpack 2.2.0-r0 apk php82-pecl-redis 6.0.2-r0 apk -php82-pgsql 8.2.12-r0 apk +php82-pgsql 8.2.13-r0 apk php82-phar 8.2.12-r0 apk -php82-posix 8.2.12-r0 apk +php82-posix 8.2.13-r0 apk php82-session 8.2.12-r0 apk php82-simplexml 8.2.12-r0 apk -php82-soap 8.2.12-r0 apk -php82-sockets 8.2.12-r0 apk -php82-sodium 8.2.12-r0 apk -php82-sqlite3 8.2.12-r0 apk -php82-tokenizer 8.2.12-r0 apk +php82-soap 8.2.13-r0 apk +php82-sockets 8.2.13-r0 apk +php82-sodium 8.2.13-r0 apk +php82-sqlite3 8.2.13-r0 apk +php82-tokenizer 8.2.13-r0 apk php82-xml 8.2.12-r0 apk -php82-xmlreader 8.2.12-r0 apk +php82-xmlreader 8.2.13-r0 apk php82-xmlwriter 8.2.12-r0 apk -php82-xsl 8.2.12-r0 apk +php82-xsl 8.2.13-r0 apk php82-zip 8.2.12-r0 apk pinentry 1.2.1-r1 apk pip 23.3.1 python @@ -296,7 +296,7 @@ publicsuffixlist 0.9.4 python pyOpenSSL 23.3.0 python pyRFC3339 1.1 python pyacmedns 0.4 python -pyasn1 0.5.0 python +pyasn1 0.5.1 python pyasn1-modules 0.3.0 python pyc 0.1-r0 apk pycparser 2.21 python From ad1884e5b4caa837c5ffa2e36ea2f8de441ee113 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Mon, 27 Nov 2023 18:27:05 -0600 Subject: [PATCH 16/42] Fix index.php being downloaded on 404 Signed-off-by: Eric Nemchik --- readme-vars.yml | 3 ++- root/defaults/nginx/site-confs/default.conf.sample | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/readme-vars.yml b/readme-vars.yml index d047ad0..675db96 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -153,7 +153,8 @@ app_setup_block: | # changelog changelogs: - - { date: "08.11.23:", desc: "Add GleSYS DNS plugin." } + - { date: "01.01.24:", desc: "Add GleSYS DNS plugin." } + - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - { date: "01.10.23:", desc: "Fix \"unrecognized arguments\" issue in DirectAdmin DNS plugin." } - { date: "28.08.23:", desc: "Add Namecheap DNS plugin." } - { date: "12.08.23:", desc: "Add FreeDNS plugin. Detect certbot DNS authenticators using CLI." } diff --git a/root/defaults/nginx/site-confs/default.conf.sample b/root/defaults/nginx/site-confs/default.conf.sample index df852ed..9c858e0 100644 --- a/root/defaults/nginx/site-confs/default.conf.sample +++ b/root/defaults/nginx/site-confs/default.conf.sample @@ -1,4 +1,4 @@ -## Version 2023/06/05 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/site-confs/default.conf.sample +## Version 2023/11/27 - Changelog: https://github.com/linuxserver/docker-swag/commits/master/root/defaults/nginx/site-confs/default.conf.sample # redirect all traffic to https server { @@ -48,7 +48,7 @@ server { # enable for Authentik (requires authentik-server.conf in the server block) #include /config/nginx/authentik-location.conf; - try_files $uri $uri/ /index.html /index.php$is_args$args =404; + try_files $uri $uri/ /index.html /index.php$is_args$args; } location ~ ^(.+\.php)(.*)$ { @@ -65,6 +65,7 @@ server { # enable for Authentik (requires authentik-server.conf in the server block) #include /config/nginx/authentik-location.conf; + try_files $fastcgi_script_name =404; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; From 4f92460b29e035a74f15b3ecf152310a639ff4ab Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Thu, 23 Nov 2023 07:50:53 -0600 Subject: [PATCH 17/42] Run certbot as root to allow fix http validation Fixes regression from https://github.com/linuxserver/docker-swag/pull/399 Signed-off-by: Eric Nemchik --- readme-vars.yml | 1 + root/etc/crontabs/{abc => root} | 0 root/etc/s6-overlay/s6-rc.d/init-certbot-config/run | 10 +++++----- 3 files changed, 6 insertions(+), 5 deletions(-) rename root/etc/crontabs/{abc => root} (100%) diff --git a/readme-vars.yml b/readme-vars.yml index 675db96..6b2fa18 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -155,6 +155,7 @@ app_setup_block: | changelogs: - { date: "01.01.24:", desc: "Add GleSYS DNS plugin." } - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } + - { date: "23.11.23:", desc: "Run certbot as root to allow fix http validation." } - { date: "01.10.23:", desc: "Fix \"unrecognized arguments\" issue in DirectAdmin DNS plugin." } - { date: "28.08.23:", desc: "Add Namecheap DNS plugin." } - { date: "12.08.23:", desc: "Add FreeDNS plugin. Detect certbot DNS authenticators using CLI." } diff --git a/root/etc/crontabs/abc b/root/etc/crontabs/root similarity index 100% rename from root/etc/crontabs/abc rename to root/etc/crontabs/root diff --git a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run index c233e2c..800a806 100755 --- a/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run +++ b/root/etc/s6-overlay/s6-rc.d/init-certbot-config/run @@ -199,9 +199,9 @@ if [[ ! "${URL}" = "${ORIGURL}" ]] || REV_ACMESERVER=("https://acme-v02.api.letsencrypt.org/directory") fi if [[ -f /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem ]]; then - s6-setuidgid abc certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true + certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true else - s6-setuidgid abc certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true + certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true fi rm -rf /config/etc/letsencrypt/{accounts,archive,live,renewal} fi @@ -214,9 +214,9 @@ if [[ -f "/config/keys/letsencrypt/chain.pem" ]] && { [[ "${CERTPROVIDER}" == "l echo "The cert seems to be using the old LE root cert, which is no longer valid. Deleting and revoking." REV_ACMESERVER=("https://acme-v02.api.letsencrypt.org/directory") if [[ -f /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem ]]; then - s6-setuidgid abc certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true + certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true else - s6-setuidgid abc certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true + certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true fi rm -rf /config/etc/letsencrypt/{accounts,archive,live,renewal} fi @@ -349,7 +349,7 @@ if [[ ! -f "/config/keys/letsencrypt/fullchain.pem" ]]; then set_ini_value "eab-hmac-key" "${ZEROSSL_EAB_HMAC_KEY}" /config/etc/letsencrypt/cli.ini fi echo "Generating new certificate" - s6-setuidgid abc certbot certonly --non-interactive --renew-by-default + certbot certonly --non-interactive --renew-by-default if [[ ! -d /config/keys/letsencrypt ]]; then if [[ "${VALIDATION}" = "dns" ]]; then echo "ERROR: Cert does not exist! Please see the validation error above. Make sure you entered correct credentials into the ${DNSCREDENTIALFILE} file." From 0e5ba9158823a08d9a275ebf492d6010e6be1b0c Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 28 Nov 2023 19:50:37 +0000 Subject: [PATCH 18/42] Bot Updating Templated Files --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a6e7451..86057ba 100644 --- a/README.md +++ b/README.md @@ -401,6 +401,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **23.11.23:** - Run certbot as root to allow fix http validation. * **01.10.23:** - Fix "unrecognized arguments" issue in DirectAdmin DNS plugin. * **28.08.23:** - Add Namecheap DNS plugin. * **12.08.23:** - Add FreeDNS plugin. Detect certbot DNS authenticators using CLI. From 2573b79bad270a77e5893d213e7b39f690e4bced Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 28 Nov 2023 19:55:58 +0000 Subject: [PATCH 19/42] Bot Updating Package Versions --- package_versions.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 67b0ae3..c4e9c65 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.29.6 python -botocore 1.32.6 python +boto3 1.33.1 python +botocore 1.33.1 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -80,10 +80,10 @@ certbot-plugin-gandi 1.5.0 python certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python -cloudflare 2.12.4 python +cloudflare 2.14.2 python configobj 5.0.8 python coreutils 9.3-r1 apk -cryptography 41.0.5 python +cryptography 41.0.7 python curl 8.4.0-r0 apk dataclasses-json 0.5.14 python distro 1.8.0 python @@ -122,7 +122,7 @@ gpgv 2.4.3-r0 apk httplib2 0.22.0 python icu-data-en 73.2-r2 apk icu-libs 73.2-r2 apk -idna 3.5 python +idna 3.6 python importlib-metadata 6.8.0 python ip6tables 1.8.9-r2 apk iptables 1.8.9-r2 apk @@ -233,7 +233,7 @@ packaging 23.2 python parsedatetime 2.6 python pcre 8.45-r3 apk pcre2 10.42-r1 apk -perl 5.36.1-r2 apk +perl 5.36.2-r0 apk perl-error 0.17029-r1 apk perl-git 2.40.1-r0 apk php82 8.2.12-r0 apk @@ -313,7 +313,7 @@ requests 2.31.0 python requests-file 1.5.1 python requests-mock 1.11.0 python rsa 4.9 python -s3transfer 0.7.0 python +s3transfer 0.8.0 python scanelf 1.3.7-r1 apk setuptools 65.5.0 python shadow 4.13-r4 apk @@ -331,7 +331,7 @@ unixodbc 2.3.11-r2 apk uritemplate 4.1.1 python urllib3 1.26.18 python utmps-libs 0.1.2.1-r1 apk -wheel 0.41.3 python +wheel 0.42.0 python whois 5.5.17-r0 apk xz-libs 5.4.3-r0 apk zipp 3.17.0 python From ccbd19fe628867ee93a113ba9bbdc8b2e1fa543d Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Thu, 30 Nov 2023 17:33:07 -0600 Subject: [PATCH 20/42] Update readme-vars.yml --- readme-vars.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/readme-vars.yml b/readme-vars.yml index 6b2fa18..92c40ff 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -155,6 +155,8 @@ app_setup_block: | changelogs: - { date: "01.01.24:", desc: "Add GleSYS DNS plugin." } - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } + - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } + - { date: "30.11.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - { date: "23.11.23:", desc: "Run certbot as root to allow fix http validation." } - { date: "01.10.23:", desc: "Fix \"unrecognized arguments\" issue in DirectAdmin DNS plugin." } - { date: "28.08.23:", desc: "Add Namecheap DNS plugin." } From c76e6649659d941d537216ac9d6c18e4fac65f28 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Thu, 30 Nov 2023 23:38:22 +0000 Subject: [PATCH 21/42] Bot Updating Templated Files --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 86057ba..3fdb673 100644 --- a/README.md +++ b/README.md @@ -401,6 +401,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **30.11.23:** - [Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404. * **23.11.23:** - Run certbot as root to allow fix http validation. * **01.10.23:** - Fix "unrecognized arguments" issue in DirectAdmin DNS plugin. * **28.08.23:** - Add Namecheap DNS plugin. From 11991aa0b340e4b4caadf17f24d9c8cb1a7b7f22 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Thu, 30 Nov 2023 23:41:43 +0000 Subject: [PATCH 22/42] Bot Updating Package Versions --- package_versions.txt | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index c4e9c65..ff6bceb 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.1 python -botocore 1.33.1 python +boto3 1.33.5 python +botocore 1.33.5 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -110,8 +110,8 @@ gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.14.0 python -google-api-python-client 2.108.0 python -google-auth 2.23.4 python +google-api-python-client 2.109.0 python +google-auth 2.24.0 python google-auth-httplib2 0.1.1 python googleapis-common-protos 1.61.0 python gpg 2.4.3-r0 apk @@ -236,28 +236,28 @@ pcre2 10.42-r1 apk perl 5.36.2-r0 apk perl-error 0.17029-r1 apk perl-git 2.40.1-r0 apk -php82 8.2.12-r0 apk +php82 8.2.13-r0 apk php82-bcmath 8.2.13-r0 apk php82-bz2 8.2.13-r0 apk -php82-common 8.2.12-r0 apk -php82-ctype 8.2.12-r0 apk -php82-curl 8.2.12-r0 apk +php82-common 8.2.13-r0 apk +php82-ctype 8.2.13-r0 apk +php82-curl 8.2.13-r0 apk php82-dom 8.2.13-r0 apk php82-exif 8.2.13-r0 apk -php82-fileinfo 8.2.12-r0 apk -php82-fpm 8.2.12-r0 apk +php82-fileinfo 8.2.13-r0 apk +php82-fpm 8.2.13-r0 apk php82-ftp 8.2.13-r0 apk php82-gd 8.2.13-r0 apk php82-gmp 8.2.13-r0 apk -php82-iconv 8.2.12-r0 apk +php82-iconv 8.2.13-r0 apk php82-imap 8.2.13-r0 apk php82-intl 8.2.13-r0 apk php82-ldap 8.2.13-r0 apk -php82-mbstring 8.2.12-r0 apk +php82-mbstring 8.2.13-r0 apk php82-mysqli 8.2.13-r0 apk php82-mysqlnd 8.2.13-r0 apk php82-opcache 8.2.13-r0 apk -php82-openssl 8.2.12-r0 apk +php82-openssl 8.2.13-r0 apk php82-pdo 8.2.13-r0 apk php82-pdo_mysql 8.2.13-r0 apk php82-pdo_odbc 8.2.13-r0 apk @@ -271,20 +271,20 @@ php82-pecl-memcached 3.2.0-r1 apk php82-pecl-msgpack 2.2.0-r0 apk php82-pecl-redis 6.0.2-r0 apk php82-pgsql 8.2.13-r0 apk -php82-phar 8.2.12-r0 apk +php82-phar 8.2.13-r0 apk php82-posix 8.2.13-r0 apk -php82-session 8.2.12-r0 apk -php82-simplexml 8.2.12-r0 apk +php82-session 8.2.13-r0 apk +php82-simplexml 8.2.13-r0 apk php82-soap 8.2.13-r0 apk php82-sockets 8.2.13-r0 apk php82-sodium 8.2.13-r0 apk php82-sqlite3 8.2.13-r0 apk php82-tokenizer 8.2.13-r0 apk -php82-xml 8.2.12-r0 apk +php82-xml 8.2.13-r0 apk php82-xmlreader 8.2.13-r0 apk -php82-xmlwriter 8.2.12-r0 apk +php82-xmlwriter 8.2.13-r0 apk php82-xsl 8.2.13-r0 apk -php82-zip 8.2.12-r0 apk +php82-zip 8.2.13-r0 apk pinentry 1.2.1-r1 apk pip 23.3.1 python pkb-client 1.2 python @@ -313,7 +313,7 @@ requests 2.31.0 python requests-file 1.5.1 python requests-mock 1.11.0 python rsa 4.9 python -s3transfer 0.8.0 python +s3transfer 0.8.2 python scanelf 1.3.7-r1 apk setuptools 65.5.0 python shadow 4.13-r4 apk From ad6bb30bfcc405c0946564200540ee5dd1ac0ea6 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 2 Dec 2023 03:18:16 +0000 Subject: [PATCH 23/42] Bot Updating Package Versions --- package_versions.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index ff6bceb..76f039c 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.5 python -botocore 1.33.5 python +boto3 1.33.6 python +botocore 1.33.6 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -123,7 +123,7 @@ httplib2 0.22.0 python icu-data-en 73.2-r2 apk icu-libs 73.2-r2 apk idna 3.6 python -importlib-metadata 6.8.0 python +importlib-metadata 6.9.0 python ip6tables 1.8.9-r2 apk iptables 1.8.9-r2 apk isodate 0.6.1 python From d2f843c4d183e7dd173498a4778f21cec977e08b Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Wed, 6 Dec 2023 01:09:14 +0000 Subject: [PATCH 24/42] Bot Updating Package Versions --- package_versions.txt | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 76f039c..f4a98f7 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -4,7 +4,7 @@ PyJWT 2.8.0 python PyNamecheap 0.0.3 python PyYAML 6.0.1 python SimpleLauncherExecutable 1.1.0.14 dotnet -acme 2.7.4 python +acme 2.8.0 python alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk alpine-keys 2.4-r1 apk @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.6 python -botocore 1.33.6 python +boto3 1.33.8 python +botocore 1.33.8 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -33,15 +33,15 @@ c-client 2007f-r15 apk ca-certificates 20230506-r0 apk ca-certificates-bundle 20230506-r0 apk cachetools 5.3.2 python -certbot 2.7.4 python +certbot 2.8.0 python certbot-dns-acmedns 0.1.0 python certbot-dns-aliyun 2.0.0 python certbot-dns-azure 2.4.0 python certbot-dns-bunny 0.0.9 python -certbot-dns-cloudflare 2.7.4 python +certbot-dns-cloudflare 2.8.0 python certbot-dns-cpanel 0.4.0 python certbot-dns-desec 1.2.1 python -certbot-dns-digitalocean 2.7.4 python +certbot-dns-digitalocean 2.8.0 python certbot-dns-directadmin 1.0.3 python certbot-dns-dnsimple 2.6.0 python certbot-dns-dnsmadeeasy 2.6.0 python @@ -54,7 +54,7 @@ certbot-dns-dynu 0.0.4 python certbot-dns-freedns 0.1.0 python certbot-dns-gehirn 2.6.0 python certbot-dns-godaddy 0.2.2 python -certbot-dns-google 2.7.4 python +certbot-dns-google 2.8.0 python certbot-dns-google-domains 0.1.11 python certbot-dns-he 1.0.0 python certbot-dns-hetzner 2.0.0 python @@ -70,8 +70,8 @@ certbot-dns-njalla 1.0.0 python certbot-dns-nsone 2.6.0 python certbot-dns-ovh 2.6.0 python certbot-dns-porkbun 0.8 python -certbot-dns-rfc2136 2.7.4 python -certbot-dns-route53 2.7.4 python +certbot-dns-rfc2136 2.8.0 python +certbot-dns-route53 2.8.0 python certbot-dns-sakuracloud 2.6.0 python certbot-dns-standalone 1.1 python certbot-dns-transip 0.5.2 python @@ -111,7 +111,7 @@ gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.14.0 python google-api-python-client 2.109.0 python -google-auth 2.24.0 python +google-auth 2.25.0 python google-auth-httplib2 0.1.1 python googleapis-common-protos 1.61.0 python gpg 2.4.3-r0 apk @@ -123,7 +123,7 @@ httplib2 0.22.0 python icu-data-en 73.2-r2 apk icu-libs 73.2-r2 apk idna 3.6 python -importlib-metadata 6.9.0 python +importlib-metadata 7.0.0 python ip6tables 1.8.9-r2 apk iptables 1.8.9-r2 apk isodate 0.6.1 python @@ -196,7 +196,7 @@ marshmallow 3.20.1 python memcached 1.6.21-r0 apk mock 5.1.0 python mpdecimal 2.5.1-r2 apk -msal 1.25.0 python +msal 1.26.0 python msal-extensions 1.0.0 python musl 1.2.4-r2 apk musl-utils 1.2.4-r2 apk From 5f8a531a9352edf1cbdd433311c6d488b321ef31 Mon Sep 17 00:00:00 2001 From: driz <40674481+drizuid@users.noreply.github.com> Date: Thu, 7 Dec 2023 08:50:27 -0500 Subject: [PATCH 25/42] Update nginx-deny.conf --- root/defaults/fail2ban/filter.d/nginx-deny.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/root/defaults/fail2ban/filter.d/nginx-deny.conf b/root/defaults/fail2ban/filter.d/nginx-deny.conf index d9f4694..e646800 100644 --- a/root/defaults/fail2ban/filter.d/nginx-deny.conf +++ b/root/defaults/fail2ban/filter.d/nginx-deny.conf @@ -12,4 +12,4 @@ datepattern = {^LN-BEG} # DEV NOTES: # -# Author: Will L (driz@linuxserver.io) +# Author: notdriz From 11e060174bb6f112d839ad5527496610861278a1 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Thu, 7 Dec 2023 13:54:35 +0000 Subject: [PATCH 26/42] Bot Updating Package Versions --- package_versions.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index f4a98f7..de52a53 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.8 python -botocore 1.33.8 python +boto3 1.33.9 python +botocore 1.33.9 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -111,7 +111,7 @@ gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.14.0 python google-api-python-client 2.109.0 python -google-auth 2.25.0 python +google-auth 2.25.1 python google-auth-httplib2 0.1.1 python googleapis-common-protos 1.61.0 python gpg 2.4.3-r0 apk From bd94a670242cb627fe2323f66a7506fc6d69cf4a Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 9 Dec 2023 03:20:23 +0000 Subject: [PATCH 27/42] Bot Updating Package Versions --- package_versions.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index de52a53..e53289c 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -8,7 +8,7 @@ acme 2.8.0 python alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk alpine-keys 2.4-r1 apk -alpine-release 3.18.4-r0 apk +alpine-release 3.18.5-r0 apk aom-libs 3.6.1-r0 apk apache2-utils 2.4.58-r0 apk apk-tools 2.14.0-r2 apk @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.9 python -botocore 1.33.9 python +boto3 1.33.11 python +botocore 1.33.11 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -109,11 +109,11 @@ gnupg-keyboxd 2.4.3-r0 apk gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk -google-api-core 2.14.0 python -google-api-python-client 2.109.0 python -google-auth 2.25.1 python +google-api-core 2.15.0 python +google-api-python-client 2.110.0 python +google-auth 2.25.2 python google-auth-httplib2 0.1.1 python -googleapis-common-protos 1.61.0 python +googleapis-common-protos 1.62.0 python gpg 2.4.3-r0 apk gpg-agent 2.4.3-r0 apk gpg-wks-server 2.4.3-r0 apk From c50ca83ef918784f56eb2e5f1854343893aea893 Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Mon, 11 Dec 2023 22:17:57 +0000 Subject: [PATCH 28/42] Deprecate certbot-dns-dynu Signed-off-by: GitHub --- Dockerfile | 1 - Dockerfile.aarch64 | 1 - readme-vars.yml | 22 ++++++++++++++++++++++ root/defaults/dns-conf/dynu.ini | 3 --- 4 files changed, 22 insertions(+), 5 deletions(-) delete mode 100644 root/defaults/dns-conf/dynu.ini diff --git a/Dockerfile b/Dockerfile index 6c99423..a5a6ef0 100755 --- a/Dockerfile +++ b/Dockerfile @@ -104,7 +104,6 @@ RUN \ certbot-dns-domeneshop \ certbot-dns-dreamhost \ certbot-dns-duckdns \ - certbot-dns-dynu \ certbot-dns-freedns \ certbot-dns-gehirn \ certbot-dns-glesys \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 75282b2..bf8f654 100755 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -104,7 +104,6 @@ RUN \ certbot-dns-domeneshop \ certbot-dns-dreamhost \ certbot-dns-duckdns \ - certbot-dns-dynu \ certbot-dns-freedns \ certbot-dns-gehirn \ certbot-dns-glesys \ diff --git a/readme-vars.yml b/readme-vars.yml index 92c40ff..fef9417 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -50,7 +50,13 @@ opt_param_usage_include_env: true opt_param_env_vars: - { env_var: "SUBDOMAINS", env_value: "www,", desc: "Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only)" } - { env_var: "CERTPROVIDER", env_value: "", desc: "Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt." } +<<<<<<< HEAD - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } +||||||| parent of dabbaa3 (Deprecate certbot-dns-dynu) + - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } +======= + - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } +>>>>>>> dabbaa3 (Deprecate certbot-dns-dynu) - { env_var: "PROPAGATION", env_value: "", desc: "Optionally override (in seconds) the default propagation time for the dns plugins." } - { env_var: "EMAIL", env_value: "", desc: "Optional e-mail address used for cert expiration notifications (Required for ZeroSSL)." } - { env_var: "ONLY_SUBDOMAINS", env_value: "false", desc: "If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`" } @@ -90,6 +96,21 @@ app_setup_block: | * After setup, navigate to `https://yourdomain.url` to access the default homepage (http access through port 80 is disabled by default, you can enable it by editing the default site config at `/config/nginx/site-confs/default.conf`). * Certs are checked nightly and if expiration is within 30 days, renewal is attempted. If your cert is about to expire in less than 30 days, check the logs under `/config/log/letsencrypt` to see why the renewals have been failing. It is recommended to input your e-mail in docker parameters so you receive expiration notices from Let's Encrypt in those circumstances. + ### Certbot Plugins + + SWAG includes many Certbot plugins out of the box, but not all plugins can be includes. + If you need a plugin that is not included, the quickest way to have the plugin available is to use our [Universal Package Install Docker Mod](https://github.com/linuxserver/docker-mods/tree/universal-package-install). + + Set the following environment variables on your container: + + ```yaml + DOCKER_MODS=linuxserver/mods:universal-package-install + INSTALL_PIP_PACKAGES=certbot-dns- + ``` + + Set the required credentials (usually found in the plugin documentation) in `/config/dns-conf/.ini`. + It is recommended to attempt obtaining a certificate with `STAGING=true` first to make sure the plugin is working as expected. + ### Security and password protection * The container detects changes to url and subdomains, revokes existing certs and generates new ones during start. @@ -156,6 +177,7 @@ changelogs: - { date: "01.01.24:", desc: "Add GleSYS DNS plugin." } - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } + - { date: "11.12.23:", desc: "Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins." } - { date: "30.11.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - { date: "23.11.23:", desc: "Run certbot as root to allow fix http validation." } - { date: "01.10.23:", desc: "Fix \"unrecognized arguments\" issue in DirectAdmin DNS plugin." } diff --git a/root/defaults/dns-conf/dynu.ini b/root/defaults/dns-conf/dynu.ini deleted file mode 100644 index 9c4db55..0000000 --- a/root/defaults/dns-conf/dynu.ini +++ /dev/null @@ -1,3 +0,0 @@ -# Instructions: https://github.com/bikram990/certbot-dns-dynu#configuration -# Replace with your API token from your dynu account. -dns_dynu_auth_token = AbCbASsd!@34 From 6b62a27bf0f8853df330ba0e2ecb0c3058a4b037 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 12 Dec 2023 13:33:00 +0000 Subject: [PATCH 29/42] Bot Updating Templated Files --- README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3fdb673..0168cf0 100644 --- a/README.md +++ b/README.md @@ -74,6 +74,21 @@ The architectures supported by this image are: * After setup, navigate to `https://yourdomain.url` to access the default homepage (http access through port 80 is disabled by default, you can enable it by editing the default site config at `/config/nginx/site-confs/default.conf`). * Certs are checked nightly and if expiration is within 30 days, renewal is attempted. If your cert is about to expire in less than 30 days, check the logs under `/config/log/letsencrypt` to see why the renewals have been failing. It is recommended to input your e-mail in docker parameters so you receive expiration notices from Let's Encrypt in those circumstances. +### Certbot Plugins + +SWAG includes many Certbot plugins out of the box, but not all plugins can be includes. +If you need a plugin that is not included, the quickest way to have the plugin available is to use our [Universal Package Install Docker Mod](https://github.com/linuxserver/docker-mods/tree/universal-package-install). + +Set the following environment variables on your container: + +```yaml +DOCKER_MODS=linuxserver/mods:universal-package-install +INSTALL_PIP_PACKAGES=certbot-dns- +``` + +Set the required credentials (usually found in the plugin documentation) in `/config/dns-conf/.ini`. +It is recommended to attempt obtaining a certificate with `STAGING=true` first to make sure the plugin is working as expected. + ### Security and password protection * The container detects changes to url and subdomains, revokes existing certs and generates new ones during start. @@ -213,7 +228,7 @@ Containers are configured using parameters passed at runtime (such as those abov | `-e VALIDATION=http` | Certbot validation method to use, options are `http` or `dns` (`dns` method also requires `DNSPLUGIN` variable set). | | `-e SUBDOMAINS=www,` | Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only) | | `-e CERTPROVIDER=` | Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt. | -| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. | +| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. | | `-e PROPAGATION=` | Optionally override (in seconds) the default propagation time for the dns plugins. | | `-e EMAIL=` | Optional e-mail address used for cert expiration notifications (Required for ZeroSSL). | | `-e ONLY_SUBDOMAINS=false` | If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true` | @@ -401,6 +416,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **11.12.23:** - Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins. * **30.11.23:** - [Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404. * **23.11.23:** - Run certbot as root to allow fix http validation. * **01.10.23:** - Fix "unrecognized arguments" issue in DirectAdmin DNS plugin. From 9339d287d23a833fc2f84c0e916456e921f9d912 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 12 Dec 2023 13:36:29 +0000 Subject: [PATCH 30/42] Bot Updating Package Versions --- package_versions.txt | 40 +++++++++++++++++++--------------------- 1 file changed, 19 insertions(+), 21 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index e53289c..14fb833 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -23,8 +23,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.11 python -botocore 1.33.11 python +boto3 1.33.12 python +botocore 1.33.12 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -43,17 +43,16 @@ certbot-dns-cpanel 0.4.0 python certbot-dns-desec 1.2.1 python certbot-dns-digitalocean 2.8.0 python certbot-dns-directadmin 1.0.3 python -certbot-dns-dnsimple 2.6.0 python -certbot-dns-dnsmadeeasy 2.6.0 python +certbot-dns-dnsimple 2.8.0 python +certbot-dns-dnsmadeeasy 2.8.0 python certbot-dns-dnspod 0.1.0 python certbot-dns-do 0.31.0 python certbot-dns-domeneshop 0.2.9 python certbot-dns-dreamhost 1.0 python certbot-dns-duckdns 1.3 python -certbot-dns-dynu 0.0.4 python certbot-dns-freedns 0.1.0 python -certbot-dns-gehirn 2.6.0 python -certbot-dns-godaddy 0.2.2 python +certbot-dns-gehirn 2.8.0 python +certbot-dns-godaddy 2.7.4 python certbot-dns-google 2.8.0 python certbot-dns-google-domains 0.1.11 python certbot-dns-he 1.0.0 python @@ -61,18 +60,18 @@ certbot-dns-hetzner 2.0.0 python certbot-dns-infomaniak 0.2.1 python certbot-dns-inwx 2.2.0 python certbot-dns-ionos 2023.11.13.post1 python -certbot-dns-linode 2.6.0 python +certbot-dns-linode 2.8.0 python certbot-dns-loopia 1.0.1 python -certbot-dns-luadns 2.6.0 python +certbot-dns-luadns 2.8.0 python certbot-dns-namecheap 1.0.0 python certbot-dns-netcup 1.4.3 python certbot-dns-njalla 1.0.0 python -certbot-dns-nsone 2.6.0 python -certbot-dns-ovh 2.6.0 python +certbot-dns-nsone 2.8.0 python +certbot-dns-ovh 2.8.0 python certbot-dns-porkbun 0.8 python certbot-dns-rfc2136 2.8.0 python certbot-dns-route53 2.8.0 python -certbot-dns-sakuracloud 2.6.0 python +certbot-dns-sakuracloud 2.8.0 python certbot-dns-standalone 1.1 python certbot-dns-transip 0.5.2 python certbot-dns-vultr 1.1.0 python @@ -84,10 +83,10 @@ cloudflare 2.14.2 python configobj 5.0.8 python coreutils 9.3-r1 apk cryptography 41.0.7 python -curl 8.4.0-r0 apk +curl 8.5.0-r0 apk dataclasses-json 0.5.14 python distro 1.8.0 python -dns-lexicon 3.11.7 python +dns-lexicon 3.17.0 python dnslib 0.9.23 python dnspython 2.4.2 python domeneshop 0.4.3 python @@ -123,13 +122,12 @@ httplib2 0.22.0 python icu-data-en 73.2-r2 apk icu-libs 73.2-r2 apk idna 3.6 python -importlib-metadata 7.0.0 python ip6tables 1.8.9-r2 apk iptables 1.8.9-r2 apk isodate 0.6.1 python jmespath 1.0.1 python josepy 1.14.0 python -jq 1.6-r3 apk +jq 1.6-r4 apk jsonlines 4.0.0 python jsonpickle 3.0.2 python libacl 2.3.1-r3 apk @@ -140,7 +138,7 @@ libbsd 0.11.7-r1 apk libbz2 1.0.8-r5 apk libc-utils 0.7.2-r5 apk libcrypto3 3.1.4-r1 apk -libcurl 8.4.0-r0 apk +libcurl 8.5.0-r0 apk libdav1d 1.2.1-r0 apk libedit 20221030.3.1-r1 apk libevent 2.1.12-r6 apk @@ -197,7 +195,7 @@ memcached 1.6.21-r0 apk mock 5.1.0 python mpdecimal 2.5.1-r2 apk msal 1.26.0 python -msal-extensions 1.0.0 python +msal-extensions 1.1.0 python musl 1.2.4-r2 apk musl-utils 1.2.4-r2 apk mypy-extensions 1.0.0 python @@ -300,6 +298,7 @@ pyasn1 0.5.1 python pyasn1-modules 0.3.0 python pyc 0.1-r0 apk pycparser 2.21 python +pyotp 2.9.0 python pyparsing 3.1.1 python python-dateutil 2.8.2 python python-digitalocean 1.17.0 python @@ -325,16 +324,15 @@ ssl_client 1.36.1-r5 apk tiff 4.5.1-r0 apk tldextract 5.1.1 python typing-inspect 0.9.0 python -typing_extensions 4.8.0 python +typing_extensions 4.9.0 python tzdata 2023c-r1 apk unixodbc 2.3.11-r2 apk uritemplate 4.1.1 python -urllib3 1.26.18 python +urllib3 2.0.7 python utmps-libs 0.1.2.1-r1 apk wheel 0.42.0 python whois 5.5.17-r0 apk xz-libs 5.4.3-r0 apk -zipp 3.17.0 python zlib 1.2.13-r1 apk zope.interface 6.1 python zstd-libs 1.5.5-r4 apk From 2fb6c1f51f1dd37bda4991d84fbb3dce504bd399 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 16 Dec 2023 03:18:17 +0000 Subject: [PATCH 31/42] Bot Updating Package Versions --- package_versions.txt | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 14fb833..ca8b70f 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -9,6 +9,7 @@ alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk alpine-keys 2.4-r1 apk alpine-release 3.18.5-r0 apk +anyio 4.1.0 python aom-libs 3.6.1-r0 apk apache2-utils 2.4.58-r0 apk apk-tools 2.14.0-r2 apk @@ -17,14 +18,14 @@ apr-util 1.6.3-r1 apk argon2-libs 20190702-r4 apk attrs 23.1.0 python azure-common 1.1.28 python -azure-core 1.29.5 python +azure-core 1.29.6 python azure-identity 1.15.0 python azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.33.12 python -botocore 1.33.12 python +boto3 1.34.2 python +botocore 1.34.2 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -79,7 +80,7 @@ certbot-plugin-gandi 1.5.0 python certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python -cloudflare 2.14.2 python +cloudflare 2.14.3 python configobj 5.0.8 python coreutils 9.3-r1 apk cryptography 41.0.7 python @@ -109,9 +110,9 @@ gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.15.0 python -google-api-python-client 2.110.0 python +google-api-python-client 2.111.0 python google-auth 2.25.2 python -google-auth-httplib2 0.1.1 python +google-auth-httplib2 0.2.0 python googleapis-common-protos 1.62.0 python gpg 2.4.3-r0 apk gpg-agent 2.4.3-r0 apk @@ -312,12 +313,13 @@ requests 2.31.0 python requests-file 1.5.1 python requests-mock 1.11.0 python rsa 4.9 python -s3transfer 0.8.2 python +s3transfer 0.9.0 python scanelf 1.3.7-r1 apk setuptools 65.5.0 python shadow 4.13-r4 apk six 1.16.0 python skalibs 2.13.1.1-r1 apk +sniffio 1.3.0 python soupsieve 2.5 python sqlite-libs 3.41.2-r2 apk ssl_client 1.36.1-r5 apk From be853fcb4b3ea5952c3470ce53eebe07c24c9f88 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 23 Dec 2023 03:17:49 +0000 Subject: [PATCH 32/42] Bot Updating Package Versions --- package_versions.txt | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index ca8b70f..38ff794 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -3,13 +3,13 @@ ConfigArgParse 1.7 python PyJWT 2.8.0 python PyNamecheap 0.0.3 python PyYAML 6.0.1 python -SimpleLauncherExecutable 1.1.0.14 dotnet +Simple Launcher 1.1.0.14 dotnet acme 2.8.0 python alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk alpine-keys 2.4-r1 apk alpine-release 3.18.5-r0 apk -anyio 4.1.0 python +anyio 4.2.0 python aom-libs 3.6.1-r0 apk apache2-utils 2.4.58-r0 apk apk-tools 2.14.0-r2 apk @@ -24,8 +24,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.34.2 python -botocore 1.34.2 python +boto3 1.34.7 python +botocore 1.34.7 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -81,6 +81,7 @@ certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python cloudflare 2.14.3 python +composer 2.6.6 binary configobj 5.0.8 python coreutils 9.3-r1 apk cryptography 41.0.7 python @@ -189,7 +190,7 @@ libzip 1.9.2-r2 apk linux-pam 1.5.2-r10 apk logrotate 3.21.0-r1 apk loopialib 0.2.0 python -lxml 4.9.3 python +lxml 4.9.4 python lz4-libs 1.9.4-r4 apk marshmallow 3.20.1 python memcached 1.6.21-r0 apk @@ -265,7 +266,7 @@ php82-pdo_sqlite 8.2.13-r0 apk php82-pear 8.2.13-r0 apk php82-pecl-apcu 5.1.22-r0 apk php82-pecl-igbinary 3.2.14-r0 apk -php82-pecl-mcrypt 1.0.6-r0 apk +php82-pecl-mcrypt 1.0.7-r0 apk php82-pecl-memcached 3.2.0-r1 apk php82-pecl-msgpack 2.2.0-r0 apk php82-pecl-redis 6.0.2-r0 apk @@ -285,7 +286,7 @@ php82-xmlwriter 8.2.13-r0 apk php82-xsl 8.2.13-r0 apk php82-zip 8.2.13-r0 apk pinentry 1.2.1-r1 apk -pip 23.3.1 python +pip 23.3.2 python pkb-client 1.2 python popt 1.19-r2 apk portalocker 2.8.2 python @@ -313,7 +314,7 @@ requests 2.31.0 python requests-file 1.5.1 python requests-mock 1.11.0 python rsa 4.9 python -s3transfer 0.9.0 python +s3transfer 0.10.0 python scanelf 1.3.7-r1 apk setuptools 65.5.0 python shadow 4.13-r4 apk From 00d1bce24d7de491e4194e3b80e7f36eed89e4d7 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 30 Dec 2023 03:18:23 +0000 Subject: [PATCH 33/42] Bot Updating Package Versions --- package_versions.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 38ff794..ff00953 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -24,8 +24,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.34.7 python -botocore 1.34.7 python +boto3 1.34.11 python +botocore 1.34.11 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -80,14 +80,14 @@ certbot-plugin-gandi 1.5.0 python certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python -cloudflare 2.14.3 python +cloudflare 2.15.1 python composer 2.6.6 binary configobj 5.0.8 python coreutils 9.3-r1 apk cryptography 41.0.7 python curl 8.5.0-r0 apk dataclasses-json 0.5.14 python -distro 1.8.0 python +distro 1.9.0 python dns-lexicon 3.17.0 python dnslib 0.9.23 python dnspython 2.4.2 python @@ -190,7 +190,7 @@ libzip 1.9.2-r2 apk linux-pam 1.5.2-r10 apk logrotate 3.21.0-r1 apk loopialib 0.2.0 python -lxml 4.9.4 python +lxml 5.0.0 python lz4-libs 1.9.4-r4 apk marshmallow 3.20.1 python memcached 1.6.21-r0 apk From 8e74593f2caa11c9593f914d733213fb0aa0ffbc Mon Sep 17 00:00:00 2001 From: Peglah Date: Wed, 8 Nov 2023 12:42:43 +0100 Subject: [PATCH 34/42] Rebase, Add GleSYS DNS plugin --- readme-vars.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/readme-vars.yml b/readme-vars.yml index fef9417..f5ac2ee 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -50,6 +50,7 @@ opt_param_usage_include_env: true opt_param_env_vars: - { env_var: "SUBDOMAINS", env_value: "www,", desc: "Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only)" } - { env_var: "CERTPROVIDER", env_value: "", desc: "Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt." } +<<<<<<< HEAD <<<<<<< HEAD - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } ||||||| parent of dabbaa3 (Deprecate certbot-dns-dynu) @@ -57,6 +58,11 @@ opt_param_env_vars: ======= - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } >>>>>>> dabbaa3 (Deprecate certbot-dns-dynu) +||||||| parent of 5f0206b (Rebase, Add GleSYS DNS plugin) + - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } +======= + - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } +>>>>>>> 5f0206b (Rebase, Add GleSYS DNS plugin) - { env_var: "PROPAGATION", env_value: "", desc: "Optionally override (in seconds) the default propagation time for the dns plugins." } - { env_var: "EMAIL", env_value: "", desc: "Optional e-mail address used for cert expiration notifications (Required for ZeroSSL)." } - { env_var: "ONLY_SUBDOMAINS", env_value: "false", desc: "If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`" } From 1a376a697585358c7246d0cc4fba69b4c047ecc8 Mon Sep 17 00:00:00 2001 From: Peglah Date: Mon, 1 Jan 2024 09:49:44 +0100 Subject: [PATCH 35/42] rebased --- readme-vars.yml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/readme-vars.yml b/readme-vars.yml index f5ac2ee..6c06088 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -50,19 +50,7 @@ opt_param_usage_include_env: true opt_param_env_vars: - { env_var: "SUBDOMAINS", env_value: "www,", desc: "Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only)" } - { env_var: "CERTPROVIDER", env_value: "", desc: "Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt." } -<<<<<<< HEAD -<<<<<<< HEAD - - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } -||||||| parent of dabbaa3 (Deprecate certbot-dns-dynu) - - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `dynu`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } -======= - - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } ->>>>>>> dabbaa3 (Deprecate certbot-dns-dynu) -||||||| parent of 5f0206b (Rebase, Add GleSYS DNS plugin) - - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } -======= - { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." } ->>>>>>> 5f0206b (Rebase, Add GleSYS DNS plugin) - { env_var: "PROPAGATION", env_value: "", desc: "Optionally override (in seconds) the default propagation time for the dns plugins." } - { env_var: "EMAIL", env_value: "", desc: "Optional e-mail address used for cert expiration notifications (Required for ZeroSSL)." } - { env_var: "ONLY_SUBDOMAINS", env_value: "false", desc: "If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true`" } @@ -181,8 +169,6 @@ app_setup_block: | # changelog changelogs: - { date: "01.01.24:", desc: "Add GleSYS DNS plugin." } - - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - - { date: "27.04.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - { date: "11.12.23:", desc: "Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins." } - { date: "30.11.23:", desc: "[Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404." } - { date: "23.11.23:", desc: "Run certbot as root to allow fix http validation." } From 87ca95c8c221a94cc8151a32e458ada7bfe1f6ea Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 6 Jan 2024 03:21:45 +0000 Subject: [PATCH 36/42] Bot Updating Package Versions --- package_versions.txt | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index ff00953..4e019dd 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -16,7 +16,7 @@ apk-tools 2.14.0-r2 apk apr 1.7.4-r0 apk apr-util 1.6.3-r1 apk argon2-libs 20190702-r4 apk -attrs 23.1.0 python +attrs 23.2.0 python azure-common 1.1.28 python azure-core 1.29.6 python azure-identity 1.15.0 python @@ -24,8 +24,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.34.11 python -botocore 1.34.11 python +boto3 1.34.14 python +botocore 1.34.14 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -53,7 +53,7 @@ certbot-dns-dreamhost 1.0 python certbot-dns-duckdns 1.3 python certbot-dns-freedns 0.1.0 python certbot-dns-gehirn 2.8.0 python -certbot-dns-godaddy 2.7.4 python +certbot-dns-godaddy 2.8.0 python certbot-dns-google 2.8.0 python certbot-dns-google-domains 0.1.11 python certbot-dns-he 1.0.0 python @@ -80,7 +80,7 @@ certbot-plugin-gandi 1.5.0 python certifi 2023.11.17 python cffi 1.16.0 python charset-normalizer 3.3.2 python -cloudflare 2.15.1 python +cloudflare 2.16.0 python composer 2.6.6 binary configobj 5.0.8 python coreutils 9.3-r1 apk @@ -89,7 +89,7 @@ curl 8.5.0-r0 apk dataclasses-json 0.5.14 python distro 1.9.0 python dns-lexicon 3.17.0 python -dnslib 0.9.23 python +dnslib 0.9.24 python dnspython 2.4.2 python domeneshop 0.4.3 python fail2ban 1.0.2 python @@ -111,8 +111,8 @@ gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.15.0 python -google-api-python-client 2.111.0 python -google-auth 2.25.2 python +google-api-python-client 2.112.0 python +google-auth 2.26.1 python google-auth-httplib2 0.2.0 python googleapis-common-protos 1.62.0 python gpg 2.4.3-r0 apk @@ -190,7 +190,7 @@ libzip 1.9.2-r2 apk linux-pam 1.5.2-r10 apk logrotate 3.21.0-r1 apk loopialib 0.2.0 python -lxml 5.0.0 python +lxml 5.0.1 python lz4-libs 1.9.4-r4 apk marshmallow 3.20.1 python memcached 1.6.21-r0 apk @@ -328,7 +328,7 @@ tiff 4.5.1-r0 apk tldextract 5.1.1 python typing-inspect 0.9.0 python typing_extensions 4.9.0 python -tzdata 2023c-r1 apk +tzdata 2023d-r0 apk unixodbc 2.3.11-r2 apk uritemplate 4.1.1 python urllib3 2.0.7 python From d915d516cd5e68eabc585f919dea6260b135e20f Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 9 Jan 2024 19:47:00 +0000 Subject: [PATCH 37/42] Bot Updating Templated Files --- Jenkinsfile | 294 +++++++++++++++++++++++++++------------------------- 1 file changed, 151 insertions(+), 143 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 8426013..a50cf6d 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -59,11 +59,16 @@ pipeline { env.COMMIT_SHA = sh( script: '''git rev-parse HEAD''', returnStdout: true).trim() + env.GH_DEFAULT_BRANCH = sh( + script: '''git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||' ''', + returnStdout: true).trim() env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/' env.PULL_REQUEST = env.CHANGE_ID env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml ./root/donate.txt' } + sh '''#! /bin/bash + echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" ''' script{ env.LS_RELEASE_NUMBER = sh( script: '''echo ${LS_RELEASE} |sed 's/^.*-ls//g' ''', @@ -120,7 +125,7 @@ pipeline { steps{ script{ env.EXT_RELEASE_CLEAN = sh( - script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''', + script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/ ]//g' ''', returnStdout: true).trim() def semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)\.(\d+)/ @@ -138,7 +143,7 @@ pipeline { } if (env.SEMVER != null) { - if (BRANCH_NAME != "master" && BRANCH_NAME != "main") { + if (BRANCH_NAME != "${env.GH_DEFAULT_BRANCH}") { env.SEMVER = "${env.SEMVER}-${BRANCH_NAME}" } println("SEMVER: ${env.SEMVER}") @@ -256,115 +261,150 @@ pipeline { } } steps { - sh '''#! /bin/bash - set -e - TEMPDIR=$(mktemp -d) - docker pull ghcr.io/linuxserver/jenkins-builder:latest - docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=master -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest - # Stage 1 - Jenkinsfile update - if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then - mkdir -p ${TEMPDIR}/repo - git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO} - cd ${TEMPDIR}/repo/${LS_REPO} - git checkout -f master - cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/ - git add Jenkinsfile - git commit -m 'Bot Updating Templated Files' - git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all - echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} - echo "Updating Jenkinsfile" - rm -Rf ${TEMPDIR} - exit 0 - else - echo "Jenkinsfile is up to date." - fi - # Stage 2 - Delete old templates - OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf" - for i in ${OLD_TEMPLATES}; do - if [[ -f "${i}" ]]; then - TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}" - fi - done - if [[ -n "${TEMPLATES_TO_DELETE}" ]]; then - mkdir -p ${TEMPDIR}/repo - git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO} - cd ${TEMPDIR}/repo/${LS_REPO} - git checkout -f master - for i in ${TEMPLATES_TO_DELETE}; do - git rm "${i}" - done - git commit -m 'Bot Updating Templated Files' - git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all - echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} - echo "Deleting old and deprecated templates" - rm -Rf ${TEMPDIR} - exit 0 - else - echo "No templates to delete" - fi - # Stage 3 - Update templates - CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8) - cd ${TEMPDIR}/docker-${CONTAINER_NAME} - NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8) - if [[ "${CURRENTHASH}" != "${NEWHASH}" ]] || ! grep -q '.jenkins-external' "${WORKSPACE}/.gitignore" 2>/dev/null; then - mkdir -p ${TEMPDIR}/repo - git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO} - cd ${TEMPDIR}/repo/${LS_REPO} - git checkout -f master - cd ${TEMPDIR}/docker-${CONTAINER_NAME} - mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows - mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE - cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || : - cp --parents readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/ || : - cd ${TEMPDIR}/repo/${LS_REPO}/ - if ! grep -q '.jenkins-external' .gitignore 2>/dev/null; then - echo ".jenkins-external" >> .gitignore - git add .gitignore - fi - git add readme-vars.yml ${TEMPLATED_FILES} - git commit -m 'Bot Updating Templated Files' - git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all - echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} - else - echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} - fi - mkdir -p ${TEMPDIR}/docs - git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation - if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then - cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/ - cd ${TEMPDIR}/docs/docker-documentation - git add docs/images/docker-${CONTAINER_NAME}.md - git commit -m 'Bot Updating Documentation' - git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all - fi - mkdir -p ${TEMPDIR}/unraid - git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates - git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates - if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then - sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml - elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then - sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml - fi - if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then - cd ${TEMPDIR}/unraid/templates/ - if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then - echo "Image is on the ignore list, marking Unraid template as deprecated" - cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/ - git add -u unraid/${CONTAINER_NAME}.xml - git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || : - git commit -m 'Bot Moving Deprecated Unraid Template' || : + withCredentials([ + [ + $class: 'UsernamePasswordMultiBinding', + credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207', + usernameVariable: 'DOCKERUSER', + passwordVariable: 'DOCKERPASS' + ] + ]) { + sh '''#! /bin/bash + set -e + TEMPDIR=$(mktemp -d) + docker pull ghcr.io/linuxserver/jenkins-builder:latest + docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=master -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest + # Stage 1 - Jenkinsfile update + if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then + mkdir -p ${TEMPDIR}/repo + git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO} + cd ${TEMPDIR}/repo/${LS_REPO} + git checkout -f master + cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/ + git add Jenkinsfile + git commit -m 'Bot Updating Templated Files' + git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} + echo "Updating Jenkinsfile" + rm -Rf ${TEMPDIR} + exit 0 else - cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/ - git add unraid/${CONTAINER_NAME}.xml - git commit -m 'Bot Updating Unraid Template' + echo "Jenkinsfile is up to date." fi - git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all - fi - rm -Rf ${TEMPDIR}''' - script{ - env.FILES_UPDATED = sh( - script: '''cat /tmp/${COMMIT_SHA}-${BUILD_NUMBER}''', - returnStdout: true).trim() + # Stage 2 - Delete old templates + OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf" + for i in ${OLD_TEMPLATES}; do + if [[ -f "${i}" ]]; then + TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}" + fi + done + if [[ -n "${TEMPLATES_TO_DELETE}" ]]; then + mkdir -p ${TEMPDIR}/repo + git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO} + cd ${TEMPDIR}/repo/${LS_REPO} + git checkout -f master + for i in ${TEMPLATES_TO_DELETE}; do + git rm "${i}" + done + git commit -m 'Bot Updating Templated Files' + git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} + echo "Deleting old and deprecated templates" + rm -Rf ${TEMPDIR} + exit 0 + else + echo "No templates to delete" + fi + # Stage 3 - Update templates + CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8) + cd ${TEMPDIR}/docker-${CONTAINER_NAME} + NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8) + if [[ "${CURRENTHASH}" != "${NEWHASH}" ]] || ! grep -q '.jenkins-external' "${WORKSPACE}/.gitignore" 2>/dev/null; then + mkdir -p ${TEMPDIR}/repo + git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO} + cd ${TEMPDIR}/repo/${LS_REPO} + git checkout -f master + cd ${TEMPDIR}/docker-${CONTAINER_NAME} + mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows + mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE + cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || : + cp --parents readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/ || : + cd ${TEMPDIR}/repo/${LS_REPO}/ + if ! grep -q '.jenkins-external' .gitignore 2>/dev/null; then + echo ".jenkins-external" >> .gitignore + git add .gitignore + fi + git add readme-vars.yml ${TEMPLATED_FILES} + git commit -m 'Bot Updating Templated Files' + git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} + else + echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER} + fi + mkdir -p ${TEMPDIR}/docs + git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation + if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then + cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/ + cd ${TEMPDIR}/docs/docker-documentation + GH_DOCS_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||') + git add docs/images/docker-${CONTAINER_NAME}.md + git commit -m 'Bot Updating Documentation' + git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} + git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git ${GH_DOCS_DEFAULT_BRANCH} + fi + mkdir -p ${TEMPDIR}/unraid + git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates + git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates + if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then + sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml + elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then + sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml + fi + if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then + cd ${TEMPDIR}/unraid/templates/ + GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||') + if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then + echo "Image is on the ignore list, marking Unraid template as deprecated" + cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/ + git add -u unraid/${CONTAINER_NAME}.xml + git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || : + git commit -m 'Bot Moving Deprecated Unraid Template' || : + else + cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/ + git add unraid/${CONTAINER_NAME}.xml + git commit -m 'Bot Updating Unraid Template' + fi + git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} + git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git ${GH_TEMPLATES_DEFAULT_BRANCH} + fi + # Stage 4 - Sync Readme to Docker Hub + if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]]; then + if [[ $(cat ${TEMPDIR}/docker-${CONTAINER_NAME}/README.md | wc -m) > 25000 ]]; then + echo "Readme is longer than 25,000 characters. Syncing the lite version to Docker Hub" + DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md" + else + echo "Syncing readme to Docker Hub" + DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite" + fi + DH_TOKEN=$(curl -d '{"username":"'${DOCKERUSER}'", "password":"'${DOCKERPASS}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token') + curl -s \ + -H "Authorization: JWT ${DH_TOKEN}" \ + -H "Content-Type: application/json" \ + -X PATCH \ + -d "{\\"full_description\\":$(jq -Rsa . ${DH_README_SYNC_PATH})}" \ + https://hub.docker.com/v2/repositories/${DOCKERHUB_IMAGE} || : + else + echo "Not the default Github branch. Skipping readme sync to Docker Hub." + fi + rm -Rf ${TEMPDIR}''' + script{ + env.FILES_UPDATED = sh( + script: '''cat /tmp/${COMMIT_SHA}-${BUILD_NUMBER}''', + returnStdout: true).trim() + } } } } @@ -558,7 +598,8 @@ pipeline { wait git add package_versions.txt git commit -m 'Bot Updating Package Versions' - git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all + git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master + git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git master echo "true" > /tmp/packages-${COMMIT_SHA}-${BUILD_NUMBER} echo "Package tag updated, stopping build process" else @@ -854,39 +895,6 @@ EOF ) ''' } } - // Use helper container to sync the current README on master to the dockerhub endpoint - stage('Sync-README') { - when { - environment name: 'CHANGE_ID', value: '' - environment name: 'EXIT_STATUS', value: '' - } - steps { - withCredentials([ - [ - $class: 'UsernamePasswordMultiBinding', - credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207', - usernameVariable: 'DOCKERUSER', - passwordVariable: 'DOCKERPASS' - ] - ]) { - sh '''#! /bin/bash - set -e - TEMPDIR=$(mktemp -d) - docker pull ghcr.io/linuxserver/jenkins-builder:latest - docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest - docker pull ghcr.io/linuxserver/readme-sync - docker run --rm=true \ - -e DOCKERHUB_USERNAME=$DOCKERUSER \ - -e DOCKERHUB_PASSWORD=$DOCKERPASS \ - -e GIT_REPOSITORY=${LS_USER}/${LS_REPO} \ - -e DOCKER_REPOSITORY=${IMAGE} \ - -e GIT_BRANCH=master \ - -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/mnt \ - ghcr.io/linuxserver/readme-sync bash -c 'node sync' - rm -Rf ${TEMPDIR} ''' - } - } - } // If this is a Pull request send the CI link as a comment on it stage('Pull Request Comment') { when { From 6f51d8be26f2b4f1a63d7c4a824ff9942b9f242e Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 9 Jan 2024 19:54:13 +0000 Subject: [PATCH 38/42] Bot Updating Templated Files --- README.md | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 0168cf0..a48f504 100644 --- a/README.md +++ b/README.md @@ -158,7 +158,6 @@ To help you get started creating a container from this image you can either use ```yaml --- -version: "2.1" services: swag: image: lscr.io/linuxserver/swag:latest @@ -228,7 +227,7 @@ Containers are configured using parameters passed at runtime (such as those abov | `-e VALIDATION=http` | Certbot validation method to use, options are `http` or `dns` (`dns` method also requires `DNSPLUGIN` variable set). | | `-e SUBDOMAINS=www,` | Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this *exactly* to `wildcard` (wildcard cert is available via `dns` validation only) | | `-e CERTPROVIDER=` | Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt. | -| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. | +| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `acmedns`, `aliyun`, `azure`, `bunny`, `cloudflare`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `do`, `domeneshop`, `dreamhost`, `duckdns`, `freedns`, `gandi`, `gehirn`, `glesys`, `godaddy`, `google`, `google-domains`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `namecheap`, `netcup`, `njalla`, `nsone`, `ovh`, `porkbun`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip`, and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. | | `-e PROPAGATION=` | Optionally override (in seconds) the default propagation time for the dns plugins. | | `-e EMAIL=` | Optional e-mail address used for cert expiration notifications (Required for ZeroSSL). | | `-e ONLY_SUBDOMAINS=false` | If you wish to get certs only for certain subdomains, but not the main domain (main domain may be hosted on another machine and cannot be validated), set this to `true` | @@ -309,7 +308,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to ## Updating Info -Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (ie. nextcloud, plex), we do not recommend or support updating apps inside the container. Please consult the [Application Setup](#application-setup) section above to see if it is recommended for the image. +Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (noted in the relevant readme.md), we do not recommend or support updating apps inside the container. Please consult the [Application Setup](#application-setup) section above to see if it is recommended for the image. Below are the instructions for updating containers: @@ -374,21 +373,6 @@ Below are the instructions for updating containers: docker image prune ``` -### Via Watchtower auto-updater (only use if you don't remember the original parameters) - -* Pull the latest image at its tag and replace it with the same env variables in one run: - - ```bash - docker run --rm \ - -v /var/run/docker.sock:/var/run/docker.sock \ - containrrr/watchtower \ - --run-once swag - ``` - -* You can also remove the old dangling images: `docker image prune` - -**warning**: We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose). - ### Image Update Notifications - Diun (Docker Image Update Notifier) **tip**: We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported. @@ -416,6 +400,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **01.01.24:** - Add GleSYS DNS plugin. * **11.12.23:** - Deprecate certbot-dns-dynu to resolve dependency conflicts with other plugins. * **30.11.23:** - [Existing users should update:](https://github.com/linuxserver/docker-swag/blob/master/README.md#updating-configs) site-confs/default.conf - Fix index.php being downloaded on 404. * **23.11.23:** - Run certbot as root to allow fix http validation. From 270a0d57c9637ba412089dfa5331f5f641de6b86 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Tue, 9 Jan 2024 20:00:59 +0000 Subject: [PATCH 39/42] Bot Updating Package Versions --- package_versions.txt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 306d349..b14c395 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -24,8 +24,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.34.14 python -botocore 1.34.14 python +boto3 1.34.15 python +botocore 1.34.15 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -53,6 +53,7 @@ certbot-dns-dreamhost 1.0 python certbot-dns-duckdns 1.3 python certbot-dns-freedns 0.1.0 python certbot-dns-gehirn 2.8.0 python +certbot-dns-glesys 2.1.0 python certbot-dns-godaddy 2.8.0 python certbot-dns-google 2.8.0 python certbot-dns-google-domains 0.1.11 python @@ -60,7 +61,7 @@ certbot-dns-he 1.0.0 python certbot-dns-hetzner 2.0.0 python certbot-dns-infomaniak 0.2.1 python certbot-dns-inwx 2.2.0 python -certbot-dns-ionos 2023.11.13.post1 python +certbot-dns-ionos 2024.1.8 python certbot-dns-linode 2.8.0 python certbot-dns-loopia 1.0.1 python certbot-dns-luadns 2.8.0 python @@ -111,7 +112,7 @@ gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.15.0 python -google-api-python-client 2.112.0 python +google-api-python-client 2.113.0 python google-auth 2.26.1 python google-auth-httplib2 0.2.0 python googleapis-common-protos 1.62.0 python @@ -190,7 +191,7 @@ libzip 1.9.2-r2 apk linux-pam 1.5.2-r10 apk logrotate 3.21.0-r1 apk loopialib 0.2.0 python -lxml 5.0.1 python +lxml 5.1.0 python lz4-libs 1.9.4-r4 apk marshmallow 3.20.1 python memcached 1.6.21-r0 apk @@ -338,4 +339,4 @@ whois 5.5.17-r0 apk xz-libs 5.4.3-r0 apk zlib 1.2.13-r1 apk zope.interface 6.1 python -zstd-libs 1.5.5-r4 apk \ No newline at end of file +zstd-libs 1.5.5-r4 apk From 514cf426063e1a6366353c9dc4fb63ce07b156d6 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 13 Jan 2024 03:17:41 +0000 Subject: [PATCH 40/42] Bot Updating Templated Files --- Jenkinsfile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index a50cf6d..26a84b8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -16,6 +16,7 @@ pipeline { GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab') GITLAB_TOKEN=credentials('b6f0f1dd-6952-4cf6-95d1-9c06380283f0') GITLAB_NAMESPACE=credentials('gitlab-namespace-id') + DOCKERHUB_TOKEN=credentials('docker-hub-ci-pat') EXT_PIP = 'certbot' BUILD_VERSION_ARG = 'CERTBOT_VERSION' LS_USER = 'linuxserver' @@ -384,12 +385,12 @@ pipeline { if [[ "${BRANCH_NAME}" == "${GH_DEFAULT_BRANCH}" ]]; then if [[ $(cat ${TEMPDIR}/docker-${CONTAINER_NAME}/README.md | wc -m) > 25000 ]]; then echo "Readme is longer than 25,000 characters. Syncing the lite version to Docker Hub" - DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md" + DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite" else echo "Syncing readme to Docker Hub" - DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/README.lite" + DH_README_SYNC_PATH="${TEMPDIR}/docker-${CONTAINER_NAME}/README.md" fi - DH_TOKEN=$(curl -d '{"username":"'${DOCKERUSER}'", "password":"'${DOCKERPASS}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token') + DH_TOKEN=$(curl -d '{"username":"'${DOCKERUSER}'", "password":"'${DOCKERHUB_TOKEN}'"}' -H "Content-Type: application/json" -X POST https://hub.docker.com/v2/users/login | jq -r '.token') curl -s \ -H "Authorization: JWT ${DH_TOKEN}" \ -H "Content-Type: application/json" \ From bcee5182e6c141b15637b55aa84eaf9944222f87 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 13 Jan 2024 03:22:08 +0000 Subject: [PATCH 41/42] Bot Updating Package Versions --- package_versions.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index b14c395..2d23842 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -24,8 +24,8 @@ azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk beautifulsoup4 4.12.2 python -boto3 1.34.15 python -botocore 1.34.15 python +boto3 1.34.18 python +botocore 1.34.18 python brotli-libs 1.0.9-r14 apk bs4 0.0.1 python busybox 1.36.1-r5 apk @@ -113,7 +113,7 @@ gnupg-wks-client 2.4.3-r0 apk gnutls 3.8.0-r2 apk google-api-core 2.15.0 python google-api-python-client 2.113.0 python -google-auth 2.26.1 python +google-auth 2.26.2 python google-auth-httplib2 0.2.0 python googleapis-common-protos 1.62.0 python gpg 2.4.3-r0 apk @@ -140,7 +140,7 @@ libavif 0.11.1-r2 apk libbsd 0.11.7-r1 apk libbz2 1.0.8-r5 apk libc-utils 0.7.2-r5 apk -libcrypto3 3.1.4-r1 apk +libcrypto3 3.1.4-r3 apk libcurl 8.5.0-r0 apk libdav1d 1.2.1-r0 apk libedit 20221030.3.1-r1 apk @@ -172,7 +172,7 @@ libsasl 2.1.28-r4 apk libseccomp 2.5.4-r2 apk libsm 1.2.4-r1 apk libsodium 1.0.18-r3 apk -libssl3 3.1.4-r1 apk +libssl3 3.1.4-r3 apk libstdc++ 12.2.1_git20220924-r10 apk libtasn1 4.19.0-r1 apk libunistring 1.1-r1 apk @@ -193,7 +193,7 @@ logrotate 3.21.0-r1 apk loopialib 0.2.0 python lxml 5.1.0 python lz4-libs 1.9.4-r4 apk -marshmallow 3.20.1 python +marshmallow 3.20.2 python memcached 1.6.21-r0 apk mock 5.1.0 python mpdecimal 2.5.1-r2 apk @@ -228,7 +228,7 @@ nginx-mod-stream-geoip2 1.24.0-r7 apk nginx-vim 1.24.0-r7 apk npth 1.6-r4 apk oniguruma 6.9.8-r1 apk -openssl 3.1.4-r1 apk +openssl 3.1.4-r3 apk p11-kit 0.24.1-r2 apk packaging 23.2 python parsedatetime 2.6 python @@ -292,7 +292,7 @@ pkb-client 1.2 python popt 1.19-r2 apk portalocker 2.8.2 python procps-ng 4.0.4-r0 apk -protobuf 4.25.1 python +protobuf 4.25.2 python publicsuffixlist 0.9.4 python pyOpenSSL 23.3.0 python pyRFC3339 1.1 python From e568785908799cd0f202bc5cf169d77e98d80800 Mon Sep 17 00:00:00 2001 From: LinuxServer-CI Date: Sat, 20 Jan 2024 03:20:49 +0000 Subject: [PATCH 42/42] Bot Updating Package Versions --- package_versions.txt | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/package_versions.txt b/package_versions.txt index 2d23842..0fa3ba8 100755 --- a/package_versions.txt +++ b/package_versions.txt @@ -9,7 +9,6 @@ alpine-baselayout 3.4.3-r1 apk alpine-baselayout-data 3.4.3-r1 apk alpine-keys 2.4-r1 apk alpine-release 3.18.5-r0 apk -anyio 4.2.0 python aom-libs 3.6.1-r0 apk apache2-utils 2.4.58-r0 apk apk-tools 2.14.0-r2 apk @@ -18,16 +17,16 @@ apr-util 1.6.3-r1 apk argon2-libs 20190702-r4 apk attrs 23.2.0 python azure-common 1.1.28 python -azure-core 1.29.6 python +azure-core 1.29.7 python azure-identity 1.15.0 python azure-mgmt-core 1.4.0 python azure-mgmt-dns 8.1.0 python bash 5.2.15-r5 apk -beautifulsoup4 4.12.2 python -boto3 1.34.18 python -botocore 1.34.18 python +beautifulsoup4 4.12.3 python +boto3 1.34.23 python +botocore 1.34.23 python brotli-libs 1.0.9-r14 apk -bs4 0.0.1 python +bs4 0.0.2 python busybox 1.36.1-r5 apk busybox-binsh 1.36.1-r5 apk c-client 2007f-r15 apk @@ -59,7 +58,7 @@ certbot-dns-google 2.8.0 python certbot-dns-google-domains 0.1.11 python certbot-dns-he 1.0.0 python certbot-dns-hetzner 2.0.0 python -certbot-dns-infomaniak 0.2.1 python +certbot-dns-infomaniak 0.2.2 python certbot-dns-inwx 2.2.0 python certbot-dns-ionos 2024.1.8 python certbot-dns-linode 2.8.0 python @@ -110,9 +109,9 @@ gnupg-gpgconf 2.4.3-r0 apk gnupg-keyboxd 2.4.3-r0 apk gnupg-utils 2.4.3-r0 apk gnupg-wks-client 2.4.3-r0 apk -gnutls 3.8.0-r2 apk +gnutls 3.8.3-r0 apk google-api-core 2.15.0 python -google-api-python-client 2.113.0 python +google-api-python-client 2.114.0 python google-auth 2.26.2 python google-auth-httplib2 0.2.0 python googleapis-common-protos 1.62.0 python @@ -140,7 +139,7 @@ libavif 0.11.1-r2 apk libbsd 0.11.7-r1 apk libbz2 1.0.8-r5 apk libc-utils 0.7.2-r5 apk -libcrypto3 3.1.4-r3 apk +libcrypto3 3.1.4-r4 apk libcurl 8.5.0-r0 apk libdav1d 1.2.1-r0 apk libedit 20221030.3.1-r1 apk @@ -172,7 +171,7 @@ libsasl 2.1.28-r4 apk libseccomp 2.5.4-r2 apk libsm 1.2.4-r1 apk libsodium 1.0.18-r3 apk -libssl3 3.1.4-r3 apk +libssl3 3.1.4-r4 apk libstdc++ 12.2.1_git20220924-r10 apk libtasn1 4.19.0-r1 apk libunistring 1.1-r1 apk @@ -228,7 +227,7 @@ nginx-mod-stream-geoip2 1.24.0-r7 apk nginx-vim 1.24.0-r7 apk npth 1.6-r4 apk oniguruma 6.9.8-r1 apk -openssl 3.1.4-r3 apk +openssl 3.1.4-r4 apk p11-kit 0.24.1-r2 apk packaging 23.2 python parsedatetime 2.6 python @@ -321,9 +320,8 @@ setuptools 65.5.0 python shadow 4.13-r4 apk six 1.16.0 python skalibs 2.13.1.1-r1 apk -sniffio 1.3.0 python soupsieve 2.5 python -sqlite-libs 3.41.2-r2 apk +sqlite-libs 3.41.2-r3 apk ssl_client 1.36.1-r5 apk tiff 4.5.1-r0 apk tldextract 5.1.1 python