Page MenuHomePhabricator

Request: Wikipedia 25 microsite hosting
Closed, ResolvedPublic

Description

Background

As part of the Wikipedia 25 celebrations, we'll be creating a static HTML microsite to celebrate 25 years of Wikipedia. This site may contain multiple pages, and it will static HTML/CSS/JS and will have no server-side component. During development, we will host this site on a toolforge instance for design review:

https://wikipedia25-years-of-wikipedia.toolforge.org/

but eventually (by Wikipedia's 25th birthday in January 2026) we would like to host this site on a more appropriate service with a custom subdomain/domain.

Open questions

  • Where and how should we host a microsite like this? e.g. misc cluster?
  • How should we deploy this microsite and subsequent changes to it?
  • Are there any caching considerations that could affect updating the site?

Requirements

  • A place to host the site!
  • The ability to access this page via a custom domain/subdomain (TBD)
  • The ability to push updates to this site.

The microsite git repo is currently on GitLab: https://gitlab.wikimedia.org/toolforge-repos/wikipedia25-years-of-wikipedia

Details

Related Changes in Gerrit:
SubjectRepoBranchLines +/-
operations/deployment-chartsmaster+1 -1
operations/puppetproduction+21 -0
operations/puppetproduction+2 -4
operations/deployment-chartsmaster+1 -1
operations/deployment-chartsmaster+1 -1
operations/puppetproduction+6 -0
operations/deployment-chartsmaster+2 -0
operations/deployment-chartsmaster+1 -1
operations/puppetproduction+1 -0
operations/dnsmaster+2 -2
operations/puppetproduction+0 -6
operations/deployment-chartsmaster+1 -1
operations/puppetproduction+1 -0
operations/puppetproduction+1 -0
operations/puppetproduction+4 -0
operations/puppetproduction+15 -0
operations/dnsmaster+22 -0
operations/puppetproduction+9 -0
operations/puppetproduction+6 -0
operations/deployment-chartsmaster+24 -1
operations/deployment-chartsmaster+0 -1
operations/puppetproduction+2 -0
operations/deployment-chartsmaster+3 -0
Show related patches Customize query in gerrit
Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
publish image to production registryrepos/sre/miscweb/wikipedia25-years-of-wikipedia!3jeltopublish-imagemain
remove redirect and use / as BASE_URLrepos/sre/miscweb/wikipedia25-years-of-wikipedia!2jeltoremove-redirectmain
add wikipedia25 to Trusted Runnersrepos/releng/gitlab-trusted-runner!138jeltoadd-wikipedia-25main
add CI to build the container image with blubberrepos/sre/miscweb/wikipedia25-years-of-wikipedia!1jeltoadd-production-cimain
Customize query in GitLab

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Would it be ok with you if we do that next week, on December 22nd?

Yes, I think also Friday 19 Dec is possible, since the review ends Wednesday 17 Dec EOD.

We noticed there are also wiki25.org and wiki25.com

The reply I got back - those should remain as they are now

In regards to the request that the site should be published at 8:30 UTC on Jan 15th 2026, I am wondering if we can use an apache based solution like the following

https://gitlab.wikimedia.org/toolforge-repos/wikipedia25-years-of-wikipedia/-/compare/main...apache-datetime-based-rewrite?from_project_id=3791#line_499e1998f_A16

If this is a no-go, then I can also deploy manually, but would need the rights to do so, and some initial guidance

any feedback from the followers of this topic would be greatly appreciated :)

Change #1218813 merged by jenkins-bot:

[operations/deployment-charts@master] admin_ng/miscweb: remove donate.wikipedia25.org from tlsExtraSANs

https://gerrit.wikimedia.org/r/1218813

Would it be ok with you if we do that next week, on December 22nd?

Yes, I think also Friday 19 Dec is possible, since the review ends Wednesday 17 Dec EOD.

Great! Yea, don't worry about Friday. We will just do Monday, right after the weekend.

We noticed there are also wiki25.org and wiki25.com

The reply I got back - those should remain as they are now

