Wikimedia Release Engineering Team/Local Dev Sync/2019-10-24

Agenda edit

Discussion edit

TODO: We want the core session scheduled before the complex env session

existing work vagrant tries to be push button but when it breaks it is too hard to debug we created a thing that tries to be best of both worlds but also becomes complex seems like docker-dev has similar issues with complexity but has many users

framing:

  • https://xkcd.com/927/ needs to be on a slide
  • lack of standards for development
  • we don't have a good (unified?) story for new developers
  • [summary of existing work here]

conclusions from local-charts work & evaluation of previous stuff:

  • there are too many types of developers to serve easily in one framework
  • **can't just have one environment**
    • We're not saying that we should have vagrant, mw-docker-dev, local-charts in parallel forever - we just want to be able to offer 
  • minikube isn't that great
  • what is the definition of production-like that is good for us?
  • it would be good to be able to leverage cloud resources
    • because your laptop sucks
    • especially for sufficiently production-like use cases
    • because you want to be able to share live environments
    • because we could use shared resources (i.e. a database)
    • **available**, not **required**

Open Questions (Mediawiki Core):     

  • Who should be served by the mediawiki core dev environment?
  • What are the most important requirements for mediawiki core developers?
  • What services are required for MediaWiki core development?
  • Should we continue with k8s, docker-dev, or vagrant?

Open Questions (complex ):

https://phabricator.wikimedia.org/T235372

"Is it feasible to try to create and maintain an environment on developers' computers for complex multi-service MediaWiki development? What options do we have and how can they be improved?"

Session 1:

  • want to offer something simple tailored to a certain use-case

Session 2:

  • many services making up mw
  • lobby for cloud resources