Release Engineering/Runbook/WikimediaDebug

From Wikitech

This is the runbook for release management of the WikimediaDebug browser extension.

Links

Release process

See #release-process in the README.

Access control

Chrome Web Store

The Chrome Web Store is managed from its Developer Dashboard. It works with a concept of publishers where your Google account has access to one or more publishers, and a publisher can owner one or more browser extensions. When you register your Google account as "Chrome Web Store Developer", there is by default a personal "Publisher" associated with you based on your username.

The WikimediaDebug extension is owned by the "chrome-wikimedia-debug" publisher, which is access-controlled via the member list of chrome-wikimedia-debug@googlegroups.com (manage group members, manage group-publisher association), where each member is the email address of a Google account. (It does not appear possible to associate a wikimedia.org Google Group, hence this uses a googlegroups.com address.)

Due to Google's one-time $5 payment requirement, it is common for publishers to associate their personal Google accounts. The developer access is not limited to individual "Publisher" namespaces, so once your account has developer access, you can be part any number of Publisher namespaces (of which Wikimedia Foundation would be one).

Firefox Addons

The Firefox Addons are managed from the Developer Hub. From the "Edit Product Page" interface for WikimediaDebug, one can manage which "Authors" have access to release or manage the extension, where each author is the email address of a Firefox account.

Before an author can be invited, you have to have logged-in with your Firefox account to https://addons.mozilla.org/ at least once.

Contact address

The contact address for app store alerts, confirmations, or other notifications from Mozilla and Google is wikimediadebug@wikimedia.org (manage group members).

Troubleshooting

If it appears that a request is not capturing any data, check that Tideways and Excimer are properly installed and called:

  • verify that php-tideways-xhprof is installed on the target host
  • ensure that the extension is loaded, i.e. look for tideways_xhprof.so under /etc/php/$version/fpm/conf.d/
  • check if auto_prepend_file is set in php.ini