mirror of
https://github.com/Jarli01/xenorchestra_installer
synced 2026-07-30 02:11:21 +00:00
Compare commits
8 Commits
f896d80241
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
15ddc7cea5 | ||
|
|
5a5f8035f2 | ||
|
|
3c3e7710c7 | ||
|
|
58fcac8659 | ||
|
|
ac22baf7a9 | ||
|
|
8c8f2e0d1d | ||
|
|
ada0c8dc91 | ||
|
|
e54fc57cdc |
@@ -83,4 +83,11 @@ While the goal initially was to have a solution as close to XOA as possible, wit
|
|||||||
|
|
||||||
To keep XOCE up to date I recommend that anyone who's used this installation script or the sources installation to use this: https://github.com/Jarli01/xenorchestra_updater
|
To keep XOCE up to date I recommend that anyone who's used this installation script or the sources installation to use this: https://github.com/Jarli01/xenorchestra_updater
|
||||||
|
|
||||||
|
## Adding XOCE v6 to your installation (this is a Work In Progress by Vates)
|
||||||
|
|
||||||
|
cd /opt/xen-orchestra
|
||||||
|
yarn run turbo run build --filter @xen-orchestra/web
|
||||||
|
|
||||||
|
Once the installation is completed, you can then go to [https://your-host-ip/v6](https://your-host-ip/v6)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
# defaults file
|
|
||||||
# The default username and password are applied, and admin for the password
|
|
||||||
xoa_install_url: https://raw.githubusercontent.com/Jarli01/xenorchestra_installer/master/xo_install.sh
|
|
||||||
xoa_install_script: xo_install.sh
|
|
||||||
xoa_update_url: https://raw.githubusercontent.com/Jarli01/xenorchestra_updater/master/xo-update.sh
|
|
||||||
xoa_update_script: xo_update.sh
|
|
||||||
git_email: ""
|
|
||||||
git_user: ""
|
|
||||||
xoa_default_user: "admin@admin.net"
|
|
||||||
xoa_default_password: "admin"
|
|
||||||
xoa_user: xoa
|
|
||||||
xoa_password: xoa
|
|
||||||
xcpng_servers: [{"label": "localhost", "ip": "127.0.1"}]
|
|
||||||
xcpng_user: root
|
|
||||||
xcpng_password: xcpng
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
- name: reload_systemd
|
|
||||||
shell: systemctl daemon-reload
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
|
|
||||||
- name: cleaning_packages_metadata
|
|
||||||
shell: yum clean all && rm -rf /var/cache/yum
|
|
||||||
when: ansible_distribution == 'Red Hat Enterprise Linux' or ansible_distribution == 'XCP-ng'
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
|
|
||||||
- name: cleaning_packages_metadata
|
|
||||||
shell: zypper clean && rm -rf /var/cache/zypp
|
|
||||||
when: ansible_distribution == 'openSUSE Leap'
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
|
|
||||||
- name: cleaning_packages_metadata
|
|
||||||
shell: apt clean
|
|
||||||
when: ansible_distribution == 'Debian'
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
galaxy_info:
|
|
||||||
author: your name
|
|
||||||
description: your description
|
|
||||||
company: your company (optional)
|
|
||||||
|
|
||||||
# If the issue tracker for your role is not on github, uncomment the
|
|
||||||
# next line and provide a value
|
|
||||||
# issue_tracker_url: http://example.com/issue/tracker
|
|
||||||
|
|
||||||
# Some suggested licenses:
|
|
||||||
# - BSD (default)
|
|
||||||
# - MIT
|
|
||||||
# - GPLv2
|
|
||||||
# - GPLv3
|
|
||||||
# - Apache
|
|
||||||
# - CC-BY
|
|
||||||
license: license (GPLv2, CC-BY, etc)
|
|
||||||
|
|
||||||
min_ansible_version: 1.2
|
|
||||||
|
|
||||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
|
||||||
# min_ansible_container_version:
|
|
||||||
|
|
||||||
# Optionally specify the branch Galaxy will use when accessing the GitHub
|
|
||||||
# repo for this role. During role install, if no tags are available,
|
|
||||||
# Galaxy will use this branch. During import Galaxy will access files on
|
|
||||||
# this branch. If Travis integration is configured, only notifications for this
|
|
||||||
# branch will be accepted. Otherwise, in all cases, the repo's default branch
|
|
||||||
# (usually master) will be used.
|
|
||||||
#github_branch:
|
|
||||||
|
|
||||||
#
|
|
||||||
# platforms is a list of platforms, and each platform has a name and a list of versions.
|
|
||||||
#
|
|
||||||
# platforms:
|
|
||||||
# - name: Fedora
|
|
||||||
# versions:
|
|
||||||
# - all
|
|
||||||
# - 25
|
|
||||||
# - name: SomePlatform
|
|
||||||
# versions:
|
|
||||||
# - all
|
|
||||||
# - 1.0
|
|
||||||
# - 7
|
|
||||||
# - 99.99
|
|
||||||
|
|
||||||
galaxy_tags: []
|
|
||||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
|
||||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
|
||||||
# remove the '[]' above, if you add tags to this list.
|
|
||||||
#
|
|
||||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
|
||||||
# Maximum 20 tags per role.
|
|
||||||
|
|
||||||
dependencies: []
|
|
||||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
|
||||||
# if you add dependencies to this list.
|
|
||||||
@@ -1,250 +0,0 @@
|
|||||||
- name: Updating packages
|
|
||||||
shell: apt-get update -y && apt-get upgrade -y
|
|
||||||
when: ansible_distribution == 'Debian'
|
|
||||||
ignore_errors: True
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
notify: cleaning_packages_metadata
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Installing packages
|
|
||||||
package: name={{item}} state=present
|
|
||||||
when: ansible_distribution == 'Debian'
|
|
||||||
with_items:
|
|
||||||
- curl
|
|
||||||
- git
|
|
||||||
notify: cleaning_packages_metadata
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Check if xoa is already installed
|
|
||||||
stat:
|
|
||||||
path: /opt/xen-orchestra
|
|
||||||
register: xen_orchestra_directory
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Ensure group xoa exists
|
|
||||||
ansible.builtin.group:
|
|
||||||
name: xoa
|
|
||||||
state: present
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Check if xoa is already registered in sudoers.d
|
|
||||||
stat:
|
|
||||||
path: /etc/sudoers.d/xoa
|
|
||||||
register: xoa_sudoers_file
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Add the xoa user
|
|
||||||
ansible.builtin.user:
|
|
||||||
name: xoa
|
|
||||||
shell: /bin/bash
|
|
||||||
home: /home/xoa
|
|
||||||
comment: xen-orchestra user
|
|
||||||
uid: 1040
|
|
||||||
groups: xoa,users
|
|
||||||
append: yes
|
|
||||||
when: not xoa_sudoers_file.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Register xoa in sudoers.d
|
|
||||||
ansible.builtin.file:
|
|
||||||
path: /etc/sudoers.d/xoa
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: '0640'
|
|
||||||
when: not xoa_sudoers_file.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Allow xoa to have passwordless sudo
|
|
||||||
lineinfile:
|
|
||||||
dest: /etc/sudoers.d/xoa
|
|
||||||
state: present
|
|
||||||
regexp: '^%xoa'
|
|
||||||
line: '%xoa ALL=(ALL) NOPASSWD: ALL'
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Setting git user email
|
|
||||||
git_config:
|
|
||||||
name: user.email
|
|
||||||
scope: global
|
|
||||||
value: "{{git_email}}"
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Setting git user
|
|
||||||
git_config:
|
|
||||||
name: user.name
|
|
||||||
scope: global
|
|
||||||
value: "{{git_user}}"
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Download installation script
|
|
||||||
ansible.builtin.get_url:
|
|
||||||
url: "{{xoa_install_url}}"
|
|
||||||
dest: "/tmp/{{xoa_install_script}}"
|
|
||||||
mode: '0770'
|
|
||||||
when: not xen_orchestra_directory.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Download update script
|
|
||||||
ansible.builtin.get_url:
|
|
||||||
url: "{{xoa_update_url}}"
|
|
||||||
dest: "/home/xoa/{{xoa_update_script}}"
|
|
||||||
mode: '0770'
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Create symbolic link to
|
|
||||||
file:
|
|
||||||
src: "/home/xoa/{{xoa_update_script}}"
|
|
||||||
dest: "/etc/cron.weekly/{{xoa_update_script}}"
|
|
||||||
state: link
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Removing existing data structures
|
|
||||||
shell: "rm -R /var/lib/xo-server"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
when: not xen_orchestra_directory.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
|
|
||||||
- name: Removing existing data structures
|
|
||||||
shell: "rm -R /var/lib/xo-updater"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
when: not xen_orchestra_directory.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
|
|
||||||
- name: Removing existing redis data
|
|
||||||
shell: "redis-cli -n 0 FLUSHALL"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
when: not xen_orchestra_directory.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
|
|
||||||
- name: Installing
|
|
||||||
shell: "/tmp/{{xoa_install_script}}"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
when: not xen_orchestra_directory.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Updating
|
|
||||||
shell: "/home/xoa/{{xoa_update_script}} -n stable"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
when: xen_orchestra_directory.stat.exists
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Installing xo-cli
|
|
||||||
shell: "npm install -g xo-cli"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- add-servers
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Closing existing session using xo-cli
|
|
||||||
shell: "xo-cli --unregister"
|
|
||||||
ignore_errors: True
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- add-servers
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Opening session using xo-cli
|
|
||||||
shell: "xo-cli --register --au http://127.0.0.1 {{xoa_default_user}} {{xoa_default_password}}"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
|
|
||||||
- name: Adding user session using xo-cli
|
|
||||||
shell: "xo-cli user.create email='{{xoa_user}}' password='{{xoa_password}}' permission='admin'"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- install
|
|
||||||
|
|
||||||
- name: Closing existing session using xo-cli
|
|
||||||
shell: "xo-cli --unregister"
|
|
||||||
ignore_errors: True
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- add-servers
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Opening session using xo-cli
|
|
||||||
shell: "xo-cli --register --au http://127.0.0.1 {{xoa_user}} {{xoa_password}}"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- add-servers
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Adding xcp-ng servers using xo-cli
|
|
||||||
shell: "xo-cli server.add label='{{item.label}}' host='{{item.ip}}' username={{xcpng_user}} password='{{xcpng_password}}' autoConnect=true allowUnauthorized=true"
|
|
||||||
ignore_errors: False
|
|
||||||
with_items: "{{xcpng_servers}}"
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- add-servers
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
|
|
||||||
- name: Closing session using xo-cli
|
|
||||||
shell: "xo-cli --unregister"
|
|
||||||
ignore_errors: False
|
|
||||||
args:
|
|
||||||
warn: no
|
|
||||||
tags:
|
|
||||||
- add-servers
|
|
||||||
- install
|
|
||||||
- update
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
localhost
|
|
||||||
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
- hosts: localhost
|
|
||||||
remote_user: root
|
|
||||||
roles:
|
|
||||||
- xoa
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
---
|
|
||||||
# vars file
|
|
||||||
@@ -43,7 +43,7 @@ n lts
|
|||||||
ln -s /usr/bin/node /usr/local/bin/node
|
ln -s /usr/bin/node /usr/local/bin/node
|
||||||
|
|
||||||
# Install XO dependencies
|
# Install XO dependencies
|
||||||
/usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python3-minimal libvhdi-utils nfs-common lvm2 cifs-utils
|
/usr/bin/apt-get install --yes build-essential redis-server libpng-dev git python3-minimal libvhdi-utils nfs-common lvm2 cifs-utils openssl libfuse2t64
|
||||||
|
|
||||||
/usr/bin/git clone -b $xo_branch $xo_server
|
/usr/bin/git clone -b $xo_branch $xo_server
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user