25 Commits

Author SHA1 Message Date
Dustin B
90965ab4ec Update xo_install.sh
Cleanup and organization of code a bit.
2018-07-31 17:15:03 -04:00
Dustin B
7d9ec145f1 Update xo_install.sh 2018-07-31 17:05:32 -04:00
Dustin B
b3d41b6fb9 Fixes
Testing further
2018-07-31 17:05:03 -04:00
Dustin B
7f7195eadf Repo Check fo Multiverse 2018-07-31 16:56:01 -04:00
Dustin B
6aa162aaaa Update xo_install.sh 2018-07-31 15:55:53 -04:00
Dustin B
309caa1d39 Add multiverse repository
Sloppy add of multiverse repository for Ubuntu Server 18.04.1-live but this will ensure any distro going forward should have the required dependencies available.
2018-07-31 15:53:35 -04:00
Dustin B
9b8c557eff Merge pull request #22 from bnrstnr/master
Memory Check
2018-06-12 14:55:45 -04:00
bnrstnr
23306312bd Update xo_install.sh 2018-06-12 14:08:45 -04:00
bnrstnr
9f2220b36b Update xo_install.sh 2018-06-12 13:50:14 -04:00
Dustin B
669c684732 Merge pull request #19 from Jarli01/Danp2-plugins
Add symlinks to all plugins
2018-05-02 08:36:18 -04:00
Danp2
d2e079a672 Add symlinks to all plugins
Fixes https://github.com/Jarli01/xenorchestra_installer/issues/18
2018-05-02 07:14:04 -05:00
Dustin B
cbd7d8a8c6 Merge pull request #15 from pkutzner/prereq
Updated prerequisites branch
2018-04-26 21:50:12 -04:00
Preston Kutzner
b6a5e6c9a9 Fix missing ';' 2018-04-26 20:02:51 -05:00
Preston Kutzner
55ca93427c - Remove superfluous sudos
- Check for effective UID of 0 and error/exit if false.
- Remove setting execute bit on unit file and replace with
  running 'systemctl daemon-reload'
2018-04-26 19:59:12 -05:00
Dustin B
14fa537cba Set theme jekyll-theme-slate 2018-04-26 07:30:15 -04:00
Dustin B
798c69fb8a Set theme jekyll-theme-midnight 2018-04-26 07:28:54 -04:00
Dustin B
e267578e2e Merge pull request #13 from Jarli01/Node-v-10
Node V10.0.0 reversion to Node V8 and LTS support
2018-04-25 15:56:19 -04:00
Dustin B
9689585263 change from 8 to lts 2018-04-25 15:27:39 -04:00
Dustin B
af71f0d366 Update xo_install.sh 2018-04-25 15:02:24 -04:00
Dustin B
91e0922015 Update xo_install.sh 2018-04-25 14:56:39 -04:00
Dustin B
72e7c0e844 Update xo_install.sh 2018-04-25 14:55:37 -04:00
Dustin B
9b2841219f Update xo_install.sh
Further testing / cleanup
2018-04-25 14:52:43 -04:00
Dustin B
172bc49bb0 Update xo_install.sh 2018-04-25 14:43:50 -04:00
Dustin B
ae68b2313d Update xo_install.sh 2018-04-25 14:37:39 -04:00
Dustin B
25ef2828d2 Node V10.0.0 reversion to Node8
Resolve issue of Node V10
2018-04-25 13:59:46 -04:00
3 changed files with 38 additions and 21 deletions

View File

@@ -16,12 +16,6 @@ If you don't want NFS capabilities run ```sudo apt-get remove nfs-common```.
* Do not use LAMP * Do not use LAMP
* SSH Access is optional, but highly recommended * SSH Access is optional, but highly recommended
## SSL and Reverse Proxies
Please understand you are required to use a RP to setup SSL on XO (and XOCE). Some documentation on the process. https://xen-orchestra.com/docs/reverse_proxy.html
The YAML file required can be found at ```/opt/xen-orchestra/packages/xo-server/.xo-server.yaml```
# Goals/Backstory for this script # Goals/Backstory for this script
I'm often asked "why can't this be run on CentOS or Fedora" to which my only reply is and has ever been: The goal was to be the XCP-ng of XS. Which means I wanted a solution that offered as much as XOA offers, while using what is available freely and from open sources. Without restrictions. I'm often asked "why can't this be run on CentOS or Fedora" to which my only reply is and has ever been: The goal was to be the XCP-ng of XS. Which means I wanted a solution that offered as much as XOA offers, while using what is available freely and from open sources. Without restrictions.

1
_config.yml Normal file
View File

@@ -0,0 +1 @@
theme: jekyll-theme-slate

View File

