Tips on installing XO
-
Hello,
I tried to use Git to clone the repository, but I got the following error:$ sudo git clone -b master https://github.com/vatesfr/xen-orchestra Cloning into 'xen-orchestra'... remote: Enumerating objects: 124347, done. remote: Counting objects: 100% (4318/4318), done. remote: Compressing objects: 100% (1974/1974), done. error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly: CANCEL (err 8) error: 3713 bytes of body are still expected fetch-pack: unexpected disconnect while reading sideband packet fatal: early EOF fatal: fetch-pack: invalid index-pack output
I changed some Git settings:
$ git config --global http.postBuffer 4096M $ git config --global http.maxRequestBuffer 100M $ git config --global core.compression 0
But it didn't matter. I downloaded the repository manually, but when installing I got the following error:
$ sudo yarn yarn install v1.22.21 [1/5] Validating package.json... [2/5] Resolving packages... success Already up-to-date. $ husky install fatal: not a git repository (or any of the parent directories): .git husky - git command not found, skipping install Done in 4.41s.
-
@jasonnix said in Tips on installing XO:
git clone -b master https://github.com/vatesfr/xen-orchestra
can you retry the git clone ? it looks like a github error
-
Hi @florent,
I did this several times. -
@jasonnix What directory were you in when you ran the
yarn
command? -
@jasonnix said in Tips on installing XO:
Hi @florent,
I did this several times.do you have a proxy to access github ?
-
Hi @Danp,
I download the XO source (master.zip) and extracted it:$ pwd /usr/local/src/xen-orchestra-master
Under the "xen-orchestra-master" directory, I ran yarn command.
-
@jasonnix That seems correct, but it doesn't match up with the earlier results you posted, ie -
success Already up-to-date.
How could this be if you just extracted the source code? You may want to try once more to confirm that you were in the correct directory in the prior attempt.
What OS are you using?
-
Hi @Danp,
I'm using Debian. As I said, I tried Git, but it failed and I downloaded the source code manually and extracted it. The full output is:$ sudo yarn yarn install v1.22.21 warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json. [1/5] Validating package.json... [2/5] Resolving packages... warning vue@2.7.16: Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details. warning vuepress > @vuepress/core > vue@2.7.16: Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details. warning vuepress > @vuepress/types > webpack-chain@6.5.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. warning vuepress > @vuepress/core > webpack-chain@6.5.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. warning vuepress > @vuepress/core > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies warning vuepress > @vuepress/core > chokidar > fsevents@1.2.13: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2 warning vuepress > @vuepress/core > webpack-dev-server > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies warning vuepress > @vuepress/theme-default > docsearch.js@2.6.3: This package has been deprecated and is no longer maintained. Please use @docsearch/js. warning vuepress > @vuepress/core > @vue/babel-preset-app > @babel/plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. warning vuepress > @vuepress/types > @types/markdown-it > highlight.js@9.18.5: Support has ended for 9.x series. Upgrade to @latest warning vuepress > @vuepress/core > @vuepress/markdown > markdown-it-chain > webpack-chain@4.12.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. warning vuepress > @vuepress/theme-default > docsearch.js > request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142 warning vuepress > @vuepress/theme-default > docsearch.js > hogan.js > mkdirp@0.3.0: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.) warning vuepress > @vuepress/core > @vuepress/shared-utils > globby > fast-glob > micromatch > snapdragon > source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated warning vuepress > @vuepress/core > copy-webpack-plugin > cacache > figgy-pudding@3.5.2: This module is no longer supported. warning vuepress > @vuepress/core > copy-webpack-plugin > webpack-log > uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. warning vuepress > @vuepress/theme-default > docsearch.js > request > uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. warning vuepress > @vuepress/core > copy-webpack-plugin > cacache > ssri > figgy-pudding@3.5.2: This module is no longer supported. warning vuepress > @vuepress/core > vue-loader > @vue/component-compiler-utils > consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog warning vuepress > @vuepress/theme-default > docsearch.js > request > har-validator@5.1.5: this library is no longer supported warning vuepress > @vuepress/theme-default > stylus > css-parse > css > source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated warning vuepress > @vuepress/core > webpack > watchpack > watchpack-chokidar2 > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies warning vuepress > @vuepress/core > @vuepress/shared-utils > globby > fast-glob > micromatch > snapdragon > source-map-resolve > resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated warning vuepress > @vuepress/core > @vuepress/shared-utils > globby > fast-glob > micromatch > snapdragon > source-map-resolve > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated warning vuepress > @vuepress/theme-default > stylus > css-parse > css > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated warning vuepress > @vuepress/core > @vuepress/shared-utils > globby > fast-glob > micromatch > snapdragon > source-map-resolve > source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated warning vuepress > @vuepress/core > optimize-css-assets-webpack-plugin > cssnano > cssnano-preset-default > postcss-svgo > svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x. warning vuepress > @vuepress/core > optimize-css-assets-webpack-plugin > cssnano > cssnano-preset-default > postcss-svgo > svgo > stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > vue@2.7.16: Vue 2 has reached EOL and is no longer actively maintained. See https://v2.vuejs.org/eol/ for more details. warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > gulp-watch > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > modular-cssify@12.1.3: Renamed to @modular-css/browserify warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > watchify > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > gulp > glob-watcher > chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > gulp-refresh > gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5 warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > modular-cssify > modular-css-core@12.1.3: Renamed to @modular-css/processor warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > react-dropzone > attr-accept > core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > react-intl > intl-relativeformat@2.2.0: This package has been deprecated, please see migration guide at 'https://github.com/formatjs/formatjs/tree/master/packages/intl-relativeformat#migration-guide' warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > react-intl > intl-messageformat > intl-messageformat-parser@1.4.0: We've written a new parser that's 6x faster and is backwards compatible. Please use @formatjs/icu-messageformat-parser warning workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > xo-web > gulp-pug > pug > pug-code-gen > constantinople > babel-types > babel-runtime > core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. [3/5] Fetching packages... info There appears to be trouble with your network connection. Retrying... info There appears to be trouble with your network connection. Retrying... info There appears to be trouble with your network connection. Retrying... [4/5] Linking dependencies... warning "@commitlint/cli > @commitlint/load > cosmiconfig-typescript-loader@5.0.0" has unmet peer dependency "@types/node@*". warning "@commitlint/cli > @commitlint/load > cosmiconfig-typescript-loader@5.0.0" has unmet peer dependency "typescript@>=4". warning "@vue/eslint-config-typescript > @typescript-eslint/eslint-plugin > ts-api-utils@1.2.1" has unmet peer dependency "typescript@>=4.2.0". warning "workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > @vates/node-vsphere-soap > soap@1.0.0" has incorrect peer dependency "axios@^0.27.2". warning "workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > @vates/event-listeners-manager > tap > @tapjs/test > @isaacs/ts-node-temp-fork-for-pr-2009@10.9.5" has unmet peer dependency "@types/node@*". warning "workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > @vates/event-listeners-manager > tap > @tapjs/asserts > tcompare > react-element-to-jsx-string@15.0.0" has unmet peer dependency "react@^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0". warning "workspace-aggregator-37bfa2ec-e7fa-46a5-8518-a529ad21b988 > @vates/event-listeners-manager > tap > @tapjs/asserts > tcompare > react-element-to-jsx-string@15.0.0" has unmet peer dependency "react-dom@^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0". warning Workspaces can only be enabled in private projects. [5/5] Building fresh packages... success Saved lockfile. $ husky install fatal: not a git repository (or any of the parent directories): .git husky - git command not found, skipping install Done in 1081.44s.
-
@jasonnix said in Tips on installing XO:
$ husky install
Not sure why you are running this command. Normally you would execute
yarn build
at this point. -
-
@jasonnix said in Tips on installing XO:
On your Debian install, why not just connect to the system over SSH and run
sudo bash
andbash -c "$(curl https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xo_install.sh)"
-
@jasonnix said in Tips on installing XO:
Please take a look at this.
I've seen it, and just checked again. I see no mention of
husky
at all. Onlyyarn
andyarn build
.Am I missing something?
-
@Danp
When I ran yarn, then I saw that error about husky. BTW, I ignored that and did:$ sudo yarn build yarn run v1.22.21 $ TURBO_TELEMETRY_DISABLED=1 turbo run build --scope xo-server --scope xo-server-'*' --scope xo-web β’ Packages in scope: xo-server, xo-server-audit, xo-server-auth-github, xo-server-auth-google, xo-server-auth-ldap, xo-server-auth-oidc, xo-server-auth-saml, xo-server-backup-reports, xo-server-load-balancer, xo-server-netbox, xo-server-perf-alert, xo-server-sdn-controller, xo-server-test, xo-server-test-plugin, xo-server-transport-email, xo-server-transport-icinga2, xo-server-transport-nagios, xo-server-transport-slack, xo-server-transport-xmpp, xo-server-usage-report, xo-server-web-hooks, xo-web β’ Running build in 22 packages β’ Remote caching disabled Tasks: 25 successful, 25 total Cached: 0 cached, 25 total Time: 6m32.251s Done in 393.78s.
Is this OK?
-
@jasonnix Yes, that looks normal to me.
-
Hello @Danp,
I installed the XO, but when I usesudo service orchestra start
command, then I can't see the web interface and I must useyarn start
. Why?
The service is running:$ sudo service orchestra status β orchestra.service - LSB: forever-service startup script for orchestra Loaded: loaded (/etc/init.d/orchestra; generated) Active: active (exited) since Sat 2024-03-09 05:02:50 EST; 5s ago Docs: man:systemd-sysv-generator(8) Process: 31543 ExecStart=/etc/init.d/orchestra start (code=exited, status=0/SUCCESS) CPU: 24ms Mar 09 05:02:47 XO systemd[1]: Starting orchestra.service - LSB: forever-service startup script for orchestra... Mar 09 05:02:48 XO orchestra[31543]: Starting orchestra Mar 09 05:02:50 XO systemd[1]: Started orchestra.service - LSB: forever-service startup script for orchestra.
No systemd?
-
It could be a rights issue. What user name did you use when you performed the
forever-service install
? -
@Danp, I did the following command:
jason@XO:$ sudo forever-service install orchestra -r jason -s dist/cli.mjs
-
IDK. The fact that it shows "active (exited)" is problematic because I would have expected to see "active (running)".
Have you checked the logs for further information?
-
@Danp,
Log says:$ sudo cat /var/log/orchestra.log 2024-03-09T12:17:14.254Z xo:main INFO Configuration loaded. 2024-03-09T12:17:14.330Z xo:main WARN Web server could not listen on http://localhost:80 { error: Error: listen EACCES: permission denied 0.0.0.0:80 at Server.setupListenHandle [as _listen2] (node:net:1794:21) at listenInCluster (node:net:1859:12) at Server.listen (node:net:1947:7) at Server.listen (/usr/local/src/xen-orchestra-master/node_modules/http-server-plus/index.js:171:12) at makeWebServerListen (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:500:37) at Array.<anonymous> (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:524:5) at Function.from (<anonymous>) at asyncMap (/usr/local/src/xen-orchestra-master/@xen-orchestra/async-map/index.js:23:28) at createWebServer (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:523:9) at main (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:792:27) { code: 'EACCES', errno: -13, syscall: 'listen', address: '0.0.0.0', port: 80, niceAddress: 'http://localhost:80' } } 2024-03-09T12:17:14.337Z xo:main WARN Access denied. 2024-03-09T12:17:14.337Z xo:main WARN Ports < 1024 are often reserved to privileges users. β EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' Error: EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' {"level":"error","message":"Forever detected script exited with code: 1"} {"level":"error","message":"Script restart attempt #1501"} 2024-03-09T12:17:19.970Z xo:main INFO Configuration loaded. 2024-03-09T12:17:20.075Z xo:main WARN Web server could not listen on http://localhost:80 { error: Error: listen EACCES: permission denied 0.0.0.0:80 at Server.setupListenHandle [as _listen2] (node:net:1794:21) at listenInCluster (node:net:1859:12) at Server.listen (node:net:1947:7) at Server.listen (/usr/local/src/xen-orchestra-master/node_modules/http-server-plus/index.js:171:12) at makeWebServerListen (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:500:37) at Array.<anonymous> (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:524:5) at Function.from (<anonymous>) at asyncMap (/usr/local/src/xen-orchestra-master/@xen-orchestra/async-map/index.js:23:28) at createWebServer (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:523:9) at main (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:792:27) { code: 'EACCES', errno: -13, syscall: 'listen', address: '0.0.0.0', port: 80, niceAddress: 'http://localhost:80' } } 2024-03-09T12:17:20.080Z xo:main WARN Access denied. 2024-03-09T12:17:20.081Z xo:main WARN Ports < 1024 are often reserved to privileges users. β EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' Error: EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' {"level":"error","message":"Forever detected script exited with code: 1"} {"level":"error","message":"Script restart attempt #1502"} (node:49836) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency (Use `node --trace-warnings ...` to show where the warning was created) 2024-03-09T12:17:25.841Z xo:main INFO Configuration loaded. 2024-03-09T12:17:25.932Z xo:main WARN Web server could not listen on http://localhost:80 { error: Error: listen EACCES: permission denied 0.0.0.0:80 at Server.setupListenHandle [as _listen2] (node:net:1794:21) at listenInCluster (node:net:1859:12) at Server.listen (node:net:1947:7) at Server.listen (/usr/local/src/xen-orchestra-master/node_modules/http-server-plus/index.js:171:12) at makeWebServerListen (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:500:37) at Array.<anonymous> (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:524:5) at Function.from (<anonymous>) at asyncMap (/usr/local/src/xen-orchestra-master/@xen-orchestra/async-map/index.js:23:28) at createWebServer (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:523:9) at main (file:///usr/local/src/xen-orchestra-master/packages/xo-server/src/index.mjs:792:27) { code: 'EACCES', errno: -13, syscall: 'listen', address: '0.0.0.0', port: 80, niceAddress: 'http://localhost:80' } } 2024-03-09T12:17:25.938Z xo:main WARN Access denied. 2024-03-09T12:17:25.938Z xo:main WARN Ports < 1024 are often reserved to privileges users. β EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' Error: EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' {"level":"error","message":"Forever detected script exited with code: 1"} {"level":"error","message":"Script restart attempt #1503"}
Also:
$ sudo cat /home/xo/.config/xo-server/config.z-auto.json cat: /home/xo/.config/xo-server/config.z-auto.json: No such file or directory
-
Again... seems like a rights issue. What changes did you make to the config.toml file? Also, did you see this statement in the documentation?
In this config file, you can change default ports (80 and 443) for xo-server. If you are running the server as a non-root user, you will need to set the port to 1024 or higher.