Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mail version 1.4 #6895

Closed
19 tasks done
DavidePrincipi opened this issue Mar 14, 2024 · 25 comments
Closed
19 tasks done

Mail version 1.4 #6895

DavidePrincipi opened this issue Mar 14, 2024 · 25 comments
Assignees
Labels
verified All test cases were verified successfully

Comments

@DavidePrincipi
Copy link
Member

DavidePrincipi commented Mar 14, 2024

Milestone goal is implementing advanced relay settings:

See also

@nethbot
Copy link
Member

nethbot commented Apr 12, 2024

in 7.9.2009/testing:

  • nethserver-ns8-migration-1.0.9-1.2.g287b28e.ns7.x86_64.rpm x86_64

@DavidePrincipi
Copy link
Member Author

Initial testing releases (still missing migration procedures)

  • core 2.8.0-dev.1
  • mail 1.4.0-dev.1

@DavidePrincipi
Copy link
Member Author

DavidePrincipi commented Apr 17, 2024

New feature of Core:

  • The Settings > Email notifications page can now switch between manual / Mail configuration

New features of Mail:

  • The Relay page (add/edit/remove a relay rule), the default/wildcard relay host (aka "smarthost") rule
  • Added support to relay hosts with SMTPS (e.g. TLS-wrap on port 465)
  • The Settings > Relay card (IP-based relay authorization, enforce sender/login match switch)

Test case 1A

  1. Install a new cluster with Core from testing
  2. In the Cluster Status page, the "Email notifications" card is present: click the link to reach the settings card
  3. As alternative, the usual way: Settings > Email notifications
  4. The "Email notifications" settings card allows to manually configure a SMTP server as mail gateway for apps, as usually. Check there are no regressions here.
  5. If Mail mode is selected, a message is displayed: proceed to case 2.

Test case 1B

Continue from case 1A,

  1. Install a User Domain and configure Mail
  2. Check mail1 can be selected from Email notifications settings card
  3. Check the new Mail features work as expected: the behavior must be the same of NS7
    • relay rules with/without authentication
    • relay rule with TLS-wrap relay host
    • relay rule with STARTTLS relay host
    • default rule (smarthost)
    • IP-based authorization allow list: save/check/remove items
    • sender/login match policy
    • disabled and deleted rules are not enforced any more

Note: check both English and Italian translations.

Test case 2

Install a new cluster with Core 2.7.0 and Mail 1.3.6. Test the upgrade path.

Test case 3

Migration from NS7 including new features: still on development see it in next comments.

Test case 4

Piler mail archive module. See comment below.

@DavidePrincipi DavidePrincipi added the testing Packages are available from testing repositories label Apr 17, 2024
@krejcar25
Copy link

krejcar25 commented Apr 18, 2024

Initial testing releases (still missing migration procedures)

  • core 2.8.0-dev.1
  • mail 1.4.0-dev.1

Hi, is there a way to manually apply the migrations at this point? I am seeing errors like below in mail app log.

2024-04-18T13:59:07+02:00 [1:mail1:postfix/trivial-rewrite] fatal: dict_sqlite_lookup: /etc/postfix/relaydest.cf: SQL prepare failed: no such table: relayrules?

Sent mail is being rejected due to sender/login mismatch while [email protected] is used as sender, logging in as user.

@DavidePrincipi
Copy link
Member Author

Thanks for pointing it out. To manually create the missing table run this command.

runagent -m mail1 podman exec -i postfix sqlite3 -echo /srv/pcdb.sqlite '.read /etc/postfix/pcdb-relayrules.sql'

@krejcar25
Copy link

Thank you so much, that worked perfectly. I can now send mail again.

@DavidePrincipi
Copy link
Member Author

DavidePrincipi commented Apr 19, 2024

In Mail 1.4.0-dev.2

@DavidePrincipi
Copy link
Member Author

DavidePrincipi commented May 10, 2024

