Fog Installer - Distro check

  • I have a VM environment at home with clean snapshots for various Linux distributions that I use for testing. I’ll be testing the fog installer on various distributions for each of the release candidates, and for updated and newer distributions in the future to see if it installs or not according to steps in the Wiki, and if not the steps I took to correct it.

    Each of these tests will be from a clean snapshot that is fully updated with all standard updates. All tests use the command ./ -y to use all defaults and install unattended.

    Installation tests have been automated. The daily results & logs are available to the public, see the link in my signature.

  • I’ve removed Arch Linux from the automated tests due to complications within Terraform. These issues were sort of the final straw in my Arch testing efforts.

    The Arch community doesn’t supply an official AWS AMI. I had been relying on a privately built AMI that isn’t 1:1 with a manual Arch installation. For perhaps the last half year, my Arch tests were failing but the installer worked if you tested it against a manually setup Arch installation. This can only be due to differences between the AMI I was using and a manual installation.

    The Arch community is vehement about only providing help if you follow their installation instructions on their wiki exactly. Because of this, when I asked for some help sorting out the issues, they were not willing to help.

    Until someone with some Arch prowess can put some time into helping with this, Arch Linux will not be included in the automated tests.

  • @Sebastian-Roth Debian 9’s log appears here: /var/log/php7.0-fpm.log
    I’m going to have to match it like /var/log/php*-fpm.log and hope that does it.

  • @Tom-Elliott Can you call me please?

  • @Sebastian-Roth said in Fog Installer - Distro check:

    Can you possibly add another log file? Quite often those errors will only show up in /var/log/php-fpm/www-error.log… possibly also /var/log/php-fpm/error.log

    I’ll add these logs to the new system. I don’t want to break the old system as it’s working right now and all the bash it uses is somewhat complicated.

  • Moderator

    @Sebastian-Roth said in Fog Installer - Distro check:

    CentOS 7 can go with PHP 7.0 using an official extra repo (see here),

    Ok, not a good way as package names differ from the other ones, e.g. rh-php71-php-fpm - horrible to maintain in the scripts. That said I think we need to add REMI repos at least for CentOS/RHEL 7! Adding those for Fedora might cause issues as we see that sometimes REMI is newer where php-json does not exist and the other day official Fedora repos might have newer PHP versions where php-json needs to be installed. So I tend to remove REMI repo addition at least from new Fedora installs (maybe even remove the repo on upgrades) and add php-json to the package list because Fedora 29, 28 and even 27 have PHP 7.x already.

    @Wayne-Workman said:

    I can do a quick manual run today.

    Yeah would be great if it’s not too much of work for you.

  • @Sebastian-Roth I can do a quick manual run today.

  • Moderator

    @Wayne-Workman Great work. I am looking forward to see if FOG will install on RHEL 7 at all right now.

  • @Sebastian-Roth said in Fog Installer - Distro check:

    I guess there are people out there with a proper license using FOG. But we can’t actually test our installer as it’s impossible to even get a package (version) listing online.

    Once I’ve completed moving the install tests to AWS, we will have RHEL 7 in the tests. I’ve made a lot of progress. I have Terraform scripts that do a complete build-out of everything necessary for the tests to start running in an AWS account. This includes new Python scripts to replace what the old BASH scripts do at my house (interacting with the AWS API instead of interacting with libvirtd, as well as running the FOG installation tests). I’m still actively working on this, but it’s getting close to functional.

  • Moderator

    @Wayne-Workman I’ve done a manual test install and from what it looks like to me the issue is that php-json package is not being installed. Well that’s just the short story. I think (@Tom-Elliott might know more about this) that we used PHP from the REMI repos. But as Fedora 29 comes with PHP 7.2.12 in the official repositories (which is great) those are used for installation instead of the REMI PHP packages (seem to be on 7.2.12 as well). REMI had the JSON functions provided by a different package (maybe php-pecl-json*) which was installed via dependency I suppose. Now with Fedora 29 we need to add php-json explicitly to the package list.

    I suppose this would cause trouble for other RedHat based systems so I am not sure of the best way to solve this. I’m in hope that we can remove external repositories form the installer altogether soon!! Debian stable is on PHP 7.0, CentOS 7 can go with PHP 7.0 using an official extra repo (see here), Ubuntu is on PHP 7.2, …!? What do you think?

    Edit: As well I am wondering about RedHat installs. I guess there are people out there with a proper license using FOG. But we can’t actually test our installer as it’s impossible to even get a package (version) listing online. So if we go for PHP 7.x without external repos we wouldn’t care about RedHat much I suppose.

  • @Tom-Elliott Just checked, It is in permissive mode.

  • @Wayne-Workman don’t forget to check selinux

  • Fedora29 is still having issues, I looked at it this morning, the installer is failing on “Updating Database”. Here’s the log:

    Also - I’m going to remove Fedora 25, 26, and 27 from the tests. Patches aren’t released for some of those anymore, nobody should be freshly installing fog on those.

  • Seems Fedora29 is having some problem related to apache.
    These are in the logs:

    [Thu Nov 29 05:20:30.553661 2018] [proxy_fcgi:error] [pid 8980:tid 140162887972608] [client] AH01067: Failed to read FastCGI header
    [Thu Nov 29 05:20:30.553706 2018] [proxy_fcgi:error] [pid 8980:tid 140162887972608] (104)Connection reset by peer: [client] AH01075: Error dispatching request to : 

    Also - these logs and the dashboard are in AWS s3 now. The bash scripts that makes this stuff is adding an extra / somewhere and s3 does not handle this like Apache. So when you click the links and it says “page not found” you just need to remove the extra slash.

  • @Sebastian-Roth Yesterday’s issues were just a blip. All green today.

  • Moderator

    @Wayne-Workman About Fedora 29: I do see the following message over and over again:

    Remi's RPM repository - Fedora 29 - x86_64       47  B/s | 2.3 kB     00:49    
    Failed to synchronize cache for repo 'remi', ignoring this repo.

    Not exactly sure if that is causing the broken installation.

    Now Ubuntu 18 on the working branch. I really have no idea what is going wrong here. It seems to stop right in the middle of an apt… call. From the last lines of log output it looks like it. Possibly your test install VM got interrupted!!!

  • So as expected, the remi repo removed Fedora 29 beta, and added Fedora 29 release. Dev-branch and master are passing the installation tests, but working is failing which seems strange. Ubuntu 18 on working branch also failed - this test was run immediately after the Fedora 29 working test, so maybe it’s something with my vm host or internet at that time. It’s normal for this test system to have the occasional blip (it is what it is) so we’ll see what the tests say tomorrow.

  • So the issue with Fedora 29 is the Remi repo, they don’t seem to be caught up with the recent release. Their website still lists the beta version. I tried manually installing the remi repo for fedora 29 beta, doesn’t work. I don’t think there’s anything we can do until Remi Repo gets their end fixed. Most likely, when it’s fixed, everything will just start working because it appears the fog installer is creating the correct commands.

  • I’ve removed Fedora29-Beta, and setup a Fedora29 minimal server today, from the official release ISO. I’m pretty sure I remembered to do everything this time (like firewalld and selinux). We’ll see how it goes tomorrow morning.

  • I’ve added Fedora 29 Beta to the daily installation tests. I’ll remove it and add the official release as soon as that’s available. I’ve also updated all of my ‘clean’ snapshots with the latest patches.