Ok! Noted and this answered a question in code review. Thanks.

In regards to the request that the site should be published at 8:30 UTC on Jan 15th 2026 ...
any feedback from the followers of this topic would be greatly appreciated :)

The thing that actually switches what users will see will be only a DNS change. In particular this one:

https://gerrit.wikimedia.org/r/c/operations/dns/+/1216843/12/templates/wikipedia25.org

That will simultaneously unlink the domain from the redirect loadbalancer and point it to the general loadbalancer that is in front of our Kubernetes cluster. (while donate.wikipedia25.org stays on the former).

We have to manually merge the DNS change at some point no matter what. And it can take a few minutes until the DNS change propagates to all users world wide.

All other things can and should happen before. So the content repo will have the final version, the kubernetes cluster will have the config/release for it, the CDN/caching servers will know how to route it etc.

Other related changes can be seen here, by the way: https://gerrit.wikimedia.org/r/q/topic:%22wikipedia25%22

Some are already merged right now and others we are planning to merge on January 13. The plan is that we test all this on Jan 13 and then only have to revert/re-revert a DNS change to switch back and forth.

So you don't have to worry about deploying and apache in that moment. Hope that sounds good!

Once we have moved the repo to the new location, and with the config for CI to build the docker images that Jelto has already added, it will also be allowed to upload an image to https://docker-registry.wikimedia.org/

Then it will be possible to test with docker from anywhere.

I moved the GitLab project from https://gitlab.wikimedia.org/toolforge-repos/wikipedia25-years-of-wikipedia to https://gitlab.wikimedia.org/repos/sre/miscweb/wikipedia25-years-of-wikipedia. @taavi can you clean up the toolforge references?

I also enabled the publish-image job in the CI configuration and an image was built and published successfully:

2025-12-19-063303: Pulling from repos/sre/miscweb/wikipedia25-years-of-wikipedia
abde2bb1268a: Already exists 
ada8385b68fa: Already exists 
5f3b47153798: Already exists 
105257839118: Pull complete 
7c903fd34bb9: Pull complete 
6552684518ff: Pull complete 
a10e7e7548d0: Pull complete 
Digest: sha256:4cc0b3f38b63e9ee005ef0eef95047d42a850027eabf096f6bc6c79228e09608
Status: Downloaded newer image for docker-registry.wikimedia.org/repos/sre/miscweb/wikipedia25-years-of-wikipedia:2025-12-19-063303
docker-registry.wikimedia.org/repos/sre/miscweb/wikipedia25-years-of-wikipedia:2025-12-19-063303

@ATitkov I noticed the website just shows a Wikipedia icon and the website is not usable. When I set display: none for the <div id=splash> the website works normally. This effect can be seen locally and on the old toolforge site. I'm not sure if this is a second safeguard for the deployment in January. If it is, it's not really needed, as we are doing a switch using DNS. So the website is not really reachable before.

In a next step I'll do a Kubernetes deployment and prepare the miscweb service in wikikube.

Change #1215231 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: add wikipedia25 release

https://gerrit.wikimedia.org/r/1215231

In a next step I'll do a Kubernetes deployment and prepare the miscweb service in wikikube.

wikipedia25 was deployed to all wikikube clusters. So we should be set for trying the DNS change in January (the remaining three open changes linked to this task).

curl -s -I --resolve wikipedia25.org:30443:$(dig +short k8s-ingress-wikikube.svc.eqiad.wmnet) https://wikipedia25.org:30443
HTTP/2 200 
server: Apache/2.4.65 (Debian)
last-modified: Fri, 19 Dec 2025 06:36:06 GMT
content-length: 3403
cache-control: max-age=3600, must-revalidate
content-type: text/html
...

Change #1216855 merged by Jelto:

[operations/puppet@production] trafficserver: add a map for wikipedia25.org to miscweb-k8s

https://gerrit.wikimedia.org/r/1216855

I merged the change above and tested the loadbalancer manually by changing my /etc/hosts to the text-lb ip. It looks like wikipedia25.org is still missing in our certificate:

