Page MenuHomePhabricator

Migrate apertium to the deployment pipeline
Closed, ResolvedPublic

Description

Intro

Apertium is soon going to be the last service residing on the scb cluster and needs to be migrated off of it as we want to shut down that cluster in both DCs. All services from that cluster have been or are at the last stages of being migrated to the kubernetes powered deployment pipeline.

After some discussions[1] and exploring a variety of options , with @KartikMistry, we 've come up to the following approach that should move this forward without too many unknowns.

Move to the pipeline, using upstream Debian packages for apertium

Essentially just rely on the work that @KartikMistry has already been doing upstream (Debian) and create a pipeline image using those debian packages. That means the following:

Pros

  • Use of the pipeline
  • easy and orchestrated deployments/rollbacks
  • No longer relying on puppet and SREs (at least to some degree) for new functionality/languages etc. When new versions of Debian packages are required, debian-backports could (and should!) be used. That decouples the work language team does from SRE.
  • No dedicated hardware/VMs

Cons/Unknown area

  • Kartik still need to upload packages to {Debian Release}-backports if Language team wants latest language pair updates. This is little time taking as backport uploads has different policies.
  • Will need to figure out if the pipeline supports this and what changes might be required.

[1] https://etherpad.wikimedia.org/p/cxserver-2020

Progress

Event Timeline

Some relevant updates:

I've fixed Apertium packages for few bugs in Debian with coordination of upstream and packages are stable condition now.

I'll push packages to Debian Backport repository as needed, when we need release of new language pair for WMF.

Change 639161 had a related patch set uploaded (by KartikMistry; owner: KartikMistry):
[mediawiki/services/apertium@master] WIP: Add blubber.yaml

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

Change 644479 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[integration/config@master] apertium: Add it to the pipeline

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

Change 644479 merged by jenkins-bot:
[integration/config@master] apertium: Add it to the pipeline

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

Change 639161 merged by jenkins-bot:
[mediawiki/services/apertium@master] Add blubber.yaml

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

Change 644530 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/deployment-charts@master] Add apertium namespace

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

Change 644531 had a related patch set uploaded (by KartikMistry; owner: KartikMistry):
[operations/deployment-charts@master] WIP: Add apertium helm chart

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

Change 644531 merged by jenkins-bot:
[operations/deployment-charts@master] Add apertium helm chart

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

Change 645064 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/puppet@production] Add tokens and users for 3 new k8s services

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

Change 645076 had a related patch set uploaded (by KartikMistry; owner: KartikMistry):
[operations/deployment-charts@master] Add apertium helmfile.d

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

Change 645076 merged by jenkins-bot:
[operations/deployment-charts@master] Add apertium helmfile.d

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

Change 645323 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[labs/private@master] Add tokens and users for 3 new k8s services

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

Change 645323 merged by Alexandros Kosiaris:
[labs/private@master] Add tokens and users for 3 new k8s services

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

Change 645064 merged by Alexandros Kosiaris:
[operations/puppet@production] Add tokens and users for 3 new k8s services

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

Change 644530 merged by jenkins-bot:
[operations/deployment-charts@master] Add apertium namespace

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

Mentioned in SAL (#wikimedia-operations) [2020-12-04T13:07:37Z] <akosiaris> create apertium namespace on k8s clusters. T255672

Mentioned in SAL (#wikimedia-operations) [2020-12-07T13:38:24Z] <kart_> Deployed apertium service to eqiad and codfw (T255672)

Change 646688 had a related patch set uploaded (by Alexandros Kosiaris; owner: Alexandros Kosiaris):
[operations/deployment-charts@master] apertium: Add a TLS enabled release

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

Change 646688 merged by jenkins-bot:
[operations/deployment-charts@master] apertium: Add a TLS enabled release

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

All done except announcement/notes to the team!