Xen Orchestra - Monorepo installation Changes



  • Hey all,

    The XO team has made some changes to the installation process and we need some people to test our upgrade on a working set of systems.

    We ( @danp and I ) are looking for users who are on a current distro of Debian or Ubuntu, but who have had their systems running for a while now.

    To run the process, obviously backup first and then run the below.

    sudo bash
    <password>
    sudo curl https://raw.githubusercontent.com/Jarli01/xenorchestra_updater/New-Install-Path/xo-update.sh | bash
    

    Thanks and let me know how it goes.

    Obviously we're "hoping" everything just works. Within the installation things should move from /opt/xo-server to /opt/xen-orchestra

    Along with a few other changes, nothing critical but need to confirm upgradability.



  • Is Ubuntu 17.04 current enough for you? I tried just now and got all kinds of errors. I'll roll back the snapshot and do it again and see what they were specifically. I can also upgrade to the latest distro if that helps too.



  • That should be current enough, did you use our installation script when you installed this system however long ago?

    https://github.com/Jarli01/xenorchestra_installer



  • @bnrstnr said in Xen Orchestra - Monorepo installation Changes:

    Is Ubuntu 17.04 current enough for you? I tried just now and got all kinds of errors. I'll roll back the snapshot and do it again and see what they were specifically. I can also upgrade to the latest distro if that helps too.

    Post your upgrade output so we can see what is going on with it. If possible could we get a copy of your installation to work with?

    Obviously we don't need any of your credentials or targets, just need something to test against.



  • @bnrstnr If the errors are related to Yarn, then see this prior forum post --
    https://www.mangolassi.it/topic/12809/xen-orchestra-community-edition-installing-with-yarn/123



  • yarn install v0.24.5
    [1/4] Resolving packages...
    success Already up-to-date.
    $ scripts/run-script prepare
    Done in 1.01s.
    yarn build v0.24.5
    $ scripts/run-script --parallel build
    * complex-matcher:prebuild − yarn run clean
    * value-matcher:prebuild − rimraf dist/
    * vhd-cli:prebuild − rimraf dist/
    /bin/sh: 1: rimraf: not found
    * xen-api:prebuild − rimraf dist/
    /bin/sh: 1: rimraf: not found
    * xo-cli:prebuild − rimraf dist/
    /bin/sh: 1: rimraf: not found
    * xo-collection:prebuild − rimraf dist/
    /bin/sh: 1: rimraf: not found
    * xo-common:prebuild − yarn run clean
    /bin/sh: 1: rimraf: not found
    * xo-lib:prebuild − rimraf dist/
    * xo-remote-parser:prebuild − rimraf dist/
    /bin/sh: 1: rimraf: not found
    * xo-server:prebuild − index-modules src/api src/xapi/mixins src/xo-mixins && yarn run clean
    /bin/sh: 1: rimraf: not found
    * xo-server-auth-google:prebuild − rimraf dist/
    /bin/sh: 1: index-modules: not found
    * xo-server-auth-ldap:prebuild − rimraf dist/
    /bin/sh: 1: rimraf: not found
    * xo-server-auth-saml:prebuild − yarn run clean
    /bin/sh: 1: rimraf: not found
    * xo-server-backup-reports:prebuild − yarn run clean
    * xo-server-cloud:prebuild − yarn run clean
    * xo-server-perf-alert:prebuild − yarn run clean
    * xo-server-transport-email:prebuild − rimraf dist/
    * xo-server-transport-nagios:prebuild − yarn run clean
    /bin/sh: 1: * xo-server-transport-slack:prebuild − npm run clean
    rimraf: not found
    * xo-server-transport-xmpp:prebuild − yarn run clean
    * xo-server-usage-report:prebuild − npm run clean
    * xo-vmdk-to-vhd:prebuild − npm run clean
    * @xen-orchestra/cron:prebuild − yarn run clean
    * xo-acl-resolver:build − babel --source-maps --out-dir=dist/ src/
    * xo-server-auth-github:build − NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: * xo-server-load-balancer:build − NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: babel: not found
    * value-matcher:prebuild − Error: 127
    * value-matcher:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    babel: not found
    * vhd-cli:prebuild − Error: 127
    * vhd-cli:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: babel: not found
    /bin/sh: 1: * xen-api:prebuild − Error: 127
    * xen-api:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: cross-env: not found
    /bin/sh: 1: * xo-cli:prebuild − Error: 127
    cross-env: not found
    * xo-cli:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    /bin/sh: 1: * xo-collection:prebuild − Error: 127
    * xo-collection:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    /bin/sh: 1: * xo-lib:prebuild − Error: 127
    * xo-lib:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: * xo-remote-parser:prebuild − Error: 127
    * xo-remote-parser:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    cross-env: not found
    /bin/sh: 1: * xo-server:prebuild − Error: 127
    * xo-server:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    * xo-server-auth-google:prebuild − Error: 127
    * xo-server-auth-google:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: * xo-server-auth-ldap:prebuild − Error: 127
    * xo-server-auth-ldap:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    * xo-server-transport-email:prebuild − Error: 127
    * xo-server-transport-email:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: cross-env: not found
    /bin/sh: 1: * xo-acl-resolver:build − Error: 127
    * xo-server-auth-github:build − Error: 127
    /bin/sh: 1: cross-env: not found
    * xo-server-load-balancer:build − Error: 127
    * value-matcher:build − Error: 127
    * vhd-cli:build − Error: 127
    cross-env: not found
    * xen-api:build − Error: 127
    * xo-cli:build − Error: 127
    * xo-collection:build − Error: 127
    * xo-lib:build − Error: 127
    * xo-remote-parser:build − Error: 127
    * xo-server:build − Error: 127
    * xo-server-auth-google:build − Error: 127
    * xo-server-auth-ldap:build − Error: 127
    * xo-server-transport-email:build − Error: 127
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    yarn run v0.24.5
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
           rimraf: not found
    $ rimraf dist/
    sh: 1: error Command failed with exit code 127.
    rimraf: not found
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    $ rimraf dist/
    error Command failed with exit code 127.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    $ rimraf dist/
    sh: 1: rimraf: not found
    * complex-matcher:prebuild − Error: 1
    * complex-matcher:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    sh: 1: sh: 1: rimraf: not found
    rimraf: not found
    sh: 1: rimraf: not found
    error Command failed with exit code 127.
    * xo-common:prebuild − Error: 1
    * xo-common:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    error Command failed with exit code 127.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    error Command failed with exit code 127.
    error Command failed with exit code 127.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    cross-env: not found
    * complex-matcher:build − Error: 127
    /bin/sh: 1: cross-env: not found
    * xo-common:build − Error: 127
    sh: 1: rimraf: not found
    * xo-server-perf-alert:prebuild − Error: 1
    * xo-server-perf-alert:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    error Command failed with exit code 127.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    * xo-server-auth-saml:prebuild − Error: 1
    * xo-server-auth-saml:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: rimraf: not found
    cross-env: not found
    * xo-server-backup-reports:prebuild − Error: 1
    * xo-server-backup-reports:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    error Command failed with exit code 127.
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    * xo-server-cloud:prebuild − Error: 1
    * xo-server-cloud:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    sh: 1: /bin/sh: 1: * xo-server-perf-alert:build − Error: 127
    * xo-server-auth-saml:build − Error: 127
    cross-env: not found
    * xo-server-backup-reports:build − Error: 127
    rimraf: not found
    error Command failed with exit code 127.
    cross-env: not found
    * xo-server-cloud:build − Error: 127
    info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
    * xo-server-transport-nagios:prebuild − Error: 1
    * xo-server-transport-nagios:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-transport-xmpp:prebuild − Error: 1
    * xo-server-transport-xmpp:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: cross-env: not found
    * xo-server-transport-nagios:build − Error: 127
    /bin/sh: 1: * @xen-orchestra/cron:prebuild − Error: 1
    * @xen-orchestra/cron:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    cross-env: not found
    * xo-server-transport-xmpp:build − Error: 127
    /bin/sh: 1: cross-env: not found
    * @xen-orchestra/cron:build − Error: 127
    
    > [email protected] clean /opt/xen-orchestra/packages/xo-vmdk-to-vhd
    > rimraf dist/
    
    
    > [email protected] clean /opt/xen-orchestra/packages/xo-server-usage-report
    > rimraf dist/
    
    
    > [email protected] clean /opt/xen-orchestra/packages/xo-server-transport-slack
    > rimraf dist/
    
    sh: 1: sh: 1: rimraf: not foundrimraf: not found
    
    sh: 1: rimraf: not found
    npmnpm ERR! file sh
    npm ERR!  ERR! filecode sh
     ELIFECYCLE
    npmnpm  ERR!ERR!  errnocode ELIFECYCLE
     ENOENT
    npmnpm  ERR!ERR!  syscall spawn
    errno ENOENT
    npmnpm  ERR!ERR! syscall spawn
    npm [email protected] clean: `rimraf dist/`
    npm  ERR!npm ERR!ERR! [email protected] clean: `rimraf dist/`
     spawn ENOENT
    npmnpm  fileERR! ERR! sh
     spawn ENOENT
    
    npmnpm npm ERR! ERR! ERR!code Failed at the [email protected] clean script.
    
    npmnpm ELIFECYCLE
    npm   ERR!ERR!ERR!  This is probably not a problem with npm. There is likely additional logging output above.
     Failed at the [email protected] clean script.
    errno ENOENT
    npm ERR! syscall spawn
    npmnpmnpm ERR! This is probably not a problem with npm. There is likely additional logging output above.
    npm  ERR!WARN [email protected] clean: `rimraf dist/`
    npm Local package.json exists, but node_modules missing, did you mean to install?
      WARNERR!
     Local package.json exists, but node_modules missing, did you mean to install?
     spawn ENOENT
    npm ERR!
    npm
    ERR! Failed at the [email protected] clean script.
    npmnpm ERR! ERR! This is probably not a problem with npm. There is likely additional logging output above.
    npm A complete log of this run can be found in:
    npm npm ERR!ERR! A complete log of this run can be found in:
    npm  ERR!     /home/nhulslander/.npm/_logs/2018-02-02T16_08_31_797Z-debug.log
    WARN Local package.json exists, but node_modules missing, did you mean to install?
    
         /home/nhulslander/.npm/_logs/2018-02-02T16_08_31_799Z-debug.log
    * xo-server-usage-report:prebuild − Error: 1
    * xo-server-usage-report:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /home/nhulslander/.npm/_logs/2018-02-02T16_08_31_802Z-debug.log
    * xo-vmdk-to-vhd:prebuild − Error: 1
    * xo-vmdk-to-vhd:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: cross-env: not found
    * xo-server-usage-report:build − Error: 127
    * xo-server-transport-slack:prebuild − Error: 1
    * xo-server-transport-slack:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    /bin/sh: 1: cross-env: not found
    * xo-vmdk-to-vhd:build − Error: 127
    /bin/sh: 1: cross-env: not found
    * xo-server-transport-slack:build − Error: 127
    ✖ 49
    error Command failed with exit code 1.
    warning: tag 'v5.16.0' is really 'xo-server/v5.16.0' here
    Updated version v5.16.0
    Checking xo-web...
    Current branch stable
    Current version v5.8.3
    235 updates available
    Updating from source...
    
    *** Please tell me who you are.
    
    Run
    
      git config --global user.email "[email protected]"
      git config --global user.name "Your Name"
    
    to set your account's default identity.
    Omit --global to set the identity only in this repository.
    
    fatal: unable to auto-detect email address (got '[email protected](none)')
    Cannot save the current index state
    Updating 9199784a..c1d9cc7e
    error: Your local changes to the following files would be overwritten by merge:
            package.json
            src/xo-app/settings/config/index.js
            src/xo-app/xosan/index.js
            yarn.lock
    Please commit your changes or stash them before you merge.
    Aborting
    Clearing directories...
    Installing...
    


  • Looks like it's related to yarn, I'll roll it back again and do the yarn stuff first.



  • @bnrstnr IDK. Never seen the rimraf stuff before. 🤷



  • Think i used the

    curl https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xo_install.sh | bash
    

    method on Ubuntu 17.04, can i run the update command on the OP?



  • sed: can't read /lib/systemd/system/xo-server.service: No such file or directory
    Checking xo-server...
    Current branch master
    warning: tag 'v5.16.0' is really 'xo-server/v5.16.0' here
    Current version v5.16.0
    0 updates available
    Updating from source...
    No stash entries found.
    Already up-to-date.
    Clearing directories...
    Adding existing plugins to Yarn lock file...
    find: ‘node_modules’: No such file or directory
    yarn upgrade v0.24.5
    [1/4] Resolving packages...
    [2/4] Fetching packages...
    warning [email protected]: The platform "linux" is incompatible with this module.
    info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
    [3/4] Linking dependencies...
    warning "[email protected]" has unmet peer dependency "@babel/[email protected]^7.0.0-alpha || ^7.0.0-beta || ^7.0.0".
    [4/4] Rebuilding all packages...
    success Saved lockfile.
    warning Your current version of Yarn is out of date. The latest version is "1.3.2" while you're on "0.24.5".
    success Saved 478 new dependencies.
    

    This was the stuff before the massive list of things it was updating



  • @hobbit666 I'm fairly confident this is how I installed too, and right now the upgrade script breaks my XO. Make sure you snapshot before you run.



  • @bnrstnr Your yarn version is ancient, upgrade that.



  • To confirm run yarn -v if it's 0.X and not 1.X.X upgrade, based on what I see in the logs there its very old.



  • @hobbit666 said in Xen Orchestra - Monorepo installation Changes:

    Think i used the

    curl https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xo_install.sh | bash
    

    method on Ubuntu 17.04, can i run the update command on the OP?

    You should be able to, just take a snapshot to roll back if it breaks. Post your output into a code block if there are errors.



  • 01/xenorchestra_updater/New-Install-Path/xo-update.sh | bash
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  3194  100  3194    0     0   3194      0  0:00:01 --:--:--  0:00:01 11530
    Stopping xo-server...
    Checking for Yarn package...
    Checking for Yarn update...
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    yarn is already the newest version (1.3.2-1).
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
    Checking for Repo change...
    Cloning into 'xen-orchestra'...
    remote: Counting objects: 21397, done.
    remote: Compressing objects: 100% (3496/3496), done.
    remote: Total 21397 (delta 9159), reused 12618 (delta 9111), pack-reused 8720
    Receiving objects: 100% (21397/21397), 6.06 MiB | 3.65 MiB/s, done.
    Resolving deltas: 100% (13235/13235), done.
    sed: can't read /lib/systemd/system/xo-server.service: No such file or directory
    Checking xo-server...
    Current branch master
    warning: tag 'v5.16.0' is really 'xo-server/v5.16.0' here
    Current version v5.16.0
    0 updates available
    Updating from source...
    No stash entries found.
    Already up-to-date.
    Clearing directories...
    Adding existing plugins to Yarn lock file...
    find: ‘node_modules’: No such file or directory
    yarn upgrade v1.3.2
    [1/5] Validating package.json...
    [2/5] Resolving packages...
    warning workspace-aggregator-5fa5c6ff-d241-4947-a52c-8e6825337930 > xo-cli > [email protected]: Use mz or fs-extra^3.0 with Promise Support
    warning workspace-aggregator-5fa5c6ff-d241-4947-a52c-8e6825337930 > xo-vmdk-to-vhd > [email protected]: Use mz or fs-extra^3.0 with Promise Support
    warning workspace-aggregator-5fa5c6ff-d241-4947-a52c-8e6825337930 > vhd-cli > @nraynaud/xo-fs > [email protected]: Use mz or fs-extra^3.0 with Promise Support
    warning workspace-aggregator-5fa5c6ff-d241-4947-a52c-8e6825337930 > xo-server > julien-f-unzip > fstream > [email protected]: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
    [3/5] Fetching packages...
    info [email protected]: The platform "linux" is incompatible with this module.
    info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
    [4/5] Linking dependencies...
    warning " > [email protected]" has unmet peer dependency "@babel/[email protected]^7.0.0-alpha || ^7.0.0-beta || ^7.0.0".
    [5/5] Rebuilding all packages...
    success Saved lockfile.
    success Saved 1108 new dependencies.
    
    Done in 104.80s.
    Installing...
    yarn install v1.3.2
    [1/5] Validating package.json...
    [2/5] Resolving packages...
    success Already up-to-date.
    $ scripts/run-script prepare
    Done in 2.36s.
    yarn run v1.3.2
    $ scripts/run-script --parallel build
    * complex-matcher:prebuild − yarn run clean
    * value-matcher:prebuild − rimraf dist/
    * vhd-cli:prebuild − rimraf dist/
    * xen-api:prebuild − rimraf dist/
    * xo-cli:prebuild − rimraf dist/
    * xo-collection:prebuild − rimraf dist/
    * xo-common:prebuild − yarn run clean
    * xo-lib:prebuild − rimraf dist/
    * xo-remote-parser:prebuild − rimraf dist/
    * xo-server:prebuild − index-modules src/api src/xapi/mixins src/xo-mixins && yarn run clean
    * xo-server-auth-google:prebuild − rimraf dist/
    * xo-server-auth-ldap:prebuild − rimraf dist/
    * xo-server-auth-saml:prebuild − yarn run clean
    * xo-server-backup-reports:prebuild − yarn run clean
    * xo-server-cloud:prebuild − yarn run clean
    * xo-server-perf-alert:prebuild − yarn run clean
    * xo-server-transport-email:prebuild − rimraf dist/
    * xo-server-transport-nagios:prebuild − yarn run clean
    * xo-server-transport-slack:prebuild − npm run clean
    * xo-server-transport-xmpp:prebuild − yarn run clean
    * xo-server-usage-report:prebuild − npm run clean
    * xo-vmdk-to-vhd:prebuild − npm run clean
    * @xen-orchestra/cron:prebuild − yarn run clean
    * xo-acl-resolver:build − babel --source-maps --out-dir=dist/ src/
    * xo-server-auth-github:build − NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-load-balancer:build − NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * value-matcher:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * vhd-cli:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xen-api:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-cli:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-collection:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-lib:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-remote-parser:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-auth-google:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-auth-ldap:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-transport-email:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    index generated src/api/index.js
    index generated src/xapi/mixins/index.js
    index generated src/xo-mixins/index.js
    
    > [email protected] clean /opt/xen-orchestra/packages/xo-vmdk-to-vhd
    > rimraf dist/
    
    
    > [email protected] clean /opt/xen-orchestra/packages/xo-server-transport-slack
    > rimraf dist/
    
    
    > [email protected] clean /opt/xen-orchestra/packages/xo-server-usage-report
    > rimraf dist/
    
    * xo-server-usage-report:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-transport-slack:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-vmdk-to-vhd:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    $ rimraf dist/
    * complex-matcher:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-common:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-auth-saml:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-cloud:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-backup-reports:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-perf-alert:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * @xen-orchestra/cron:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-transport-xmpp:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    * xo-server-transport-nagios:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    $ rimraf dist/
    src/index.js -> dist/index.js
    * xo-server:build − cross-env NODE_ENV=production babel --source-maps --out-dir=dist/ src/
    src/index.js -> dist/index.js
    @babel/preset-env: `DEBUG` option
    
    Using targets:
    {
      "chrome": "62",
      "firefox": "57",
      "ie": "11",
      "ios": "11",
      "node": "4"
    }
    
    Using modules transform: commonjs
    
    Using plugins:
      transform-arrow-functions { "ie":"11", "node":"4" }
      transform-block-scoping { "ie":"11", "node":"4" }
      transform-classes { "ie":"11", "node":"4" }
      transform-computed-properties { "ie":"11" }
      transform-destructuring { "ie":"11", "node":"4" }
      transform-duplicate-keys { "ie":"11" }
      transform-for-of { "ie":"11", "node":"4" }
      transform-function-name { "ie":"11", "node":"4" }
      transform-literals { "ie":"11" }
      transform-object-super { "ie":"11", "node":"4" }
      transform-parameters { "ie":"11", "node":"4" }
      transform-shorthand-properties { "ie":"11" }
      transform-spread { "ie":"11", "node":"4" }
      transform-sticky-regex { "ie":"11", "node":"4" }
      transform-template-literals { "ie":"11" }
      transform-unicode-regex { "ie":"11", "node":"4" }
      transform-new-target { "ie":"11", "node":"4" }
      transform-regenerator { "ie":"11", "node":"4" }
      transform-exponentiation-operator { "ie":"11", "node":"4" }
      transform-async-to-generator { "ie":"11", "node":"4" }
      transform-dotall-regex { "firefox":"57", "ie":"11", "ios":"11", "node":"4" }
      proposal-async-generator-functions { "chrome":"62", "ie":"11", "ios":"11", "node":"4" }
      proposal-object-rest-spread { "ie":"11", "ios":"11", "node":"4" }
      proposal-optional-catch-binding { "chrome":"62", "firefox":"57", "ie":"11", "ios":"11", "node":"4" }
      proposal-unicode-property-regex { "chrome":"62", "firefox":"57", "ie":"11", "ios":"11", "node":"4" }
    
    Using polyfills with `usage` option:
    src/clear-object.js -> dist/clear-object.js
    src/index.js -> dist/index.js
    @babel/preset-env: `DEBUG` option
    
    Using targets:
    {
      "node": "6"
    }
    
    Using modules transform: commonjs
    
    Using plugins:
      transform-destructuring { "node":"6" }
      transform-for-of { "node":"6" }
      transform-function-name { "node":"6" }
      transform-exponentiation-operator { "node":"6" }
      transform-async-to-generator { "node":"6" }
      transform-dotall-regex { "node":"6" }
      proposal-async-generator-functions { "node":"6" }
      proposal-object-rest-spread { "node":"6" }
      proposal-optional-catch-binding { "node":"6" }
      proposal-unicode-property-regex { "node":"6" }
    
    Using polyfills with `usage` option:
    
    [src/index.js] Based on your code and targets, none were added.
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    
    [src/config.js] Based on your code and targets, none were added.
    src/index.js -> dist/index.js
    src/config.js -> dist/config.js
    src/index.spec.js -> dist/index.spec.js
    src/cli.js -> dist/cli.js
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    src/collection.js -> dist/collection.js
    src/density-plan.js -> dist/density-plan.js
    src/vhd.js -> dist/vhd.js
    
    [src/index.js] Added following polyfills:
      es6.promise { "node":"6" }
      es6.array.sort { "node":"6" }
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    src/collection.spec.js -> dist/collection.spec.js
    src/prompt-schema.js -> dist/prompt-schema.js
    src/index.js -> dist/index.js
    src/index.js -> dist/index.js
    @babel/preset-env: `DEBUG` option
    @babel/preset-env: `DEBUG` option
    
    Using targets:
    
    Using targets:
    {
      "chrome": "62",
      "firefox": "57",
      "ie": "11",
      "ios": "11",
      "node": "4"
    }
    {
      "node": "6"
    }
    
    Using modules transform: commonjs
    
    Using plugins:
      transform-destructuring { "node":"6" }
    
    Using modules transform: commonjs
    
    Using plugins:
      transform-arrow-functions { "ie":"11", "node":"4" }
      transform-for-of { "node":"6" }
      transform-function-name { "node":"6" }
      transform-exponentiation-operator { "node":"6" }
      transform-async-to-generator { "node":"6" }
      transform-dotall-regex { "node":"6" }
      transform-block-scoping { "ie":"11", "node":"4" }
      transform-classes { "ie":"11", "node":"4" }
      proposal-async-generator-functions { "node":"6" }
      proposal-object-rest-spread { "node":"6" }
      proposal-optional-catch-binding { "node":"6" }
      transform-computed-properties { "ie":"11" }
      transform-destructuring { "ie":"11", "node":"4" }
      proposal-unicode-property-regex { "node":"6" }
    
    Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
      transform-duplicate-keys { "ie":"11" }
      transform-for-of { "ie":"11", "node":"4" }
      transform-function-name { "ie":"11", "node":"4" }
      transform-literals { "ie":"11" }
    @babel/preset-env: `DEBUG` option
      transform-object-super { "ie":"11", "node":"4" }
      transform-parameters { "ie":"11", "node":"4" }
      transform-shorthand-properties { "ie":"11" }
      transform-spread { "ie":"11", "node":"4" }
      transform-sticky-regex { "ie":"11", "node":"4" }
      transform-template-literals { "ie":"11" }
    
    Using targets:
      transform-unicode-regex { "ie":"11", "node":"4" }
      transform-new-target { "ie":"11", "node":"4" }
      transform-regenerator { "ie":"11", "node":"4" }
      transform-exponentiation-operator { "ie":"11", "node":"4" }
      transform-async-to-generator { "ie":"11", "node":"4" }
      transform-dotall-regex { "firefox":"57", "ie":"11", "ios":"11", "node":"4" }
    {
      "chrome": "62",
      "firefox": "57",
      "ie": "11",
      "ios": "11",
      "node": "6"
    }
    
    Using modules transform: commonjs
      proposal-async-generator-functions { "chrome":"62", "ie":"11", "ios":"11", "node":"4" }
    
    Using plugins:
      transform-arrow-functions { "ie":"11" }
      proposal-object-rest-spread { "ie":"11", "ios":"11", "node":"4" }
      proposal-optional-catch-binding { "chrome":"62", "firefox":"57", "ie":"11", "ios":"11", "node":"4" }
      proposal-unicode-property-regex { "chrome":"62", "firefox":"57", "ie":"11", "ios":"11", "node":"4" }
    
    Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
      transform-block-scoping { "ie":"11" }
      transform-classes { "ie":"11" }
      transform-computed-properties { "ie":"11" }
      transform-destructuring { "ie":"11", "node":"6" }
      transform-duplicate-keys { "ie":"11" }
      transform-for-of { "ie":"11", "node":"6" }
      transform-function-name { "ie":"11", "node":"6" }
      transform-literals { "ie":"11" }
      transform-object-super { "ie":"11" }
      transform-parameters { "ie":"11" }
      transform-shorthand-properties { "ie":"11" }
      transform-spread { "ie":"11" }
      transform-sticky-regex { "ie":"11" }
      transform-template-literals { "ie":"11" }
      transform-unicode-regex { "ie":"11" }
      transform-new-target { "ie":"11" }
      transform-regenerator { "ie":"11" }
      transform-exponentiation-operator { "ie":"11", "node":"6" }
      transform-async-to-generator { "ie":"11", "node":"6" }
      transform-dotall-regex { "firefox":"57", "ie":"11", "ios":"11", "node":"6" }
      proposal-async-generator-functions { "chrome":"62", "ie":"11", "ios":"11", "node":"6" }
      proposal-object-rest-spread { "ie":"11", "ios":"11", "node":"6" }
      proposal-optional-catch-binding { "chrome":"62", "firefox":"57", "ie":"11", "ios":"11", "node":"6" }
      proposal-unicode-property-regex { "chrome":"62", "firefox":"57", "ie":"11", "ios":"11", "node":"6" }
    
    Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
    src/test-cli.js -> dist/test-cli.js
    src/index.js -> dist/index.js
    src/vhd-write.js -> dist/vhd-write.js
    src/index.spec.js -> dist/index.spec.js
    src/index.js -> dist/index.js
    src/is-empty.js -> dist/is-empty.js
    src/is-object.js -> dist/is-object.js
    src/not-implemented.js -> dist/not-implemented.js
    src/vhd-write.spec.js -> dist/vhd-write.spec.js
    src/index.bench.js -> dist/index.bench.js
    src/unique-index.js -> dist/unique-index.js
    src/api-errors.js -> dist/api-errors.js
    src/performance-plan.js -> dist/performance-plan.js
    src/index.js -> dist/index.js
    src/unique-index.spec.js -> dist/unique-index.spec.js
    src/virtual-buffer.js -> dist/virtual-buffer.js
    src/index.fixtures.js -> dist/index.fixtures.js
    src/index.js -> dist/index.js
    src/view.example.js -> dist/view.example.js
    src/index.js -> dist/index.js
    src/api/acl.js -> dist/api/acl.js
    src/virtual-buffer.spec.js -> dist/virtual-buffer.spec.js
    src/view.js -> dist/view.js
    src/next.js -> dist/next.js
    src/index.js -> dist/index.js
    src/inject-events.js -> dist/inject-events.js
    src/api/backup.js -> dist/api/backup.js
    src/memory-test.js -> dist/memory-test.js
    src/transports/_utils.js -> dist/transports/_utils.js
    src/plan.js -> dist/plan.js
    src/utils.js -> dist/utils.js
    src/transports/auto.js -> dist/transports/auto.js
    src/transports/json-rpc.js -> dist/transports/json-rpc.js
    src/transports/xml-rpc-json.js -> dist/transports/xml-rpc-json.js
    src/transports/xml-rpc.js -> dist/transports/xml-rpc.js
    src/api/disk.js -> dist/api/disk.js
    src/parse.js -> dist/parse.js
    src/index.js -> dist/index.js
    src/api/docker.js -> dist/api/docker.js
    src/vmdk-read.js -> dist/vmdk-read.js
    src/index.js -> dist/index.js
    src/vmdk-read.spec.js -> dist/vmdk-read.spec.js
    src/api/group.js -> dist/api/group.js
    src/vmdk-to-vhd.spec.js -> dist/vmdk-to-vhd.spec.js
    src/api/host.js -> dist/api/host.js
    src/api/index.js -> dist/api/index.js
    src/api/ip-pool.js -> dist/api/ip-pool.js
    src/api/job.js -> dist/api/job.js
    src/api/log.js -> dist/api/log.js
    src/api/message.js -> dist/api/message.js
    src/api/network.js -> dist/api/network.js
    src/api/pbd.js -> dist/api/pbd.js
    src/api/pif.js -> dist/api/pif.js
    src/api/plugin.js -> dist/api/plugin.js
    src/api/pool.js -> dist/api/pool.js
    src/api/remote.js -> dist/api/remote.js
    src/api/resource-set.js -> dist/api/resource-set.js
    src/api/role.js -> dist/api/role.js
    src/api/schedule.js -> dist/api/schedule.js
    src/api/scheduler.js -> dist/api/scheduler.js
    src/api/server.js -> dist/api/server.js
    src/api/session.js -> dist/api/session.js
    src/api/sr.js -> dist/api/sr.js
    src/api/system.js -> dist/api/system.js
    src/api/tag.js -> dist/api/tag.js
    src/api/task.js -> dist/api/task.js
    src/api/test.js -> dist/api/test.js
    src/api/token.js -> dist/api/token.js
    src/api/user.js -> dist/api/user.js
    src/api/vbd.js -> dist/api/vbd.js
    src/api/vdi.js -> dist/api/vdi.js
    src/api/vif.js -> dist/api/vif.js
    src/api/vm.js -> dist/api/vm.js
    src/api/xo.js -> dist/api/xo.js
    src/api/xosan.js -> dist/api/xosan.js
    src/collection/redis.js -> dist/collection/redis.js
    src/collection.js -> dist/collection.js
    src/connection.js -> dist/connection.js
    src/constant-stream.js -> dist/constant-stream.js
    src/decorators.js -> dist/decorators.js
    src/decorators.spec.js -> dist/decorators.spec.js
    src/fatfs-buffer.js -> dist/fatfs-buffer.js
    src/glob-matcher.js -> dist/glob-matcher.js
    src/index.js -> dist/index.js
    src/job-executor.js -> dist/job-executor.js
    src/job-executor.spec.js -> dist/job-executor.spec.js
    src/logs-cli.js -> dist/logs-cli.js
    src/lvm.js -> dist/lvm.js
    src/math.js -> dist/math.js
    src/math.spec.js -> dist/math.spec.js
    src/model.js -> dist/model.js
    src/models/acl.js -> dist/models/acl.js
    src/models/group.js -> dist/models/group.js
    src/models/job.js -> dist/models/job.js
    src/models/plugin-metadata.js -> dist/models/plugin-metadata.js
    src/models/remote.js -> dist/models/remote.js
    src/models/schedule.js -> dist/models/schedule.js
    src/models/server.js -> dist/models/server.js
    src/models/token.js -> dist/models/token.js
    src/models/user.js -> dist/models/user.js
    src/models/utils.js -> dist/models/utils.js
    src/proxy-console.js -> dist/proxy-console.js
    src/recover-account-cli.js -> dist/recover-account-cli.js
    src/remote-handlers/abstract.js -> dist/remote-handlers/abstract.js
    src/remote-handlers/local.js -> dist/remote-handlers/local.js
    src/remote-handlers/nfs.js -> dist/remote-handlers/nfs.js
    src/remote-handlers/smb.js -> dist/remote-handlers/smb.js
    src/schemas/acl.js -> dist/schemas/acl.js
    src/schemas/job.js -> dist/schemas/job.js
    src/schemas/log/jobCallEnd.js -> dist/schemas/log/jobCallEnd.js
    src/schemas/log/jobCallStart.js -> dist/schemas/log/jobCallStart.js
    src/schemas/log/jobEnd.js -> dist/schemas/log/jobEnd.js
    src/schemas/log/jobStart.js -> dist/schemas/log/jobStart.js
    src/schemas/log.js -> dist/schemas/log.js
    src/schemas/plugin.js -> dist/schemas/plugin.js
    src/schemas/user.js -> dist/schemas/user.js
    src/size-stream.js -> dist/size-stream.js
    src/stream-to-existing-buffer.js -> dist/stream-to-existing-buffer.js
    src/stream-to-existing-buffer.spec.js -> dist/stream-to-existing-buffer.spec.js
    src/stream-to-new-buffer.js -> dist/stream-to-new-buffer.js
    src/utils.js -> dist/utils.js
    src/utils.spec.js -> dist/utils.spec.js
    src/vhd-merge.js -> dist/vhd-merge.js
    src/xapi/index.js -> dist/xapi/index.js
    src/xapi/mixins/gpu.js -> dist/xapi/mixins/gpu.js
    src/xapi/mixins/index.js -> dist/xapi/mixins/index.js
    src/xapi/mixins/networking.js -> dist/xapi/mixins/networking.js
    src/xapi/mixins/patching.js -> dist/xapi/mixins/patching.js
    src/xapi/mixins/storage.js -> dist/xapi/mixins/storage.js
    src/xapi/mixins/vm.js -> dist/xapi/mixins/vm.js
    src/xapi/other-config-template.js -> dist/xapi/other-config-template.js
    src/xapi/utils.js -> dist/xapi/utils.js
    src/xapi-object-to-xo.js -> dist/xapi-object-to-xo.js
    src/xapi-stats.js -> dist/xapi-stats.js
    src/xo-mixins/acls.js -> dist/xo-mixins/acls.js
    src/xo-mixins/api.js -> dist/xo-mixins/api.js
    src/xo-mixins/authentication.js -> dist/xo-mixins/authentication.js
    src/xo-mixins/backups.js -> dist/xo-mixins/backups.js
    src/xo-mixins/config-management.js -> dist/xo-mixins/config-management.js
    src/xo-mixins/hooks.js -> dist/xo-mixins/hooks.js
    src/xo-mixins/http.js -> dist/xo-mixins/http.js
    src/xo-mixins/index.js -> dist/xo-mixins/index.js
    src/xo-mixins/ip-pools.js -> dist/xo-mixins/ip-pools.js
    src/xo-mixins/jobs.js -> dist/xo-mixins/jobs.js
    src/xo-mixins/logs/index.js -> dist/xo-mixins/logs/index.js
    src/xo-mixins/logs/loggers/abstract.js -> dist/xo-mixins/logs/loggers/abstract.js
    src/xo-mixins/logs/loggers/leveldb.js -> dist/xo-mixins/logs/loggers/leveldb.js
    src/xo-mixins/plugins.js -> dist/xo-mixins/plugins.js
    src/xo-mixins/remotes.js -> dist/xo-mixins/remotes.js
    src/xo-mixins/resource-sets.js -> dist/xo-mixins/resource-sets.js
    src/xo-mixins/scheduling.js -> dist/xo-mixins/scheduling.js
    src/xo-mixins/store.js -> dist/xo-mixins/store.js
    src/xo-mixins/subjects.js -> dist/xo-mixins/subjects.js
    src/xo-mixins/xen-servers.js -> dist/xo-mixins/xen-servers.js
    src/xo.js -> dist/xo.js
    Done in 89.21s.
    warning: tag 'v5.16.0' is really 'xo-server/v5.16.0' here
    Updated version v5.16.0
    Checking xo-web...
    Current branch stable
    Current version v5.8.3
    235 updates available
    Updating from source...
    
    *** Please tell me who you are.
    
    Run
    
      git config --global user.email "[email protected]"
      git config --global user.name "Your Name"
    
    to set your account's default identity.
    Omit --global to set the identity only in this repository.
    
    fatal: unable to auto-detect email address (got '[email protected](none)')
    Cannot save the current index state
    Updating 9199784a..c1d9cc7e
    error: Your local changes to the following files would be overwritten by merge:
            package.json
            src/xo-app/settings/config/index.js
            src/xo-app/xosan/index.js
            yarn.lock
    Please commit your changes or stash them before you merge.
    Aborting
    Clearing directories...
    Installing...
    yarn install v1.3.2
    [1/5] Validating package.json...
    [2/5] Resolving packages...
    [3/5] Fetching packages...
    info [email protected]: The platform "linux" is incompatible with this module.
    info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
    [4/5] Linking dependencies...
    [5/5] Building fresh packages...
    $ npm run build
    
    > [email protected] build /opt/xo-web
    > npm run build-indexes && NODE_ENV=production gulp build
    
    
    > [email protected] build-indexes /opt/xo-web
    > index-modules --auto src
    
    index generated src/common/themes/index.js
    index generated src/common/intl/locales/index.js
    [11:29:00] Using gulpfile /opt/xo-web/gulpfile.js
    [11:29:00] Starting 'build'...
    [11:29:00] Starting 'buildPages'...
    [11:29:00] Starting 'buildScripts'...
    [11:29:00] Starting 'buildStyles'...
    [11:29:00] Starting 'copyAssets'...
    [11:29:03] Finished 'buildPages' after 3.37 s
    [11:29:08] Finished 'buildStyles' after 8.25 s
    [11:29:09] Finished 'copyAssets' after 9.22 s
    [11:31:31] Finished 'buildScripts' after 2.5 min
    [11:31:31] Finished 'build' after 2.5 min
    Done in 173.75s.
    yarn run v1.3.2
    $ npm run build-indexes && NODE_ENV=production gulp build
    
    > [email protected] build-indexes /opt/xo-web
    > index-modules --auto src
    
    index generated src/common/themes/index.js
    index generated src/common/intl/locales/index.js
    [11:31:33] Using gulpfile /opt/xo-web/gulpfile.js
    [11:31:33] Starting 'build'...
    [11:31:33] Starting 'buildPages'...
    [11:31:33] Starting 'buildScripts'...
    [11:31:33] Starting 'buildStyles'...
    [11:31:33] Starting 'copyAssets'...
    [11:31:34] Finished 'buildPages' after 1.39 s
    [11:31:40] Finished 'buildStyles' after 7.15 s
    [11:31:40] Finished 'copyAssets' after 7.29 s
    [11:33:59] Finished 'buildScripts' after 2.43 min
    [11:33:59] Finished 'build' after 2.43 min
    Done in 147.77s.
    Updated version v5.8.3
    Restarting xo-server...
    

    removed the massive list of stuff in the center. Upgraded to 17.10, upgraded to latest yarn package. Still no dice.



  • @bnrstnr I'm not sure what rimraf is off hand, did you install additional software into this system?

    https://www.npmjs.com/package/rimraf

    Is anyone else seeing similar issues?



  • @bnrstnr said in Xen Orchestra - Monorepo installation Changes:

    sed: can't read /lib/systemd/system/xo-server.service: No such file or directory

    This bit here is an issue:

    sed: can't read /lib/systemd/system/xo-server.service: No such file or directory


  • @bnrstnr can you go into /lib/systemd/system and see if xo-server.service is listed?



  • @dustinb3403 said in Xen Orchestra - Monorepo installation Changes:

    did you install additional software into this system?

    No additional software, other than openssh-server



  • @dustinb3403 said in Xen Orchestra - Monorepo installation Changes:

    can you go into /lib/systemd/system and see if xo-server.service is listed?

    No, it isn't...



  • @bnrstnr Looks like your XO install is very out of date.

    Also not have the service would indicate that you didn't install using the install script from this foru m. m



  • @danp I definitely installed with the script on this forum. 100% for sure. I know my XO is out of date, I don't know why though, because I do run the update script from time to time. It never seems to update anything, but it also doesn't break anything.

    Should I try running the original update script now that my yarn version is up to date, then use the new one?



  • @bnrstnr I don't believe the original script will work now due to the repo changes implemented by @olivier and company.



  • @bnrstnr said in Xen Orchestra - Monorepo installation Changes:

    @danp I definitely installed with the script on this forum. 100% for sure. I know my XO is out of date, I don't know why though, because I do run the update script from time to time. It never seems to update anything, but it also doesn't break anything.

    Should I try running the original update script now that my yarn version is up to date, then use the new one?

    I've seen weirdness from time to time as well while updating, what version is currently installed of XO-Web and XO-Server?

    Generally (and was my general feeling at the time) was to just rebuild and import your settings if this occurred.

    It might be the easiest approach for this migration going forward. . .



  • @dustinb3403 said in Xen Orchestra - Monorepo installation Changes:

    what version is currently installed of XO-Web and XO-Server?

    xo-server 5.10.0
    xo-web 5.9.0

    I'm going to try the old script now that yarn isn't ancient.



  • @bnrstnr if you installed with the installer script, it may have been a very old version of it. That service was added after I originally got everything working.

    So your installation is likely a beta install, more or less.



  • On a separate topic, we should look at getting let encrypt and ssl enabled through the installation process. . .



  • @dustinb3403 I don't know if we can get a mod to clean this thread up because all of my posts seem to not apply lol



  • @bnrstnr said in Xen Orchestra - Monorepo installation Changes:

    @dustinb3403 I don't know if we can get a mod to clean this thread up because all of my posts seem to not apply lol

    It's fine.



  • @bnrstnr said in Xen Orchestra - Monorepo installation Changes:

    *** Please tell me who you are.

    Run

    git config --global user.email "[email protected]"
    git config --global user.name "Your Name"

    This is preventing your xo-web from updating. We've talked about this before here.