The community has been complaining that Aegir doesn't install on Ubuntu 20.04. What's actually going on is that it does, but only in the development branches. We need to cut a new 3.20 release (update tags and create a new Debian package) so that Aegir stable supports these OS versions.

We need to prevent users from running into issues like #3145881: User creation has changed in MySQL 8.0, which are actually fixed in the general case.

See #3087029: [meta] Aegir 3.19.x release for release planning.

Note: My company maintains some unofficial Ansible roles for Aegir 3 (aegir, aegir-policy, aegir-minion, aegir-skynet), which we'd like to turn into a Collection. We try keep these up-to-date for installations we maintain, and (at the time of this writing) they're more up-to-date than the official Debian package because the support Ubuntu 20.04. They could use more love, but our focus lately has been on Aegir 5 development, not Aegir 3.

Comments

colan created an issue. See original summary.

kienan’s picture

Assigned: Unassigned » kienan
kienan’s picture

Started working on this today.

* Fixed the mirror between git.drupalcode.org and gitlab.com.
* Starting with the drupal-org.make in hostmaster, I've updated the ctools and views modules.
* Draft release notes: https://gitlab.com/aegir/documentation/-/merge_requests/12

colan’s picture

helmo’s picture

Thanks @kienan

3.200~beta1 installed OK last night from the unstable repo.

I agree that moving to the testing repo would be OK.

Unfortunately the tagged version is superseded by a dev version '3.200~beta1+1770950057.76f3fc7'
So reprepro copy testing unstable would pull that "less then optimal" version number in.

If no other issues arise I think we can just tag 3.20.0 and follow the normal process to get it to testing/stable.

For reference the error that you get when trying to upgrade a Debian 9 server which had MariaDB 10.1.

Changed permissions of /var/aegir/.drush/hm.alias.drushrc.php to 440    [success]
Deploying site from /var/aegir/backups/s***-20211115.213116.tar.bz2    [success]
Failed to alter db_user s***_0                                          [error]
Failed to alter db_user s***_0                                          [error]
Could not create database user s*_0                               [error]
Granted privileges to <em class="placeholder">s*_0</em>@<em class="placeholder">localhost</em> on <em class="placeholder">s*_0</em>    [success]
Created s*_0 database                                            [success]
Failed to revoke user privileges                               [warning]
helmo’s picture

To restore a failed upgrade attempt you can download the previous deb packages (if not still present in /var/cache/apt/archives/) and install them with dpkg -i *.deb

millenniumtree’s picture

If I may relate my latest 14-hour challenge of getting 3.192 running on Ubuntu 20.04. Here's a short list of issues I encountered - hopefully some of these will be addressed in the update. I'd especially love to see better detection and guidance of specific misconfigurations.

The .deb packages kept overwriting my Drush 8.4.8 with 8.1.16. If you take write permission away from drush, the installer fails, so I was never able to get the installer to run all the way through. There were some processes below that were fixed by re-installing 8.4.8, so that's absolutely an issue.

Possibly early on in my testing, my mail handler was incorrectly set, but the installer never warned me about that, just eventually failed with a "Could not find the alias @hostmaster". I know this is a very long-standing issue - I just would like better output to lead you in the right direction.

Unresolvable FQDN also leads to the dead-end "Could not find the alias @hostmaster". Detection and guidance can be improved.

My nginx user was set differently than the ownership of /run/php/php*-fpm.sock - detection and guidance.

I hadn't set an aegir user password, so sudo processes would fail (silently, no warning, never asking me for a password even, in 8.1.16). Manually installing the hostmaster after the package had failed with 8.4.8 in place, and 'drush hostmaster-install' finally got it to ask for a sudo password, that let me advance. Probably something up with the way 8.1.16 uses sudo That Ubuntu 20.04 doesn't like.

It used PHP 8.0 instead of my preferred 7.4. In addition to "update-alternatives --config php", I now discovered you can "update-alternatives --config php-fpm.sock", which points /run/php/php-fpm.sock to your chosen socket file. It would be really awesome if the installer led you through this process, and then just pointed the configs to /run/php/php-fpm.sock, so you can switch PHP versions at any time in the future.

There was this warning that didn't stop the script, but is something to note:
sudo: /usr/local/bin/fix-drupal-platform-ownership.sh: command not found [warning]

It then detected my web server as apache instead of nginx (likely because it never made it to installing the nginx support module in Drupal), so generated an apache vhost.d instead of an nginx one.

I've been using aegir for _many_ years, and this was easily the toughest install to date. I hope you're working on an amazing 3.200 release!

colan’s picture

This is great feedback: Whatever's not fixed should be added to the release notes.

FWIW, #3166952: update drush version in debian package fixes the Drush version issue, and #3209815: Check that socket file actually exists when determining FPM mode might fix the socket vs. port detection, but I'm not sure it supports PHP 8 yet. (Feel free to look into it, but I thought it should be PHP 7.4 on Ubuntu 20.04.)

For the other stuff, please create tickets where they don't exist yet, and we can add those to the release notes as well.

seamus_lee’s picture

Hi There

Is there any changes on having this built, I have run into the MySQL8 user issue and we cannot sadly for our particular use case get around using MySQL 8 or its equivalents.

Regards

Seamus

colan’s picture

Try pinging @kienankt on Matrix to see where he's at with the release.

fenstrat’s picture

@kienan any update on this?

Chris Maissan’s picture

Anything I could do to help? Only 6 months left on Ubuntu 18.04...

bgm’s picture

See #3317637: Instructions to install Aegir from git since Debian PGP key has expired - Debian packages are no longer supported for discussion about moving to a git-based installation, instead of Debian packages.