Failed upgrade to 2112291188 (resolved with 1203 update)

Hey so starting this from another thread, and just sent the logs to support so they should be there. Seems that I get an error on updating.

Screenshot 2022-01-03 at 11-00-20 Syncloud

Screenshot 2022-01-03 at 11-00-20 Syncloud

The above creates an error and fails to upgrade. The failure results in my ssl is not renewed so all clients connecting throw errors and unable to sync.

Could you run snap refresh platform and show the output?

Yep… here is the output of that command

root@syncloud:~# snap refresh platform
Download snap "platform" (2112291188) from channel "stable"                                          18% 12.0MB/s 12.3error: cannot perform the following tasks:
- Run post-refresh hook of "platform" snap if present (run hook "post-refresh": 
-----
2022-01-03 13:35:26,663 - path_checker - INFO - real link path: /opt/disk/external
2022-01-03 13:35:26,664 - path_checker - INFO - external disk path: /opt/disk/external
2022-01-03 13:35:26,664 - path_checker - INFO - link exists: True
cert/generator.go:80	certificate info	{"category": "certificate", "valid days": -5, "real": true}
2022/01/03 13:35:27 [INFO] acme: Registering account for mv@cyberunions.org
2022/01/03 13:35:27 [INFO] [dialectica.red, *.dialectica.red] acme: Obtaining bundled SAN certificate
2022/01/03 13:35:28 [INFO] [*.dialectica.red] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/64707442690
2022/01/03 13:35:28 [INFO] [dialectica.red] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/64707442700
2022/01/03 13:35:28 [INFO] [*.dialectica.red] acme: Could not find solver for: dns-01
2022/01/03 13:35:28 [INFO] [dialectica.red] acme: Could not find solver for: tls-alpn-01
2022/01/03 13:35:28 [INFO] [dialectica.red] acme: use http-01 solver
2022/01/03 13:35:28 [INFO] [dialectica.red] acme: Trying to solve HTTP-01
2022/01/03 13:35:28 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/64707442690
2022/01/03 13:35:28 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/64707442700
cert/generator.go:66	unable to generate certificate: error: one or more domains had a problem:
[*.dialectica.red] [*.dialectica.red] acme: could not determine solvers
[dialectica.red] [dialectica.red] acme: error presenting token: open /var/snap/platform/current/certbot/www/.well-known/acme-challenge/pBIi4eMedZngvG5D1RDgZ8PXLdff0mVg-8GpXB9hVRg: no such file or directory
	{"category": "certificate"}
cert/fake.go:50	generating fake certificate	{"category": "certificate"}
2022/01/03 13:35:28 reloading platform.nginx-public
2022/01/03 13:35:28 systemctl output: Job for snap.platform.nginx-public.service failed. See 'systemctl status snap.platform.nginx-public.service' and 'journalctl -xn' for details.
2022/01/03 13:35:28 exit status 1
Traceback (most recent call last):
  File "/snap/platform/2112291188/meta/hooks/post-refresh", line 5, in <module>
    PlatformInstaller().post_refresh()
  File "/snap/platform/current/python/usr/local/lib/python3.8/site-packages/syncloud_platform-2112291188-py3.8.egg/syncloud_platform/installer.py", line 77, in post_refresh
  File "/snap/platform/current/python/usr/local/lib/python3.8/site-packages/syncloud_platform-2112291188-py3.8.egg/syncloud_platform/installer.py", line 47, in init_services
  File "/snap/platform/current/python/usr/local/lib/python3.8/subprocess.py", line 415, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/snap/platform/current/python/usr/local/lib/python3.8/subprocess.py", line 516, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '/snap/platform/current/bin/cli cert' returned non-zero exit status 1.
-----)
root@syncloud:~# 



I see, you are on a custom domain but not using our dns premium service, so you will have to still maintain port 80 and dns records manually.

Will you consider switching to premium service, if not is your port 80 still open?
Custom domain activation really means I can do everything myself or developer mode

Hey I would love to use the premium services in fact that is what I though I had done in the fall. I am already a monthly supporter. How do i reactivate it?

Great, you need to reacrivate your device using Premium plan and update dns name servers at your domain registrar, more info here Managed domain · syncloud/platform Wiki · GitHub

So i was using the premium plan before, I realize that when I went to syncloud.it so it seems there is some other issue here. I know I m using an older version of debian, specifically jessie, if that might be creating the problem. I think my setup might be the project 0 of using an old laptop to run syncloud

One of the issues supporting old devices was just fixed and pushed to the store, can you try upgrading from Settings - Updates?

