Skip to content

Conversation

cabutlermit
Copy link
Contributor

@cabutlermit cabutlermit commented Jul 3, 2025

What does this PR do?

  • Add the source code for the SearchEngineKeywordsPerformance plugin to the files/ directory
  • Add the new version for the HeatmapSessionRecording plugin to the files/ directory
  • Update the Dockerfile to copy the new plugin sources to the plugins/ directory
  • Update the Dockerfile to copy the config.ini.php to /var/www/html instead of to /usr/src/matomo
  • Update the backup-data.sh script to make it a little cleaner
  • Update the HOWTO-premium-plugins.md documentation
  • Update the HOWTO-miscellaneous.md documentation to address a TooManyRedirectsException

Helpful background context

A third premium plugin was purchased from InnoCraft. At the same time, one of the other premium plugins had a pending update. Per the documentation in the HOWTO-premium-plugins.md, this pass through the repository just installs the plugin directory and files but does not activate the plugin.

Additionally, we revert the copying of the config.ini.php file back to the /var/www/html folder instead into the source folder. Now that we have established the persistent storage for the config.ini file, we don't need to worry about forcing it into the source.

How can a reviewer manually see the effects of these changes?

There is no way for a reviewer or end-user to see these changes in Matomo. This just loads a bunch of files into the container that can be referenced on the next pass through this repo when we actually activate the plugin. The reviewer can log in to Matomo UI and verify that with these changes, Matomo is still working correctly.

99% of the files changed in this commit are the files in the new SearchEngineKeywordsPerformance directory. The other important files that changed and that should be reviewed are:

  • Dockerfile
  • docs/HowTos/HOWTO-miscellaneous.md
  • ocs/HowTos/HOWTO-premium-plugins.md
  • files/backup-data.sh

Work was done manually in the stage version of Matomo to verify that we could enable the new plugin and that configuration of the new plugin did not cause any issues with our current deployment model.

Includes new or updated dependencies?

YES: New directory in the plugins/ folder

What are the relevant tickets?

Developer

  • [n/a] All new ENV is documented in README (or there is none)
  • Stakeholder approval has been confirmed (or is not needed)

Code Reviewer

  • The commit message is clear and follows our guidelines
    (not just this pull request message)
  • There are appropriate tests covering any new functionality
  • The documentation has been updated or is unnecessary
  • The changes have been verified
  • New dependencies are appropriate or there were no changes

Why these changes are being introduced:
A third premium plugin was purchased from InnoCraft. At the same time,
one of the other premium plugins had a pending update. Per the
documentation in the HOWTO-premium-plugins.md, this pass through the
repository just installs the plugin directory and files but does not
activate the plugin.

Additionally, we revert the copying of the config.ini.php file back to
the /var/www/html folder instead into the source folder. Now that we
have established the persistent storage for the config.ini file, we
don't need to worry about forcing it into the source.

How this addresses that need:
* Add the source code for the SearchEngineKeywordsPerformance plugin to
the files/ directory
* Add the new version for the HeatmapSessionRecording plugin to the
files/ directory
* Update the Dockerfile to copy the new plugin sources to the plugins/
directory
* Update the Dockerfile to copy the config.ini.php to /var/www/html
instead of to /usr/src/matomo
* Update the backup-data.sh script to make it a little cleaner
* Update the HOWTO-premium-plugins.md documentation
* Update the HOWTO-miscellaneous.md documentation to address a TooManyRedirectsException

Relevant ticket(s):
* https://mitlibraries.atlassian.net/browse/INFRA-558
@cabutlermit cabutlermit marked this pull request as ready for review July 3, 2025 17:38
@cabutlermit cabutlermit requested review from dhrutibc and a team as code owners July 3, 2025 17:38
Copy link
Contributor

@vab vab left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me from an infra perspective. I noticed we are bound to us-east-1 from the code. That's fine. I couldn't really think of a good way to address that after a few minutes of contemplating.

Copy link

@dhrutibc dhrutibc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks ok to me

@cabutlermit cabutlermit merged commit e5d296d into main Jul 3, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants