活动流中的 TippyTop

TippyTop 是来自 Alexa 最受欢迎网站的图标集合,它为活动流中的热门网站提供高质量的图像。TippyTop 清单托管在 S3 上,从 Firefox 63 开始迁移到 远程设置。本文档将介绍我们如何为活动流生成和管理 TippyTop 清单。

TippyTop 清单生成

TippyTop 清单由 tippy-top-sites 生成。

# set up the environment, only needed for the first time
$ pip install -r requirements.txt
$ python make_manifest.py --count 2000 > icons.json  # Alexa top 2000 sites

由于清单是远程托管的,因此我们使用另一个存储库 tippytop-service 进行版本控制和部署。请咨询 :nanj 或 :r1cky 以获取访问此私有存储库的权限。

TippyTop 清单发布

对于每个新的清单版本,首先您应该在 tippytop-service 存储库中对其进行标记,然后按照以下步骤发布它

对于 Firefox 62 及以下版本

在 Bugzilla 中以 活动流:应用程序服务器 的形式提交带有标记版本的部署 Bug,将其分配给我们的系统工程师 :jbuck,他将负责其余工作。

对于 Firefox 63 及更高版本

从 Firefox 63 开始,活动流开始使用远程设置来管理 TippyTop 清单。要能够发布新的清单,您需要成为远程设置的作者和审阅者组成员。有关更多详细信息,请参阅此 mana 页面。您也可以咨询 :nanj 或 :leplatram 为您进行设置。要将清单发布到远程设置,请转到 tippytop-service 存储库,并运行以下脚本:

# set up the remote setting, only needed for the first time
$ python3 -m venv .venv
$ source .venv/bin/activate
$ pip install -r requirements.txt

# publish it to prod
$ source .venv/bin/activate
# It will ask you for your LDAP user name and password.
$ ./upload2remotesettings.py prod

上传到远程设置后,您可以在 仪表板 中请求审查。请注意,您需要登录 Mozilla LDAP VPN 才能上传和访问远程设置的仪表板。一旦您的请求获得审阅者的批准,新的清单将被内容签名并发布到生产环境。

TippyTop 查看器

您可以使用此 查看器 加载当前清单中的所有图标。