diff --git a/docs/source/installation/index.rst b/docs/source/installation/index.rst index 806d434ff..0cf16b0f2 100644 --- a/docs/source/installation/index.rst +++ b/docs/source/installation/index.rst @@ -20,7 +20,7 @@ You will learn here how to install a new symfony project with chill, and configu Requirements ============ -The installation is tested on Debian-like linux distribution. The installation on other operating systems is not documented. +The installation is tested on a Debian-like linux distribution. The installation on other operating systems is not documented. You have to install the following tools on your computer: @@ -32,9 +32,9 @@ You have to install the following tools on your computer: - `yarn `_. We use the version 1.22+ for now. - `docker and the plugin compose `_ to run the database -Chill needs a redis server and a postgresql database, and some stuffes like a "relatorio service" which will -generate documents from templates. **All those stuffes are available trough docker with the plugin compose**. We do not provide -information of how to run it without it. +Chill needs a redis server and a postgresql database, and a few other things like a "relatorio service" which will +generate documents from templates. **All these things are available through docker using the plugin compose**. We do not provide +information on how to run this without docker compose. Install a new project @@ -52,14 +52,14 @@ We strongly encourage you to initialize a git repository at this step, to track .. code-block:: bash - # add the flex endpoints required to custom recipes + # add the flex endpoints required for custom recipes cat <<< "$(jq '.extra.symfony += {"endpoint": ["flex://defaults", "https://gitlab.com/api/v4/projects/57371968/repository/files/index.json/raw?ref=main"]}' composer.json)" > composer.json # install chill and some dependencies # TODO fix the suffix "alpha1" and replace by ^3.0.0 when version 3.0.0 will be released composer require chill-project/chill-bundles v3.0.0-alpha1 champs-libres/wopi-lib dev-master@dev champs-libres/wopi-bundle dev-master@dev -We encourage you to accept to include the "Docker configuration from recipes": this is the documented way to run database. -You must also accept to configure recipes from the contrib repository, unless you want to configure by yourself the bundles). +We encourage you to accept the inclusion of the "Docker configuration from recipes": this is the documented way to run the database. +You must also accept to configure recipes from the contrib repository, unless you want to configure the bundles manually). .. code-block:: bash @@ -90,17 +90,17 @@ You must also accept to configure recipes from the contrib repository, unless yo Configure your project ********************** -You should carefully read the configuration files in :code:`chill/config/packages`, especially if you have +You should read the configuration files in :code:`chill/config/packages` carefully, especially if you have custom developments. But most of the time, this should be fine. -You have to configure some local variable, which are described in the :code:`.env` file. The secrets should not be stored -in this :code:`.env` file, but instead using the `secret management tool `_ -or in the :code:`.env.local` file, which should not be commited to git repository. +You have to configure some local variables, which are described in the :code:`.env` file. The secrets should not be stored +in this :code:`.env` file, but instead using the `secrets management tool `_ +or in the :code:`.env.local` file, which should not be commited to the git repository. You do not need to set variables for the smtp server, redis server and relatorio server, as they are generated automatically by the symfony server, from the docker compose services. -The only required variable in the :code:`ADMIN_PASSWORD`. You can generate an hashed and salted admin password using the command +The only required variable is the :code:`ADMIN_PASSWORD`. You can generate a hashed and salted admin password using the command :code:`symfony console security:hash-password 'Symfony\Component\Security\Core\User\User'`. Then, you can either: @@ -111,7 +111,7 @@ you can either: ADMIN_PASSWORD=\$2y\$13\$iyvJLuT4YEa6iWXyQV4/N.hNHpNG8kXlYDkkt5MkYy4FXcSwYAwmm -- add the generated password to the secret management (**note**: you must add the generated hashed password to the secrets env, +- add the generated password to the secrets manager (**note**: you must add the generated hashed password to the secrets env, not the password in clear text). Prepare migrations and other tools @@ -133,7 +133,7 @@ To continue the installation process, you will have to run migrations: .. warning:: - If you encounter error while running :code:`symfony console messenger:setup-transports`, you can set up the messenger + If you encounter an error while running :code:`symfony console messenger:setup-transports`, you can set up the messenger transport to redis, by adding this in the :code:`.env.local` or :code:`.env` file: .. code-block:: env @@ -143,7 +143,7 @@ To continue the installation process, you will have to run migrations: Start your web server locally ***************************** -At this step, Chill will be ready for serving locally, but does not contains any configuration. You can run the project +At this step, Chill will be ready to be served locally, but without any configuration. You can run the project locally using the `local symfony server `_: .. code-block:: bash @@ -152,16 +152,16 @@ locally using the `local symfony server `_ and `re Commit and share your project ============================= -If multiple developers works on the project, you can commit your symfony project and share it with other people. +If multiple developers work on a project, you can commit your symfony project and share it with other people. -When another developers clone your project, they will have to: +When another developer clones your project, they will have to: - run :code:`composer install` and :code:`yarn install` to install the same dependencies as the initial developer; - run :code:`yarn run encore production` to compile assets; -- copy eventually variables from the :code:`.env.local` files; +- copy any possible variables from the :code:`.env.local` files; - start the docker compose stack, using :code:`docker compose`, and run migrations, set up transports, and prepare chill db views (see the corresponding command above) @@ -242,7 +242,7 @@ Update In order to update your app, you must update dependencies: - for chill-bundles, you can `set the last version `_ manually - in the :code:`composer.json` file, or set to the version to `^3.0.0` and run :code:`composer update` regularly + in the :code:`composer.json` file, or set the version to `^3.0.0` and run :code:`composer update` regularly - run :code:`composer update` and :code:`yarn update` to maintain your dependencies up-to-date. After each update, you must update your database schema: @@ -290,7 +290,7 @@ You must generate them using a dedicated process: To avoid memory issues, we encourage you to also use the :code:`--limit` parameter of the command. -How to read the email sent by the program ? +How to read emails sent by the program ? ******************************************* In development, there is a built-in "mail catcher". Open it with :code:`symfony open:local:webmail` @@ -298,7 +298,7 @@ In development, there is a built-in "mail catcher". Open it with :code:`symfony How to run cron-jobs ? ********************** -Some command must be executed in :ref:`cron jobs `. To execute them: +Some commands must be executed in :ref:`cron jobs `. To execute them: .. code-block:: bash @@ -307,18 +307,18 @@ Some command must be executed in :ref:`cron jobs `. To execute them: What about materialized views ? ******************************* -There are some materialized views in chill, to speed up some complex computation on the database. +There are some materialized views in chill, to speed up some complex computations in the database. -In order to refresh them, run cron job or refresh them manually in your database. +In order to refresh them, run a cron job or refresh them manually in your database. How to run tests for chill-bundles ********************************** Tests reside inside the installed bundles. You must `cd` into that directory, download the required packages, and execute them from this place. -**Note**: some bundle require the fixture to be executed. See the dedicated _how-tos_. +**Note**: some bundles require the fixtures to be executed. See the dedicated _how-tos_. -Exemple, for running unit test inside `main` bundle: +Example, for running a unit test inside `main` bundle: .. code-block:: bash @@ -344,16 +344,16 @@ Running in production Currently, to run this software in production, the *state of the art* is the following : 1. Run the software locally and tweak the configuration to your needs ; -2. Build the image and store them into a private container registry. +2. Build the image and store it in a private container registry. .. warning:: - In production, you **must** set those variables: + In production, you **must** set these variables: * ``APP_ENV`` to ``prod`` * ``APP_DEBUG`` to ``false`` - There are security issues if you keep the same variable than for production. + There are security issues if you keep the same variables as for production. Going further