From cdd33d2b95c8d960e10fad6ee250baa4664133f0 Mon Sep 17 00:00:00 2001 From: Nicolas Marniesse Date: Tue, 14 Dec 2021 17:19:56 +0100 Subject: [PATCH 01/21] PIM-10202: Fix the limit of options in a reference entity attribute (#1707) --- reference_entities/configure_entity_limits.rst | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/reference_entities/configure_entity_limits.rst b/reference_entities/configure_entity_limits.rst index 371237b23..32fb1a15b 100644 --- a/reference_entities/configure_entity_limits.rst +++ b/reference_entities/configure_entity_limits.rst @@ -35,15 +35,8 @@ If you want to create more, you have to edit the ``reference_entity_maximum_attr Raise the limit of Options for "Simple Option" and "Multiple Option" Attributes ------------------------------------------------------------------------------- -By default, you can't create more than **100** options for each **"Simple Option" and "Multiple Option"**. -If you want to create more, you have to edit the ``reference_entity_option_limit_per_list_attribute`` parameter, for example: - -.. code-block:: yaml - :linenos: - - # app/config/parameters.yml - parameters: - reference_entity_option_limit_per_list_attribute: 200 +You can't create more than **100** options for each **"Simple Option" and "Multiple Option"**. +If you need more than 100 options, we advise you to create a dedicated reference entity. Raise the limit of Records per Reference Entity From 4b1b9804cf9f4450c839715e80354fb64f385357 Mon Sep 17 00:00:00 2001 From: jean-marie leroux Date: Mon, 7 Feb 2022 18:40:29 +0100 Subject: [PATCH 02/21] Fix documentation with upgrade to Sphinx 4.4 (#1721) * Use Ubuntu 20.04 Circle CI machines * Upgrade to Sphinx 4.4 * Fix broken links --- .circleci/config.yml | 6 ++--- Dockerfile | 15 ++++++------ .../docs/environments_access.rst | 3 +-- conf.py | 4 +++- .../tests/establishing_decorator_pattern.rst | 2 +- .../guides/create-connector.rst | 2 ++ install_pim/docker/installation_docker.rst | 2 +- .../manual/common_install_ce_ee.rst.inc | 2 +- .../activate_loggable_step.rst | 7 +++--- .../add_project_remover.rst | 5 ++-- ...property_to_your_custom_attribute_type.rst | 4 +--- .../create_new_attribute_type.rst | 4 +--- ...nrich_a_record_with_new_attribute_type.rst | 5 ++-- .../best_practices/reusable_bundle.rst | 2 +- .../how_to_use_the_localizers.rst | 4 +--- .../behat_permission_summary.rst | 4 +--- .../project_completeness.rst | 15 ++++-------- .../teamwork_assistant/project_creation.rst | 24 +++++++------------ .../teamwork_assistant/scalability_guide.rst | 11 ++++----- .../widget_extension_points.rst | 9 +------ 20 files changed, 51 insertions(+), 79 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 444e65bc8..9afdf6b16 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,7 +2,7 @@ version: 2.1 jobs: build: machine: - image: ubuntu-1604:202004-01 + image: ubuntu-2004:202111-01 steps: - checkout - run: make build @@ -16,7 +16,7 @@ jobs: deploy_staging: machine: - image: ubuntu-1604:202004-01 + image: ubuntu-2004:202111-01 steps: - checkout - add_ssh_keys @@ -26,7 +26,7 @@ jobs: deploy_production: machine: - image: ubuntu-1604:202004-01 + image: ubuntu-2004:202111-01 steps: - checkout - add_ssh_keys diff --git a/Dockerfile b/Dockerfile index 3c8874c1e..3ebb30328 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,11 +12,12 @@ RUN echo 'APT::Install-Recommends "0" ; APT::Install-Suggests "0" ;' > /etc/apt/ ca-certificates \ gnupg \ unzip \ - python ssh rsync curl \ - python-jinja2 \ - python-sphinx && \ + python \ + ssh \ + rsync \ + curl \ + python3-pip && \ apt-get clean && apt-get --yes --quiet autoremove --purge && \ - rm -rf /var/lib/apt/lists/* && \ - rm -rf /tmp/* && \ - rm -rf /usr/share/locale/* && \ - rm -rf /var/log/* + rm -rf /var/lib/apt/lists/* /var/log/* /tmp/* /usr/share/locale/* + +RUN pip3 install -U sphinx diff --git a/cloud_edition/flexibility_mode/docs/environments_access.rst b/cloud_edition/flexibility_mode/docs/environments_access.rst index b44ed67ba..f249127ab 100644 --- a/cloud_edition/flexibility_mode/docs/environments_access.rst +++ b/cloud_edition/flexibility_mode/docs/environments_access.rst @@ -21,7 +21,7 @@ Always use **akeneo** as the user to connect to your server. It is an unprivileg .. warning:: - No dedicated account will be created and **no root** access will be authorized. Privilege escalation is possible for `specific tasks`_. + No dedicated account will be created and **no root** access will be authorized. Privilege escalation is possible for `specific tasks`. .. code-block:: bash @@ -98,7 +98,6 @@ If **akeneo**, as an SSH user or as a PIM process, creates files in the SFTP sub $ chmod u=rwX,g=rwXs,o= /data/transfert/pim/* .. _`Filezilla`: https://filezilla-project.org -.. _`specific tasks`: ./partners.html .. _`GitHub Help Center`: https://help.github.com/en/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent .. _`Akeneo Help Center`: https://help.akeneo.com/portal/articles/access-akeneo-flexibility.html?utm_source=akeneo-docs&utm_campaign=flexibility_partner_starterkit diff --git a/conf.py b/conf.py index d4687b283..85a98270a 100644 --- a/conf.py +++ b/conf.py @@ -280,4 +280,6 @@ # When using "linkckeck" builder, no checks on anchors. linkcheck_anchors = False -linkcheck_ignore = [r'http://localhost:\d+/', r'http://your\.akeneo-pim\.url.*', r'https://filezilla-project\.org'] +linkcheck_ignore = [r'http://localhost:\d+/', r'http://your\.akeneo-pim\.url.*'] + +user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99' diff --git a/contribute_to_pim/tests/establishing_decorator_pattern.rst b/contribute_to_pim/tests/establishing_decorator_pattern.rst index ed724a716..088b3e723 100644 --- a/contribute_to_pim/tests/establishing_decorator_pattern.rst +++ b/contribute_to_pim/tests/establishing_decorator_pattern.rst @@ -358,7 +358,7 @@ Now, let's see what happens when *grantGroup()* is called from our context. .. note:: - To learn more about spin, please refer to the `spin chapter `_. + To learn more about spin, please refer to :doc:`spin`. You may notice that all logic of the element research is located in decorators and is spinned. diff --git a/import_and_export_data/guides/create-connector.rst b/import_and_export_data/guides/create-connector.rst index bb41b1eda..a7cccf86a 100644 --- a/import_and_export_data/guides/create-connector.rst +++ b/import_and_export_data/guides/create-connector.rst @@ -40,6 +40,8 @@ The only new info here is the name (first parameter) and the connector name (the How can we add our notification behaviour to this job? The simplest way is to write a new step that will be executed after the export step. +.. _connector-add-a-new-step: + Add a new step -------------- diff --git a/install_pim/docker/installation_docker.rst b/install_pim/docker/installation_docker.rst index 6503a4e1a..6af8d5eb6 100644 --- a/install_pim/docker/installation_docker.rst +++ b/install_pim/docker/installation_docker.rst @@ -133,7 +133,7 @@ Akeneo PIM is configured with environment variables. The `Symfony documentation Running jobs ************ -Akeneo PIM implements a queue for the `jobs <../../import_and_export_data/index.html>`_, as a PHP daemon. This daemon is a Symfony command, that can only execute one job at a time. It does not consume any other job until the job is finished. +Akeneo PIM implements a queue for the :doc:`/import_and_export_data/index` jobs, as a PHP daemon. This daemon is a Symfony command, that can only execute one job at a time. It does not consume any other job until the job is finished. You can launch several daemons to allow the execution of several jobs in parallel. A daemon checks the queue every second and executes the next job in the queue. diff --git a/install_pim/manual/common_install_ce_ee.rst.inc b/install_pim/manual/common_install_ce_ee.rst.inc index 5dbea8650..a60a33479 100644 --- a/install_pim/manual/common_install_ce_ee.rst.inc +++ b/install_pim/manual/common_install_ce_ee.rst.inc @@ -61,7 +61,7 @@ Akeneo PIM is configured with environment variables. The `Symfony documentation Running jobs ************ -Akeneo PIM implements a queue for the `jobs <../../import_and_export_data/index.html>`_, as a PHP daemon. This daemon is a Symfony command, that can only execute one job at a time. It does not consume any other job until the job is finished. +Akeneo PIM implements a queue for the :doc:`jobs `, as a PHP daemon. This daemon is a Symfony command, that can only execute one job at a time. It does not consume any other job until the job is finished. You can launch several daemons to allow the execution of several jobs in parallel. A daemon checks every 5 seconds the queue and executes the next job from the queue. diff --git a/manipulate_pim_data/teamwork_assistant/activate_loggable_step.rst b/manipulate_pim_data/teamwork_assistant/activate_loggable_step.rst index 7828dce9d..6c824e28c 100644 --- a/manipulate_pim_data/teamwork_assistant/activate_loggable_step.rst +++ b/manipulate_pim_data/teamwork_assistant/activate_loggable_step.rst @@ -1,13 +1,12 @@ How To Log Memory Usage In Calculation Steps ============================================ -.. _calculation step: ../../technical_overview/teamwork_assistant/project_creation.html#calculation-steps - We created the ``Akeneo\Pim\WorkOrganization\TeamWorkAssistant\Component\Job\ProjectCalculation\CalculationStep\LoggableStep`` for debug purposes. It allows to log the memory usage for each loop of the -``Akeneo\Pim\WorkOrganization\TeamWorkAssistant\Component\Job\ProjectCalculation\ProjectCalculationTasklet``. It helped us to hunt -memory leaks. Don't hesitate to use it to check your custom `calculation step`_. +``Akeneo\Pim\WorkOrganization\TeamWorkAssistant\Component\Job\ProjectCalculation\ProjectCalculationTasklet``. +It helped us to hunt memory leaks. +Don't hesitate to use it to check your custom :ref:`calculation step `. .. code-block:: php diff --git a/manipulate_pim_data/teamwork_assistant/add_project_remover.rst b/manipulate_pim_data/teamwork_assistant/add_project_remover.rst index ffc4b5f19..9c0369af7 100644 --- a/manipulate_pim_data/teamwork_assistant/add_project_remover.rst +++ b/manipulate_pim_data/teamwork_assistant/add_project_remover.rst @@ -1,10 +1,9 @@ How To Remove A Project On A Custom Catalog Update? =================================================== -.. _reference: ../../technical_overview/teamwork_assistant/catalog_impact.html - Several catalog updates can have an impact on project integrity. In this case we need to remove the impacted projects. -Akeneo PIM already manages its own catalog updates. The list is available in Teamwork Assistant reference_ part. +Akeneo PIM already manages its own catalog updates. +The list is available in Teamwork Assistant :doc:`reference ` part. How does It Work? _________________ diff --git a/reference_entities/add_custom_property_to_your_custom_attribute_type.rst b/reference_entities/add_custom_property_to_your_custom_attribute_type.rst index 4bce3f5da..a74311b94 100644 --- a/reference_entities/add_custom_property_to_your_custom_attribute_type.rst +++ b/reference_entities/add_custom_property_to_your_custom_attribute_type.rst @@ -5,11 +5,9 @@ Add a Custom Property to Your Custom Attribute Type Reference Entities feature is only available for the **Enterprise Edition**. -In the `previous tutorial`_, we've created a custom simple metric attribute. +In the :doc:`previous tutorial `, we've created a custom simple metric attribute. In this tutorial, we will add a new custom property to this attribute. For the simple metric, we will add a "Unit" property. -.. _previous tutorial: ./create_new_attribute_type.html - .. image:: ../_images/reference_entities/custom_property_simple_metric_attribute.png :alt: Set a custom property on a custom attribute diff --git a/reference_entities/create_new_attribute_type.rst b/reference_entities/create_new_attribute_type.rst index fbd94f3a9..994c6690c 100644 --- a/reference_entities/create_new_attribute_type.rst +++ b/reference_entities/create_new_attribute_type.rst @@ -525,9 +525,7 @@ To be able to have everything working, we need to register our custom attribute view: '@custom/reference-entity/attribute/simple_metric.tsx' .. note:: - Note that in this tutorial, we don't have any custom property for this attribute, we'll cover this point in `another tutorial`_. - -.. _another tutorial: add_custom_property_to_your_custom_attribute_type.html + Note that in this tutorial, we don't have any custom property for this attribute, we'll cover this point in :doc:`another tutorial `. API Part of The New Attribute Type diff --git a/reference_entities/enrich_a_record_with_new_attribute_type.rst b/reference_entities/enrich_a_record_with_new_attribute_type.rst index 5f6661a6a..aafc23e58 100644 --- a/reference_entities/enrich_a_record_with_new_attribute_type.rst +++ b/reference_entities/enrich_a_record_with_new_attribute_type.rst @@ -5,9 +5,8 @@ Enrich Records with a new Reference Entity Attribute type Reference Entities feature is only available for the **Enterprise Edition**. -This cookbook will present how to enrich Records with a custom Reference Entity attribute type we just created `in a previous step`_. - -.. _in a previous step: ./create_new_attribute_type.html +This cookbook will present how to enrich Records with a custom Reference Entity attribute type we just created +:doc:`in a previous step `. Enrich Records with the Attribute --------------------------------- diff --git a/technical_architecture/best_practices/reusable_bundle.rst b/technical_architecture/best_practices/reusable_bundle.rst index 57d774ead..ee67a5749 100644 --- a/technical_architecture/best_practices/reusable_bundle.rst +++ b/technical_architecture/best_practices/reusable_bundle.rst @@ -30,7 +30,7 @@ Many attribute types are managed (14 in CE and one more in EE). Make sure you do Try your bundle with other catalogs. Don't forget use cases with many locales, many channels and various catalog volumes. .. _Community: https://github.com/akeneo/pim-community-standard -.. _Enterprise: https://www.akeneo.com/enterprise-edition/ +.. _Enterprise: https://www.akeneo.com/akeneo-pim-enterprise-edition/ .. _data generator bundle: https://github.com/akeneo-labs/DataGeneratorBundle diff --git a/technical_architecture/localization/how_to_use_the_localizers.rst b/technical_architecture/localization/how_to_use_the_localizers.rst index eb9ca534c..0e9d6b31c 100644 --- a/technical_architecture/localization/how_to_use_the_localizers.rst +++ b/technical_architecture/localization/how_to_use_the_localizers.rst @@ -25,9 +25,7 @@ The only argument of the service is the list of attribute types supported by you How to Convert Attributes in my Own Import/Export ------------------------------------------------- -.. _import: ../../import_and_export_data/product-import.html#product-processor-attributeconverterinterface - -To convert your localized attribute in your own import, see import_. +To convert your localized attribute in your own import, see :doc:`import `. How to Add a Decimal Separator in Import/Export ----------------------------------------------- diff --git a/technical_overview/teamwork_assistant/behat_permission_summary.rst b/technical_overview/teamwork_assistant/behat_permission_summary.rst index b39c1e550..1df2808a8 100644 --- a/technical_overview/teamwork_assistant/behat_permission_summary.rst +++ b/technical_overview/teamwork_assistant/behat_permission_summary.rst @@ -1,10 +1,8 @@ Users permission summary for Behat tests ======================================== -.. _Setup Behat part: /technical_architecture/best_practices/core/behat.html - In the case you extended the Teamwork Assistant, you may want to check that you didn't broke basics features. You can -have a look to the `Setup Behat part`_ to learn more about how to run our functional tests. +have a look to the :doc:`Behat part ` to learn more about how to run our functional tests. Because the Teamwork Assistant heavily uses permissions, we created a custom catalog that we use in our test features. Here is a summary about permissions we use in our catalog. This catalog has been modified in few scenario but it is diff --git a/technical_overview/teamwork_assistant/project_completeness.rst b/technical_overview/teamwork_assistant/project_completeness.rst index a307a2d84..7fa754dfd 100644 --- a/technical_overview/teamwork_assistant/project_completeness.rst +++ b/technical_overview/teamwork_assistant/project_completeness.rst @@ -38,9 +38,8 @@ From this introduction, let's recap which data we need: Creating a table to gather all data we need to compute the completeness seems to be a good idea but we need some adjustments. It can't be scalable if we do this for each user. -.. _format: format.html - -So let's remove users from this table. And now, how can we retrieve the completeness for a user? In the project format_, +So let's remove users from this table. And now, how can we retrieve the completeness for a user? +In the project :doc:`format `, we have product filters. From those filters it's easy to know which user is impacted by the product selection. To gain some time, we pre-calculate which user is impacted and we link them to project at its creation. But it's not scalable either. If we add a user, its completeness could not be calculated because he is not linked to the project yet. The @@ -59,19 +58,17 @@ Here is the final structure we needed (only data that are relevant for the demon - or is it complete? - Project model: - + - locale - channel - product filters - products (*) - user groups (*) -.. _calculation step: project_creation.html#calculation-steps - (*) As these fields are only used for the completeness calculation purpose and they have no sense from a business point of view, they are not mapped to doctrine. The `products` field from project model is a n - n table that helps to join project to pre-processing. The `user groups` field from project model is a n - n table that helps to know who is -impacted by the product selection. These tables are filled thanks to the `calculation step`_. +impacted by the product selection. These tables are filled thanks to the :doc:`calculation step `. By cross-checking pre-processing table, project table, category accesses table, attribute group accesses table we are able to calculate those three little numbers that are the number of products not started to enrich, in progress and done @@ -106,10 +103,8 @@ are computed once you save a project, when you save a product concerned by a pro sequential edit. Moreover, a command ``php bin/console pimee:project:recalculate`` is provided to help you to recalculate data according to your needs. -.. _scalability guide: scalability_guide.html - The advantage is that the regularity of the pre-processing data updating can be adjusted as required with this command. -Before using this you should have a look to the `scalability guide`_. +Before using this you should have a look to the :doc:`scalability guide `. According to our benchmark on a catalog with 3.6 millions of product values, pre-processing those data is feasible during the night for many projects as we don't pre-process all the catalog but only products concerned by projects and diff --git a/technical_overview/teamwork_assistant/project_creation.rst b/technical_overview/teamwork_assistant/project_creation.rst index 12daf05ce..e98e141c9 100644 --- a/technical_overview/teamwork_assistant/project_creation.rst +++ b/technical_overview/teamwork_assistant/project_creation.rst @@ -8,10 +8,9 @@ Projects are the heart of Akeneo Teamwork Assistant. They allow users to know wh products. In this section, we will understand how a project is created and what are the important steps it goes through during creation. -.. _project completeness: project_completeness.html - * project **saved**: Via the UI, the user creates a new project, then saves it. A project is saved when the Project entity has been saved in the database. -* project **calculated**: Once a project has been saved some background processes are launched. For example, these processes detect impacted users and they compute the `project completeness`_ of each product for multiple user groups +* project **calculated**: Once a project has been saved some background processes are launched. + For example, these processes detect impacted users and they compute the :doc:`project completeness ` of each product for multiple user groups and permissions using calculation steps. A project is known as created when these two steps are done. @@ -38,6 +37,8 @@ Once normalized, a project looks like this: "datagridView" => [] DatagridView [internal_api] format ] +.. _calculation-steps: + Calculation Steps _________________ @@ -47,31 +48,24 @@ notify users concerned by the project. For each product we need to identify the user groups that have the rights to edit the products. Once all the products have been checked, we send a notification to the concerned users (aka the contributors). -.. _Job: ../import_export/main-concepts.html#job - The job fills in a table that contains user groups that have permissions to edit at least one attribute of a product -that belongs to the project. The job `Job`_ contains steps. +that belongs to the project. The job :doc:`Job ` contains steps. The main step of the job is the `CalculationStep` which is used to execute an action between Project and Products. The main goal of this step is to extract data from the product to add information to the project. -.. _Item Step: ../../import_and_export_data/guides/create-connector.html#add-a-new-step - -.. _Add a calculation step: ../../manipulate_pim_data/teamwork_assistant/calculation_step.html#add-a-calculation-step - .. note:: - To get more information about how to add custom item steps in a job go to this `Item Step`_. + To get more information about how to add custom item steps in a job go to this :ref:`Item Step `. .. note:: - To get more information about how to add custom calculation steps during calculation job go to this `Add a calculation step`_. + To get more information about how to add custom calculation steps during calculation job go to this :doc:`Add a calculation step `. Project Creation Event ______________________ -.. _add notifications: ../../manipulate_pim_data/teamwork_assistant/customize_notification.html#customize-notifications - -The PIM offers an event on which you can plug listeners to add custom behaviors. For example to `add notifications`_, +The PIM offers an event on which you can plug listeners to add custom behaviors. +For example to :doc:`add notifications `, or to trigger special actions. This event is located in the class ``Akeneo\TeamworkAssistant\Component\Event\ProjectCreationEvents``. diff --git a/technical_overview/teamwork_assistant/scalability_guide.rst b/technical_overview/teamwork_assistant/scalability_guide.rst index 39d5c46a7..54a081aff 100644 --- a/technical_overview/teamwork_assistant/scalability_guide.rst +++ b/technical_overview/teamwork_assistant/scalability_guide.rst @@ -8,20 +8,17 @@ project from the Product Edit Form and the sequential edit. Moreover, a command This scalability guide will focus on how to use the Teamwork Assistant functionally (how much projects in the same time, etc.) and technically (how to use the recalculate command) in a healthy way. -.. _project completeness: project_completeness.html - .. note:: - To know more about the project completeness visit the `project completeness`_ reference. + To know more about the project completeness visit the :doc:`project completeness ` reference. Computing Project Completeness ------------------------------ -.. _medium catalog: ../scalability_guide/representative_catalogs.html - Before beginning to work with the Teamwork Assistant, you must be aware that this feature has to compute a lot of data. The more products and attribute groups you have in a project, the more time project completeness computing will take. -We did some benchmarks with our `medium catalog`_ on MySQL to give you an idea of the time it can take. A medium +We did some benchmarks with our :doc:`medium catalog ` +on MySQL to give you an idea of the time it can take. A medium catalog is about 3,66 millions of product values. @@ -40,4 +37,4 @@ with read/edit permissions on 7 attribute groups. Here are the server’s features used for the bench: **CPU:** Intel E3-1220 V2 @ 3.1GHZ (4 cores) **RAM:** 16 GB -**Disk:** SATA 3 - 7200 RPM disks \ No newline at end of file +**Disk:** SATA 3 - 7200 RPM disks diff --git a/technical_overview/teamwork_assistant/widget_extension_points.rst b/technical_overview/teamwork_assistant/widget_extension_points.rst index abc4ad4f7..86c015dc7 100644 --- a/technical_overview/teamwork_assistant/widget_extension_points.rst +++ b/technical_overview/teamwork_assistant/widget_extension_points.rst @@ -9,11 +9,9 @@ completeness for contributors and owner. Displayed data are contextual. It means for each contributor and for the owner. Contributors see completeness depending on their own permissions. The owner sees the full completeness of family requirements. -.. _`project calculation`: project_completeness.html - .. tip:: - To know more about the completeness calculation, you can read `project calculation`_. + To know more about the completeness calculation, you can read :doc:`project calculation `. Widget extension points? ________________________ @@ -54,11 +52,6 @@ Which position to choose? - To add your extension between the project selector and the contributor selector the position must be between 100 and 200. - To add your extension at the far right the position must be above 200. -.. _`how to customize the PEF`: ../..//add_a_custom_button_to_product_edit_form.html - -.. tip:: - - We did cookbook about `how to customize the PEF`_. Events ++++++ From 337e129dbb283323c0e5283fa567bd3be74d5f17 Mon Sep 17 00:00:00 2001 From: pyklein Date: Fri, 18 Feb 2022 10:26:55 +0100 Subject: [PATCH 03/21] update technical recommendation Update docs for version 6.0 --- .../application_technical_dependencies.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/technical_architecture/technical_information/application_technical_dependencies.rst b/technical_architecture/technical_information/application_technical_dependencies.rst index e6367a948..445c49294 100644 --- a/technical_architecture/technical_information/application_technical_dependencies.rst +++ b/technical_architecture/technical_information/application_technical_dependencies.rst @@ -12,9 +12,9 @@ The application relies on Symfony framework. This web framework allows Akeneo PI This means that Akeneo PIM installation process will use composer to install or update all these dependencies easily. +---------+-----------------------------------------------------+------------------+ -| PHP | 7.4 (Apache Fast CGI with FPM, no CGI, nor mod_php) | Required | +| PHP | 8.0 (Apache Fast CGI with FPM, no CGI, nor mod_php) | Required | +---------+-----------------------------------------------------+------------------+ -| Symfony | 4.4 | Shipped with PIM | +| Symfony | 5.4 | Shipped with PIM | +---------+-----------------------------------------------------+------------------+ **Main Symfony bundles** From b14a26af56ee7a6148b01c0ba9aef0d253526312 Mon Sep 17 00:00:00 2001 From: pyklein Date: Fri, 18 Feb 2022 10:31:45 +0100 Subject: [PATCH 04/21] Update recommended_configuration.rst --- .../recommended_configuration.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/technical_architecture/technical_information/recommended_configuration.rst b/technical_architecture/technical_information/recommended_configuration.rst index 102693f90..4a555190f 100644 --- a/technical_architecture/technical_information/recommended_configuration.rst +++ b/technical_architecture/technical_information/recommended_configuration.rst @@ -12,17 +12,17 @@ Software -------- +-------------------+------------------------------------------------------------------------------------------------------------+ -| Debian (Linux) | 9 (64 bits) | +| Debian (Linux) | 10 (64 bits) | +-------------------+------------------------------------------------------------------------------------------------------------+ -| or Ubuntu | 16.04 (64 bits) | +| or Ubuntu | 18.04 (64 bits) | +-------------------+------------------------------------------------------------------------------------------------------------+ | Apache Web Server | ≥ 2.4 | +-------------------+------------------------------------------------------------------------------------------------------------+ -| PHP (FPM not CGI) | 7.2 | +| PHP (FPM not CGI) | 8.0 | +-------------------+------------------------------------------------------------------------------------------------------------+ -| MySQL | 5.7 | +| MySQL | 8.0 | +-------------------+------------------------------------------------------------------------------------------------------------+ -| Elasticsearch | 5.5 ≤ version < 6 | +| Elasticsearch | 7.4 ≤ version | +-------------------+------------------------------------------------------------------------------------------------------------+ .. warning:: From dcc9975d460207b6c6070f7035c8d00283122f26 Mon Sep 17 00:00:00 2001 From: jean-marie leroux Date: Mon, 21 Feb 2022 09:01:22 +0100 Subject: [PATCH 05/21] No automatic pullup for master --- .circleci/config.yml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 2e0818696..e48932e5d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -34,9 +34,6 @@ jobs: name: Deploy on production server command: DEPLOY_HOSTNAME=$PROD_HOSTNAME DEPLOY_PORT=$PROD_PORT VERSION="master" make deploy -orbs: - pull-up: akeneo-orbs/pull-up@1.0 - workflows: version: 2 pull_request: @@ -61,20 +58,6 @@ workflows: requires: - approve_to_deploy_in_production - pull_up: - jobs: - - pull-up/pull-up: - from: "6.0" - into: "master" - branch_prefix: "60_to_master" - github_token: MICHEL_TAG_TOKEN - github_username: "micheltag" - slack_webhook: "${SLACK_URL_PULL_UP}" - filters: - branches: - only: - - "6.0" - nightly: triggers: - schedule: From ef847e578b19ab3739a1941e0615d106020e9b60 Mon Sep 17 00:00:00 2001 From: jean-marie leroux Date: Mon, 21 Feb 2022 09:05:23 +0100 Subject: [PATCH 06/21] Fix malformed table --- .../technical_information/recommended_configuration.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/technical_architecture/technical_information/recommended_configuration.rst b/technical_architecture/technical_information/recommended_configuration.rst index 4a555190f..890d53839 100644 --- a/technical_architecture/technical_information/recommended_configuration.rst +++ b/technical_architecture/technical_information/recommended_configuration.rst @@ -12,7 +12,7 @@ Software -------- +-------------------+------------------------------------------------------------------------------------------------------------+ -| Debian (Linux) | 10 (64 bits) | +| Debian (Linux) | 10 (64 bits) | +-------------------+------------------------------------------------------------------------------------------------------------+ | or Ubuntu | 18.04 (64 bits) | +-------------------+------------------------------------------------------------------------------------------------------------+ @@ -22,7 +22,7 @@ Software +-------------------+------------------------------------------------------------------------------------------------------------+ | MySQL | 8.0 | +-------------------+------------------------------------------------------------------------------------------------------------+ -| Elasticsearch | 7.4 ≤ version | +| Elasticsearch | 7.4 ≤ version | +-------------------+------------------------------------------------------------------------------------------------------------+ .. warning:: From 979628b418f27fbd81a05d065e66fd192159c591 Mon Sep 17 00:00:00 2001 From: jmleroux Date: Mon, 21 Feb 2022 10:10:08 +0100 Subject: [PATCH 07/21] PullUp: Fix master branch references --- Dockerfile | 2 +- conf.py | 2 +- .../tests/establishing_decorator_pattern.rst | 12 +++++------ contribute_to_pim/tests/index.rst | 2 +- contribute_to_pim/translate.rst | 4 ++-- import_and_export_data/simple-import.rst | 4 ++-- .../register_a_new_mass_edit_action.rst | 2 +- manipulate_pim_data/non-product/create.rst | 2 +- .../best_practices/core/standards.rst | 2 +- .../best_practices/reusable_bundle.rst | 2 +- .../events/storage_events.rst | 20 +++++++++---------- use_sso_authentication/index.rst | 2 +- 12 files changed, 28 insertions(+), 28 deletions(-) diff --git a/Dockerfile b/Dockerfile index b58834758..f0cd11249 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM akeneo/pim-php-dev:6.0 +FROM akeneo/pim-php-dev:master WORKDIR /home/akeneo/pim-docs/ ENV DEBIAN_FRONTEND=noninteractive diff --git a/conf.py b/conf.py index c8e47628e..85a98270a 100644 --- a/conf.py +++ b/conf.py @@ -57,7 +57,7 @@ # built documents. # # The short X.Y version. -version = os.getenv('PIM_VERSION', '6.0') +version = os.getenv('PIM_VERSION', 'master') # Warning: These versions will be deleted on documentation deploy. versions = os.getenv('PIM_VERSIONS', 'master') diff --git a/contribute_to_pim/tests/establishing_decorator_pattern.rst b/contribute_to_pim/tests/establishing_decorator_pattern.rst index 798197197..088b3e723 100644 --- a/contribute_to_pim/tests/establishing_decorator_pattern.rst +++ b/contribute_to_pim/tests/establishing_decorator_pattern.rst @@ -86,7 +86,7 @@ Navigate And Change The Current Page } Selenium will know which URL to go to thanks to `the protected $path attribute -`_ +`_ contained in *Context\\Page\\Role\\Edit*. You may notice that this Gherkin method still uses the old implementation of Behat in Akeneo PIM. @@ -102,7 +102,7 @@ This organization is very helpful to quickly find the context you are looking fo We are working on permissions that are localized in the system main menu. So let's see the `\\Pim\\Behat\\Context\\Domain\\System\\PermissionsContext -`_. +`_. .. image:: images/PermissionsContext.png @@ -149,12 +149,12 @@ Pages _____ The current page is `Context\\Page\\Role\\Edit -`_. +`_. When you call *Pim\\Behat\\Context\\NavigationContext->getCurrentPage()* the method will match "Role edit" to *return new Context\\Page\\Role\\Edit()*. That's why all of our pages are located in a folder named after the name of the Entity. In this folder, each action has its dedicated page such as Index.php, Creation.php, Edit.php as you can see -in the `Role folder `_ for example. +in the `Role folder `_ for example. .. image:: images/edit.png @@ -247,7 +247,7 @@ The name of the sub-folder is only the representative name of the element, no pr have to be suffixed by "Decorator" like *DecoratedElementDecorator*. The `Pim\\Behat\\Decorator\\Permission\\PermissionDecorator -`_ +`_ adds behaviors to an Element to be able to navigate between groups and grant or revoke permissions for resources or groups. .. image:: images/decorator.png @@ -303,7 +303,7 @@ The method *$this->find()* is neither in the decorator nor in the abstract class That's how we can call methods from the Element class inside decorators. And obviously, that's why all decorators must extend `Pim\\Behat\\Decorator\\ElementDecorator -`_. +`_. .. note:: diff --git a/contribute_to_pim/tests/index.rst b/contribute_to_pim/tests/index.rst index 25c82fa98..619dc1095 100644 --- a/contribute_to_pim/tests/index.rst +++ b/contribute_to_pim/tests/index.rst @@ -2,7 +2,7 @@ How behavior tests are architectured in the PIM? ================================================ -The PIM comes with a set of Behat scenarios: https://github.com/akeneo/pim-community-dev/tree/6.0/tests/legacy/features +The PIM comes with a set of Behat scenarios: https://github.com/akeneo/pim-community-dev/tree/master/tests/legacy/features .. warning:: diff --git a/contribute_to_pim/translate.rst b/contribute_to_pim/translate.rst index 5f8e62881..d79b3036d 100644 --- a/contribute_to_pim/translate.rst +++ b/contribute_to_pim/translate.rst @@ -37,13 +37,13 @@ Then, copy the translations in the right folders: .. code-block:: bash - cp -r crowdin_archive/6.0/Community/* your_app/vendor/akeneo/pim-community-dev/ + cp -r crowdin_archive/master/Community/* your_app/vendor/akeneo/pim-community-dev/ If you use the Enterprise Edition, run this command too: .. code-block:: bash - cp -r crowdin_archive/6.0/Enterprise/* your_app/vendor/akeneo/pim-enterprise-dev/ + cp -r crowdin_archive/master/Enterprise/* your_app/vendor/akeneo/pim-enterprise-dev/ Then, update the parameters of `your_app/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/UIBundle/Resources/config/locale_provider.yml` to change the minimum percentage and add your new language (here, 10% and Hungarian): diff --git a/import_and_export_data/simple-import.rst b/import_and_export_data/simple-import.rst index 3725a29da..27a6cc118 100644 --- a/import_and_export_data/simple-import.rst +++ b/import_and_export_data/simple-import.rst @@ -1,8 +1,8 @@ How import works ================ -.. _minimal: https://github.com/akeneo/pim-community-dev/tree/6.0/src/Akeneo/Platform/Bundle/InstallerBundle/Resources/fixtures/minimal -.. _icecat: https://github.com/akeneo/pim-community-dev/tree/6.0/src/Akeneo/Platform/Bundle/InstallerBundle/Resources/fixtures/icecat_demo_dev +.. _minimal: https://github.com/akeneo/pim-community-dev/tree/master/src/Akeneo/Platform/Bundle/InstallerBundle/Resources/fixtures/minimal +.. _icecat: https://github.com/akeneo/pim-community-dev/tree/master/src/Akeneo/Platform/Bundle/InstallerBundle/Resources/fixtures/icecat_demo_dev At any time, a set of data can be imported: products, attributes, users, etc. diff --git a/manipulate_pim_data/mass_edition/register_a_new_mass_edit_action.rst b/manipulate_pim_data/mass_edition/register_a_new_mass_edit_action.rst index b785241bf..288b87ca8 100644 --- a/manipulate_pim_data/mass_edition/register_a_new_mass_edit_action.rst +++ b/manipulate_pim_data/mass_edition/register_a_new_mass_edit_action.rst @@ -8,7 +8,7 @@ on selected products. Prerequisite ------------ The mass edit action uses the `BatchBundle -`_ in order to run mass edit in the background. Readers and Writers are already +`_ in order to run mass edit in the background. Readers and Writers are already created so in this cookbook we will focus on how to create a Mass Edit Action and create a Processor. For more information on how to create Jobs, Readers, Processors, or Writers please see :doc:`/import_and_export_data/index`. diff --git a/manipulate_pim_data/non-product/create.rst b/manipulate_pim_data/non-product/create.rst index 07a83d53d..69c9b6f2d 100644 --- a/manipulate_pim_data/non-product/create.rst +++ b/manipulate_pim_data/non-product/create.rst @@ -1,7 +1,7 @@ How to Create Non-Product Objects ================================= -.. _SimpleFactoryInterface: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Tool/Component/StorageUtils/Factory/SimpleFactoryInterface.php +.. _SimpleFactoryInterface: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Tool/Component/StorageUtils/Factory/SimpleFactoryInterface.php To create common objects, we rely on different methods depending on the complexity of the object. There are some examples on how to use these services. diff --git a/technical_architecture/best_practices/core/standards.rst b/technical_architecture/best_practices/core/standards.rst index c50ae4d19..ef599713b 100644 --- a/technical_architecture/best_practices/core/standards.rst +++ b/technical_architecture/best_practices/core/standards.rst @@ -5,7 +5,7 @@ When contributing code to Akeneo PIM, you must follow its coding standards (very Akeneo follows the standards defined in the `PSR-0`_, `PSR-1`_ and `PSR-2`_ documents. -We use few extra rules defined in our configuration of php-cs-fixer https://github.com/akeneo/pim-community-dev/blob/6.0/.php_cs.php. +We use few extra rules defined in our configuration of php-cs-fixer https://github.com/akeneo/pim-community-dev/blob/master/.php_cs.php. Example ------- diff --git a/technical_architecture/best_practices/reusable_bundle.rst b/technical_architecture/best_practices/reusable_bundle.rst index d8d2db6f9..ee67a5749 100644 --- a/technical_architecture/best_practices/reusable_bundle.rst +++ b/technical_architecture/best_practices/reusable_bundle.rst @@ -131,7 +131,7 @@ For your own model classes, create your class and its interface. Then you can rely on your interface and use the `Akeneo target resolver`_ which is based on the `Doctrine target entity resolver`_. .. _oneToOne unidirectional association: https://www.doctrine-project.org/projects/doctrine-orm/en/2.5/reference/association-mapping.html#one-to-one-unidirectional -.. _Akeneo target resolver: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Tool/Bundle/StorageUtilsBundle/DependencyInjection/Compiler/AbstractResolveDoctrineTargetModelPass.php +.. _Akeneo target resolver: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Tool/Bundle/StorageUtilsBundle/DependencyInjection/Compiler/AbstractResolveDoctrineTargetModelPass.php .. _Doctrine target entity resolver: https://symfony.com/doc/4.4/doctrine/resolve_target_entity.html diff --git a/technical_architecture/events/storage_events.rst b/technical_architecture/events/storage_events.rst index 4faa8dac9..583047b1e 100644 --- a/technical_architecture/events/storage_events.rst +++ b/technical_architecture/events/storage_events.rst @@ -2,7 +2,7 @@ Storage events ============== .. _GenericEvent: https://github.com/symfony/symfony/blob/4.4/src/Symfony/Component/EventDispatcher/GenericEvent.php -.. _RemoveEvent: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Tool/Component/StorageUtils/Event/RemoveEvent.php +.. _RemoveEvent: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Tool/Component/StorageUtils/Event/RemoveEvent.php Storage events are dispatched in the PIM when you manipulate data using the savers and removers services. They are basically useful if you want to add your business logic before or after an object is saved or removed. @@ -33,8 +33,8 @@ ProjectSubscriber (Enterprise edition) 0 CheckPublishedProductOnRemovalSubscriber (Enterprise edition) 0 ================================================================ =============== -.. _CheckChannelsOnDeletionSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/Category/OnDelete/CheckChannelsOnDeletionSubscriber.php -.. _AddRemoveVersionSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Tool/Bundle/VersioningBundle/EventSubscriber/AddRemoveVersionSubscriber.php +.. _CheckChannelsOnDeletionSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/Category/OnDelete/CheckChannelsOnDeletionSubscriber.php +.. _AddRemoveVersionSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Tool/Bundle/VersioningBundle/EventSubscriber/AddRemoveVersionSubscriber.php ``akeneo.storage.post_remove`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -52,8 +52,8 @@ Listener Class Name Priority `ProductModel\\OnDelete\\ComputeProductAndAncestorsSubscriber`_ 0 =============================================================== =============== -.. _Product\\OnDelete\\ComputeProductsAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/Product/OnDelete/ComputeProductsAndAncestorsSubscriber.php -.. _ProductModel\\OnDelete\\ComputeProductAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/ProductModel/OnDelete/ComputeProductAndAncestorsSubscriber.php +.. _Product\\OnDelete\\ComputeProductsAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/Product/OnDelete/ComputeProductsAndAncestorsSubscriber.php +.. _ProductModel\\OnDelete\\ComputeProductAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/ProductModel/OnDelete/ComputeProductAndAncestorsSubscriber.php ``akeneo.storage.pre_remove_all`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -89,9 +89,9 @@ ProjectSubscriber (Enterprise edition) 0 EnsureProductDraftGlobalStatusSubscriber (Enterprise edition) 0 ============================================================= =============== -.. _CurrencyDisablingSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Channel/Bundle/EventListener/CurrencyDisablingSubscriber.php -.. _ComputeEntityRawValuesSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/EntityWithValues/ComputeEntityRawValuesSubscriber.php -.. _ChannelLocaleSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Channel/Bundle/EventListener/ChannelLocaleSubscriber.php +.. _CurrencyDisablingSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/Bundle/EventListener/CurrencyDisablingSubscriber.php +.. _ComputeEntityRawValuesSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/EntityWithValues/ComputeEntityRawValuesSubscriber.php +.. _ChannelLocaleSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/Bundle/EventListener/ChannelLocaleSubscriber.php ``akeneo.storage.post_save`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -111,8 +111,8 @@ CatalogUpdatesSubscriber (Enterprise edition) 0 ImportProposalsSubscriber (Enterprise edition) 0 =============================================================== =============== -.. _Product\\OnSave\\ComputeProductsAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/Product/OnSave/ComputeProductsAndAncestorsSubscriber.php -.. _ProductModel\\OnSave\\ComputeProductAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/6.0/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/ProductModel/OnSave/ComputeProductAndAncestorsSubscriber.php +.. _Product\\OnSave\\ComputeProductsAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/Product/OnSave/ComputeProductsAndAncestorsSubscriber.php +.. _ProductModel\\OnSave\\ComputeProductAndAncestorsSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/ProductModel/OnSave/ComputeProductAndAncestorsSubscriber.php ``akeneo.storage.pre_save_all`` diff --git a/use_sso_authentication/index.rst b/use_sso_authentication/index.rst index 32d3614a5..1e542540d 100644 --- a/use_sso_authentication/index.rst +++ b/use_sso_authentication/index.rst @@ -100,7 +100,7 @@ This container will expose the ``8082`` port, you can override this value in the You can access the IdP administration page at the following url: http://localhost:8082/simplesaml. -| Some users are already configured, the same that are in the `icecat_demo_dev fixtures `_. +| Some users are already configured, the same that are in the `icecat_demo_dev fixtures `_. | They are defined in the ``docker/sso_authsources.php``. From eb78861610bbff8c75e2b0eb730b8f2deebfa155 Mon Sep 17 00:00:00 2001 From: Pierrick Martos Date: Thu, 3 Mar 2022 14:36:34 +0100 Subject: [PATCH 08/21] Update the docker install command with new composer cache directory --- install_pim/docker/installation_docker.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_pim/docker/installation_docker.rst b/install_pim/docker/installation_docker.rst index 52dc543c0..80607fa36 100644 --- a/install_pim/docker/installation_docker.rst +++ b/install_pim/docker/installation_docker.rst @@ -51,7 +51,7 @@ The following command will create a PIM project in the current directory. Please $ cd pim $ docker run -ti -u www-data --rm \ -e COMPOSER_MEMORY_LIMIT=4G \ - -v $(pwd):/srv/pim -v ~/.composer:/var/www/.composer -w /srv/pim \ + -v $(pwd):/srv/pim -v ~/.composer:/var/www/.composer -w /srv/pim -v ~/.cache:/var/www/.cache \ akeneo/pim-php-dev:5.0 php /usr/local/bin/composer create-project \ akeneo/pim-community-standard /srv/pim "5.0.*@stable" From 68aff33b9ac048172c5115fbde1ba7d1711b0fc2 Mon Sep 17 00:00:00 2001 From: Megane Le Palud Date: Fri, 4 Mar 2022 11:01:43 +0100 Subject: [PATCH 09/21] marketplace renaming --- contribute_to_pim/create_connector.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contribute_to_pim/create_connector.rst b/contribute_to_pim/create_connector.rst index 83401a08e..c82bf78ce 100644 --- a/contribute_to_pim/create_connector.rst +++ b/contribute_to_pim/create_connector.rst @@ -3,8 +3,8 @@ How to contribute to a Connector? We're happy to connect the PIM to any third-party system! -* Begin by checking on the `Akeneo PIM Marketplace`_ that nobody published a connector for a 3rd party system +* Begin by checking on the `Akeneo App Store`_ that nobody published a connector for a 3rd party system * Create your connector :doc:`/import_and_export_data/guides/create-connector` -* Reference it on the `Akeneo PIM Marketplace`_ +* Reference it on the `Akeneo App Store`_ -.. _Akeneo PIM Marketplace: https://marketplace.akeneo.com/ +.. _Akeneo App Store: https://marketplace.akeneo.com/ From 5ffe03f32f8ce731152319b7cfaa52d569662dbc Mon Sep 17 00:00:00 2001 From: jean-marie leroux Date: Mon, 7 Mar 2022 11:39:01 +0100 Subject: [PATCH 10/21] BH-1113: Update migration doc for v6 - Add all migrations before stack update (#1750) --- migrate_pim/upgrade/upgrade_from_50_to_60.rst | 26 ++++++++++++------- migrate_pim/upgrade_major_version.rst | 4 +-- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/migrate_pim/upgrade/upgrade_from_50_to_60.rst b/migrate_pim/upgrade/upgrade_from_50_to_60.rst index 100b8cd09..9a8d22c5b 100644 --- a/migrate_pim/upgrade/upgrade_from_50_to_60.rst +++ b/migrate_pim/upgrade/upgrade_from_50_to_60.rst @@ -9,6 +9,22 @@ Disclaimer Make sure your production database is backed-up before performing the data migration. The queue daemon(s) must be stopped as well. +Prepare your project for the new technical stack +************************************************ + +Your current v5.0 application must have up to date migrations before migrating on the new technical stack. + +The root of your current installation dir is referred as $INSTALLATION_DIR. + +.. code:: bash + + $ export APP_ENV=prod + $ cd $INSTALLATION_DIR + $ cp -R ./vendor/akeneo/pim-community-dev/upgrades/* ./upgrades/ + $ cp -R ./vendor/akeneo/pim-enterprise-dev/upgrades/* ./upgrades/ + $ php bin/console doctrine:migrations:version --add --all -q + $ rm -rf var/cache/ + Requirements ************ @@ -54,16 +70,6 @@ Akeneo PIM composer.json ---------------------------- The root of your current installation dir is referred as $INSTALLATION_DIR. - -.. code:: bash - - $ export APP_ENV=prod - $ cd $INSTALLATION_DIR - $ cp -R ./vendor/akeneo/pim-community-dev/upgrades/* ./upgrades/ - $ cp -R ./vendor/akeneo/pim-enterprise-dev/upgrades/* ./upgrades/ - $ php bin/console doctrine:migrations:version --add --all -q - $ rm -rf var/cache/ - Community Edition ^^^^^^^^^^^^^^^^^ diff --git a/migrate_pim/upgrade_major_version.rst b/migrate_pim/upgrade_major_version.rst index 76e2fbdc7..e29c8ab9c 100644 --- a/migrate_pim/upgrade_major_version.rst +++ b/migrate_pim/upgrade_major_version.rst @@ -7,12 +7,10 @@ These new major versions bring new features and larger changes to answer clients Upgrade from 1.7 to 2.0 ----------------------- -To migrate from 1.7 to 2.0, we recommend the use of our brand new migration tool `Transporteo`_. +To migrate from 1.7 to 2.0, we recommend the use of our migration tool `Transporteo`_. .. _Transporteo: https://github.com/akeneo/transporteo -We're continuously improving Transporteo to cover more and more use cases and automate more and more the migrations. - Upgrade from 2.3 to 3.1 ----------------------- From 8abe2ce2ae8b51e35e523e9a81b375b4240be2bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bryan=20St=C3=A9phan?= Date: Thu, 17 Mar 2022 11:48:06 +0100 Subject: [PATCH 11/21] PIM:10344: Add dqi command to launch in 5.0 to 6.0 migration --- migrate_pim/upgrade/upgrade_from_50_to_60.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/migrate_pim/upgrade/upgrade_from_50_to_60.rst b/migrate_pim/upgrade/upgrade_from_50_to_60.rst index b88d17127..302f71ca7 100644 --- a/migrate_pim/upgrade/upgrade_from_50_to_60.rst +++ b/migrate_pim/upgrade/upgrade_from_50_to_60.rst @@ -157,6 +157,7 @@ Migrate your data $ bin/console doctrine:migrations:migrate $ bin/console pimee:data-quality-insights:migrate-product-criterion-evaluation + $ bin/console akeneo:batch:publish-job-to-queue data_quality_insights_recompute_products_scores .. note:: From 8c1c6353a6d1f9262545131042ae702e443fef0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Le=20Nev=C3=A9?= Date: Thu, 17 Mar 2022 11:49:06 +0100 Subject: [PATCH 12/21] API-1741 - Update PIM doc according events API installation to migrate from 4.0 to 5.0 --- migrate_pim/upgrade/upgrade_from_40_to_50.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/migrate_pim/upgrade/upgrade_from_40_to_50.rst b/migrate_pim/upgrade/upgrade_from_40_to_50.rst index 07e7b1c9b..9cb956a1c 100644 --- a/migrate_pim/upgrade/upgrade_from_40_to_50.rst +++ b/migrate_pim/upgrade/upgrade_from_40_to_50.rst @@ -234,3 +234,9 @@ From that point, you will have to migrate your bundle one by one. Remember to check if they are still relevant, as each Akeneo version brings new features. + + +Setting up the Events API +************************* + +Configure your Events API with :doc:`/install_pim/manual/events_api` From fd244a7fca19f02d5977fcc607054b99fe724919 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bryan=20St=C3=A9phan?= Date: Thu, 17 Mar 2022 12:24:50 +0100 Subject: [PATCH 13/21] PIM:10344: Add dqi command to launch in 5.0 to 6.0 migration --- migrate_pim/upgrade/upgrade_from_50_to_60.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migrate_pim/upgrade/upgrade_from_50_to_60.rst b/migrate_pim/upgrade/upgrade_from_50_to_60.rst index 302f71ca7..e21ba3472 100644 --- a/migrate_pim/upgrade/upgrade_from_50_to_60.rst +++ b/migrate_pim/upgrade/upgrade_from_50_to_60.rst @@ -157,7 +157,7 @@ Migrate your data $ bin/console doctrine:migrations:migrate $ bin/console pimee:data-quality-insights:migrate-product-criterion-evaluation - $ bin/console akeneo:batch:publish-job-to-queue data_quality_insights_recompute_products_scores + $ bin/console pim:data-quality-insights:recompute-product-scores .. note:: From c189b972363b58d117e84c2e6f159d744fd72a7e Mon Sep 17 00:00:00 2001 From: LudovicTOURMAN <30794632+LudovicTOURMAN@users.noreply.github.com> Date: Mon, 28 Mar 2022 17:41:27 +0200 Subject: [PATCH 14/21] CLOUD-3051: Add Flexibility updates (#1771) --- .../docs/system_administration.rst | 1 - cloud_edition/flexibility_mode/index.rst | 32 +++++++++++++------ 2 files changed, 23 insertions(+), 10 deletions(-) diff --git a/cloud_edition/flexibility_mode/docs/system_administration.rst b/cloud_edition/flexibility_mode/docs/system_administration.rst index 3832ba62e..641e61b8d 100644 --- a/cloud_edition/flexibility_mode/docs/system_administration.rst +++ b/cloud_edition/flexibility_mode/docs/system_administration.rst @@ -65,7 +65,6 @@ Alias Argument Action ``partners_systemctl `` ``status|start|stop|restart|enable|disable`` Show status, start/stop/restart or enable/disable job consumers. Refer to `this page `_ for more details ============================ ============================================ ====== - Third-party Software Installation --------------------------------- diff --git a/cloud_edition/flexibility_mode/index.rst b/cloud_edition/flexibility_mode/index.rst index ef726c43f..c0a38d05d 100644 --- a/cloud_edition/flexibility_mode/index.rst +++ b/cloud_edition/flexibility_mode/index.rst @@ -24,24 +24,38 @@ Types of environments The system components are based on :doc:`../../../install_pim/manual/system_requirements/system_requirements`. -Updates and migrations ----------------------- - -Updates can include **patches** and **new features**. Integrators are accountables for applying new patches and performing migrations on the PIM. +PIM updates and migrations +-------------------------- + +Following the `Semantic Version `_, PIM has 2 main updates: + +- patches or minors versions: + Can include **bug fixes** and **new features**. + Integrators are accountable for applying new patches and performing migrations on the PIM. + You can refer to :doc:`../../../migrate_pim/upgrade_minor_version` for more details about the procedure. +- majors versions: + Requires **new versions** of software and various components. + Please contact us through the `Helpdesk > Cloud Flexibility and Serenity `_ to schedule the upgrade of the technological stack. + Then integrators are accountable for performing the PIM migration. + You can refer to :doc:`../../../migrate_pim/upgrade_major_version` for more details about the procedure. + +Quarterly System updates +------------------------ -You can refer to :doc:`../../../migrate_pim/index` for more details about the procedure. +In order for you to benefit the best of Flexibility experience, Akeneo schedules system updates on a quarterly basis. +These updates include **security patches** and **system improvements**. -.. note:: +They will be scheduled every last Wednesday/Thursday of the quarter following these time slots: - Major upgrades can require **new versions** of software and various components. - Please contact us through the `Helpdesk > Cloud Flexibility and Serenity `_ to schedule the upgrade of the tech stack. +- Asia/Australia: Starting **Wednesday at 3pm CET/CEST** +- Europe: Starting **Wednesday at 6pm CET/CEST** +- US: Starting **Thursday at 9am CET/CEST** Backups management ------------------ A snapshot of your production instance is made regularly and can be restored upon request. - Manage your environments ------------------------ .. toctree:: From 91041d9738f5c00c162549733b5d2c8b794cfc2d Mon Sep 17 00:00:00 2001 From: Laurent Petard Date: Wed, 30 Mar 2022 11:16:28 +0200 Subject: [PATCH 15/21] PLG-779: initiate doc to migrate from 6.0 to 7.0 --- migrate_pim/upgrade/upgrade_from_60_to_70.rst | 212 ++++++++++++++++++ migrate_pim/upgrade_major_version.rst | 10 + 2 files changed, 222 insertions(+) create mode 100644 migrate_pim/upgrade/upgrade_from_60_to_70.rst diff --git a/migrate_pim/upgrade/upgrade_from_60_to_70.rst b/migrate_pim/upgrade/upgrade_from_60_to_70.rst new file mode 100644 index 000000000..331505197 --- /dev/null +++ b/migrate_pim/upgrade/upgrade_from_60_to_70.rst @@ -0,0 +1,212 @@ +Upgrade from 6.0 to 7.0 +~~~~~~~~~~~~~~~~~~~~~~~ + +Use this documentation to upgrade projects based on Akeneo PIM Community Edition or Enterprise Edition 6.0 to 7.0. + +Disclaimer +********** + +Make sure your production database is backed-up before performing the data migration. +The queue daemon(s) must be stopped as well. + +Prepare your project for the new technical stack +************************************************ + +Your current v6.0 application must have up to date migrations before migrating on the new technical stack. + +The root of your current installation dir is referred as $INSTALLATION_DIR. + +.. code:: bash + + $ export APP_ENV=prod + $ cd $INSTALLATION_DIR + $ cp -R ./vendor/akeneo/pim-community-dev/upgrades/* ./upgrades/ + $ cp -R ./vendor/akeneo/pim-enterprise-dev/upgrades/* ./upgrades/ + $ php bin/console doctrine:migrations:version --add --all -q + $ rm -rf var/cache/ + +.. note:: + + WARNING: please note that this part of the migration needs to be executed on your PIM v6.0 ``before`` upgrading your technical stack. + + +Requirements +************ + +Updated System components +------------------------- + +You have to make sure your system components are updated to the version required for Akeneo PIM: + - PHP 8.0 + - MySQL 8.0 + - Elasticsearch 7.16 + + +Updated System dependencies +--------------------------- +Check your system dependencies are in sync with :doc:`/install_pim/manual/system_requirements/system_requirements` + + +Updated crontab definition +-------------------------- + +Check your crontab is in sync with :doc:`/cloud_edition/flexibility_mode/docs/crontasks` + + +Prepare your project +******************** + +Akeneo PIM composer.json +---------------------------- +The root of your current installation dir is referred as $INSTALLATION_DIR. + +Community Edition +^^^^^^^^^^^^^^^^^ + +You can download the composer.json file directly from the Github repository: + +.. code:: bash + + $ curl https://raw.githubusercontent.com/akeneo/pim-community-standard/7.0/composer.json > $INSTALLATION_DIR/composer.json + +Enterprise Edition +^^^^^^^^^^^^^^^^^^ +Please visit your `Akeneo Portal `_ to download the archive. + +.. code:: bash + + $ tar xvzf pim-enterprise-standard-.tar.gz -C $INSTALLATION_DIR --strip-components 1 pim-enterprise-standard/composer.json + +Load your PIM Enterprise dependencies +***************************************** + +.. code:: bash + + $ composer update + +.. note:: + + You may need to increase the memory provided to `composer`, as this step can be very memory consuming: + + .. code:: bash + + $ php -d memory_limit=4G /path/to/composer update + +Let Akeneo PIM continue the preparation for you +*************************************************** + +Community Edition +----------------- + +.. code:: bash + + $ export APP_ENV=prod + $ vendor/akeneo/pim-community-dev/std-build/migration/prepare_60_to_70.sh + + +Enterprise Edition +------------------ + +.. code:: bash + + $ export APP_ENV=prod + $ vendor/akeneo/pim-enterprise-dev/std-build/upgrade/prepare_60_to_70.sh + +.. warning:: + This script overwrites several configuration files. + + In case of customisation, you need to resolve conflicts. + +Make sure your environment is ready to be migrated +************************************************** + +.. code:: bash + + $ rm -Rf var/cache + $ bin/console pim:installer:check-requirements + +If this command detects something not working or not properly configured, +please fix the problem before continuing. + +Prepare the front +***************** + +.. code:: bash + + $ make upgrade-front + +Migrate your data +***************** + +.. code:: bash + + $ bin/console doctrine:migrations:migrate + $ bin/console pim:data-quality-insights:populate-product-models-scores-and-ki + +.. note:: + + You may receive the following warnings: + + WARNING! You have X previously executed migrations in the database that are not registered migrations. + + + This can be safely ignored as this only means that your database is up to date, but without finding the corresponding + migration files. + + Another message could be `Migration _X_Y_ZZZZ was executed but did not result in any SQL statements`. + + This makes sense for some migration that only touches the Elasticsearch index or don't apply because no data linked + to this migration have been found. + + The message "The migration has already been performed." concerning the "data-quality-insights" migration could be ignored . + + +Migrating your custom code +************************** + +Applying automatic fixes +------------------------ + +Some changes we made in the code of Akeneo PIM can be automatically applied to your own code. + +In order to make this process easier and more error proof, we decided to use PHP Rector (https://github.com/rectorphp/rector) +to apply these changes. + + +Installing Rector +^^^^^^^^^^^^^^^^^ + +.. code:: bash + + composer require --dev rector/rector-prefixed + +Applying automatic fixes +^^^^^^^^^^^^^^^^^^^^^^^^ + +.. code:: bash + + vendor/bin/rector process src/ + + +.. note:: + + This will use the `rector.yaml` file created by the `prepare.sh` above. + Feel free to add your own refactoring rules inside it. More information on https://getrector.org/ + +Identifying broken code +^^^^^^^^^^^^^^^^^^^^^^^^ + +You can use PHPStan to help you identify broken code: + + +.. code:: bash + + composer require --dev phpstan/phpstan + vendor/bin/phpstan analyse src/ + +More information, please check https://github.com/phpstan/phpstan + +From that point, you will have to migrate your bundle one by one. + +Remember to check if they are still relevant, as each Akeneo version +brings new features. diff --git a/migrate_pim/upgrade_major_version.rst b/migrate_pim/upgrade_major_version.rst index e29c8ab9c..52bfc1b80 100644 --- a/migrate_pim/upgrade_major_version.rst +++ b/migrate_pim/upgrade_major_version.rst @@ -69,3 +69,13 @@ Use this documentation to migrate projects based on Akeneo PIM Community Edition :maxdepth: 1 upgrade/upgrade_from_50_to_60 + +Upgrade from 6.0 to 7.0 +----------------------- + +Use this documentation to migrate projects based on Akeneo PIM Community Edition or Enterprise Edition 6.0 to 7.0. + +.. toctree:: + :maxdepth: 1 + + upgrade/upgrade_from_60_to_70 From 639fdd6c8d0644e0b2eb97c6f25ec223f7b63452 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bryan=20St=C3=A9phan?= Date: Fri, 8 Apr 2022 16:46:34 +0200 Subject: [PATCH 16/21] PLG-469: Add dqi command to launch before doctrine migrations --- migrate_pim/upgrade/upgrade_from_60_to_70.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/migrate_pim/upgrade/upgrade_from_60_to_70.rst b/migrate_pim/upgrade/upgrade_from_60_to_70.rst index 331505197..2c24a89e1 100644 --- a/migrate_pim/upgrade/upgrade_from_60_to_70.rst +++ b/migrate_pim/upgrade/upgrade_from_60_to_70.rst @@ -140,6 +140,7 @@ Migrate your data .. code:: bash + $ bin/console pim:data-quality-insights:clean-product-scores $ bin/console doctrine:migrations:migrate $ bin/console pim:data-quality-insights:populate-product-models-scores-and-ki From 570ef9693086220de1347715d29572449a334a82 Mon Sep 17 00:00:00 2001 From: Michel Tag Date: Thu, 14 Apr 2022 10:04:41 +0200 Subject: [PATCH 17/21] Pull up 6.0 to master (#1777) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * PIM-10344: [Backport] Add dqi command to launch in 5.0 to 6.0 migration * PIM-10376 WIP update CE 6.0 install process * PIM-10376: Update doc for debian install * PIM-10376: Ubuntu system install docs * PIM-10376: Update patching doc * PIM-10376: change php version * PIM-10376: Fix broken link * PIM-10376: Mysql download link version * PIM-10376: node versions in install doc * Remove badger links Co-authored-by: Bryan Stéphan Co-authored-by: BryanS29-akeneo <85103635+BryanS29-akeneo@users.noreply.github.com> Co-authored-by: Adrien Migaire Co-authored-by: Pierre Maraître Co-authored-by: Céline Morin <42606611+cemorin@users.noreply.github.com> Co-authored-by: Nicolas Marniesse --- contribute_to_pim/contribution_guide.rst | 2 - contribute_to_pim/documentation.rst | 2 - contribute_to_pim/report_bug.rst.inc | 2 - contribute_to_pim/translate.rst | 1 - import_and_export_data/index.rst | 2 +- install_pim/manual/installation_ce.rst | 4 +- .../manual/installation_ee_archive.rst | 2 +- .../manual_system_installation_debian10.rst | 18 ++++----- .../system_install_ubuntu_1804.rst | 18 ++++----- .../system_install_ubuntu_2004.rst | 37 ++++++++++++++----- .../system_requirements.rst.inc | 2 +- migrate_pim/apply_patch/apply_patch_ce.rst | 2 +- .../apply_patch_ee_flexibility.rst | 10 ++--- .../apply_patch/apply_patch_ee_on_premise.rst | 10 ++--- .../technical_information/php_ini.rst.inc | 20 +++++----- 15 files changed, 71 insertions(+), 61 deletions(-) diff --git a/contribute_to_pim/contribution_guide.rst b/contribute_to_pim/contribution_guide.rst index 330cabcf9..5ca7b67d5 100644 --- a/contribute_to_pim/contribution_guide.rst +++ b/contribute_to_pim/contribution_guide.rst @@ -402,5 +402,3 @@ messages of all the commits. When you are finished, execute the push command. Step 4: Is my pull request merged? ---------------------------------- - -Once your Pull Request is merged, don't hesitate to claim your badge "Core contributor" on `Badger platform `_. diff --git a/contribute_to_pim/documentation.rst b/contribute_to_pim/documentation.rst index eb8a996fe..bc80b5571 100644 --- a/contribute_to_pim/documentation.rst +++ b/contribute_to_pim/documentation.rst @@ -25,8 +25,6 @@ To test the rendering of the documentation you can follow this `HowTo`_. .. _HowTo: https://github.com/akeneo/pim-docs/blob/master/README.md -Once your Pull Request is merged, don't hesitate to claim your badge "Core contributor" on `Badger platform `_! - reStructuredText ---------------- diff --git a/contribute_to_pim/report_bug.rst.inc b/contribute_to_pim/report_bug.rst.inc index aa30ebbb9..1ee02d6e8 100644 --- a/contribute_to_pim/report_bug.rst.inc +++ b/contribute_to_pim/report_bug.rst.inc @@ -23,8 +23,6 @@ Report a Bug * Provides the PIM system information available under System > System information * Provides as much information as possible on your environment (OS, PHP version, browser) -* Don't hesitate to claim your badge "Bug Hunter" on `badger `_ - **Enterprise Edition** * Gather as much information as possible by following our :doc:`/maintain_pim/bug_qualification/index` guide diff --git a/contribute_to_pim/translate.rst b/contribute_to_pim/translate.rst index d79b3036d..81f4830f2 100644 --- a/contribute_to_pim/translate.rst +++ b/contribute_to_pim/translate.rst @@ -11,7 +11,6 @@ How to translate? You have to create an account and begin to translate in your favorite language on `Crowdin`_. You need a proofreading permission to validate the strings, so your translation will be included in the PIM. Each language with more than 80% of valid translations are automatically translated with `Nelson`_ each week, and will be available in the next patch. -You will be able to claim your badge "El Translator" on `Badger platform `_! Your language is not available on Crowdin? ------------------------------------------ diff --git a/import_and_export_data/index.rst b/import_and_export_data/index.rst index 9e8d74235..a64bb581a 100644 --- a/import_and_export_data/index.rst +++ b/import_and_export_data/index.rst @@ -27,7 +27,7 @@ Here are the main objects of the architecture. .. note:: - Akeneo Batch is widely based on Spring Batch https://projects.spring.io/spring-batch/, it implements a very small part of the original work, and mainly provides reusable functions to process large volumes of records. + Akeneo Batch is widely based on Spring Batch https://spring.io/projects/spring-batch, it implements a very small part of the original work, and mainly provides reusable functions to process large volumes of records. Connector --------- diff --git a/install_pim/manual/installation_ce.rst b/install_pim/manual/installation_ce.rst index 54fe133d7..3078c928d 100644 --- a/install_pim/manual/installation_ce.rst +++ b/install_pim/manual/installation_ce.rst @@ -11,8 +11,8 @@ You can either use `composer` to create your project: .. code-block:: bash :linenos: - $ composer create-project akeneo/pim-community-standard /srv/pim "5.0.*@stable" + $ composer create-project akeneo/pim-community-standard /srv/pim "6.0.*@stable" -or download an archive containing Akeneo PIM and its PHP dependencies: https://download.akeneo.com/pim-community-standard-v5.0-latest-icecat.tar.gz +or download an archive containing Akeneo PIM and its PHP dependencies: https://download.akeneo.com/pim-community-standard-v6.0-latest-icecat.tar.gz .. include:: ./common_install_ce_ee.rst.inc diff --git a/install_pim/manual/installation_ee_archive.rst b/install_pim/manual/installation_ee_archive.rst index 5efdf4f54..d1507b3c1 100644 --- a/install_pim/manual/installation_ee_archive.rst +++ b/install_pim/manual/installation_ee_archive.rst @@ -12,7 +12,7 @@ You need to get a PIM Enterprise Standard archive from the Partners Portal. See .. code-block:: bash - $ tar -xvzf pim-enterprise-standard-v5.0.tar.gz + $ tar -xvzf pim-enterprise-standard-v6.0.tar.gz $ cd pim-enterprise-standard/pim-enterprise-standard $ composer install diff --git a/install_pim/manual/system_requirements/manual_system_installation_debian10.rst b/install_pim/manual/system_requirements/manual_system_installation_debian10.rst index 0772649f3..b0989daec 100644 --- a/install_pim/manual/system_requirements/manual_system_installation_debian10.rst +++ b/install_pim/manual/system_requirements/manual_system_installation_debian10.rst @@ -20,16 +20,16 @@ The easiest way to install MySQL 8.0 is to use the official vendor package. Follow the official documentation: . Download the bundle package for the required version: - # wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.22-1debian10_amd64.deb-bundle.tar + # wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.23-1debian10_amd64.deb-bundle.tar And follow the aforementioned documentation. When installing MySQL 8.0, you'll have to choose the authentication method. Please select *Use Legacy Authentication Method* as the *Strong Password Encryption* is not yet supported by Akeneo PIM. -PHP 7.4 +PHP 8.0 ******* -As Debian 10 only provides PHP 7.3, we need to use `Ondrej Sury `_ packages to install PHP 7.4.. +As Debian 10 only provides PHP 7.3, we need to use `Ondrej Sury `_ packages to install PHP 8.0.. .. code-block:: bash @@ -41,13 +41,13 @@ Install PHP and the required extensions: .. code-block:: bash - # apt-get install php7.4-cli php7.4-apcu php7.4-bcmath php7.4-curl php7.4-opcache php7.4-fpm php7.4-gd php7.4-intl php7.4-memcached php7.4-mysql php7.4-xml php7.4-zip php7.4-mbstring php7.4-imagick php7.4-exif + # apt-get install php8.0-cli php8.0-apcu php8.0-bcmath php8.0-curl php8.0-opcache php8.0-fpm php8.0-gd php8.0-intl php8.0-memcached php8.0-mysql php8.0-xml php8.0-zip php8.0-mbstring php8.0-imagick -Elasticsearch 7.10 +Elasticsearch 7.16 ******************* -Follow the official Elasticsearch documentation: `official vendor package `_: +Follow the official Elasticsearch documentation: `official vendor package `_: - first install the PGP key - then install the package via the official repository @@ -62,7 +62,7 @@ Follow the official Elasticsearch documentation: `official vendor package `_. + You will probably need to `increase the MAX_MAP_COUNT Linux kernel setting `_. Proceed as follow (first command will affect your current session, second one every boot of your machine): .. code-block:: bash @@ -90,13 +90,13 @@ Apache .. include:: /install_pim/manual/system_requirements/system_configuration.rst.inc -Node 12 +Node 14 ******* .. code-block:: bash $ apt-get install curl - $ curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh + $ curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh $ bash nodesource_setup.sh $ apt-get install -y nodejs diff --git a/install_pim/manual/system_requirements/system_install_ubuntu_1804.rst b/install_pim/manual/system_requirements/system_install_ubuntu_1804.rst index e9c403d01..ca9f8f108 100644 --- a/install_pim/manual/system_requirements/system_install_ubuntu_1804.rst +++ b/install_pim/manual/system_requirements/system_install_ubuntu_1804.rst @@ -20,16 +20,16 @@ The easiest way to install MySQL 8.0 is to use the official vendor package. Follow the official documentation: . Download the bundle package for the required version: - # wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.22-1debian10_amd64.deb-bundle.tar + # wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.23-1debian10_amd64.deb-bundle.tar And follow the aforementioned documentation. When installing MySQL 8.0, you'll have to choose the authentication method. Please select *Use Legacy Authentication Method* as the *Strong Password Encryption* is not yet supported by Akeneo PIM. -PHP 7.4 +PHP 8.0 ******* -As Ubuntu 18.04 only provides PHP 7.2, we need to use `Ondrej Sury `_ packages to install PHP 7.4.. +As Ubuntu 18.04 only provides PHP 7.2, we need to use `Ondrej Sury `_ packages to install PHP 8.0.. First, install the `repository `_: @@ -50,12 +50,12 @@ Then, install PHP and the required extensions: .. code-block:: bash - $ apt-get install php7.4-cli php7.4-apcu php7.4-bcmath php7.4-curl php7.4-fpm php7.4-gd php7.4-intl php7.4-mysql php7.4-xml php7.4-zip php7.4-zip php7.4-mbstring php7.4-imagick php7.4-exif + $ apt-get install php8.0-cli php8.0-apcu php8.0-bcmath php8.0-curl php8.0-opcache php8.0-fpm php8.0-gd php8.0-intl php8.0-memcached php8.0-mysql php8.0-xml php8.0-zip php8.0-mbstring php8.0-imagick -Elasticsearch 7.10 +Elasticsearch 7.16 ****************** -Follow the official Elasticsearch documentation: `official vendor package `_: +Follow the official Elasticsearch documentation: `official vendor package `_: - first install the PGP key - then install the package via the official repository @@ -70,7 +70,7 @@ Follow the official Elasticsearch documentation: `official vendor package `_. + You will probably need to `increase the MAX_MAP_COUNT Linux kernel setting `_. Proceed as follow (first command will affect your current session, second one every boot of your machine): .. code-block:: bash @@ -98,13 +98,13 @@ Apache .. include:: /install_pim/manual/system_requirements/system_configuration.rst.inc -Node 12 +Node 14 ******* .. code-block:: bash $ apt-get install curl - $ curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh + $ curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh $ bash nodesource_setup.sh $ apt-get install -y nodejs diff --git a/install_pim/manual/system_requirements/system_install_ubuntu_2004.rst b/install_pim/manual/system_requirements/system_install_ubuntu_2004.rst index 4b7460d57..c3800d34f 100644 --- a/install_pim/manual/system_requirements/system_install_ubuntu_2004.rst +++ b/install_pim/manual/system_requirements/system_install_ubuntu_2004.rst @@ -23,32 +23,49 @@ Download the bundle package for the required version: .. code-block:: bash - $ wget https://dev.mysql.com/get/mysql-apt-config_0.8.16-1_all.deb - $ sudo dpkg -i mysql-apt-config_0.8.16-1_all.deb + $ wget https://dev.mysql.com/get/mysql-apt-config_0.8.22-1_all.deb + $ sudo dpkg -i mysql-apt-config_0.8.22-1_all.deb And follow the aforementioned documentation. When installing MySQL 8.0, you'll have to choose the authentication method. Please select *Use Legacy Authentication Method* as the *Strong Password Encryption* is not yet supported by Akeneo PIM. -PHP 7.4 +PHP 8.0 ******* -Install PHP and the required extensions: +As Ubuntu 20.04 only provides PHP 7.4, we need to use `Ondrej Sury `_ packages to install PHP 8.0.. + +First, install the `repository `_: + +.. code-block:: bash + + $ apt-get install software-properties-common + $ add-apt-repository ppa:ondrej/php + $ apt update + +If you get an error it may be because of non-UTF-8 locales, try + +.. code-block:: bash + + $ LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php + $ apt update + +Then, install PHP and the required extensions: .. code-block:: bash - $ apt-get install php7.4-cli php7.4-apcu php7.4-bcmath php7.4-curl php7.4-fpm php7.4-gd php7.4-intl php7.4-mysql php7.4-xml php7.4-zip php7.4-zip php7.4-mbstring php7.4-imagick php7.4-exif + $ apt-get install php8.0-cli php8.0-apcu php8.0-bcmath php8.0-curl php8.0-opcache php8.0-fpm php8.0-gd php8.0-intl php8.0-memcached php8.0-mysql php8.0-xml php8.0-zip php8.0-mbstring php8.0-imagick Composer v2 *********** You can install Composer by following the online documentation: https://getcomposer.org/download/ -Elasticsearch 7.10 +Elasticsearch 7.16 ****************** -Follow the official Elasticsearch documentation: `official vendor package `_: +Follow the official Elasticsearch documentation: `official vendor package `_: - first install the PGP key - then install the package via the official repository @@ -63,7 +80,7 @@ Follow the official Elasticsearch documentation: `official vendor package `_. + You will probably need to `increase the MAX_MAP_COUNT Linux kernel setting `_. Proceed as follow (first command will affect your current session, second one every boot of your machine): .. code-block:: bash @@ -91,13 +108,13 @@ Apache .. include:: /install_pim/manual/system_requirements/system_configuration.rst.inc -Node 12 +Node 14 ******* .. code-block:: bash $ apt-get install curl - $ curl -sL https://deb.nodesource.com/setup_12.x -o nodesource_setup.sh + $ curl -sL https://deb.nodesource.com/setup_14.x -o nodesource_setup.sh $ bash nodesource_setup.sh $ apt-get install -y nodejs diff --git a/install_pim/manual/system_requirements/system_requirements.rst.inc b/install_pim/manual/system_requirements/system_requirements.rst.inc index a187f4f5e..151e92898 100644 --- a/install_pim/manual/system_requirements/system_requirements.rst.inc +++ b/install_pim/manual/system_requirements/system_requirements.rst.inc @@ -57,7 +57,7 @@ The web server will also need the following libraries and modules: +-----------------+---------------------------+ | php8.0-opcache | No specific configuration | +-----------------+---------------------------+ -| php8.0-zip | No specific configuration | +| php8.0-gd | No specific configuration | +-----------------+---------------------------+ | php8.0-mbstring | No specific configuration | +-----------------+---------------------------+ diff --git a/migrate_pim/apply_patch/apply_patch_ce.rst b/migrate_pim/apply_patch/apply_patch_ce.rst index 3f6e3c1cc..61a3c1914 100644 --- a/migrate_pim/apply_patch/apply_patch_ce.rst +++ b/migrate_pim/apply_patch/apply_patch_ce.rst @@ -27,7 +27,7 @@ Then clean the cache, re-install assets and warmup the cache: .. code-block:: bash - service php7.4-fpm restart + service php8.0-fpm restart rm -rf var/cache/* ./public/bundles/* ./public/css/* ./public/js/* rm yarn.lock bin/console pim:installer:assets diff --git a/migrate_pim/apply_patch/apply_patch_ee_flexibility.rst b/migrate_pim/apply_patch/apply_patch_ee_flexibility.rst index 068341512..0bae6c8f3 100644 --- a/migrate_pim/apply_patch/apply_patch_ee_flexibility.rst +++ b/migrate_pim/apply_patch/apply_patch_ee_flexibility.rst @@ -1,9 +1,9 @@ How to apply a patch - Enterprise Edition - Flexibility Cloud offer ======================================================================== -In the following example, Akeneo PIM version 5.0.2 has just been released and we are using an Akeneo PIM version 5.0.1. +In the following example, Akeneo PIM version 6.0.2 has just been released and we are using an Akeneo PIM version 6.0.1. -We always tag both Community and Enterprise versions with aligned version numbers, be sure to use the exact same version for CE and EE, for instance, a EE 5.0.2 fix may depend on CE 5.0.2. +We always tag both Community and Enterprise versions with aligned version numbers, be sure to use the exact same version for CE and EE, for instance, a EE 6.0.2 fix may depend on CE 6.0.2. Using the exact patch version will avoid any local composer cache issue. @@ -15,7 +15,7 @@ To upgrade, please change the composer.json to: { ... - "akeneo/pim-enterprise-dev": "5.0.2", + "akeneo/pim-enterprise-dev": "6.0.2", ... } @@ -29,7 +29,7 @@ Be aware that your composer.json won't be updated and some dependencies might be You have to check whether the latest composer.json is different from your own. In this case you should backup your current composer.json and download the newest one beforehand. -Double check in the output of this command that the 4.0.10 version has been fetched, you can also check it by using the following command: +Double check in the output of this command that the 6.0.2 version has been fetched, you can also check it by using the following command: .. code-block:: bash @@ -68,7 +68,7 @@ If you have an error during the ``yarn run webpack`` command, please execute thi cp vendor/akeneo/pim-enterprise-dev/yarn.lock yarn.lock rm -rf node_modules yarn install - partners_php7.4-fpm restart + partners_php8.0-fpm restart rm -rf var/cache/* ./public/bundles/* ./public/css/* ./public/js/* bin/console pim:installer:assets bin/console cache:warmup diff --git a/migrate_pim/apply_patch/apply_patch_ee_on_premise.rst b/migrate_pim/apply_patch/apply_patch_ee_on_premise.rst index 7c0057b75..be2d0ab39 100644 --- a/migrate_pim/apply_patch/apply_patch_ee_on_premise.rst +++ b/migrate_pim/apply_patch/apply_patch_ee_on_premise.rst @@ -1,9 +1,9 @@ How to apply a patch - Enterprise Edition - On Premise offer ================================================================= -In the following example, Akeneo PIM version 5.0.2 has just been released and we are using an Akeneo PIM version 5.0.1. +In the following example, Akeneo PIM version 6.0.2 has just been released and we are using an Akeneo PIM version 6.0.1. -We always tag both Community and Enterprise versions with aligned version numbers, be sure to use the exact same version for CE and EE, for instance, a EE 5.0.2 fix may depend on CE 5.0.2. +We always tag both Community and Enterprise versions with aligned version numbers, be sure to use the exact same version for CE and EE, for instance, a EE 6.0.2 fix may depend on CE 6.0.2. Using the exact patch version will avoid any local composer cache issue. @@ -15,7 +15,7 @@ To upgrade, please change the composer.json to: { ... - "akeneo/pim-enterprise-dev": "5.0.2", + "akeneo/pim-enterprise-dev": "6.0.2", ... } @@ -34,7 +34,7 @@ Be aware that your composer.json won't be updated and some dependencies might be You have to check whether the latest composer.json is different from your own. In this case you should backup your current composer.json and download the newest one beforehand. -Double check in the output of this command that the 4.0.10 version has been fetched, you can also check it by using the following command: +Double check in the output of this command that the 6.0.2 version has been fetched, you can also check it by using the following command: .. code-block:: bash @@ -50,7 +50,7 @@ Then clean the cache, re-install assets and warmup the cache: .. code-block:: bash - service php7.4-fpm restart + service php8.0-fpm restart rm -rf var/cache/* ./public/bundles/* ./public/css/* ./public/js/* ./public/dist/* rm yarn.lock bin/console --env=prod cache:warmup diff --git a/technical_architecture/technical_information/php_ini.rst.inc b/technical_architecture/technical_information/php_ini.rst.inc index 860ac5ba2..f077b6b8e 100644 --- a/technical_architecture/technical_information/php_ini.rst.inc +++ b/technical_architecture/technical_information/php_ini.rst.inc @@ -1,8 +1,8 @@ -* Setup *CLI php.ini* file ``/etc/php/7.4/cli/php.ini`` +* Setup *CLI php.ini* file ``/etc/php/8.0/cli/php.ini`` .. code-block:: yaml - $ sudo vim /etc/php/7.4/cli/php.ini + $ sudo vim /etc/php/8.0/cli/php.ini memory_limit = 1024M date.timezone = UTC @@ -10,7 +10,7 @@ Use the time zone matching your location, for example *America/Los_Angeles* or *Europe/Berlin*. See https://www.php.net/timezones for the list of all available timezones. -* Setup *FPM php.ini* file ``/etc/php/7.4/fpm/php.ini`` +* Setup *FPM php.ini* file ``/etc/php/8.0/fpm/php.ini`` .. note:: @@ -18,7 +18,7 @@ .. code-block:: yaml - $ sudo vim /etc/php/7.4/fpm/php.ini + $ sudo vim /etc/php/8.0/fpm/php.ini memory_limit = 512M date.timezone = UTC @@ -42,17 +42,17 @@ In this example, the user is *my_user* and the group is *my_group*. .. code-block:: bash - $ sudo service php7.4-fpm stop + $ sudo service php8.0-fpm stop -* Open the file ``/etc/php/7.4/fpm/pool.d/www.conf`` with your favorite text editor: +* Open the file ``/etc/php/8.0/fpm/pool.d/www.conf`` with your favorite text editor: .. code-block:: bash - $ sudo vi /etc/php/7.4/fpm/pool.d/www.conf + $ sudo vi /etc/php/8.0/fpm/pool.d/www.conf # replace these environment variables: user = my_user group = my_group - listen = /run/php/php7.4-fpm.sock + listen = /run/php/php8.0-fpm.sock listen.owner = www-data listen.group = www-data @@ -60,10 +60,10 @@ In this example, the user is *my_user* and the group is *my_group*. On the default installation, FPM user and group are ``www-data``. ``listen.owner`` and ``listen.group`` must be set on the same user than your Apache server. - ``/run/php/php7.4-fpm.sock`` is the default socket path. If you changed it in ``/etc/php/7.4/fpm/pool.d/www.conf``, change it in the Apache virtual host too. + ``/run/php/php8.0-fpm.sock`` is the default socket path. If you changed it in ``/etc/php/8.0/fpm/pool.d/www.conf``, change it in the Apache virtual host too. * Restart FPM .. code-block:: bash - $ sudo service php7.4-fpm restart + $ sudo service php8.0-fpm restart From 90d4b2e8f22a05394ff752ffbaa6cd8392d52e31 Mon Sep 17 00:00:00 2001 From: jmleroux Date: Wed, 18 May 2022 08:50:21 +0200 Subject: [PATCH 18/21] Hotfix: Fix external link for CurrencyDisablingSubscriber --- technical_architecture/events/storage_events.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/technical_architecture/events/storage_events.rst b/technical_architecture/events/storage_events.rst index 583047b1e..6de8eed4a 100644 --- a/technical_architecture/events/storage_events.rst +++ b/technical_architecture/events/storage_events.rst @@ -89,7 +89,7 @@ ProjectSubscriber (Enterprise edition) 0 EnsureProductDraftGlobalStatusSubscriber (Enterprise edition) 0 ============================================================= =============== -.. _CurrencyDisablingSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/Bundle/EventListener/CurrencyDisablingSubscriber.php +.. _CurrencyDisablingSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/back/Infrastructure/EventListener/CurrencyDisablingSubscriber.php .. _ComputeEntityRawValuesSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/EntityWithValues/ComputeEntityRawValuesSubscriber.php .. _ChannelLocaleSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/Bundle/EventListener/ChannelLocaleSubscriber.php From 8be30fbf59cf456b6f8c379f6a6268bb55746011 Mon Sep 17 00:00:00 2001 From: jmleroux Date: Wed, 18 May 2022 08:53:54 +0200 Subject: [PATCH 19/21] Hotfix: Fix external links for ChannelLocaleSubscriber --- technical_architecture/events/storage_events.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/technical_architecture/events/storage_events.rst b/technical_architecture/events/storage_events.rst index 6de8eed4a..9d48587e4 100644 --- a/technical_architecture/events/storage_events.rst +++ b/technical_architecture/events/storage_events.rst @@ -91,7 +91,7 @@ EnsureProductDraftGlobalStatusSubscriber (Enterprise edition) 0 .. _CurrencyDisablingSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/back/Infrastructure/EventListener/CurrencyDisablingSubscriber.php .. _ComputeEntityRawValuesSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Pim/Enrichment/Bundle/EventSubscriber/EntityWithValues/ComputeEntityRawValuesSubscriber.php -.. _ChannelLocaleSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/Bundle/EventListener/ChannelLocaleSubscriber.php +.. _ChannelLocaleSubscriber: https://github.com/akeneo/pim-community-dev/blob/master/src/Akeneo/Channel/back/Infrastructure/EventListener/ChannelLocaleSubscriber.php ``akeneo.storage.post_save`` ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From a527ad5b7618c19c35ce495135ef1166f2d4bb74 Mon Sep 17 00:00:00 2001 From: jmleroux Date: Wed, 18 May 2022 08:56:55 +0200 Subject: [PATCH 20/21] Hotfix: Update Circle CI executor --- .circleci/config.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e48932e5d..f9e3e7e02 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,21 +2,21 @@ version: 2.1 jobs: build: machine: - image: ubuntu-2004:202111-01 + image: ubuntu-2004:2022.04.1 steps: - checkout - run: make build check-external-link: machine: - image: ubuntu-2004:202111-01 + image: ubuntu-2004:2022.04.1 steps: - checkout - run: make lint deploy_staging: machine: - image: ubuntu-2004:202111-01 + image: ubuntu-2004:2022.04.1 steps: - checkout - add_ssh_keys @@ -26,7 +26,7 @@ jobs: deploy_production: machine: - image: ubuntu-2004:202111-01 + image: ubuntu-2004:2022.04.1 steps: - checkout - add_ssh_keys From 10e8c23d05864cc8b24831c2aaa94374c3191c55 Mon Sep 17 00:00:00 2001 From: valerie-schneider <49147238+valerie-schneider@users.noreply.github.com> Date: Thu, 2 Jun 2022 14:20:51 +0200 Subject: [PATCH 21/21] Update upgrade_from_50_to_60.rst Add link to /cloud_edition/flexibility_mode/docs/job_consumers_and_workers following ticket SDS-23861 --- migrate_pim/upgrade/upgrade_from_50_to_60.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migrate_pim/upgrade/upgrade_from_50_to_60.rst b/migrate_pim/upgrade/upgrade_from_50_to_60.rst index e21ba3472..9ad9bcbf9 100644 --- a/migrate_pim/upgrade/upgrade_from_50_to_60.rst +++ b/migrate_pim/upgrade/upgrade_from_50_to_60.rst @@ -7,7 +7,7 @@ Disclaimer ********** Make sure your production database is backed-up before performing the data migration. -The queue daemon(s) must be stopped as well. +The queue daemon(s) must be stopped as well (:doc:`/cloud_edition/flexibility_mode/docs/job_consumers_and_workers`). Prepare your project for the new technical stack ************************************************