xo-server is now in the xen-orchestra monorepo (#117)

This commit is contained in:
Julien Fontanet 2018-02-01 14:09:06 +01:00 committed by Olivier Lambert
parent aa64385bc6
commit 4f2c750dbb
3 changed files with 20 additions and 22 deletions

View File

@ -19,7 +19,7 @@ Your XOA is connected to all your hosts, or on the pool master only if you are u
![](./assets/xo-arch.jpg) ![](./assets/xo-arch.jpg)
Xen Orchestra itself is built as a modular solution. Each part has its role: Xen Orchestra itself is built as a modular solution. Each part has its role:
- the core is "[xo-server](https://github.com/vatesfr/xo-server)", a daemon dealing directly with XenServer or XAPI capable hosts. This is where users are stored, and it's the center point for talking to your whole Xen infrastructure. - the core is "[xo-server](https://github.com/vatesfr/xen-orchestra/tree/master/packages/xo-server/)", a daemon dealing directly with XenServer or XAPI capable hosts. This is where users are stored, and it's the center point for talking to your whole Xen infrastructure.
- the Web interface is in "[xo-web](https://github.com/vatesfr/xo-web)": you are running it directly in your browser. The connection with "xo-server" is done via *WebSockets*. - the Web interface is in "[xo-web](https://github.com/vatesfr/xo-web)": you are running it directly in your browser. The connection with "xo-server" is done via *WebSockets*.
- "[xo-cli](https://github.com/vatesfr/xo-cli)" is a module allowing to send commands directly from the command line. - "[xo-cli](https://github.com/vatesfr/xo-cli)" is a module allowing to send commands directly from the command line.

View File

@ -19,15 +19,15 @@ Please, do explain:
The best way to propose a change on the documentation or the code is The best way to propose a change on the documentation or the code is
to create a [GitHub pull request](https://help.github.com/articles/using-pull-requests/). to create a [GitHub pull request](https://help.github.com/articles/using-pull-requests/).
> Your pull request should always been against the `next-release` > Your pull request should always been against the `master`
> branch and not against `stable` which is the stable branch! > branch and not against `stable` which is the stable branch!
1. Create a branch for your work 1. Create a branch for your work
2. Create a pull request for this branch against the `next-release` branch 2. Create a pull request for this branch against the `master` branch
3. Push into the branch until the pull request is ready to merge 3. Push into the branch until the pull request is ready to merge
4. Avoid unnecessary merges: keep you branch up to date by regularly rebasing `git rebase origin/next-release` 4. Avoid unnecessary merges: keep you branch up to date by regularly rebasing `git rebase origin/master`
5. When ready to merge, clean up the history (reorder commits, squash some of them together, rephrase messages): `git rebase -i origin/next-release` 5. When ready to merge, clean up the history (reorder commits, squash some of them together, rephrase messages): `git rebase -i origin/master`
### Issue triage ### Issue triage
@ -73,13 +73,6 @@ For all issues:
- duplicate: issue is a duplicate → SHOULD be closed - duplicate: issue is a duplicate → SHOULD be closed
- in progress: issue has been assigned and some work is going on - in progress: issue has been assigned and some work is going on
> For now there is also the `fixed in next-release` label which
> indicates this issue is resolved in `next-release` and will be
> closed when merged on `stable`.
>
> This label will no longer be necessary once the branch
> reorganization (#69).
For bugs: For bugs:
- confirmed: bug is confirmed → SHOULD be assigned to someone - confirmed: bug is confirmed → SHOULD be assigned to someone

View File

@ -8,7 +8,7 @@
This installation is validated against a fresh Debian 8 (Jessie) 64 bits. It should be almost the same on others dpkg systems. For RPMs based OS, it should be close, because most of our dependencies came from NPM and not the OS itself. This installation is validated against a fresh Debian 8 (Jessie) 64 bits. It should be almost the same on others dpkg systems. For RPMs based OS, it should be close, because most of our dependencies came from NPM and not the OS itself.
As you may have seen, in other parts of the documentation, XO is composed of two parts: [xo-server](https://github.com/vatesfr/xo-server/) and [xo-web](https://github.com/vatesfr/xo-web/). They can be installed separately, even on different machines, but for the sake of simplicity we will set them up together. As you may have seen, in other parts of the documentation, XO is composed of two parts: [xo-server](https://github.com/vatesfr/xen-orchestra/tree/master/packages/xo-server/) and [xo-web](https://github.com/vatesfr/xo-web/). They can be installed separately, even on different machines, but for the sake of simplicity we will set them up together.
## Packages and Pre-requisites ## Packages and Pre-requisites
@ -43,18 +43,22 @@ apt-get install build-essential redis-server libpng-dev git python-minimal
## Fetching the Code ## Fetching the Code
You may either download them [here](https://github.com/vatesfr/xo-server/archive/stable.zip) and [here](https://github.com/vatesfr/xo-web/archive/stable.zip) or use `git` with these repositories from `http://github.com/vatesfr/xo-server` and `http://github.com/vatesfr/xo-web`: You need to use the `git` source code manager:
``` ```
git clone -b stable http://github.com/vatesfr/xo-server git clone -b stable http://github.com/vatesfr/xen-orchestra
git clone -b stable http://github.com/vatesfr/xo-web git clone -b stable http://github.com/vatesfr/xo-web
``` ```
> Note: xo-server has been migrated to the
[xen-orchestra](https://github.com/vatesfr/xen-orchestra)
mono-repository, and xo-web **will migrate in future too**.
## Installing dependencies ## Installing dependencies
### xo-server ### xo-server
Once you have it, use `yarn`, as the non-root user owning the fetched code, to install the other dependencies. Into `xo-server` directory and launch the following command: Once you have it, use `yarn`, as the non-root user owning the fetched code, to install the other dependencies. Into `xen-orchestra` directory and launch the following command:
``` ```
$ yarn $ yarn
@ -64,13 +68,14 @@ $ yarn build
Then, you have to create a config file for `xo-server`: Then, you have to create a config file for `xo-server`:
``` ```
cp sample.config.yaml .xo-server.yaml $ cd packages/xo-server
$ cp sample.config.yaml .xo-server.yaml
``` ```
Edit and uncomment it to have the right path to deliver `xo-web`, because `xo-server` embeds an HTTP server (we assume that `xo-server` and `xo-web` are on the same directory). It's near the end of the file: Edit and uncomment it to have the right path to deliver `xo-web`, because `xo-server` embeds an HTTP server (we assume that `xo-server` and `xo-web` are on the same directory). It's near the end of the file:
```yaml ```yaml
mounts: '/': '../xo-web/dist/' mounts: '/': '../../../xo-web/dist/'
``` ```
> Note this `dist` folder will be created in the next step (see the `xo-web` section) > Note this `dist` folder will be created in the next step (see the `xo-web` section)
@ -117,7 +122,7 @@ $ forever start bin/xo-server
``` ```
yarn global add forever yarn global add forever
yarn global add forever-service yarn global add forever-service
cd /home/username/xo-server/bin/ cd /home/username/xen-orchestra/packages/xo-server/bin/
forever-service install orchestra -r username -s xo-server forever-service install orchestra -r username -s xo-server
``` ```
@ -134,10 +139,10 @@ If you need to delete the service:
forever-service delete orchestra forever-service delete orchestra
``` ```
- Our stable branch is *stable* and the beta branch is *next-release*. You can change it if you want to test our latest features (on both xo-server and `xo-web`, do NOT mix them): - Our stable branch is *stable* and the beta branch is *master*. You can change it if you want to test our latest features (on both `xen-orchestra` and `xo-web`, do NOT mix them):
``` ```
$ git checkout next-release $ git checkout master
``` ```
- If you want to update your current version, do this on both repositories: - If you want to update your current version, do this on both repositories:
@ -149,7 +154,7 @@ $ yarn build
## Troubleshooting ## Troubleshooting
If you have problem during the buiding phase in `xo-web` or `xo-server`, follow these steps: If you have problem during the building phase in `xo-web` or `xo-server`, follow these steps:
1. `rm -rf node_modules` 1. `rm -rf node_modules`
1. `yarn` 1. `yarn`