curl -I https://wikipedia25.org
curl: (60) SSL: no alternative certificate subject name matches target host name 'wikipedia25.org'
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

I guess wikipedia25.org has to be added to the list of alternative names, somewhere in cache::alternate_domains maybe. I'll upload a patch.

Change #1223182 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/puppet@production] cache-text: add wikipedia25.org to alternate_domains

https://gerrit.wikimedia.org/r/1223182

Change #1223194 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] acme_chief: add certs for wikipedia25.org

https://gerrit.wikimedia.org/r/1223194

I noticed the website just shows a Wikipedia icon and the website is not usable. When I set display: none for the <div id=splash> the website works normally. This effect can be seen locally and on the old toolforge site. I'm not sure if this is a second safeguard for the deployment in January. If it is, it's not really needed, as we are doing a switch using DNS. So the website is not really reachable before.

@Jelto sorry for the delayed reply. It was a minor blocking mechanism (requiring to add /?preview in order to see the page) as wikimedia people started discovering the toolforge site and asking to share it. But it's removed now, as links are being passed around for reviews. Also thank you for all that work and support!

Change #1223194 merged by Dzahn:

[operations/puppet@production] acme_chief: add certs for wikipedia25.org

https://gerrit.wikimedia.org/r/1223194

Change #1223182 merged by Dzahn:

[operations/puppet@production] cache-text: add wikipedia25.org to alternate_domains

https://gerrit.wikimedia.org/r/1223182

Change #1216843 merged by Dzahn:

[operations/dns@master] unlink wikipedia25.org from ncredir, point to geoip text-addrs

https://gerrit.wikimedia.org/r/1216843

Change #1224096 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/puppet@production] cache-text: add wikipedia25 to enabled_certificates

https://gerrit.wikimedia.org/r/1224096

I noticed the website just shows a Wikipedia icon and the website is not usable. When I set display: none for the <div id=splash> the website works normally. This effect can be seen locally and on the old toolforge site. I'm not sure if this is a second safeguard for the deployment in January. If it is, it's not really needed, as we are doing a switch using DNS. So the website is not really reachable before.

@Jelto sorry for the delayed reply. It was a minor blocking mechanism (requiring to add /?preview in order to see the page) as wikimedia people started discovering the toolforge site and asking to share it. But it's removed now, as links are being passed around for reviews. Also thank you for all that work and support!

Sounds reasonable, thanks for the additional context. Then we can bump the image version before the go live next week.

We've tested the DNS switch today but unfortunately we still receive a certificate issue. It might be required to add the wikiworkshop certificate explicitly to the caching nodes in https://gerrit.wikimedia.org/r/c/operations/puppet/+/1224096. But here we need feedback from traffic. Having this service on a dedicated domain makes things a bit more complicated here.

Change #1224096 merged by Dzahn:

[operations/puppet@production] cache-text: add wikipedia25 to enabled_certificates

https://gerrit.wikimedia.org/r/1224096

Change #1224576 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] add wikipedia25.org to list of wikimedia_domains

https://gerrit.wikimedia.org/r/1224576

Change #1224580 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] add wikipedia25.org to profile::cache::base::wikimedia_domains

https://gerrit.wikimedia.org/r/1224580

Change #1224576 abandoned by Dzahn:

[operations/puppet@production] add wikipedia25.org to list of wikimedia_domains

Reason:

use profile::cache::base::wikimedia_domains instead

https://gerrit.wikimedia.org/r/1224576

Change #1224580 merged by Dzahn:

[operations/puppet@production] add wikipedia25.org to profile::cache::base::wikimedia_domains

https://gerrit.wikimedia.org/r/1224580

Change #1224858 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/deployment-charts@master] eventgate-analytics-external: add wikipedia25.org

https://gerrit.wikimedia.org/r/1224858

Change #1224901 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/puppet@production] varnish: add wikipedia25 frontend vcl.

https://gerrit.wikimedia.org/r/1224901

Change #1224901 merged by Dzahn:

