From 37c6a882bb3eca420abe5a5151f77849661da08e Mon Sep 17 00:00:00 2001 From: "ext.sopra.husubtil" <ext.sopra.husubtil@grandlyon.com> Date: Fri, 1 Jul 2022 12:51:29 +0000 Subject: [PATCH] feat: add cozy miror stack documentation --- docs/cozystack/index.md | 31 +++++++++++++++++++++++++++++++ docs/cozystack/local.md | 28 ++++++++++++++++++++++++++++ docs/img/stack-pipeline.png | Bin 0 -> 38724 bytes mkdocs.yml | 3 +++ 4 files changed, 62 insertions(+) create mode 100644 docs/cozystack/index.md create mode 100644 docs/cozystack/local.md create mode 100644 docs/img/stack-pipeline.png diff --git a/docs/cozystack/index.md b/docs/cozystack/index.md new file mode 100644 index 0000000..6dc5087 --- /dev/null +++ b/docs/cozystack/index.md @@ -0,0 +1,31 @@ +{: .center} + +## What is Cozy-Stack + +It is the core server of the Cozy platform. It consists of a single process, *the Cozy stack*. + +[Full Cozy-Stack documentation here](https://docs.cozy.io/en/cozy-stack/). + +The Cozy-Stack is in charge of serving the Web applications users have installed from the application store. + +It provides its services through a REST API that allows to: + + - create, update, delete documents inside the database; + - authenticate users and client applications; + - send emails; + - launch jobs on the server. Connectors that import data from remote websites are some sort of jobs. Jobs can be one time tasks (sending a message) or periodic tasks. Some jobs, like the connectors, that require executing third party code on the server side, are sandboxed (we use `nsjail` for now). + - … + +The Cozy-Stack also allows to access the database replication API, allowing to sync documents between the server and local databases, for example in mobile clients. + +Two authentication methods are available: + + - Web applications running on the server get a session token when the user log in; + - OAuth2 for other applications. + +Feel free to [open an issue](https://github.com/cozy/cozy-stack/issues/new) +for questions and suggestions. + +## Why we use it ? + +Without that stack we are not able to properly interact with all cozy apps and data. That's why we are using it. For local developpment we are using the official cozy-stack repo with some packaging updates, and for our test env we are using [Easy cozy](../easycozy/index.md) \ No newline at end of file diff --git a/docs/cozystack/local.md b/docs/cozystack/local.md new file mode 100644 index 0000000..276a6ee --- /dev/null +++ b/docs/cozystack/local.md @@ -0,0 +1,28 @@ +## Local stack + +[GitLab Repo](https://forge.grandlyon.com/web-et-numerique/llle_project/cozy-stack) + +### Why are we clonning the official repo ? + +Because of some political choice Cozy Cloud are not maintaining there official [docker image](https://hub.docker.com/r/cozy/cozy-app-dev) properly. That's why we have a mirroring version of there official repository with some custom docker configuration improving : + +* CouchDb version. Officialy Cozy Cloud use CouchDb 3.2.2, but in there official image it's not the case yet. + +### What change should be done by cozy in order to upgrade there image ? + +Cozy should upgrade there CouchDb version inside there image. But unfortunately, the base image `debian:stretch-slim` does not support ERLANG/OTP>=19, and CouchDb need at least a version >=20 for their `3.2.2` version, see [official doc](https://docs.couchdb.org/en/stable/whatsnew/3.2.html#id2). + +As a consequence they should upgrade there base image to at least `debian:buster`. But this add a new issue, the official binary of couch-db cannot be build on this version according to some missing libs. + +That's why we took the shortcut of using an official [CouchDb image](https://hub.docker.com/_/couchdb) + +### How to build new version of the stack ? + +If we want to build a new stack version it's easy ! A manual pipeline has been created. You just need to run the following steps : + +* Run the manual pipeline in CI/CD part of gitlab +* Enter the requested parameter `VERSION` and a value (ex: 1.5.7) + + + +The image will be automaticaly build based on the branch and store in the registry. diff --git a/docs/img/stack-pipeline.png b/docs/img/stack-pipeline.png new file mode 100644 index 0000000000000000000000000000000000000000..16f53eaead2a0b093c71d6d26abd9268f4c954be GIT binary patch literal 38724 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 literal 0 HcmV?d00001 diff --git a/mkdocs.yml b/mkdocs.yml index 550e75c..edd4d02 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -52,6 +52,9 @@ nav: - Known errors: easycozy/known_errors.md - Scripts: easycozy/scripts.md - Tips: easycozy/tips.md + - Cozy stack: + - Introduction: cozystack/index.md + - Local Stack: cozystack/local.md - Ecolyo: - Introduction: ecolyo/index.md - Getting started: -- GitLab