XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Patching XCP-ng via XOA

    Scheduled Pinned Locked Moved Management
    21 Posts 4 Posters 737 Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • gthvn1G Offline
      gthvn1 Vates 🪐 XCP-ng Team
      last edited by gthvn1

      This post is deleted!
      1 Reply Last reply Reply Quote 0
      • gthvn1G Offline
        gthvn1 Vates 🪐 XCP-ng Team
        last edited by

        @rvreugde said in Patching XCP-ng via XOA:

        xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update

        Can you try to run the command directly on xcp-080 ?

        rvreugdeR 1 Reply Last reply Reply Quote 0
        • rvreugdeR Offline
          rvreugde @gthvn1
          last edited by rvreugde

          @gthvn1

          I think, it has something to do with proxy settings.
          XOA has its proxy set:
          9803226c-4ef9-482d-a626-f43abdf129cc-image.png

          But, locally, via CLI, I got the following when I set the proxy

          export {http,https}_proxy=http://192.168.91.151:8080
          

          Check updates result (tried on several hosts):

          xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
          Error code: -1
          Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
            File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
              return func(*args, **kwds)
            File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
              with OperationLocker(*pid_args, **pid_kwargs):
            File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
              self.lock()
            File "/etc/xapi.d/plugins/updater.py", line 55, in lock
              self._raise_busy()
            File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
              raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
          OperationException: The updater plugin is busy (current operation: check_update)
          

          The /var/log/updater-plugin.log is empty.

          rvreugdeR 1 Reply Last reply Reply Quote 0
          • rvreugdeR Offline
            rvreugde @rvreugde
            last edited by rvreugde

            @gthvn1

            I ran the command from xcp-080 (Pool Master) for another pool member (xcp-082).

            [12:24 xcp-080 ~]# xe host-list name-label=xcp-082
            uuid ( RO)                : fae5e2cb-a474-4541-8c30-8a5bc87ef945
                      name-label ( RW): xcp-082
                name-description ( RW): Default install
            

            This is the result:

            [11:57 xcp-080 ~]# xe host-call-plugin host-uuid=fae5e2cb-a474-4541-8c30-8a5bc87ef945 plugin=updater.py fn=check_update
            [{"url": "https://www.xenproject.org", "version": "4.13.5", "name": "xen-libs", "license": "LGPLv2", "changelog": null, "release": "9.45.1.xcpng8.2", "size": 53660, "description": "Xen Hypervisor general libraries"}, {"url": null, "version": "4.19.19", "name": "kernel", "license": "GPLv2", "changelog": null, "release": "7.0.24.1.xcpng8.2", "size": 31000948, "description": "The Linux kernel"}, {"url": null, "version": "1.10.7", "name": "guest-templates-json-data-other", "license": "BSD", "changelog": null, "release": "1.2.xcpng8.2", "size": 13404, "description": "Contains the default other guest templates"}, {"url": "https://curl.se/", "version": "8.6.0", "name": "libcurl", "license": "MIT", "changelog": null, "release": "2.2.xcpng8.2", "size": 283684, "description": "A library for getting files from web servers"}, {"url": null, "version": "1.0.2", "name": "vendor-drivers", "license": "GPLv2", "changelog": null, "release": "1.7.xcpng8.2", "size": 3236, "description": "Vendor drivers"}, {"url": null, "version": "10.1.13.1", "name": "xsconsole", "license": "GPL2", "changelog": null, "release": "2.1.xcpng8.2", "size": 309872, "description": "XCP-ng Host Configuration Console"}, {"url": "http://www.openssl.org/", "version": "1.0.2k", "name": "openssl-perl", "license": "OpenSSL", "changelog": null, "release": "26.2.xcpng8.2", "size": 74148, "description": "Perl scripts provided with OpenSSL"}, {"url": "https://xcp-ng.org", "version": "8.2.0", "name": "xcp-ng-deps", "license": "GPLv2", "changelog": null, "release": "13", "size": 10152, "description": "A meta package pulling all needed dependencies for XCP-ng"}, {"url": "https://github.com/xcp-ng/xcp-ng-release", "version": "8.2.1", "name": "xcp-ng-release-presets", "license": "GPLv2", "changelog": null, "release": "14", "size": 11428, "description": "XCP-ng presets file"}, {"url": "https://github.com/xapi-project/blktap", "version": "3.37.4", "name": "blktap", "license": "BSD", "changelog": null, "release": "4.1.xcpng8.2", "size": 310644, "description": "blktap user space utilities"}, {"url": null, "version": "1.3.17", "name": "xenserver-status-report", "license": "GPLv2+", "changelog": null, "release": "1.xcpng8.2", "size": 33092, "description": "A program that generates status reports for a XenServer host"}, {"url": "https://github.com/facebook/zstd", "version": "1.5.5", "name": "zstd", "license": "BSD and GPLv2", "changelog": null, "release": "1.el7", "size": 459404, "description": "Zstd compression library"}, {"url": "http://www.openssh.com/portable.html", "version": "7.4p1", "name": "openssh", "license": "BSD", "changelog": null, "release": "23.3.1.xcpng8.2", "size": 428792, "description": "An open source implementation of SSH protocol versions 1 and 2"}, {"url": "https://github.com/xapi-project/vhd-tool", "version": "0.43.0", "name": "vhd-tool", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "23.1.xcpng8.2", "size": 3768904, "description": "Command-line tools for manipulating and streaming .vhd format files"}, {"url": "https://github.com/xapi-project/squeezed", "version": "0.27.0", "name": "squeezed", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "23.1.xcpng8.2", "size": 1227604, "description": "Memory ballooning daemon for the xapi toolstack"}, {"url": "https://github.com/xenserver/rrd2csv/", "version": "1.2.6", "name": "rrd2csv", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "20.1.xcpng8.2", "size": 2054068, "description": "Tool for converting Xen API RRDs to CSV"}, {"url": "https://www.sudo.ws", "version": "1.9.15", "name": "sudo", "license": "ISC", "changelog": null, "release": "4.1.xcpng8.2", "size": 1301008, "description": "Allows restricted root access for specified users"}, {"url": "https://github.com/xapi-project/sm", "version": "2.30.8", "name": "sm-rawhba", "license": "LGPL", "changelog": null, "release": "13.2.xcpng8.2", "size": 36932, "description": "rawhba SR type capability"}, {"url": "https://github.com/xapi-project/sm-cli", "version": "0.23.0", "name": "sm-cli", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "66.1.xcpng8.2", "size": 1217100, "description": "CLI for xapi toolstack storage managers"}, {"url": "https://github.com/xapi-project/sm", "version": "2.30.8", "name": "sm", "license": "LGPL", "changelog": null, "release": "13.2.xcpng8.2", "size": 650876, "description": "sm - XCP storage managers"}, {"url": "https://www.xenproject.org", "version": "4.13.5", "name": "xen-tools", "license": "GPLv2 and LGPLv2", "changelog": null, "release": "9.45.1.xcpng8.2", "size": 41712, "description": "Xen Hypervisor general tools"}, {"url": "https://github.com/xapi-project/xapi-storage-script", "version": "0.34.1", "name": "xapi-storage-script", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "21.1.xcpng8.2", "size": 3643732, "description": "Xapi storage script plugin server"}, {"url": "https://www.xenproject.org", "version": "4.13.5", "name": "xen-dom0-libs", "license": "GPLv2 and LGPLv2 and MIT", "changelog": null, "release": "9.45.1.xcpng8.2", "size": 659992, "description": "Xen Hypervisor Domain 0 libraries"}, {"url": "http://www.openssh.com/portable.html", "version": "7.4p1", "name": "openssh-server", "license": "BSD", "changelog": null, "release": "23.3.1.xcpng8.2", "size": 402980, "description": "An open source SSH server daemon"}, {"url": "https://github.com/xapi-project/message-switch", "version": "1.23.2", "name": "message-switch", "license": "ISC", "changelog": null, "release": "22.1.xcpng8.2", "size": 2386580, "description": "A store and forward message switch"}, {"url": "https://github.com/xcp-ng/xcp-ng-xapi-plugins", "version": "1.10.1", "name": "xcp-ng-xapi-plugins", "license": "AGPLv3", "changelog": null, "release": "1.xcpng8.2", "size": 46196, "description": "XAPI additional plugins for XCP-ng"}, {"url": "https://github.com/xapi-project/forkexecd", "version": "1.18.3", "name": "forkexecd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "15.1.xcpng8.2", "size": 1304412, "description": "A subprocess management service"}, {"url": "https://github.com/xapi-project/xenopsd", "version": "0.150.19", "name": "xenopsd-xc", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "8.1.xcpng8.2", "size": 4189872, "description": "Xenopsd using xc"}, {"url": "http://www.openssl.org/", "version": "1.1.1k", "name": "xs-openssl-libs", "license": "OpenSSL and ASL 2.0", "changelog": null, "release": "12.3.xcpng8.2", "size": 1506200, "description": "A general purpose cryptography library with TLS implementation"}, {"url": "https://github.com/xenserver/gpumon", "version": "0.18.0", "name": "gpumon", "license": "ISC", "changelog": null, "release": "23.1.xcpng8.2", "size": 1327416, "description": "RRDD GPU metrics plugin"}, {"url": null, "version": "1.10.7", "name": "guest-templates-json-data-windows", "license": "BSD", "changelog": null, "release": "1.2.xcpng8.2", "size": 15984, "description": "Contains the default Windows guest templates"}, {"url": "https://pagure.io/microcode_ctl", "version": "2.1", "name": "microcode_ctl", "license": "Redistributable, no modification permitted", "changelog": null, "release": "26.xs29.6.xcpng8.2", "size": 7501860, "description": "Tool to transform and deploy CPU microcode update for x86."}, {"url": "http://www.xen.org", "version": "1.249.40", "name": "xapi-tests", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.1.xcpng8.2", "size": 4019016, "description": "Toolstack test programs"}, {"url": "http://www.openssl.org/", "version": "1.0.2k", "name": "openssl", "license": "OpenSSL", "changelog": null, "release": "26.2.xcpng8.2", "size": 505780, "description": "Utilities from the general purpose cryptography library with TLS implementation"}, {"url": "http://www.kernel.org/", "version": "20190314", "name": "linux-firmware", "license": "GPL, GPLv2, GPLv2+, GPLv3, MIT and Redistributable, no modification permitted", "changelog": null, "release": "11.2.xcpng8.2", "size": 41281672, "description": "Firmware files used by the Linux kernel"}, {"url": null, "version": "1.10.7", "name": "guest-templates-json-data-linux", "license": "BSD", "changelog": null, "release": "1.2.xcpng8.2", "size": 21604, "description": "Contains the default Linux guest templates"}, {"url": "http://www.openssh.com/portable.html", "version": "7.4p1", "name": "openssh-clients", "license": "BSD", "changelog": null, "release": "23.3.1.xcpng8.2", "size": 603784, "description": "An open source SSH client applications"}, {"url": "https://github.com/xenserver/xha", "version": "10.3.1", "name": "xha", "license": "GPLv2", "changelog": null, "release": "3.1.xcpng8.2", "size": 91844, "description": "xha - XenServer proprietary HA daemon"}, {"url": "https://github.com/xapi-project/xcp-networkd", "version": "0.56.2", "name": "xcp-networkd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "20.xcpng8.2", "size": 3426224, "description": "Simple host network management service for the xapi toolstack"}, {"url": null, "version": "1.10.7", "name": "guest-templates-json", "license": "BSD", "changelog": null, "release": "1.2.xcpng8.2", "size": 31176, "description": "Creates the default guest templates"}, {"url": "https://github.com/xapi-project/xapi-storage", "version": "11.19.0_sxm2", "name": "xapi-storage", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "22.xcpng8.2", "size": 63340, "description": "Xapi storage interface"}, {"url": "https://github.com/xapi-project/xenopsd", "version": "0.150.19", "name": "xenopsd-cli", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "8.1.xcpng8.2", "size": 1338280, "description": "CLI for xenopsd, the xapi toolstack domain manager"}, {"url": "https://www.xenproject.org", "version": "4.13.5", "name": "xen-hypervisor", "license": "GPLv2", "changelog": null, "release": "9.45.1.xcpng8.2", "size": 2534612, "description": "The Xen Hypervisor"}, {"url": "https://www.xenproject.org", "version": "4.13.5", "name": "xen-dom0-tools", "license": "GPLv2 and LGPLv2 and MIT", "changelog": null, "release": "9.45.1.xcpng8.2", "size": 2563692, "description": "Xen Hypervisor Domain 0 tools"}, {"url": "https://github.com/xapi-project/xapi-nbd", "version": "1.11.0", "name": "xapi-nbd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "22.1.xcpng8.2", "size": 2086492, "description": "NBD server that exposes XenServer disks"}, {"url": "http://www.openssl.org/", "version": "1.0.2k", "name": "openssl-libs", "license": "OpenSSL", "changelog": null, "release": "26.2.xcpng8.2", "size": 1256632, "description": "A general purpose cryptography library with TLS implementation"}, {"url": "https://github.com/xcp-ng/xcp-ng-release", "version": "8.2.1", "name": "xcp-ng-release", "license": "GPLv2", "changelog": null, "release": "14", "size": 106568, "description": "XCP-ng release file"}, {"url": "http://www.xen.org", "version": "1.249.40", "name": "xapi-core", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.1.xcpng8.2", "size": 19172572, "description": "The xapi toolstack"}, {"url": "https://curl.se/", "version": "8.6.0", "name": "curl", "license": "MIT", "changelog": null, "release": "2.2.xcpng8.2", "size": 304800, "description": "A utility for getting files from remote servers (FTP, HTTP, and others)"}, {"url": "https://github.com/xapi-project/varstored-guard", "version": "0.6.2", "name": "varstored-guard", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "20.xcpng8.2", "size": 2340836, "description": "Deprivileged XAPI socket Daemon for EFI variable storage"}, {"url": "https://github.com/xapi-project/xcp-rrdd", "version": "1.33.5", "name": "xcp-rrdd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "3.1.xcpng8.2", "size": 2712836, "description": "Statistics gathering daemon for the xapi toolstack"}, {"url": "https://github.com/xcp-ng/xcp-ng-release", "version": "8.2.1", "name": "xcp-ng-release-config", "license": "GPLv2", "changelog": null, "release": "14", "size": 107020, "description": "XCP-ng configuration"}, {"url": "https://github.com/xapi-project/wsproxy", "version": "1.12.0", "name": "wsproxy", "license": "LGPL-2.0-only WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "24.xcpng8.2", "size": 616644, "description": "Websockets proxy for VNC traffic"}, {"url": "http://www.xen.org", "version": "1.249.40", "name": "xapi-xe", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.1.xcpng8.2", "size": 864380, "description": "The xapi toolstack CLI"}, {"url": "https://github.com/xapi-project/xenopsd", "version": "0.150.19", "name": "xenopsd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "8.1.xcpng8.2", "size": 85088, "description": "Simple VM manager"}, {"url": "https://github.com/xenserver/rrdd-plugins/", "version": "1.10.9", "name": "rrdd-plugins", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "17.1.xcpng8.2", "size": 4024592, "description": "RRDD metrics plugins"}]
            
            1 Reply Last reply Reply Quote 0
            • gthvn1G Offline
              gthvn1 Vates 🪐 XCP-ng Team
              last edited by

              And if you run the command from pool master for pool master you still have an empty list?

              xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
              

              Maybe this command must be run from pool master (I'll be surprised...)?

              rvreugdeR 1 Reply Last reply Reply Quote 0
              • rvreugdeR Offline
                rvreugde @gthvn1
                last edited by rvreugde

                @gthvn1

                Result for both hosts (xcp-082 gives now a busy-error)

                [11:45 xcp-080 ~]# xe host-call-plugin host-uuid=fae5e2cb-a474-4541-8c30-8a5bc87ef945 plugin=updater.py fn=check_update
                Error code: -1
                Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                  File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 119, in wrapper
                    return func(*args, **kwds)
                  File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                    with OperationLocker(*pid_args, **pid_kwargs):
                  File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                    self.lock()
                  File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                    self._raise_busy()
                  File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                    raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                OperationException: The updater plugin is busy (current operation: check_update)
                
                [11:46 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                Error code: -1
                Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                  File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
                    return func(*args, **kwds)
                  File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                    with OperationLocker(*pid_args, **pid_kwargs):
                  File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                    self.lock()
                  File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                    self._raise_busy()
                  File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                    raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                OperationException: The updater plugin is busy (current operation: check_update)
                
                1 Reply Last reply Reply Quote 0
                • DanpD Offline
                  Danp Pro Support Team
                  last edited by

                  https://docs.xcp-ng.org/troubleshooting/common-problems/#the-updater-plugin-is-busy

                  rvreugdeR 1 Reply Last reply Reply Quote 0
                  • rvreugdeR Offline
                    rvreugde @Danp
                    last edited by rvreugde

                    @Danp @gthvn1
                    Deleting the lockfile works (had to do it twice). Could it be possible that XOA attempts are also responsible for creating this file?

                    rm -f /var/lib/xcp-ng-xapi-plugins/updater.py.lock
                    

                    Result of the command

                    [12:55 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                    [{"url": null, "version": "4.19.19", "name": "kernel", "license": "GPLv2", "changelog": null, "release": "7.0.24.1.xcpng8.2", "size": 31000948, "description": "The Linux kernel"}, {"url": "https://github.com/xapi-project/sm", "version": "2.30.8", "name": "sm", "license": "LGPL", "changelog": null, "release": "13.2.xcpng8.2", "size": 650876, "description": "sm - XCP storage managers"}, {"url": "https://github.com/xenserver/rrdd-plugins/", "version": "1.10.9", "name": "rrdd-plugins", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "17.1.xcpng8.2", "size": 4024592, "description": "RRDD metrics plugins"}, {"url": null, "version": "1.0.2", "name": "vendor-drivers", "license": "GPLv2", "changelog": null, "release": "1.7.xcpng8.2", "size": 3236, "description": "Vendor drivers"}, {"url": "https://xcp-ng.org", "version": "8.2.0", "name": "xcp-ng-deps", "license": "GPLv2", "changelog": null, "release": "13", "size": 10152, "description": "A meta package pulling all needed dependencies for XCP-ng"}, {"url": "https://github.com/xcp-ng/xcp-ng-release", "version": "8.2.1", "name": "xcp-ng-release-presets", "license": "GPLv2", "changelog": null, "release": "14", "size": 11428, "description": "XCP-ng presets file"}, {"url": "https://github.com/xapi-project/xcp-rrdd", "version": "1.33.5", "name": "xcp-rrdd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "3.1.xcpng8.2", "size": 2712836, "description": "Statistics gathering daemon for the xapi toolstack"}, {"url": "https://github.com/xapi-project/sm-cli", "version": "0.23.0", "name": "sm-cli", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "66.1.xcpng8.2", "size": 1217100, "description": "CLI for xapi toolstack storage managers"}, {"url": "https://github.com/xapi-project/message-switch", "version": "1.23.2", "name": "message-switch", "license": "ISC", "changelog": null, "release": "22.1.xcpng8.2", "size": 2386580, "description": "A store and forward message switch"}, {"url": null, "version": "1.3.17", "name": "xenserver-status-report", "license": "GPLv2+", "changelog": null, "release": "1.xcpng8.2", "size": 33092, "description": "A program that generates status reports for a XenServer host"}, {"url": "https://github.com/xenserver/rrd2csv/", "version": "1.2.6", "name": "rrd2csv", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "20.1.xcpng8.2", "size": 2054068, "description": "Tool for converting Xen API RRDs to CSV"}, {"url": "https://github.com/xapi-project/xcp-networkd", "version": "0.56.2", "name": "xcp-networkd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "20.xcpng8.2", "size": 3426224, "description": "Simple host network management service for the xapi toolstack"}, {"url": "https://github.com/xapi-project/vhd-tool", "version": "0.43.0", "name": "vhd-tool", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "23.1.xcpng8.2", "size": 3768904, "description": "Command-line tools for manipulating and streaming .vhd format files"}, {"url": "http://www.openssh.com/portable.html", "version": "7.4p1", "name": "openssh-server", "license": "BSD", "changelog": null, "release": "23.3.1.xcpng8.2", "size": 402980, "description": "An open source SSH server daemon"}, {"url": "https://github.com/xapi-project/xapi-storage", "version": "11.19.0_sxm2", "name": "xapi-storage", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "22.xcpng8.2", "size": 63340, "description": "Xapi storage interface"}, {"url": "https://github.com/xapi-project/varstored-guard", "version": "0.6.2", "name": "varstored-guard", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "20.xcpng8.2", "size": 2340836, "description": "Deprivileged XAPI socket Daemon for EFI variable storage"}, {"url": "http://www.openssh.com/portable.html", "version": "7.4p1", "name": "openssh", "license": "BSD", "changelog": null, "release": "23.3.1.xcpng8.2", "size": 428792, "description": "An open source implementation of SSH protocol versions 1 and 2"}, {"url": "https://www.sudo.ws", "version": "1.9.15", "name": "sudo", "license": "ISC", "changelog": null, "release": "4.1.xcpng8.2", "size": 1301008, "description": "Allows restricted root access for specified users"}, {"url": "https://github.com/xapi-project/xapi-nbd", "version": "1.11.0", "name": "xapi-nbd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "22.1.xcpng8.2", "size": 2086492, "description": "NBD server that exposes XenServer disks"}, {"url": "http://www.kernel.org/", "version": "20190314", "name": "linux-firmware", "license": "GPL, GPLv2, GPLv2+, GPLv3, MIT and Redistributable, no modification permitted", "changelog": null, "release": "11.2.xcpng8.2", "size": 41281672, "description": "Firmware files used by the Linux kernel"}, {"url": "http://www.openssh.com/portable.html", "version": "7.4p1", "name": "openssh-clients", "license": "BSD", "changelog": null, "release": "23.3.1.xcpng8.2", "size": 603784, "description": "An open source SSH client applications"}, {"url": "https://github.com/xenserver/xha", "version": "10.3.1", "name": "xha", "license": "GPLv2", "changelog": null, "release": "3.1.xcpng8.2", "size": 91844, "description": "xha - XenServer proprietary HA daemon"}, {"url": "https://github.com/xapi-project/xenopsd", "version": "0.150.19", "name": "xenopsd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "8.1.xcpng8.2", "size": 85088, "description": "Simple VM manager"}, {"url": "https://github.com/xcp-ng/xcp-ng-release", "version": "8.2.1", "name": "xcp-ng-release", "license": "GPLv2", "changelog": null, "release": "14", "size": 106568, "description": "XCP-ng release file"}, {"url": "https://github.com/xenserver/gpumon", "version": "0.18.0", "name": "gpumon", "license": "ISC", "changelog": null, "release": "23.1.xcpng8.2", "size": 1327416, "description": "RRDD GPU metrics plugin"}, {"url": "http://www.xen.org", "version": "1.249.40", "name": "xapi-xe", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.1.xcpng8.2", "size": 864380, "description": "The xapi toolstack CLI"}, {"url": "https://github.com/xapi-project/forkexecd", "version": "1.18.3", "name": "forkexecd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "15.1.xcpng8.2", "size": 1304412, "description": "A subprocess management service"}, {"url": "https://github.com/xcp-ng/xcp-ng-release", "version": "8.2.1", "name": "xcp-ng-release-config", "license": "GPLv2", "changelog": null, "release": "14", "size": 107020, "description": "XCP-ng configuration"}, {"url": "https://github.com/xapi-project/xenopsd", "version": "0.150.19", "name": "xenopsd-cli", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "8.1.xcpng8.2", "size": 1338280, "description": "CLI for xenopsd, the xapi toolstack domain manager"}, {"url": "https://github.com/xapi-project/wsproxy", "version": "1.12.0", "name": "wsproxy", "license": "LGPL-2.0-only WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "24.xcpng8.2", "size": 616644, "description": "Websockets proxy for VNC traffic"}, {"url": "https://github.com/xapi-project/squeezed", "version": "0.27.0", "name": "squeezed", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "23.1.xcpng8.2", "size": 1227604, "description": "Memory ballooning daemon for the xapi toolstack"}, {"url": "https://github.com/xapi-project/xenopsd", "version": "0.150.19", "name": "xenopsd-xc", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "8.1.xcpng8.2", "size": 4189872, "description": "Xenopsd using xc"}, {"url": "https://github.com/xapi-project/sm", "version": "2.30.8", "name": "sm-rawhba", "license": "LGPL", "changelog": null, "release": "13.2.xcpng8.2", "size": 36932, "description": "rawhba SR type capability"}, {"url": "http://www.xen.org", "version": "1.249.40", "name": "xapi-tests", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.1.xcpng8.2", "size": 4019016, "description": "Toolstack test programs"}, {"url": "http://www.xen.org", "version": "1.249.40", "name": "xapi-core", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.1.xcpng8.2", "size": 19172572, "description": "The xapi toolstack"}, {"url": "https://github.com/xapi-project/xapi-storage-script", "version": "0.34.1", "name": "xapi-storage-script", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "21.1.xcpng8.2", "size": 3643732, "description": "Xapi storage script plugin server"}]
                    

                    But after the command, the file is not deleted automatically.

                    [13:50 xcp-080 ~]# ls -alh /var/lib/xcp-ng-xapi-plugins/
                    total 12K
                    drwxr-xr-x  2 root root 4,0K Feb 10 12:55 .
                    drwxr-xr-x 36 root root 4,0K Nov 26 19:34 ..
                    -rw-r--r--  1 root root   13 Feb 10 13:50 updater.py.lock
                    
                    1 Reply Last reply Reply Quote 0
                    • gthvn1G Offline
                      gthvn1 Vates 🪐 XCP-ng Team
                      last edited by gthvn1

                      In fact on my testing host (xcp-ng 8.3) the file is also there. So it looks like it is normal to not delete it. Can you run the command several times? Because on my host even if the file is not deleted I can run the command several times. So I guess that sometimes a process still holds the file and we need to delete it but most of the time the file is just closed and it works.
                      EDIT: Oh but in fact it looks like by default the update is run by XO so you will see the file that is updated (time is modified each minute on my host). But I'm discovering this plugin and I'm not sure how it is used...

                      rvreugdeR 1 Reply Last reply Reply Quote 0
                      • rvreugdeR Offline
                        rvreugde @gthvn1
                        last edited by

                        @gthvn1
                        FYI: After deleting the file the last time, it reappeared, without having invoked the host-call-plugin command.

                        13:57 xcp-080 ~]# ls -al /var/lib/xcp-ng-xapi-plugins/
                        total 12
                        drwxr-xr-x  2 root root 4096 Feb 10 13:57 .
                        drwxr-xr-x 36 root root 4096 Nov 26 19:34 ..
                        -rw-r--r--  1 root root   13 Feb 10 13:57 updater.py.lock
                        

                        Invoking the command, results every time in:

                        [14:06 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                        Error code: -1
                        Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                          File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
                            return func(*args, **kwds)
                          File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                            with OperationLocker(*pid_args, **pid_kwargs):
                          File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                            self.lock()
                          File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                            self._raise_busy()
                          File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                            raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                        OperationException: The updater plugin is busy (current operation: check_update)
                        
                        [14:07 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                        Error code: -1
                        Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                          File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
                            return func(*args, **kwds)
                          File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                            with OperationLocker(*pid_args, **pid_kwargs):
                          File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                            self.lock()
                          File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                            self._raise_busy()
                          File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                            raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                        OperationException: The updater plugin is busy (current operation: check_update)
                        
                        [14:10 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                        Error code: -1
                        Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                          File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
                            return func(*args, **kwds)
                          File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                            with OperationLocker(*pid_args, **pid_kwargs):
                          File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                            self.lock()
                          File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                            self._raise_busy()
                          File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                            raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                        OperationException: The updater plugin is busy (current operation: check_update)
                        
                        [14:10 xcp-080 ~]# 
                        [14:11 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                        Error code: -1
                        Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                          File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
                            return func(*args, **kwds)
                          File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                            with OperationLocker(*pid_args, **pid_kwargs):
                          File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                            self.lock()
                          File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                            self._raise_busy()
                          File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                            raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                        OperationException: The updater plugin is busy (current operation: check_update)
                        
                        [14:11 xcp-080 ~]# xe host-call-plugin host-uuid=20cacce5-ffac-4ace-ac7c-e48f4e6dfc8e plugin=updater.py fn=check_update
                        Error code: -1
                        Error parameters: The updater plugin is busy (current operation: check_update), , Traceback (most recent call last):
                          File "/etc/xapi.d/plugins/xcpngutils/__init__.py", line 127, in wrapper
                            return func(*args, **kwds)
                          File "/etc/xapi.d/plugins/updater.py", line 95, in decorator
                            with OperationLocker(*pid_args, **pid_kwargs):
                          File "/etc/xapi.d/plugins/xcpngutils/filelocker.py", line 55, in __enter__
                            self.lock()
                          File "/etc/xapi.d/plugins/updater.py", line 55, in lock
                            self._raise_busy()
                          File "/etc/xapi.d/plugins/updater.py", line 74, in _raise_busy
                            raise OperationException('The updater plugin is busy (current operation: {})'.format(op))
                        OperationException: The updater plugin is busy (current operation: check_update)
                        
                        rvreugdeR 1 Reply Last reply Reply Quote 0
                        • rvreugdeR Offline
                          rvreugde @rvreugde
                          last edited by rvreugde

                          @gthvn1
                          Following process is keeping the file opne (not the manual command). Is it XOA?

                          14:18 xcp-080 ~]# lsof -t /var/lib/xcp-ng-xapi-plugins/updater.py.lock
                          15894
                          
                          [14:19 xcp-080 ~]# ps -ef | grep 15894
                          root     15894 15893  0 14:15 ?        00:00:00 python /etc/xapi.d/plugins/updater.py <methodCall><methodName>check_update</methodName><params><param><value>OpaqueRef:cfc61ae4-5548-467b-ba63-e06d2572405b</value></param><param><value><struct/></value></param></params></methodCall>
                          
                          gthvn1G 1 Reply Last reply Reply Quote 0
                          • gthvn1G Offline
                            gthvn1 Vates 🪐 XCP-ng Team @rvreugde
                            last edited by

                            @rvreugde it is really strange... I only have one host on my setup that I'm using for testing and I don't see this behavior... But I see almost every minutes a message in my /var/log/xensource.log saying:
                            Feb 10 14:55:58 xcp-gthvn1 xapi: [debug||518 HTTPS 10.1.0.100->:::80|host.call_plugin R:dd18d954e8e1|audit] Host.call_plugin host = 'd7f4a210-369a-410e-9c73-4acb59fe5e7c (xcp-gthvn1)'; plugin = 'updater.py' ; fn = 'check_update' args = [ 'hidden' ]
                            I don't know who is calling this. But for me the file is always released properly. No process that locks the file... Not sure about what to test next. Is there someone on the forum with the same issue?

                            rvreugdeR 1 Reply Last reply Reply Quote 0
                            • rvreugdeR Offline
                              rvreugde @gthvn1
                              last edited by rvreugde

                              @gthvn1

                              It seems to be working on another pool, but, how can we get this working in XOA?

                              XOA:
                              f564e171-4744-4faa-9b0a-b6e969824872-image.png

                              CLI:

                              [07:38 xcp-102 ~]# xe host-call-plugin host-uuid=a0d83751-159a-4f0b-8618-4984d543f0c8 plugin=updater.py fn=check_update
                              [{"url": "http://www.xen.org", "version": "24.19.2", "name": "xcp-networkd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 4647492, "description": "Simple host network management service for the xapi toolstack"}, {"url": "https://github.com/xapi-project/sm", "version": "3.2.3", "name": "sm-fairlock", "license": "LGPL", "changelog": null, "release": "1.15.xcpng8.3", "size": 42552, "description": "Fair locking subsystem"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "forkexecd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 2361328, "description": "A subprocess management service"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "sm-cli", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 1787364, "description": "CLI for xapi toolstack storage managers"}, {"url": null, "version": "4.19.19", "name": "kernel", "license": "GPLv2", "changelog": null, "release": "8.0.37.1.xcpng8.3", "size": 30911672, "description": "The Linux kernel"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xapi-storage-script", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 4589220, "description": "Xapi storage script plugin server"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xapi-xe", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 1369152, "description": "The xapi toolstack CLI"}, {"url": "https://www.jedsoft.org/slang/", "version": "2.3.2", "name": "slang", "license": "GPLv2+", "changelog": null, "release": "11.xcpng8.3", "size": 367944, "description": "Shared library for the S-Lang extension language"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xenopsd-xc", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 5163268, "description": "Xenopsd using xc"}, {"url": "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git", "version": "20240503", "name": "amd-microcode", "license": "Redistributable", "changelog": null, "release": "1.1.xcpng8.3", "size": 96912, "description": "AMD Microcode"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xapi-rrd2csv", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 2924652, "description": "A tool to output RRD values in CSV format"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xenopsd-cli", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 1879780, "description": "CLI for xenopsd, the xapi toolstack domain manager"}, {"url": "https://github.com/xapi-project/blktap", "version": "3.54.9", "name": "blktap", "license": "BSD", "changelog": null, "release": "1.2.xcpng8.3", "size": 312948, "description": "blktap user space utilities"}, {"url": null, "version": "2.0.15", "name": "kexec-tools", "license": "GPL", "changelog": null, "release": "20.1.xcpng8.3", "size": 69300, "description": "kexec/kdump userspace tools"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "wsproxy", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 967004, "description": "Websockets proxy for VNC traffic"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "vhd-tool", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 4875652, "description": "Command-line tools for manipulating and streaming .vhd format files"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xapi-nbd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 2977480, "description": "NBD server that exposes XenServer disks"}, {"url": "http://www.gnu.org/software/grub/", "version": "2.06", "name": "grub-tools", "license": "GPLv3+", "changelog": null, "release": "4.0.2.1.xcpng8.3", "size": 2318216, "description": "Support tools for GRUB."}, {"url": "https://github.com/vatesfr/xen-orchestra", "version": "0.6.0", "name": "xo-lite", "license": "AGPL3-only", "changelog": null, "release": "1.xcpng8.3", "size": 941976, "description": "Xen Orchestra Lite"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xapi-core", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 27803496, "description": "The xapi toolstack"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xenopsd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 1378804, "description": "Simple VM manager"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "rrdd-plugins", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 4977012, "description": "RRDD metrics plugin"}, {"url": null, "version": "5.10.226", "name": "intel-igc", "license": "GPL", "changelog": null, "release": "1.xcpng8.3", "size": 64356, "description": "Intel igc device drivers"}, {"url": "https://xcp-ng.org", "version": "8.3", "name": "xcp-ng-deps", "license": "GPLv2", "changelog": null, "release": "13", "size": 11808, "description": "A meta package pulling all needed dependencies for XCP-ng"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xcp-rrdd", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 3640260, "description": "Statistics gathering daemon for the xapi toolstack"}, {"url": "http://www.gnu.org/software/grub/", "version": "2.06", "name": "grub-efi", "license": "GPLv3+", "changelog": null, "release": "4.0.2.1.xcpng8.3", "size": 4224468, "description": "GRUB for EFI systems."}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "python2-xapi-storage", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 281168, "description": "Xapi storage interface (Python2)"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "squeezed", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 1801864, "description": "Memory ballooning daemon for the xapi toolstack"}, {"url": "http://www.gnu.org/software/grub/", "version": "2.06", "name": "grub", "license": "GPLv3+", "changelog": null, "release": "4.0.2.1.xcpng8.3", "size": 1054832, "description": "Bootloader with support for Linux, Multiboot and more"}, {"url": "https://github.com/xapi-project/sm", "version": "3.2.3", "name": "sm", "license": "LGPL", "changelog": null, "release": "1.15.xcpng8.3", "size": 364880, "description": "sm - XCP storage managers"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "xapi-tests", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 6841292, "description": "Toolstack test programs"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "message-switch", "license": "ISC", "changelog": null, "release": "1.9.xcpng8.3", "size": 4443828, "description": "A store and forward message switch"}, {"url": "http://www.xen.org", "version": "24.19.2", "name": "varstored-guard", "license": "LGPL-2.1-or-later WITH OCaml-LGPL-linking-exception", "changelog": null, "release": "1.9.xcpng8.3", "size": 4843928, "description": "Deprivileged XAPI socket Daemon for EFI variable storage"}]
                              
                              1 Reply Last reply Reply Quote 0
                              • gthvn1G Offline
                                gthvn1 Vates 🪐 XCP-ng Team
                                last edited by

                                @olivierlambert do you know who on XOA side can have a look?

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post