@@ -1,32 +1,49 @@
#!/bin/bash #!/bin/bash
# Check if we were effectively run as root
[ $EUID = 0 ] || { echo "This script needs to be run as root!"; exit 1; }
#Check for 1GB Memory
totalk=$(awk '/^MemTotal:/{print $2}' /proc/meminfo)
if [ "$totalk" -lt "1000000" ]; then echo "XOCE Requires at least 1GB Memory!"; exit 1; fi
# Repository add - confirm required repoistor(ies) are enabled and active, update and upgrade no matter what
multiverse="http://archive.ubuntu.com/multiverse"
if ! grep -q "^deb .*$multiverse" /etc/apt/sources.list;
then
sudo add-apt-repository multiverse
xo_branch="master" xo_branch="master"
xo_server="https://github.com/vatesfr/xen-orchestra" xo_server="https://github.com/vatesfr/xen-orchestra"
n_repo="https://raw.githubusercontent.com/visionmedia/n/master/bin/n" n_repo="https://raw.githubusercontent.com/visionmedia/n/master/bin/n"
yarn_repo="deb https://dl.yarnpkg.com/debian/ stable main" yarn_repo="deb https://dl.yarnpkg.com/debian/ stable main"
node_source="https://deb.nodesource.com/setup_9.x" node_source="https://deb.nodesource.com/setup_8.x"
yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg" yarn_gpg="https://dl.yarnpkg.com/debian/pubkey.gpg"
n_location="/usr/local/bin/n" n_location="/usr/local/bin/n"
xo_server_dir="/opt/xen-orchestra" xo_server_dir="/opt/xen-orchestra"
systemd_service_dir="/lib/systemd/system" systemd_service_dir="/lib/systemd/system"
xo_service="xo-server.service" xo_service="xo-server.service"
#Ensure that git and curl are installed
/usr/bin/apt-get update
/usr/bin/apt-get --yes install git curl
#Install node and yarn #Install node and yarn
cd /opt cd /opt
/usr/bin/curl -sL $node_source | sudo -E bash - /usr/bin/curl -sL $node_source | bash -
/usr/bin/curl -sS $yarn_gpg | sudo apt-key add - /usr/bin/curl -sS $yarn_gpg | apt-key add -
echo "$yarn_repo" | sudo tee /etc/apt/sources.list.d/yarn.list echo "$yarn_repo" | tee /etc/apt/sources.list.d/yarn.list
sudo /usr/bin/apt-get update /usr/bin/apt-get update
sudo /usr/bin/apt-get install --yes nodejs yarn /usr/bin/apt-get install --yes nodejs yarn
#Install n #Install n
/usr/bin/curl -o $n_location $n_repo /usr/bin/curl -o $n_location $n_repo
sudo /bin/chmod +x $n_location /bin/chmod +x $n_location
sudo /usr/local/bin/n stable /usr/local/bin/n lts
#Install XO dependencies #Install XO dependencies
sudo /usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common /usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python-minimal libvhdi-utils nfs-common
/usr/bin/git clone -b $xo_branch $xo_server /usr/bin/git clone -b $xo_branch $xo_server
@@ -38,8 +55,13 @@ cd $xo_server_dir
/usr/bin/yarn build /usr/bin/yarn build
cd packages/xo-server cd packages/xo-server
sudo cp sample.config.yaml .xo-server.yaml cp sample.config.yaml .xo-server.yaml
sudo sed -i "s|#'/': '/path/to/xo-web/dist/'|'/': '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.yaml sed -i "s|#'/': '/path/to/xo-web/dist/'|'/': '/opt/xen-orchestra/packages/xo-web/dist'|" .xo-server.yaml
# symlink all plugins
for source in =$(ls -d /opt/xen-orchestra/packages/xo-server-*); do
ln -s "$source" /usr/local/lib/node_modules/
done
if [[ ! -e $systemd_service_dir/$xo_service ]] ; then if [[ ! -e $systemd_service_dir/$xo_service ]] ; then
@@ -61,11 +83,11 @@ WantedBy=multi-user.target
EOF EOF
fi fi
sudo /bin/chmod +x $systemd_service_dir/$xo_service /bin/systemctl daemon-reload
sudo /bin/systemctl enable $xo_service /bin/systemctl enable $xo_service
sudo /bin/systemctl start $xo_service /bin/systemctl start $xo_service
echo "" echo ""
echo "" echo ""
echo "Installation complete, open a browser to:" && hostname -I && echo "" && echo "Default Login:"admin@admin.net" Password:"admin"" && echo "" && echo "Don't forget to change your password!" echo "Installation complete, open a browser to:" && hostname -I && echo "" && echo "Default Login:"admin@admin.net" Password:"admin"" && echo "" && echo "Don't forget to change your password!"
fi