Merge branch 'schleuder4' into 'main'

Update CI pipeline to test against Schleuder 4

See merge request s3lph/multischleuder!4
This commit is contained in:
s3lph 2023-07-04 01:28:50 +00:00
commit 16c66fc950
2 changed files with 27 additions and 5 deletions

View file

@ -1,5 +1,5 @@
---
image: python:3.9-bullseye
image: python:3.11-bookworm
stages:
- test
@ -51,7 +51,8 @@ schleuder:
script:
- debconf-set-selections <<<"postfix postfix/mailname string example.org"
- debconf-set-selections <<<"postfix postfix/main_mailer_type string 'Local only'"
- apt update; apt install --yes schleuder schleuder-cli postfix
- apt update; apt install --yes schleuder schleuder-cli postfix patch
- patch -d/ -p1 < test/01-ruby3cgi.patch # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1040257
- /usr/lib/postfix/configure-instance.sh -
- echo "virtual_alias_maps = static:root" >> /etc/postfix/main.cf
- /usr/sbin/postmulti -i - -p start
@ -123,9 +124,9 @@ build_debian:
- python3 setup.py egg_info install --root=package/debian/multischleuder/ --prefix=/usr --optimize=1
- cd package/debian
- sed -re "s/__MULTISCHLEUDER_VERSION__/${MULTISCHLEUDER_VERSION}/g" -i multischleuder/DEBIAN/control
- mkdir -p multischleuder/usr/lib/python3/dist-packages/
- rsync -a multischleuder/usr/lib/python3.9/site-packages/ multischleuder/usr/lib/python3/dist-packages/
- rm -rf multischleuder/usr/lib/python3.9/site-packages
- mkdir -p multischleuder/usr/lib/python3
- mv multischleuder/usr/lib/python3.11/site-packages multischleuder/usr/lib/python3/dist-packages
- rm -rf multischleuder/usr/lib/python3.11
- find multischleuder/usr/lib/python3/dist-packages -name __pycache__ -exec rm -r {} \; 2>/dev/null || true
- find multischleuder/usr/lib/python3/dist-packages -name '*.pyc' -exec rm {} \;
- find multischleuder/usr/lib/python3/dist-packages -name '*.pyo' -exec rm {} \;

21
test/01-ruby3cgi.patch Normal file
View file

@ -0,0 +1,21 @@
--- a/usr/lib/ruby/vendor_ruby/schleuder-cli.rb 2023-07-04 01:00:03.032907109 +0000
+++ b/usr/lib/ruby/vendor_ruby/schleuder-cli.rb 2023-07-04 00:59:05.299382428 +0000
@@ -3,6 +3,7 @@
require 'pathname'
require 'net/https'
require 'uri'
+require 'cgi'
require 'singleton'
require 'yaml'
require 'base64'
--- a/usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb 2023-07-04 00:59:55.332884367 +0000
+++ b/usr/lib/ruby/vendor_ruby/schleuder-cli/helper.rb 2023-07-04 00:59:20.859439658 +0000
@@ -19,7 +19,7 @@
u = "/#{args.join('/')}.json"
if params
paramstring = params.map do |k,v|
- "#{URI.escape(k.to_s)}=#{URI.escape(v.to_s)}"
+ "#{CGI.escape(k.to_s)}=#{CGI.escape(v.to_s)}"
end.join('&')
u << "?#{paramstring}"
end