[operations/puppet@production] varnish: add wikipedia25 frontend vcl.

https://gerrit.wikimedia.org/r/1224901

Change #1224913 had a related patch set uploaded (by Jelto; author: Jelto):

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1224913

Change #1224913 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1224913

Change #1224917 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/dns@master] point wikipedia25.org to ncredir

https://gerrit.wikimedia.org/r/1224917

We were able to solve the loadbalancer issues and the site is reachable and returns 200 and the correct content. We will do a few more tests and revert back after that. Final dns switch will happen next week for the go-live deployment.

curl -I https://wikipedia25.org
HTTP/2 200 
date: Fri, 09 Jan 2026 11:21:44 GMT
server: Apache/2.4.65 (Debian)
last-modified: Thu, 08 Jan 2026 18:26:19 GMT

Thanks again @Dzahn , traffic team and @JMeybohm for the troubleshooting :)

Change #1224957 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] trafficserver: disable wikipedia25

https://gerrit.wikimedia.org/r/1224957

Change #1224957 merged by Dzahn:

[operations/puppet@production] trafficserver: disable wikipedia25

https://gerrit.wikimedia.org/r/1224957

Change #1224959 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] Revert "trafficserver: disable wikipedia25"

https://gerrit.wikimedia.org/r/1224959

Change #1224917 abandoned by Dzahn:

[operations/dns@master] point wikipedia25.org to ncredir

Reason:

using https://gerrit.wikimedia.org/r/c/operations/puppet/+/1224957 instead, not needed

https://gerrit.wikimedia.org/r/1224917

Due to an unrelated temp issue with the DNS repo we changed the plan slightly and disabled the site at trafficserver level, leaving DNS enabled.

Now the step to go live will be to revert that change instead and enable the map to the backend https://gerrit.wikimedia.org/r/c/operations/puppet/+/1224959

Change #1224917 restored by Dzahn:

[operations/dns@master] point wikipedia25.org to ncredir

https://gerrit.wikimedia.org/r/1224917

Change #1224917 abandoned by Dzahn:

[operations/dns@master] point wikipedia25.org to ncredir

Reason:

test passed :) thanks Papaul - patch not needed anymore now - instead I4300a82944a2daa

https://gerrit.wikimedia.org/r/1224917

@ATitkov @cmadeo Hi! It seems to me all is done here and ready to go live on Thursday. We have tested and there is one single patch to be deployed to make the site go live. The current plan is to just merge that around 07:00 UTC to ensure all users can see it at 07:30 UTC the latest. Due to the way deployment works it could take a few minutes until it's applied on all caching proxies.. and users will use different proxies based on their location and by chance.

If that's ok you don't have to do anything else and I will just do it.

With some moderate additional effort I could reduce that "soft launch" time window to like 5 minutes. But please let me know if it you would like that.

Is there anything else to it? Would you like a confirmation somewhere when it's live other than here on the ticket?

Best,

Daniel

With some moderate additional effort I could reduce that "soft launch" time window to like 5 minutes. But please let me know if it you would like that.

@Dzahn the microsite is expected to be published 8:30 UTC, 15 Jan 2026, so no need for 5 min window.

merge that around 07:00 UTC to ensure all users can see it at 07:30 UTC the latest. Due to the way deployment works it could take a few minutes until it's applied on all caching proxies.. and users will use different proxies based on their location and by chance

That sounds good.

Is there anything else to it? Would you like a confirmation somewhere when it's live other than here on the ticket?

That would be enough. After the ticket update, I can check that everything is working as expected, and then inform the stakeholders vis Slack.

The one remaining question from my side - after the publishing, in order to update/bug-fix the microsite, IIUC I would need to just merge to master/main on gitlab, right?

Change #1224858 abandoned by Dzahn:

[operations/deployment-charts@master] eventgate-analytics-external: add wikipedia25.org

Reason:

per comments above

https://gerrit.wikimedia.org/r/1224858