Also just tome make sure are you oremium activation at the moment and if not what is the issue? From the logs it is is atill on custom mode as it tries to query port 80 for certificate.

So it was on premium before this upgrade and still says I am.

The new update still fails update through the web interface.

I sent the new logs to support.

Also seems the nginx is failing to have nextcloud start correctly giving a 502 error

you are running out of disk space on root file system:

/dev/dm-1                      16495508  15884312         0 100% /

16gb is not a lot.

ahh i see, well shoot.

I guess I will have to migrate to another system, this was done on a separate SD for root, which is small as you see. Trying to think through options, I never have migrated, though the data drive is external(ish) [there are two drives in the laptop one SD and one non-SD, the non-SD is the data drive].

ok cleared out some tmp data and nextcloud is running again. So I will start to plan a new system setup. Not sure what to do about the update or the cert as it is bugging my other client devices

Have you upgraded the system?

do you mean the base debian system? in that case no

If you mean to the latest from store, it still wont update through the web interface. I have run snap refresh platform from ssh and that results in not updating either with the following output

root@syncloud:~# snap refresh platform
error: cannot perform the following tasks:
- Run post-refresh hook of "platform" snap if present (run hook "post-refresh": 
-----
2022-01-05 08:54:51,129 - path_checker - INFO - real link path: /opt/disk/external
2022-01-05 08:54:51,130 - path_checker - INFO - external disk path: /opt/disk/external
2022-01-05 08:54:51,130 - path_checker - INFO - link exists: True
cert/generator.go:80	certificate info	{"category": "certificate", "valid days": -7, "real": true}
2022/01/05 08:54:51 [INFO] acme: Registering account for mv@cyberunions.org
2022/01/05 08:54:51 [INFO] [dialectica.red, *.dialectica.red] acme: Obtaining bundled SAN certificate
2022/01/05 08:54:52 [INFO] [*.dialectica.red] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/65286394630
2022/01/05 08:54:52 [INFO] [dialectica.red] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/65286394640
2022/01/05 08:54:52 [INFO] [*.dialectica.red] acme: Could not find solver for: dns-01
2022/01/05 08:54:52 [INFO] [dialectica.red] acme: Could not find solver for: tls-alpn-01
2022/01/05 08:54:52 [INFO] [dialectica.red] acme: use http-01 solver
2022/01/05 08:54:52 [INFO] [dialectica.red] acme: Trying to solve HTTP-01
2022/01/05 08:54:52 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/65286394630
2022/01/05 08:54:52 [INFO] Deactivating auth: https://acme-v02.api.letsencrypt.org/acme/authz-v3/65286394640
cert/generator.go:66	unable to generate certificate: error: one or more domains had a problem:
[*.dialectica.red] [*.dialectica.red] acme: could not determine solvers
[dialectica.red] [dialectica.red] acme: error presenting token: open /var/snap/platform/current/certbot/www/.well-known/acme-challenge/MPYJrVmOdeOs-L-hH9d0z053cVoc45ePQHnvnCjstDk: no such file or directory
	{"category": "certificate"}
cert/fake.go:50	generating fake certificate	{"category": "certificate"}
2022/01/05 08:54:52 reloading platform.nginx-public
2022/01/05 08:54:52 systemctl output: Job for snap.platform.nginx-public.service failed. See 'systemctl status snap.platform.nginx-public.service' and 'journalctl -xn' for details.
2022/01/05 08:54:52 exit status 1
Traceback (most recent call last):
  File "/snap/platform/2201041191/meta/hooks/post-refresh", line 5, in <module>
    PlatformInstaller().post_refresh()
  File "/snap/platform/current/python/usr/local/lib/python3.8/site-packages/syncloud_platform-2201041191-py3.8.egg/syncloud_platform/installer.py", line 77, in post_refresh
  File "/snap/platform/current/python/usr/local/lib/python3.8/site-packages/syncloud_platform-2201041191-py3.8.egg/syncloud_platform/installer.py", line 47, in init_services
  File "/snap/platform/current/python/usr/local/lib/python3.8/subprocess.py", line 415, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/snap/platform/current/python/usr/local/lib/python3.8/subprocess.py", line 516, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '/snap/platform/current/bin/cli cert' returned non-zero exit status 1.
-----)
root@syncloud:~# 


ok, one more certificate related issue migrating from custom to premium, the fix is on the way: Fix certificate generation for custom -> premium migration · Issue #629 · syncloud/platform · GitHub
I will let you know when it is ready ASAP

1 Like

Could you try upgrading now?

1 Like

Success! And seem we got the letsencrypt too! Thanks for debugging this!