Changes for page XWiki Upgrade Services
Last modified by Agnease on 2026/05/25 16:11
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (0 modified, 1 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - xwiki-upgrades1 +XWiki Upgrade Services - Content
-
... ... @@ -1,112 +1,225 @@ 1 1 {{velocity}} 2 2 #set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome')) 3 3 {{html clean="false"}} 4 - 5 - ## COMPACT HERO 6 - <section class="hero hero-centered service-hero" aria-labelledby="hero-title"> 4 + ## PAGE HEADER 5 + <section class="hero hero-centered" aria-labelledby="hero-title"> 7 7 <div class="container hero-inner"> 8 - <h1 id="hero-title">XWiki Upgrades</h1> 7 + <div class="hero-kicker"> 8 + <i class="fa fa-refresh" aria-hidden="true"></i> 9 + XWiki upgrade services 10 + </div> 11 + <h1 id="hero-title">Safe XWiki LTS upgrades for production environments</h1> 9 9 <p class="lead"> 10 - Safe, planned upgrades for production XWiki instances. 13 + Upgrade XWiki safely with a clear plan, compatibility checks and reduced production risk, 14 + even for instances with custom extensions, integrations and workflows. 11 11 </p> 12 - <ul class="benefits"> 13 - <li>Latest LTS</li> 14 - <li>Security fixes</li> 15 - <li>Extension checks</li> 16 - <li>Minimal downtime</li> 17 - </ul> 18 - <div class="hero-cta"> 19 - <a href="mailto:alex@agnease.com?subject=XWiki%20Upgrade%20Assessment">Request an upgrade assessment</a> 16 + <div class="hero-actions"> 17 + <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request an upgrade review</a> 18 + <a class="btn btn-secondary" href="#upgrade-process">See the upgrade approach</a> 20 20 </div> 21 21 </div> 22 22 </section> 23 - 24 - ## VALUE CARDS 25 - #set ($upgradeCards = [{ 26 - 'title': 'Stay secure', 22 + ## WHY UPGRADES MATTER 23 + #set ($upgradeReasonItems = [{ 24 + 'title': 'Reduce security exposure', 27 27 'icon': 'shield', 28 - 'content': 'Reduce exposure to known vulnerabilities fixed in newer XWiki versions.' 26 + 'content': 'Staying close to supported XWiki versions helps reduce exposure to known vulnerabilities and missing fixes.', 27 + 'items': [ 28 + 'Review current version exposure', 29 + 'Plan upgrade to a supported version', 30 + 'Validate security-sensitive features' 31 + ] 29 29 },{ 30 - 'title': 'Upgrade safely', 31 - 'icon': 'refresh', 32 - 'content': 'Plan the upgrade with backups, validation, rollback options, and minimal downtime.' 33 + 'title': 'Preserve compatibility', 34 + 'icon': 'cogs', 35 + 'content': 'Extensions, custom applications, authentication systems and infrastructure components need to remain compatible.', 36 + 'items': [ 37 + 'Check installed extensions', 38 + 'Review custom code and scripts', 39 + 'Validate integrations after upgrade' 40 + ] 33 33 },{ 34 - 'title': 'Avoid compatibility surprises', 35 - 'icon': 'puzzle-piece', 36 - 'content': 'Review extensions, custom code, authentication, PDF export, and infrastructure before production.' 42 + 'title': 'Improve maintainability', 43 + 'icon': 'line-chart', 44 + 'content': 'Smaller, regular upgrades are usually easier to control than large jumps after years of accumulated changes.', 45 + 'items': [ 46 + 'Avoid long upgrade gaps', 47 + 'Document the current platform state', 48 + 'Prepare future upgrade cycles' 49 + ] 37 37 }]) 51 + <section aria-labelledby="why-upgrade-title"> 52 + <div class="container"> 53 + <h2 id="why-upgrade-title">Why regular XWiki upgrades matter</h2> 54 + <p class="section-intro"> 55 + An outdated XWiki instance can become harder to maintain over time. Security fixes, browser compatibility, 56 + extension updates, platform changes and infrastructure requirements continue to evolve, while older versions 57 + become more difficult and risky to upgrade. 58 + </p> 59 + <div class="pathways"> 60 + #foreach ($entry in $upgradeReasonItems) 61 + <article class="pathway-card"> 62 + <div class="card-heading"> 63 + <div class="pathway-icon"> 64 + <i class="fa fa-$entry.icon" aria-hidden="true"></i> 65 + </div> 66 + <h3>$entry.title</h3> 67 + </div> 38 38 39 - <section class="compact-section" aria-labelledby="why-title"> 69 + <p>$entry.content</p> 70 + 71 + <ul> 72 + #foreach ($item in $entry.items) 73 + <li>$item</li> 74 + #end 75 + </ul> 76 + </article> 77 + #end 78 + </div> 79 + </div> 80 + </section> 81 + ## COMMON SITUATIONS 82 + #set ($upgradeSituationItems = [{ 83 + 'title': 'Old XWiki versions', 84 + 'icon': 'clock-o', 85 + 'content': 'Instances that have not been upgraded for several months or years and require a careful upgrade path.' 86 + },{ 87 + 'title': 'Custom extensions and scripts', 88 + 'icon': 'puzzle-piece', 89 + 'content': 'Wikis with custom applications, Velocity scripts, macros, UI extensions, rights logic or business workflows.' 90 + },{ 91 + 'title': 'Authentication integrations', 92 + 'icon': 'lock', 93 + 'content': 'LDAP, Active Directory, SSO, OIDC, SAML, MFA or custom login setups that must keep working after upgrade.' 94 + },{ 95 + 'title': 'Infrastructure changes', 96 + 'icon': 'server', 97 + 'content': 'Java, Tomcat, database, Docker, filesystem, reverse proxy or hosting changes required by newer versions.' 98 + },{ 99 + 'title': 'Business-critical features', 100 + 'icon': 'file-pdf-o', 101 + 'content': 'PDF exports, dashboards, structured data, templates, permissions, notifications and workflows that need validation.' 102 + },{ 103 + 'title': 'Low-downtime rollout', 104 + 'icon': 'warning', 105 + 'content': 'Upgrade planning with backups, testing, rollback options and a controlled production deployment window.' 106 + }]) 107 + <section class="services" aria-labelledby="situations-title"> 40 40 <div class="container"> 41 - <h2 id="why-title">Keep your XWiki platform current and reliable</h2> 42 - <div class="widgets compact-widgets"> 43 - #foreach ($entry in $upgradeCards) 44 - <article class="widget"> 45 - <div class="icon" aria-hidden="true"> 109 + <h2 id="situations-title">Common situations we handle</h2> 110 + <p class="section-intro"> 111 + XWiki upgrades are often simple in clean environments, but production instances usually include additional 112 + constraints that need to be understood before touching the live system. 113 + </p> 114 + <div class="services-grid"> 115 + #foreach ($entry in $upgradeSituationItems) 116 + <article class="service"> 117 + <div class="service-icon" aria-hidden="true"> 46 46 <i class="fa fa-$entry.icon"></i> 119 + </div> 120 + 121 + <div class="service-body"> 47 47 <h4>$entry.title</h4> 123 + <p>$entry.content</p> 48 48 </div> 49 - <p>$entry.content</p> 50 50 </article> 51 51 #end 52 52 </div> 53 53 </div> 54 54 </section> 55 - 56 - ## TWO COLUMN SUMMARY 57 - <section class="services compact-section" aria-labelledby="summary-title"> 130 + ## PROCESS 131 + #set ($upgradeProcessItems = [{ 132 + 'title': 'Review the current instance', 133 + 'content': 'Version, extensions, database, filesystem, authentication, custom code, logs and infrastructure constraints.' 134 + },{ 135 + 'title': 'Define the upgrade path', 136 + 'content': 'Target version, intermediate steps if needed, compatibility risks, expected downtime and rollback options.' 137 + },{ 138 + 'title': 'Prepare and validate', 139 + 'content': 'Backups, test upgrade when needed, extension checks and validation of critical XWiki features.' 140 + },{ 141 + 'title': 'Upgrade production', 142 + 'content': 'Controlled execution, post-upgrade checks, issue resolution and confirmation that key features still work.' 143 + },{ 144 + 'title': 'Document next steps', 145 + 'content': 'Upgrade notes, observed risks, remaining recommendations and future maintenance guidance.' 146 + }]) 147 + <section id="upgrade-process" class="split-section" aria-labelledby="process-title"> 58 58 <div class="container"> 59 - <h2 id="summary-title">Upgrade support for real XWiki environments</h2> 60 - 61 - <div class="services-grid compact-grid"> 62 - <article class="service"> 63 - <div class="service-icon"> 64 - <i class="fa fa-exclamation-triangle" aria-hidden="true"></i> 65 - </div> 66 - <div class="service-body"> 67 - <h4>When to consider an upgrade</h4> 68 - <ul> 69 - <li>Your instance is not on the latest suitable LTS version</li> 70 - <li>Your current version is more than one year old</li> 71 - <li>You use custom extensions, scripts, or workflows</li> 72 - <li>You rely on LDAP, SSO, OIDC, SAML, or MFA</li> 73 - <li>You want to reduce security and maintenance risk</li> 74 - </ul> 75 - </div> 76 - </article> 77 - 78 - <article class="service"> 79 - <div class="service-icon"> 80 - <i class="fa fa-check-square-o" aria-hidden="true"></i> 81 - </div> 82 - <div class="service-body"> 83 - <h4>What Agnease handles</h4> 84 - <ul> 85 - <li>Current version and environment review</li> 86 - <li>Recommended target version</li> 87 - <li>Extension and customization checks</li> 88 - <li>Backup, staging, and rollback planning</li> 89 - <li>Production upgrade and post-upgrade validation</li> 90 - </ul> 91 - </div> 92 - </article> 149 + <div class="split-grid"> 150 + <div class="split-copy"> 151 + <h2 id="process-title">A practical upgrade approach</h2> 152 + <p> 153 + The goal is not only to install a newer version. The goal is to move your XWiki instance forward 154 + while protecting the data, configuration, customizations and business processes that already depend on it. 155 + </p> 156 + <p> 157 + The upgrade is always prepared outside production first, using a staging environment or a temporary clone 158 + of the live instance. This allows compatibility issues, extension problems, authentication changes and 159 + custom features to be validated before the controlled production rollout. 160 + </p> 161 + </div> 162 + <ol class="process-list"> 163 + #foreach ($entry in $upgradeProcessItems) 164 + <li> 165 + <strong>$entry.title</strong> 166 + $entry.content 167 + </li> 168 + #end 169 + </ol> 93 93 </div> 94 94 </div> 95 95 </section> 96 - 97 - ## FINAL CTA 98 - <section class="cta-section compact-cta" aria-labelledby="assessment-title"> 173 + ## DELIVERABLES 174 + #set ($upgradeDeliverableItems = [{ 175 + 'title': 'Upgrade review', 176 + 'icon': 'search', 177 + 'content': 'Review of the current version, installed extensions, customizations, authentication and hosting constraints.' 178 + },{ 179 + 'title': 'Upgrade plan', 180 + 'icon': 'map', 181 + 'content': 'Recommended target version, risk areas, validation checklist, downtime expectations and rollback approach.' 182 + },{ 183 + 'title': 'Post-upgrade validation', 184 + 'icon': 'check-circle', 185 + 'content': 'Verification of key pages, rights, authentication, extensions, jobs, PDFs, dashboards and custom applications.' 186 + },{ 187 + 'title': 'Upgrade notes', 188 + 'icon': 'file-text-o', 189 + 'content': 'Practical documentation of the performed work, important decisions and recommended follow-up actions.' 190 + }]) 191 + <section aria-labelledby="deliverables-title"> 99 99 <div class="container"> 100 - <h2 id="a ssessment-title">Request anXWiki upgradeassessment</h2>101 - <p class=" lead">102 - Send yourcurrentXWiki versionandashort descriptionofyoursetup.103 - Agnease willrecommendthe targetversion,estimatedeffort,andkey riskstoreview.193 + <h2 id="deliverables-title">What you can expect</h2> 194 + <p class="section-intro"> 195 + The exact scope depends on your XWiki version, hosting setup and customizations, but an upgrade engagement 196 + usually includes a clear technical review, a controlled upgrade plan and post-upgrade validation. 104 104 </p> 105 - <p class="text-center contact-inline"> 106 - <a href="mailto:alex@agnease.com?subject=XWiki%20Upgrade%20Assessment">Request an upgrade assessment</a> 107 - </p> 198 + <div class="widgets"> 199 + #foreach ($entry in $upgradeDeliverableItems) 200 + <article class="widget"> 201 + <div class="icon" aria-hidden="true"> 202 + <i class="fa fa-$entry.icon"></i> 203 + <h4>$entry.title</h4> 204 + </div> 205 + <p>$entry.content</p> 206 + </article> 207 + #end 208 + </div> 108 108 </div> 109 109 </section> 110 - 211 + ## CTA 212 + <section class="cta-section" aria-labelledby="cta-title"> 213 + <div class="container"> 214 + <div class="cta-panel"> 215 + <h2 id="cta-title">Planning an XWiki upgrade?</h2> 216 + <p> 217 + Send your current XWiki version, target version if known, hosting setup and any custom extensions or integrations 218 + that may affect the upgrade. A short description is enough to start with. 219 + </p> 220 + <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request an upgrade review</a> 221 + </div> 222 + </div> 223 + </section> 111 111 {{/html}} 112 112 {{/velocity}}
- Agnease.Code.SEODetailsClass[0]
-
- metaDescription
-
... ... @@ -1,0 +1,1 @@ 1 +Safe XWiki upgrade services for production instances, including LTS upgrade planning, extension compatibility, backups, rollback strategy and validation. - metaTitle
-
... ... @@ -1,0 +1,1 @@ 1 +Safe XWiki Upgrade Services for Production Instances | Agnease