Beta-testing phase for YunoHost 3.0 on Debian Stretch

fr
en

#1

Hello everyone !

We gathered some useful feedback from many people during the alpha, which allowed to fix many bugs ! Thanks to everyone who took the time to test it :kissing_heart: ! We are glad to announce that we are now moving to the beta-testing phase for YunoHost on Debian Stretch, a.k.a. YunoHost 3.0 :tada: !

As a regular user, it should be relatively okay to migrate an existing production instance as long as you are familiar with the command line and the system (in case you encounter some issues :sweat_smile:). It should also be relatively okay to setup a fresh production instance on Stretch, though some apps might be incompatible for now.

  • The migration procedure has now been integrated into the webadmin. It should also be smoother, though there might still be bugs and we need some larger-scale testing and feedback on this delicate operation.

  • In addition, we would like to grab the attention of app packagers / maintainers to test the compatibility of their apps on Stretch.

  • As part of the beta, we are also releasing new x86 ISO and Raspberry Pi images, which needs testing ! It is also planned to release pre-installed images for other ARM boards which are supported by Armbian (please tell us if you have a specific board for which you could perform tests).

Joining the beta-test : specific things to test


Fresh installation :sparkles:

You can test YunoHost 3.0 on a fresh, new server !

Steps:

bash <(wget -q -O- https://install.yunohost.org/stretch)

(If wget is not installed on the system, install it with apt-get install wget)

  • In both cases, proceed with the post-installation and use your server as you would usually do (from the CLI or webadmin).

What to test: test that you are okay with the way the image or the install script behaves. Test your favorite applications. Properly set up the DNS (c.f. this doc) and check that you get a good score on mail-tester.com.


Migrating an existing instance :arrow_up:

Alternatively, if you already have an existing instance, we propose a mechanism to automatically upgrade it to stretch. We are especially interested by feedbacks on migrating from the webadmin, or running this migration on ‘slow’ hardware (typically old Raspberry pi, or LIME1 boards used in the Internet Cube project), or on servers with many different apps.

Steps:

  • :warning: Please perform a backup of any critical data before proceeding. Even though it’s pretty unlikely that data gets wiped out, it’s always a good thing to do so … :warning:
  • Switch to the testing branch for YunoHost, by running this command :
bash <(wget -q -O- https://install.yunohost.org/switchToTesting)
  • You should now be able to run the migration using yunohost tools migrations migrate, or from the webadmin under Tools > Migrations.
  • If the migrations fails for some reason in the middle, please first try to re-run it.

What to test: After the migration is completed, you should check with lsb_release -a that you are indeed on Stretch, and with yunohost --version that you are on YunoHost 3.0. The service ‘fail2ban’ should be running (even though there was some “expected” errors about it during the upgrade). Your apps should also be accessible as they were before.


YunoHost 2.7.12 (minor stable release / version stable mineure)
[Contributors meeting] May 15th, 2018
#2

#3

J’ai acheté et reçu il y a 2 jours une Raspberry Pi 3 B+.
Je vais donc tester une “Fresh installation” de la 3.0.0 avec le système Raspbian Stretch…
Cool!


#4

Well, I flash image with Etcher, put SD in my Pi, power on…
installatino begin, and then
I need an account to connect and a password.

Where can I find these infos?


#5

Well, well, ok, I will thinking before posting…
sorry
my answer was
login : root, password : yunohost


#6

Bonsoir,

Suite à une fresh-install sur base Debian 9 minimal en VM

  • l’installation se passe sans problème ;
  • la post-installation se passe sans problème ;
  • la création du premier utilisateur se passe sans problème ;
  • l’installation de Nextcloud n’aboutie pas et le pacman ne s’arrête pas.

Je viens de passer sur le chat’ pour savoir où poser le log.

ppr


#7

Salut

Je suis un peu fou … j’ai testé sur mon serveur de prod !
Or j’ai une erreur, les logs sont disponible ici

Note concernant le contexte: le fichier spécifié à la fin (/etc/udev/rules.d/70-persistent-net.rules) contient ce qui suit. Mon serveur est un serveur loué au près de Kisumfi (filiale d’OVH), d’où le OVH installer


# rule added automagically by OVH installer - keep it unless you know what you are doing
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:00:00:00:00:00", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

(J’ai changé l’ipv6)

Quand je retente la migration, j’ai le message suivant en plus :

Warning: Running migration 3 migrate_to_stretch...
Warning: Starting migration to Stretch. The logs will be available in /tmp/migrate_to_stretch.log.
Warning: Patching the sources.lists ...
Get:1 http://debian.mirrors.ovh.net/debian jessie-updates InRelease [145 kB]
Hit:2 http://security.debian.org stretch/updates InRelease
Ign:3 http://debian.mirrors.ovh.net/debian stretch InRelease
Hit:4 http://forge.yunohost.org/debian stretch InRelease
Get:5 http://debian.mirrors.ovh.net/debian stretch Release [118 kB]
Hit:6 https://download.docker.com/linux/debian stretch InRelease
Fetched 263 kB in 2s (100 kB/s)
Reading package lists...
metronome was already not hold.
yunohost was already set on hold.
yunohost-admin was already set on hold.
moulinette was already set on hold.
ssowat was already set on hold.
nextcloud-ynh-deps was already set on hold.
wallabag2-ynh-deps was already set on hold.
fail2ban was already set on hold.
Warning: Starting main upgrade ...
Reading package lists...
Building dependency tree...
Reading state information...
Calculating upgrade...
The following packages were automatically installed and are no longer required:
  g++-4.9 libbind9-90 libdjvulibre-text libdjvulibre21 libdns100 libefivar0
  libgmime-2.6-0 libgpgme11 libilmbase6 libisc95 libisccc90 libisccfg90
  libjasper1 liblwres90 libntdb1 libopenexr6 libperl4-corelibs-perl libpth20
  libslp1 libstdc++-4.9-dev libuuid-perl libwmf0.2-7 python-cffi
  python-colorama python-distlib python-html5lib python-ndg-httpsclient
  python-ntdb python-ply python-pycparser python-support python-webencodings
  python3-jinja2 python3-markupsafe
Use 'apt autoremove' to remove them.
The following packages have been kept back:
  fail2ban imagemagick imagemagick-6.q16 imagemagick-common moulinette ssowat
  yunohost yunohost-admin
0 upgraded, 0 newly installed, 0 to remove and 8 not upgraded.
Error: Migration 3 migrate_to_stretch has failed with exception Something wrong happened during the main upgrade : system is still on Jessie !? To investigate the issue, please look at /tmp/migrate_to_stretch.log :s ..., aborting

Je tenterai bien de renommer ce fichier et puis de recommencer.

PS : là maintenant, j’ai un peu la flemme décrire ça en anglais mais si besoin je traduis.

PPS: @rom69 Il me semble que il y a un yunopasteqqch mais je ne trouve pas l’adresse exacte.
Tu peux utiliser les services de framasoft : https://framadrop.org/# ou https://framabin.org/ ou tout autre service dans le genre.


#8

Yo ! Merci pour le feedback (et pour le test)

C’est un peu chelou qu’il pense être encore sur jessie malgré le fait qu’il a mis a jour plein de packages … je comprends pas trop. Tu peux confirmer qu’un lsb_release -a dis encore que tu es sous jessie ?

Sinon je vois que le patch du sources.list ne s’est pas fait complètement car il y a encore un “jessie-updates” dedans (my bad). Est-ce que tu peux ouvrir les fichiers dans /etc/apt/sources.list et /etc/apt/sources.list.d/, fixer le bidule, et relancer la migration pour voir si ça résoud le problème éventuellement ?


#9

Je suis bien en Debian 9:

No LSB modules are available.
Distributor ID:	Debian
Description:	Debian GNU/Linux 9.4 (stretch)
Release:	8
Codename:	stretch

Je tente de fixer le bidule ^^

La maj et relancée. merde, ça plante au même endroit.


#10

les logs:

cp: '/etc/udev/rules.d/70-persistent-net.rules' and '/etc/udev/rules.d/70-persistent-net.rules' are the same file
cp: '/etc/udev/rules.d/70-persistent-net.rules' and '/etc/udev/rules.d/70-persistent-net.rules' are the same file
/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.9.0-6-amd64
Found initrd image: /boot/initrd.img-4.9.0-6-amd64
Found linux image: /boot/vmlinuz-3.16.0-6-amd64
Found initrd image: /boot/initrd.img-3.16.0-6-amd64
Found linux image: /boot/vmlinuz-3.16.0-5-amd64
Found initrd image: /boot/initrd.img-3.16.0-5-amd64
done
Setting up linux-headers-4.9.0-6-amd64 (4.9.88-1+deb9u1) ...
Error: Migration 3 migrate_to_stretch has failed with exception Something wrong happened during the main upgrade : system is still on Jessie !? To investigate the issue, please look at /tmp/migrate_to_stretch.log :s ..., aborting


#11

Si tu fais un :

python -c "import platform; print(platform.dist())"

ça raconte quoi ?


#12

ha …

('Debian', '8', '')


#13

Et un

python -c "import platform; print(platform.linux_distribution())"

? (Je viens de voir que plaform.dist() est dépréciée :sweat_smile:)


#14

idem, je capte pas là, pour python on est sous deb 8 alors que mon ls release donne Deb9 … wtf …

A noté que mes apps, Shaarli, Netcloud, Wallabag, Gog, dokuwiki fonctionnent.


#15

Ok j’ai l’impression que python se base sur la commande uname. Est-ce que tu peux confirmer que uname -a raconte que tu es toujours sous Debian 8 ?

Je pense qu’il y a deux workaround possible :

  • tenter de rebooter la machine : c’est la plus risquée et celle qui m’intéresse le moins, mais la plus facile à mettre en oeuvre :wink:
  • tenter de bricoler le code pour bypasser ça et voir si la suite marche …

L’avenir de YunoHost étant désormais entre tes mains, je sais que tu vas choisir la deuxième solution :wink:

Il faut donc ouvrir /usr/lib/moulinette/yunohost/data_migrations/0003_migrate_to_stretch.py et aller près de la ligne 83 avec un truc marqué def debian_major_version(self):

Il faut ensuite le modifier pour que cela ressemble à :

    def debian_major_version(self):
        return 9
        # return int(platform.dist()[1][0])

(en gros, rajouter la ligne return 9 et commenter la ligne existante. Attention aux espaces (l’indentation toussa), il faut qu’il y ait ‘4 espaces’ de différences entre l’alignement du def et du return :stuck_out_tongue_winking_eye: (au pire il râlera juste et tu pourras modifier)

Ensuite, il suffit de relancer la migration


#17

Obligatory XKCD : https://imgs.xkcd.com/comics/random_number.png :smile:

Super merci :+1:


#18

:smile: c’est exactement ca !

bref, la migration continue mais il y a un petit pb avec fail2ban visiblement.

Created symlink /etc/systemd/system/multi-user.target.wants/fail2ban.service → /lib/systemd/system/fail2ban.service.
Job for fail2ban.service failed because a timeout was exceeded.
See "systemctl status fail2ban.service" and "journalctl -xe" for details.
invoke-rc.d: initscript fail2ban, action "start" failed.
● fail2ban.service - Fail2Ban Service
   Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: timeout) since Wed 2018-05-09 01:00:20 CEST; 29ms ago
     Docs: man:fail2ban(1)
  Process: 11299 ExecStart=/usr/bin/fail2ban-client -x start (code=exited, status=1/FAILURE)
      CPU: 1min 30.294s
   CGroup: /system.slice/fail2ban.service
           └─32621 /usr/bin/python /usr/bin/fail2ban-server -b -s /var/run/fa…id

May 09 01:00:20 tata.fr systemd[1]: Failed to start Fail2Ban Service.
May 09 01:00:20 tata.fr systemd[1]: fail2ban.service: Unit entered fai…te.
May 09 01:00:20 tata.fr systemd[1]: fail2ban.service: Failed with resu…t'.
Hint: Some lines were ellipsized, use -l to show in full.
dpkg: error processing package fail2ban (--configure):
 subprocess installed post-installation script returned error exit status 1
Setting up python3-systemd (233-1) ...
Processing triggers for systemd (232-25+deb9u2) ...
Processing triggers for man-db (2.7.6.1-2) ...
[...]

Je laisse finir la migration pour l’instant.


#19

C’est “normal”, il faudra juste vérifier qu’il tourne bien après la migration :wink:


#20

Alors… La migration semble être fini mais le terminal ne ma toujours pas rendu la main depuis 3-4 minutes … :frowning:


[...]
Unpacking yunohost-admin (3.0.0~beta1) over (2.7.13) ...
Setting up php7.0-mysql (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/mysqlnd.ini with new version

Creating config file /etc/php/7.0/mods-available/mysqli.ini with new version

Creating config file /etc/php/7.0/mods-available/pdo_mysql.ini with new version
Setting up moulinette (3.0.0~beta1) ...
Setting up php7.0-ldap (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/ldap.ini with new version
Setting up php7.0-gd (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/gd.ini with new version
Setting up php7.0-mcrypt (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/mcrypt.ini with new version
Setting up php7.0-curl (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/curl.ini with new version
Setting up php7.0-fpm (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/fpm/php.ini with new version
php_invoke: Enable module iconv for fpm sapi
php_invoke: Enable module wddx for fpm sapi
php_invoke: Enable module posix for fpm sapi
php_invoke: Enable module phar for fpm sapi
php_invoke: Enable module sysvsem for fpm sapi
php_invoke: Enable module fileinfo for fpm sapi
php_invoke: Enable module ctype for fpm sapi
php_invoke: Enable module xsl for fpm sapi
php_invoke: Enable module dom for fpm sapi
php_invoke: Enable module sysvmsg for fpm sapi
php_invoke: Enable module xmlwriter for fpm sapi
php_invoke: Enable module sysvshm for fpm sapi
php_invoke: Enable module xml for fpm sapi
php_invoke: Enable module sockets for fpm sapi
php_invoke: Enable module gettext for fpm sapi
php_invoke: Enable module calendar for fpm sapi
php_invoke: Enable module pdo for fpm sapi
php_invoke: Enable module tokenizer for fpm sapi
php_invoke: Enable module opcache for fpm sapi
php_invoke: Enable module simplexml for fpm sapi
php_invoke: Enable module readline for fpm sapi
php_invoke: Enable module xmlreader for fpm sapi
php_invoke: Enable module ftp for fpm sapi
php_invoke: Enable module mbstring for fpm sapi
php_invoke: Enable module json for fpm sapi
php_invoke: Enable module shmop for fpm sapi
php_invoke: Enable module exif for fpm sapi
Created symlink /etc/systemd/system/multi-user.target.wants/php7.0-fpm.service → /lib/systemd/system/php7.0-fpm.service.
Setting up libzip4:amd64 (1.1.2-1.1+b1) ...
Setting up php7.0-zip (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/zip.ini with new version
Setting up php-ldap (1:7.0+49) ...
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Setting up php-fpm (1:7.0+49) ...
Setting up ssowat (3.0.0~beta1) ...
Processing triggers for systemd (232-25+deb9u2) ...
Setting up unscd (0.53-1+yunohost) ...
Installing new version of config file /etc/nscd.conf ...
Adding group `unscd' (GID 129) ...
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
Done.
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
cannot connect to /var/run/nscd/socket
Created symlink /etc/systemd/system/multi-user.target.wants/unscd.service → /lib/systemd/system/unscd.service.
Processing triggers for man-db (2.7.6.1-2) ...
Setting up php-mcrypt (1:7.0+49) ...
Setting up php-gd (1:7.0+49) ...
Setting up php7.0-intl (7.0.27-0+deb9u1) ...

Creating config file /etc/php/7.0/mods-available/intl.ini with new version
Setting up php-intl (1:7.0+49) ...
Setting up php-mysql (1:7.0+49) ...
Setting up yunohost (3.0.0~beta1.2) ...
Regenerating configuration, this might take a while...
Success! The configuration has been updated for service 'postfix'
Success! The configuration has been updated for service 'rspamd'
Warning: The configuration file '/etc/nginx/conf.d/charbowicz.fr.conf' has been manually modified and will not be updated
Success! The configuration has been updated for service 'dnsmasq'
Warning: The configuration file '/etc/fail2ban/jail.conf' has been manually modified and will not be updated
Success! The configuration has been updated for service 'dovecot'
Launching migrations..
Warning: Running migration 4 php5_to_php7_pools...
Warning: Running migration 5 postgresql_9p4_to_9p6...
Warning: Postgresql was not installed on your system. Nothing to do!
Restarting YunoHost firewall...
Setting up php-curl (1:7.0+49) ...
Setting up php-zip (1:7.0+49) ...
Setting up yunohost-admin (3.0.0~beta1) ...
Processing triggers for php7.0-fpm (7.0.27-0+deb9u1) ...
Processing triggers for systemd (232-25+deb9u2) ...
Done!

Ctrl-C ? Or not Ctrl-C ? telle est la question !


#21

Juste “Entrée” devrait faire l’affaire :stuck_out_tongue: