Skip to content

Commit 4267d1a

Browse files
committed
Phase 2 of Premium Plugins Installation
Why these changes are being introduced: Phase 1 of the premium plugins installation is complete across Dev1, Stage-Workloads, and Prod-Workloads (that is, the plugin folders are installed in the container and the plugins are listed in the Plugin Directory in the UI, but they are not activated). The plugins have been manually activated in Stage & Prod, so any database schema changes are complete. As part of the testing, InnoCraft support let us know that the `CustomJsTracker` plugin (a Core plugin) must be activated for the HeatmapSessionRecording and the UsersFlow plugins to work correctly (because both plugins actually make changes to the matomo.js and piwik.js files). How this addresses that need: * Update the Dockerfile to include the updated `matomo.js and `piwik.js` files (that are the result of activating the plugins); these files are written to the `/usr/src/matomo/` directory because the `entrypoint.sh` script is what actually creates the `/var/www/html/` directory when the container is launched * Update the `config.ini.php` file to correctly list all the plugins that exist in the `plugins/` directory and sort them alphabetically to make it easier to review them in the future * Update the `config.ini.php` file to include the `CustomJsTracker` as an activated plugin * Update the `config.ini.php` file to include the UsersFlow and HeatmapSessionRecording plugins as active plugins * Include the version of the `matomo.js` and `piwik.js` files that are generated by the new plugins Side effects of this change: None. Relevant ticket(s): * https://mitlibraries.atlassian.net/browse/INFRA-517
1 parent 545ae9e commit 4267d1a

File tree

4 files changed

+495
-55
lines changed

4 files changed

+495
-55
lines changed

Dockerfile

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,16 @@ COPY ./files/plugin-HeatmapSessionRecording-5.2.3/ /var/www/html/plugins/Heatmap
1414
# Add the UsersFlow plugin
1515
COPY ./files/plugin-UsersFlow-5.0.5/ /var/www/html/plugins/UsersFlow
1616

17-
# Preconfigure settings
17+
# Our custom configuration settings
1818
COPY ./files/config.ini.php /var/www/html/config/config.ini.php
1919

20+
# The HeatmapSessionRecording and UsersFlow update the matomo.js and piwik.js
21+
# files when they are activated. Those updates have been captured and we
22+
# pre-load them here (we put them in /usr/src because the entrypoint.sh is what
23+
# actually builds the /var/www/html folder as a Docker VOLUME)
24+
COPY --chmod=0644 ./files/post_premium_plugins_matomo.js /usr/src/matomo/matomo.js
25+
COPY --chmod=0644 ./files/post_premium_plugins_piwik.js /usr/src/matomo/piwik.js
26+
2027
# Address "public" directories problem
2128
COPY --chmod=0644 --chown=root:root ./files/lang-htaccess /var/www/html/lang/.htaccess
2229
COPY --chmod=0644 --chown=root:root ./files/config-htaccess /var/www/html/config/.htaccess

files/config.ini.php

Lines changed: 75 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -88,81 +88,102 @@
8888
Plugins[] = "Resolution"
8989
Plugins[] = "DevicePlugins"
9090
Plugins[] = "Heartbeat"
91-
Plugins[] = "Marketplace"
9291
Plugins[] = "Intl"
92+
Plugins[] = "Marketplace"
93+
Plugins[] = "CustomJsTracker"
9394
Plugins[] = "Tour"
9495
Plugins[] = "PagePerformance"
9596
Plugins[] = "CustomDimensions"
9697
Plugins[] = "FeatureFlags"
9798
Plugins[] = "MobileAppMeasurable"
9899
Plugins[] = "CustomVariables"
99100
Plugins[] = "EnvironmentVariables"
101+
Plugins[] = "HeatmapSessionRecording"
102+
Plugins[] = "UsersFlow"
103+
100104

101105
[PluginsInstalled]
102-
PluginsInstalled[] = "Diagnostics"
103-
PluginsInstalled[] = "Login"
106+
PluginsInstalled[] = "API"
107+
PluginsInstalled[] = "Actions"
108+
PluginsInstalled[] = "Annotations"
109+
PluginsInstalled[] = "BulkTracking"
110+
PluginsInstalled[] = "Contents"
104111
PluginsInstalled[] = "CoreAdminHome"
105-
PluginsInstalled[] = "UsersManager"
106-
PluginsInstalled[] = "SitesManager"
107-
PluginsInstalled[] = "Installation"
108-
PluginsInstalled[] = "Monolog"
109-
PluginsInstalled[] = "Intl"
110-
PluginsInstalled[] = "CorePluginsAdmin"
112+
PluginsInstalled[] = "CoreConsole"
111113
PluginsInstalled[] = "CoreHome"
112-
PluginsInstalled[] = "WebsiteMeasurable"
113-
PluginsInstalled[] = "IntranetMeasurable"
114+
PluginsInstalled[] = "CorePluginsAdmin"
115+
PluginsInstalled[] = "CoreUpdater"
114116
PluginsInstalled[] = "CoreVisualizations"
115-
PluginsInstalled[] = "Proxy"
116-
PluginsInstalled[] = "API"
117-
PluginsInstalled[] = "Widgetize"
118-
PluginsInstalled[] = "Transitions"
119-
PluginsInstalled[] = "LanguagesManager"
120-
PluginsInstalled[] = "Actions"
117+
PluginsInstalled[] = "CoreVue"
118+
PluginsInstalled[] = "CustomDimensions"
119+
PluginsInstalled[] = "CustomVariables"
120+
PluginsInstalled[] = "CustomJsTracker"
121+
PluginsInstalled[] = "DBStats"
121122
PluginsInstalled[] = "Dashboard"
122-
PluginsInstalled[] = "MultiSites"
123-
PluginsInstalled[] = "Referrers"
124-
PluginsInstalled[] = "UserLanguage"
123+
PluginsInstalled[] = "DevicePlugins"
125124
PluginsInstalled[] = "DevicesDetection"
126-
PluginsInstalled[] = "Goals"
125+
PluginsInstalled[] = "Diagnostics"
127126
PluginsInstalled[] = "Ecommerce"
128-
PluginsInstalled[] = "SEO"
127+
PluginsInstalled[] = "EnvironmentVariables"
129128
PluginsInstalled[] = "Events"
130-
PluginsInstalled[] = "UserCountry"
131-
PluginsInstalled[] = "GeoIp2"
132-
PluginsInstalled[] = "VisitsSummary"
133-
PluginsInstalled[] = "VisitFrequency"
134-
PluginsInstalled[] = "VisitTime"
135-
PluginsInstalled[] = "VisitorInterest"
136-
PluginsInstalled[] = "RssWidget"
129+
PluginsInstalled[] = "FeatureFlags"
137130
PluginsInstalled[] = "Feedback"
138-
PluginsInstalled[] = "TwoFactorAuth"
139-
PluginsInstalled[] = "CoreUpdater"
140-
PluginsInstalled[] = "CoreConsole"
141-
PluginsInstalled[] = "ScheduledReports"
142-
PluginsInstalled[] = "UserCountryMap"
143-
PluginsInstalled[] = "Live"
144-
PluginsInstalled[] = "CustomVariables"
145-
PluginsInstalled[] = "PrivacyManager"
131+
PluginsInstalled[] = "GeoIp2"
132+
PluginsInstalled[] = "Goals"
133+
PluginsInstalled[] = "Heartbeat"
134+
PluginsInstalled[] = "HeatmapSessionRecording"
146135
PluginsInstalled[] = "ImageGraph"
147-
PluginsInstalled[] = "Annotations"
148-
PluginsInstalled[] = "MobileMessaging"
149-
PluginsInstalled[] = "Overlay"
150-
PluginsInstalled[] = "SegmentEditor"
151136
PluginsInstalled[] = "Insights"
152-
PluginsInstalled[] = "Morpheus"
153-
PluginsInstalled[] = "Contents"
154-
PluginsInstalled[] = "BulkTracking"
155-
PluginsInstalled[] = "Resolution"
156-
PluginsInstalled[] = "DevicePlugins"
157-
PluginsInstalled[] = "Heartbeat"
137+
PluginsInstalled[] = "Installation"
138+
PluginsInstalled[] = "Intl"
139+
PluginsInstalled[] = "IntranetMeasurable"
140+
PluginsInstalled[] = "JsTrackerInstallCheck"
141+
PluginsInstalled[] = "LanguagesManager"
142+
PluginsInstalled[] = "Live"
143+
PluginsInstalled[] = "Login"
158144
PluginsInstalled[] = "Marketplace"
159-
PluginsInstalled[] = "ProfessionalServices"
160-
PluginsInstalled[] = "Tour"
161-
PluginsInstalled[] = "EnvironmentVariables"
162-
PluginsInstalled[] = "CoreVue"
163145
PluginsInstalled[] = "MobileAppMeasurable"
146+
PluginsInstalled[] = "MobileMessaging"
147+
PluginsInstalled[] = "Monolog"
148+
PluginsInstalled[] = "Morpheus"
149+
PluginsInstalled[] = "MultiSites"
150+
PluginsInstalled[] = "Overlay"
164151
PluginsInstalled[] = "PagePerformance"
165-
PluginsInstalled[] = "CustomDimensions"
166-
PluginsInstalled[] = "FeatureFlags"
152+
PluginsInstalled[] = "PrivacyManager"
153+
PluginsInstalled[] = "ProfessionalServices"
154+
PluginsInstalled[] = "Proxy"
155+
PluginsInstalled[] = "Referrers"
156+
PluginsInstalled[] = "Resolution"
157+
PluginsInstalled[] = "RssWidget"
158+
PluginsInstalled[] = "SEO"
159+
PluginsInstalled[] = "ScheduledReports"
160+
PluginsInstalled[] = "SegmentEditor"
161+
PluginsInstalled[] = "SitesManager"
162+
PluginsInstalled[] = "TagManager"
163+
PluginsInstalled[] = "Tour"
164+
PluginsInstalled[] = "Transitions"
165+
PluginsInstalled[] = "TwoFactorAuth"
166+
PluginsInstalled[] = "UserCountry"
167+
PluginsInstalled[] = "UserCountryMap"
168+
PluginsInstalled[] = "UserId"
169+
PluginsInstalled[] = "UserLanguage"
167170
PluginsInstalled[] = "UsersFlow"
168-
PluginsInstalled[] = "HeatmapSessionRecording"
171+
PluginsInstalled[] = "UsersManager"
172+
PluginsInstalled[] = "VisitFrequency"
173+
PluginsInstalled[] = "VisitTime"
174+
PluginsInstalled[] = "VisitorInterest"
175+
PluginsInstalled[] = "VisitsSummary"
176+
PluginsInstalled[] = "WebsiteMeasurable"
177+
PluginsInstalled[] = "Widgetize"
178+
179+
[HeatmapSessionRecording]
180+
add_tracking_code_only_when_needed = 1
181+
session_recording_sample_limits = "50,100,250,500,1000,2000,5000"
182+
load_css_from_db = 1
183+
max_time_allowed_on_page_column_limit = "9.2233720368548E+18"
184+
default_heatmap_width = 1920
185+
186+
[UsersFlow]
187+
UsersFlow_num_max_steps = 10
188+
UsersFlow_num_max_rows_in_actions = 100
189+
UsersFlow_num_max_links_per_interaction = 5000

0 commit comments

Comments
 (0)