Test case 4

  • Case2 is VERIFIED BUT...
    The Piler service is not restarted after pressing the "Save" button. The UI remains in reload state indefinitely. In logs:

    Termination signal seems not handled by the container:

     time="2024-05-10T16:17:58Z" level=warning msg="StopSignal SIGTERM failed to stop container piler-app in 10 seconds, resorting to SIGKILL"
    

    MariaDB wants to access a file without SELinux permissions

     May 10 16:18:01 rl30.dp.nethserver.net mariadb-app[680728]: 2024-05-10 16:18:01+00:00 [Warn] [Entrypoint]: /sys/fs/cgroup///memory.pressure not writable, functionality unavailable to MariaDB
    

    Don't know how to workaround this on MariaDB side, the container startup fails and the module enters an infinite crashloop.

     ausearch -a 182497 | audit2why                                                                          
     type=AVC msg=audit(1715358840.083:182497): avc:  denied  { write } for  pid=686389 comm="docker-entrypoi" name="memory.pressure" dev="cgroup2" ino=80378 scontext=system_u:system_r:container_t:s0:c119,c654 tcontext=unconfined_u:object_r:cgroup_t:s0 tclass=file permissive=0 ...
    

    On the SELinux side, this fixes the crashloop (well, maybe...):

     # setsebool -P container_manage_cgroup 1                                                                  
    

    ⚠️ The validation error text is hidden by the drop-down selector when it receives focus in response to the backend validation error.

    Image

@DavidePrincipi
Copy link
Member Author

DavidePrincipi commented May 10, 2024

I also failed to save a retention rule. When I press the Apply button of route /index.php?route=policy/retention:

a bug to upstream is done : jsuto/piler#43

Image

stephdl added a commit to NethServer/ns8-piler that referenced this issue May 13, 2024
stephdl added a commit to NethServer/ns8-piler that referenced this issue May 14, 2024
stephdl added a commit to NethServer/ns8-piler that referenced this issue May 14, 2024
stephdl added a commit to NethServer/ns8-piler that referenced this issue May 14, 2024
@lucagasparini
Copy link

Installed:

  • core 2.8.0-dev.8
  • mail 1.4.0-dev.5

Test case 1A + 1B: VERIFIED

Installed and update:

  • core 2.7.0 > update 2.8.0-dev.8
  • mail 1.3.6 > update 1.4.0-dev.5

Test case 2: VERIFIED

@nrauso
Copy link

nrauso commented May 14, 2024

test case 3: VERIFIED

migration worked as expected in all the considered scenarios.

stephdl added a commit to NethServer/ns8-piler that referenced this issue May 14, 2024
Add queuedir configuration for purging emails cron job NethServer/dev#6895
@DavidePrincipi
Copy link
Member Author

DavidePrincipi commented May 15, 2024

Released Mail https://github.com/NethServer/ns8-mail/releases/tag/1.4.0
Released Core https://github.com/NethServer/ns8-core/releases/tag/2.8.0

Piler is still not released, but it does not block other components.

@nethbot
Copy link
Member

nethbot commented May 15, 2024

in 7.9.2009/updates:

  • nethserver-ns8-migration-1.0.10-1.ns7.x86_64.rpm x86_64

stephdl added a commit to NethServer/ns8-piler that referenced this issue May 17, 2024
Add inline notifications for one-time installation and mail server configuration status NethServer/dev#6895
stephdl added a commit to NethServer/ns8-piler that referenced this issue May 17, 2024
@stephdl
Copy link

stephdl commented May 17, 2024

new version to test of piler 1.0.0.-dev.5

#6895 (comment)

DavidePrincipi pushed a commit to NethServer/ns8-piler that referenced this issue May 31, 2024
@DavidePrincipi DavidePrincipi added verified All test cases were verified successfully and removed testing Packages are available from testing repositories labels May 31, 2024
@DavidePrincipi
Copy link
Member Author

Test case 4: VERIFIED

Install, clone, backup, restore of Piler 1.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
verified All test cases were verified successfully
Projects
Archived in project
Development

No branches or pull requests

7 participants