Premiers pas avec Toolforge,
la plateforme d'hébergement d'outils de Wikimédia


© Bryan Davis, Artur Jan Fijałkowski, Monjin Friends, CC-BY-SA 4.0

User:Arkanosis — WikiConvention francophone 2022

Public visé


© helix84, CC-BY-SA 3.0

  • Bot
  • Site web
  • Curiosité

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Public visé


© helix84, CC-BY-SA 3.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Toolhub


© Bryan Davis, Artur Jan Fijałkowski, CC-BY-SA 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

© Dmitry Makeev, CC-BY-SA 4.0

Internet


© Everaldo Coelho, Mauro Bieg, LGPL

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Serveur


© Everaldo Coelho, Mauro Bieg, Arkanosis, LGPL

  • Client

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Hébergeur


© Robert Scoble, CC-BY 2.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Cloud


© Tango! project, Gnome project, 百楽兎, CC-BY-SA 3.0

  • Buzzword
  • … mais pas que

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Cloud ?


© Markus Meier, FSFE, CC-BY-SA 4.0

  • Se débarrasser des préoccupations matérielles / physiques
  • Les transférer à un tiers

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Différents modèles de cloud


© Speculos, CC-BY-SA 3.0

  • SaaS (Software as a Service)
    • ⇒ logiciel prêt à l'usage
  • DaaS (Data as a Service)
    • ⇒ données prêtes à être manipulées
  • PaaS (Platform as a Service)
    • ⇒ environnement prêt pour exécuter des logiciels
  • IaaS (Infrastructure as a Service)
    • ⇒ ordinateur virtuel à configurer soi-même

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Wikimedia Cloud Services


© Brandon Harris, Isarra, CC-BY-SA 3.0


© Bryan Davis, Artur Jan Fijałkowski, Monjin Friends, CC-BY-SA 4.0


© Bryan Davis, CC-BY-SA 4.0


© Husky, CC-BY-SA 4.0

  • Wikimedia Cloud VPS : IaaS (OpenStack)
  • Wikimedia Toolforge : PaaS (Kubernetes)
  • PAWS : PaaS / DaaS (Jupyter)
  • Quarry : DaaS (SQL)

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

© Inna67895, CC-BY-SA 4.0

Conditions d'utilisation


© Blogtrepreneur, CC-BY 2.0

  • Bénéficie au mouvement Wikimédia
  • Sous licence libre
  • Pas de données privées
  • Pas de spam
  • Pas de partage d'accès

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Deux types d'outils


© Tom.koehler, CC-BY-SA 3.0

  • Services web
  • Jobs

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Concepts

  • Compte développeur


© Arkanosis, CC-BY 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Concepts

  • Compte développeur
  • Compte outil


© Arkanosis, CC-BY 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Concepts

  • Compte développeur
  • Compte outil


© Arkanosis, CC-BY 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Concepts

  • Compte développeur
  • Compte outil


© Arkanosis, CC-BY 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Compte développeur


© Lbronn, CC-BY-SA 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Clef SSH


© Anonyme, DP

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Compte outil


© Vyacheslav Argenberg, CC-BY 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Service web


© Everaldo Coelho, Ch.Andrew, Notwist, Carport, LGPL

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Service web


© Everaldo Coelho, Ch.Andrew, Notwist, Carport, LGPL


backend: kubernetes
cpu: 500m
mem: 200Mi
type: ruby25
extra_args:
 - /data/project/mon_outil
 - argument1
 - argument2
						
service.template (YAML)
  • webservice start

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Job


© Howard R. Hollem, DP

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Job


© Howard R. Hollem, DP


- name: mon_job
  mem: 1Gi
  command: >-
    dump=$(date '+%Y%m%d' -d 'two days ago') ;
    gunzip -c /public/dumps/public/frwiki/${dump}/frwiki-${dump}-stub-meta-history.xml.gz |
      wc -l > nombre_de_lignes_dans_le_dump_du_${dump}.txt
  image: tf-bullseye-std
  schedule: "0 0 3,22 * *"
  emails: all
						
jobs.yaml (YAML)
  • toolforge-jobs load jobs.yaml

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Ressources Wikimédia


© PiRSquared17, Rillke, Jelican9, Otourly, et al., CC-BY-SA 3.0

  • Dumps dans
    /public/dumps/public
  • Réplicas de base de données avec
    sql $MON_WIKI
    sql frwiki # par exemple

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

Publicité


© Anonyme, DP

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

== Voir aussi ==


© Bryan Davis, Artur Jan Fijałkowski, Monjin Friends, CC-BY-SA 4.0

© User:Arkanosis — CC-BY 4.0 — WikiConvention francophone 2022

~~~~


© Mhammedbenkassem, CC-BY-SA 4.0