I answered the question on Slack but for the record here: No, thats not the case. Making additional changes to the site requires multiple actions.. updating the docker image version (after CI pushed it to our Docker registry), running puppet and running deploy commands on Kubernetes.

I see as of right now there is a version 2026-01-14-011522 in the docker registry. Please let me know as soon as possible if this is now the final version that you want to be deployed for tomorrow.

Change #1224858 restored by Btullis:

[operations/deployment-charts@master] eventgate-analytics-external: add wikipedia25.org

https://gerrit.wikimedia.org/r/1224858

Change #1226902 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1226902

Change #1226902 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1226902

Change #1224858 merged by jenkins-bot:

[operations/deployment-charts@master] eventgate-analytics-external: add wikipedia25.org

https://gerrit.wikimedia.org/r/1224858

Dzahn changed the task status from Open to In Progress.Jan 15 2026, 6:45 AM

Change #1224959 merged by Dzahn:

[operations/puppet@production] Revert "trafficserver: disable wikipedia25"

https://gerrit.wikimedia.org/r/1224959

Just a note (apologies if there's a better place to raise this): When I click on any of the 'Transcript' buttons (at the top of each of the audio snippet windows), I get taken to a 'Not Found' page. E.g. https://www.wikipedia25.org/en/transcript/editor-robert-sim-why-wikipedia-is-trusted

@A_smart_kitten Thanks for reporting. The issue is known and currently a fix is being worked on.

Unrelated to the issue reported above, but for the record. We had an initial problem with the bare domain without www because the "domain not configured" page was cached. This was fixed by purging from caches like this:

[cumin2002:~] $ sudo cumin -b 1 A:cp-text "varnishadm -n frontend ban 'req.http.host == \"wikipedia25.org\"'"

The 404 problems are unrelated and require some rewrite rules that people are working on right now.. to be pushed soon.

Change #1227260 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1227260

Change #1227260 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1227260

@Dzahn checking just now on the device I used before, the 'Not Found' page was initially cached, but once I refreshed the page it now seems like it works :]

@A_smart_kitten Yea, that is also what we saw over here. Thanks!:)

We are live - QA happening now.

QA was successful. Some people report needed a refresh for the first visit on https://wikipedia25.org/ or https://www.wikipedia25.org/ but I don't think we can do something about it. (Please correct me if I'm wrong)

I know it might look too soon, but I want to request either scheduled re-deployments or the ability to deploy myself, in order to update for bugfixes and a couple of incoming i18n and media.

I would prefer a deployment on Friday 16 Jan, and then weekly deployment on Mondays. One re-deployment is needed for sure, the rest only if we have changes / bugfixes.

If needed I can open a new ticket. Also I can go through whatever procedure needed in order to get deployment rights.

I can help with another deployment tomorrow, Friday 16, but not after that until next month.

Whether deployment rights are needed was one of the early questions in this project because it needs time to setup.

Will have to escalate and see what options there might be.

Change #1227811 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1227811

Change #1227811 merged by jenkins-bot:

[operations/deployment-charts@master] miscweb: update wikipedia25 image to latest version

https://gerrit.wikimedia.org/r/1227811

Change #1216856 merged by Dzahn:

[operations/puppet@production] ncredir: remove wikipedia25.org, keep wikipedia25.com to www.wikipedia25.org

https://gerrit.wikimedia.org/r/1216856

Change #1240421 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/puppet@production] httpbb/miscweb: add tests for wikipedia25.org

https://gerrit.wikimedia.org/r/1240421

Change #1240421 merged by Dzahn:

[operations/puppet@production] httpbb/miscweb: add tests for wikipedia25.org

https://gerrit.wikimedia.org/r/1240421

Change #1269541 had a related patch set uploaded (by Dzahn; author: Dzahn):

[operations/deployment-charts@master] wikipedia25: update to latest version of April 6th

https://gerrit.wikimedia.org/r/1269541

Change #1269541 merged by jenkins-bot:

[operations/deployment-charts@master] wikipedia25: update to latest version of April 6th

https://gerrit.wikimedia.org/r/1269541

The latest version has been deployed.