Changes for page xwiki-upgrades

Last modified by Alex Cotiugă on 2026/05/12 12:41

From version 1.1
edited by Alex Cotiugă
on 2026/05/01 12:00
Change comment: There is no comment for this version
To version 2.5
edited by Alex Cotiugă
on 2026/05/12 12:41
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,0 +1,294 @@
1 +{{velocity}}
2 +#set ($discard = $xwiki.ssx.use('PublicWebSite.WebHome'))
3 +{{html clean="false"}}
4 +
5 + ## PAGE HEADER
6 + <section class="hero hero-centered service-hero" aria-labelledby="hero-title">
7 + <div class="container hero-inner">
8 + <div class="hero-kicker">
9 + <i class="fa fa-refresh" aria-hidden="true"></i>
10 + XWiki upgrade services
11 + </div>
12 +
13 + <h1 id="hero-title">Safe XWiki LTS upgrades for production environments</h1>
14 +
15 + <p class="lead">
16 + Keep your XWiki instance secure, stable and compatible with a planned upgrade path, clear validation steps
17 + and reduced operational risk.
18 + </p>
19 +
20 + <p class="hero-support">
21 + We help organizations upgrade XWiki instances that include custom extensions, authentication integrations,
22 + business-critical pages, workflows, scripts, rights configurations and production constraints.
23 + </p>
24 +
25 + <div class="hero-actions">
26 + <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request an upgrade review</a>
27 + <a class="btn btn-secondary" href="#upgrade-process">See the upgrade approach</a>
28 + </div>
29 + </div>
30 + </section>
31 +
32 + ## WHY UPGRADES MATTER
33 + <section aria-labelledby="why-upgrade-title">
34 + <div class="container">
35 + <h2 id="why-upgrade-title">Why regular XWiki upgrades matter</h2>
36 +
37 + <p class="section-intro">
38 + An outdated XWiki instance can become harder to maintain over time. Security fixes, browser compatibility,
39 + extension updates, platform changes and infrastructure requirements continue to evolve, while older versions
40 + become more difficult and risky to upgrade.
41 + </p>
42 +
43 + <div class="pathways">
44 + <article class="pathway-card">
45 + <div class="pathway-icon">
46 + <i class="fa fa-shield" aria-hidden="true"></i>
47 + </div>
48 + <h3>Reduce security exposure</h3>
49 + <p>
50 + Staying close to supported XWiki versions helps reduce exposure to known vulnerabilities and missing fixes.
51 + </p>
52 + <ul>
53 + <li>Review current version exposure</li>
54 + <li>Plan upgrade to a supported version</li>
55 + <li>Validate security-sensitive features</li>
56 + </ul>
57 + </article>
58 +
59 + <article class="pathway-card">
60 + <div class="pathway-icon">
61 + <i class="fa fa-cogs" aria-hidden="true"></i>
62 + </div>
63 + <h3>Preserve compatibility</h3>
64 + <p>
65 + Extensions, custom applications, authentication systems and infrastructure components need to remain compatible.
66 + </p>
67 + <ul>
68 + <li>Check installed extensions</li>
69 + <li>Review custom code and scripts</li>
70 + <li>Validate integrations after upgrade</li>
71 + </ul>
72 + </article>
73 +
74 + <article class="pathway-card">
75 + <div class="pathway-icon">
76 + <i class="fa fa-line-chart" aria-hidden="true"></i>
77 + </div>
78 + <h3>Improve maintainability</h3>
79 + <p>
80 + Smaller, regular upgrades are usually easier to control than large jumps after years of accumulated changes.
81 + </p>
82 + <ul>
83 + <li>Avoid long upgrade gaps</li>
84 + <li>Document the current platform state</li>
85 + <li>Prepare future upgrade cycles</li>
86 + </ul>
87 + </article>
88 + </div>
89 + </div>
90 + </section>
91 +
92 + ## COMMON SITUATIONS
93 + <section class="services" aria-labelledby="situations-title">
94 + <div class="container">
95 + <h2 id="situations-title">Common situations we handle</h2>
96 +
97 + <p class="section-intro">
98 + XWiki upgrades are often simple in clean environments, but production instances usually include additional
99 + constraints that need to be understood before touching the live system.
100 + </p>
101 +
102 + <div class="services-grid">
103 + <article class="service">
104 + <div class="service-icon" aria-hidden="true">
105 + <i class="fa fa-clock-o"></i>
106 + </div>
107 + <div class="service-body">
108 + <h4>Old XWiki versions</h4>
109 + <p>
110 + Instances that have not been upgraded for several months or years and require a careful upgrade path.
111 + </p>
112 + </div>
113 + </article>
114 +
115 + <article class="service">
116 + <div class="service-icon" aria-hidden="true">
117 + <i class="fa fa-puzzle-piece"></i>
118 + </div>
119 + <div class="service-body">
120 + <h4>Custom extensions and scripts</h4>
121 + <p>
122 + Wikis with custom applications, Velocity scripts, macros, UI extensions, rights logic or business workflows.
123 + </p>
124 + </div>
125 + </article>
126 +
127 + <article class="service">
128 + <div class="service-icon" aria-hidden="true">
129 + <i class="fa fa-lock"></i>
130 + </div>
131 + <div class="service-body">
132 + <h4>Authentication integrations</h4>
133 + <p>
134 + LDAP, Active Directory, SSO, OIDC, SAML, MFA or custom login setups that must keep working after upgrade.
135 + </p>
136 + </div>
137 + </article>
138 +
139 + <article class="service">
140 + <div class="service-icon" aria-hidden="true">
141 + <i class="fa fa-server"></i>
142 + </div>
143 + <div class="service-body">
144 + <h4>Infrastructure changes</h4>
145 + <p>
146 + Java, Tomcat, database, Docker, filesystem, reverse proxy or hosting changes required by newer versions.
147 + </p>
148 + </div>
149 + </article>
150 +
151 + <article class="service">
152 + <div class="service-icon" aria-hidden="true">
153 + <i class="fa fa-file-pdf-o"></i>
154 + </div>
155 + <div class="service-body">
156 + <h4>Business-critical features</h4>
157 + <p>
158 + PDF exports, dashboards, structured data, templates, permissions, notifications and workflows that need validation.
159 + </p>
160 + </div>
161 + </article>
162 +
163 + <article class="service">
164 + <div class="service-icon" aria-hidden="true">
165 + <i class="fa fa-warning"></i>
166 + </div>
167 + <div class="service-body">
168 + <h4>Low-downtime rollout</h4>
169 + <p>
170 + Upgrade planning with backups, testing, rollback options and a controlled production deployment window.
171 + </p>
172 + </div>
173 + </article>
174 + </div>
175 + </div>
176 + </section>
177 +
178 + ## PROCESS
179 + <section id="upgrade-process" class="split-section" aria-labelledby="process-title">
180 + <div class="container">
181 + <div class="split-grid">
182 + <div class="split-copy">
183 + <h2 id="process-title">A practical upgrade approach</h2>
184 +
185 + <p>
186 + The goal is not only to install a newer version. The goal is to move your XWiki instance forward
187 + while protecting the data, configuration, customizations and business processes that already depend on it.
188 + </p>
189 +
190 + <p>
191 + The upgrade is always prepared outside production first, using a staging environment or a temporary clone
192 + of the live instance. This allows compatibility issues, extension problems, authentication changes and
193 + custom features to be validated before the controlled production rollout.
194 + </p>
195 + </div>
196 +
197 + <ol class="process-list">
198 + <li>
199 + <strong>Review the current instance</strong>
200 + Version, extensions, database, filesystem, authentication, custom code, logs and infrastructure constraints.
201 + </li>
202 + <li>
203 + <strong>Define the upgrade path</strong>
204 + Target version, intermediate steps if needed, compatibility risks, expected downtime and rollback options.
205 + </li>
206 + <li>
207 + <strong>Prepare and validate</strong>
208 + Backups, test upgrade when needed, extension checks and validation of critical XWiki features.
209 + </li>
210 + <li>
211 + <strong>Upgrade production</strong>
212 + Controlled execution, post-upgrade checks, issue resolution and confirmation that key features still work.
213 + </li>
214 + <li>
215 + <strong>Document next steps</strong>
216 + Upgrade notes, observed risks, remaining recommendations and future maintenance guidance.
217 + </li>
218 + </ol>
219 + </div>
220 + </div>
221 + </section>
222 +
223 + ## DELIVERABLES
224 + <section aria-labelledby="deliverables-title">
225 + <div class="container">
226 + <h2 id="deliverables-title">What you can expect</h2>
227 +
228 + <p class="section-intro">
229 + The exact scope depends on your XWiki version, hosting setup and customizations, but an upgrade engagement
230 + usually includes a clear technical review, a controlled upgrade plan and post-upgrade validation.
231 + </p>
232 +
233 + <div class="widgets">
234 + <article class="widget">
235 + <div class="icon" aria-hidden="true">
236 + <i class="fa fa-search"></i>
237 + <h4>Upgrade review</h4>
238 + </div>
239 + <p>
240 + Review of the current version, installed extensions, customizations, authentication and hosting constraints.
241 + </p>
242 + </article>
243 +
244 + <article class="widget">
245 + <div class="icon" aria-hidden="true">
246 + <i class="fa fa-map"></i>
247 + <h4>Upgrade plan</h4>
248 + </div>
249 + <p>
250 + Recommended target version, risk areas, validation checklist, downtime expectations and rollback approach.
251 + </p>
252 + </article>
253 +
254 + <article class="widget">
255 + <div class="icon" aria-hidden="true">
256 + <i class="fa fa-check-circle"></i>
257 + <h4>Post-upgrade validation</h4>
258 + </div>
259 + <p>
260 + Verification of key pages, rights, authentication, extensions, jobs, PDFs, dashboards and custom applications.
261 + </p>
262 + </article>
263 +
264 + <article class="widget">
265 + <div class="icon" aria-hidden="true">
266 + <i class="fa fa-file-text-o"></i>
267 + <h4>Upgrade notes</h4>
268 + </div>
269 + <p>
270 + Practical documentation of the performed work, important decisions and recommended follow-up actions.
271 + </p>
272 + </article>
273 + </div>
274 + </div>
275 + </section>
276 +
277 + ## CTA
278 + <section class="cta-section" aria-labelledby="cta-title">
279 + <div class="container">
280 + <div class="cta-panel">
281 + <h2 id="cta-title">Planning an XWiki upgrade?</h2>
282 +
283 + <p>
284 + Send your current XWiki version, target version if known, hosting setup and any custom extensions or integrations
285 + that may affect the upgrade. A short description is enough to start with.
286 + </p>
287 +
288 + <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Request an upgrade review</a>
289 + </div>
290 + </div>
291 + </section>
292 +
293 +{{/html}}
294 +{{/velocity}}