SlideShare une entreprise Scribd logo
1  sur  30
Télécharger pour lire hors ligne
2012 OpenStack APAC Conference
11 Aug 2012




                   OpenStack 文档及其翻译管理
                     OpenStack Documentation and
                       Translation Management
                            郭迎春                Anne Gentle
                       OpenStack 文档组         OpenStack 文档组
                     guoyingc@cn.ibm.com   anne@openstack.org




                                                                © 2009 IBM Corporation
议程
                    Agenda

           OpenStack 文档现状
       Status of OpenStack Document

          翻译管理及流程
       Translation Management & Process

          翻译流程示例
       Samples of Translation Process
          常见问题解答
       Questions with Answers




www.openstack.org                         2
议程
                    Agenda

           OpenStack 文档现状
       Status of OpenStack Document

          翻译管理及流程
       Translation Management & Process

          翻译流程示例
       Samples of Translation Process
          常见问题解答
       Questions with Answers




www.openstack.org                         3
文档页面
                    Web Page for Documentation

       http://docs.openstack.org




www.openstack.org
社区文档的挑战
                    Challenges of Community Documentation

       代码量巨大                      增长很快
       Large amount of code       Grow quickly

       经常变化                       松散管理
       Change frequently          Loose coupling

        如同管理代码那样管理社区文档 !
         Manage document as code !




www.openstack.org                                       5
文档流程 : 设计
                    Document Process: Design

       设计峰会上的讨论和规划
       Blueprints and discussion at Design Summit

       蓝图
       Blueprints

     现有的蓝图可以在 https://blueprints.launchpad.net/openstack-manuals
     上找到
     Current blueprints found at https://blueprints.launchpad.net/
 openstack-manuals




www.openstack.org                                               6
文档流程:开发
                    Document Process : Development

       管理员指南和 API 指南存储于 Github 代码库
       Github repositories store admin guides and API guides

       单元测试集成在 Jenkins 中
       Unit tests with Jenkins

       补丁包的审核通过 Gerrit 进行
       Patch review with Gerrit




www.openstack.org                                              7
文档流程: Bug 跟踪
                    Document Process : Bug tracking

       通过 Launchpad 管理 Bug
       Manage bugs through Launchpad
         Bug logging
         Bug 登记
         Bug triaging
         Bug 分类
         Bug assigning
         Bug 指派




www.openstack.org                                     8
文档流程:发布
                    Document Process : Publishing

       通过 Jenkins 上的任务进行自动发布
       Automatically publish with Jenkins




www.openstack.org                                   9
文档小组成员
                    Doc Team Composition

       所有的 OpenStack 社区成员
       All OpenStack community members

       OpenStack 文档小组的成员只占其中的百分之一
       One percenter = OpenStack-doc-core

       小组成员主要来自下列公司:
       Badge Wearers
         AT&T
         IBM
         Nebula
         Nicira
         Nimbis Services
         Nuage
         Rackspace
         RedHat




www.openstack.org                           10
统计
                    Statics

       api.openstack.org 中有 20 多个计算扩展 API 的文档描述。
       20+ Compute Extensions documented at api.openstack.org

       66% 的网站访问者会选择继续浏览而不是离开
       66% Site visitors stay instead of leaving

       一个月进行 100 的文档补丁包的审查
       100 Doc patches and reviews a month

       记录了 726 个配置选项。其中, 467 个为 nova 配置选项, 259 个为 swift
       配置选项
      726 Configuration options: 467 for nova.conf, 259 for swift conf files

       docs.openstack.org 一周的唯一访问量为 10,000
       10,000 Unique visitors a week at docs.openstack.org




www.openstack.org                                                         11
议程
                    Agenda

           OpenStack 文档现状
       Status of OpenStack Document

          翻译管理及流程
       Translation Management & Process

          翻译流程示例
       Samples of Translation Process
          常见问题解答
       Questions with Answers




www.openstack.org                         12
文档翻译的挑战
                    Challenges of Document Translation

       代码量巨大                         增长很快
       Large amount of code          Grow quickly

       经常变化                          松散管理
       Change frequently             Loose coupling

         如同管理代码中字符串翻译那样管理社区文档翻译 !
        Manage document translation as code string translation!




www.openstack.org                                                 13
文档翻译流程:切分
                    Translation Process : Slicing

      通过一个 Python 脚本,将 DocBook 切分为字符串片断,整理为一个 PO 模板。
    Slice DocBook into string segment with a Python script, and generate a PO
 template 。

            ./tools/generatepot openstack-compute-admin




www.openstack.org                                                               14
文档翻译流程:翻译
                    Translation Process : Translating

    借助 Transifex 进行翻译管理              Manage translation by Transifex
       翻译项目和资源                         Translation project & resources
       翻译内存                            Translation memory
       术语                              Glossary




www.openstack.org                                                    15
文档翻译流程:合并
                    Translation Process : Merging


       通过一个 Python 脚本,将翻译后的字符串合并到 DocBook 中。
       Merge the translated string into Docbook with a python script.

       ./tools/generatedocbook -l zh_CN -b openstack-compute-admin




www.openstack.org                                                       16
文档翻译流程:上传与下载
                    Translation Process : Uploading & Downloading


     借助 Transifex 的客户端命令,完成翻译资源和翻译结果的上传下载。
    Upload the translation resources and download the translated results by
 commands of Transifex Client

       tx set --auto-local -r openstack-manuals-i18n.openstack-api-programming
       'doc/src/docbkx/openstack-api-programming/locale/<lang>.po' --source-lang
       en --source-file doc/src/docbkx/openstack-api-
       programming/locale/openstack-api-programming.pot –execute

       tx push -s -r openstack-manuals-i18n.api-quick-start

       tx pull -f -l zh_CN -r openstack-manuals-i18n.api-quick-start




www.openstack.org                                                             17
文档翻译流程:变更管理
                     Translation Process : Change Management


      借助 Transifex 客户端命令,将本地翻译资源与服务器上的资源进行同步。
      Synchronize the local translation resources with the resources in the Transifex
 server by Transifex Client commands.

      当输入“ tx push” 命令将本地资源更新到服务器端时,会自动地检查本地资源与服务器资源的
      不同,并且进行合并。
      Command “tx push” will automatically check the differences and merge the local
 copy and remote copy.
         新字符串会被添加。
         New strings will be added.
         更新的字符串会被当作新字符串被添加。
         Modified strings will be considered new ones and added as well.
         在新的源文件中不存在的字符串会被删除(包括那些被更新的)。
         Strings which do not exist in the new source file (including ones which have been
         modified) will be removed from the database.
         删除的字符串会被保存在翻译内存中,供以后参考。
         The removed translations are kept in the Translation Memory of your project.

  ./tools/generatedocbook -l zh_CN -b openstack-manuals-i18n.api-quick-start
  tx push -s -r openstack-manuals-i18n.api-quick-start
  tx pull -r openstack-manuals-i18n.api-quick-start

www.openstack.org                                                                            18
统计
                      Statics
     OpenStack 手册的 7 本书已经上传到 Transifex 上,包含 5550 个待翻译项。
     7 books of OpenStack Manuals have been uploaded to Transifex, including 5550
items for translation.

     6 个翻译小组在 Transifex 上已建立,负责如下 6 种语言的翻译:
     6 translation teams created in Transifex for 6 languages translation:
       中文,西班牙语,法语,日语,韩语,土耳其语
       Chinese, Spanish, French, Japanese, Korean, Turkish (Turkey)

     3 种语言的翻译工作已经启动
     3 languages translation started
       中文 – 4% ,西班牙 – 4% ,法语 - 1%
       Chinese – 4 %, Spanish – 4 %, French – 1 %

     已有 9 人加入中文翻译小组
     9 translators joined Chinese translation team
     一本中文手册完成翻译
     1 manual document finished Chinese translation
       OpenStack API 快速入门
       OpenStack API Quick Start




 www.openstack.org                                                                  19
议程
                    Agenda

           OpenStack 文档现状
       Status of OpenStack Document

          翻译管理及流程
       Translation Management & Process

          翻译流程示例
       Samples of Translation Process
          常见问题解答
       Questions with Answers




www.openstack.org                         20
示例:中文文档生成
                    Sample : Chinese Document Generation

       步骤一:从 Git 代码仓库中检出所有的 OpenStack 手册的源码
       Step 1: Check out the sources from Git repository
         git clone https://github.com/daisy-ycguo/openstack-manuals-i18n.git




       步骤二:从 Transifex 中检出最新的翻译结果
       Step 2: Check out the latest translation from Transifex
         tx pull -f -l zh_CN -r openstack-manuals-i18n.api-quick-start




www.openstack.org                                                              21
示例:中文文档生成
                    Sample : Chinese Document Generation

      步骤三:将翻译结果合并到 DocBook 中,生成中文的 DocBook
      Step 3: Merge the translation segment back to DocBook
         ./tools/generatedocbook -l zh_CN -b api-quick-start




       步骤四:根据中文 DocBook ,生成中文 PDF 和 HTML 文档
       Step 4: Generate PDF and HTML document
         mvn generate-sources




www.openstack.org
议程
                    Agenda

           OpenStack 文档现状
       Status of OpenStack Document

          翻译管理及流程
       Translation Management & Process

          翻译流程示例
       Samples of Translation Process
          常见问题解答
       Questions with Answers




www.openstack.org                         23
如何加入 openstack-core-docs 组
                    How can I get on the openstack-core-docs team?


    大量审阅 http://review.openstack.org 上的 openstack-manuals 项目
    Do lots of reviews at http://review.openstack.org for the openstack-
 manuals project.

      参与 Bug 的分类和修正工作 http://bugs.launchpad.net/openstack-
      manuals
     Triage bugs and log doc bugs at
 http://bugs.launchpad.net/openstack-manuals.

      我们会在邮件列表 openstack-docs-core 通过讨论,邀请你加入 openstack-
      core-docs 组。
       We’ll discuss on the openstack-docs-core mailing list and then
 invite you.




www.openstack.org                                                      24
如何找到某个项目需要做的文档工作列表?
                    How should I find doc work that needs to be
                    done on a particular project?


     您可以到 http://bugs.launchpad.net/openstack-manuals 寻找含有
     wishlist 字样的任务,或者任何其它的 bug ,都可以作为工作项。
     Refer to http://bugs.launchpad.net/openstack-manuals and look for
 Wishlist for tasks, or any doc bug can be picked up as a work item.

     Bug 是最值得一看的地方,但是我们也通过少量的蓝图来跟踪某个工作。
     We also track few blueprints which may need someone to work on,
 though doc bugs are probably the best first place to look




www.openstack.org                                                      25
谁会复审我对文档的修改?
                    Who should do reviews of my document
                    changes?


      Anne Gentle ,文档协调人,又或者任意 openstack-doc-core 的成员都可
      以帮助你来制定审查人。或者你可以把 bug 报告者的名字加到审查人列表中
      去。
      Anne Gentle, the doc coordinator, or anyone on the openstack-doc-
 core team can help you identify reviewers, or you can also check the doc
 bug and ask the reporter to review the changes by adding their name to
 the reviewers list.




www.openstack.org                                                      26
如何加入翻译工作小组?
                    How to join the translation team ?


     在 www.transifex.net 上注册一个账号,打开 openstack 手册翻译的页面,
     选择你熟悉的语言,然后点击右上角的“ join team” 。
     Register an account at www.transifex.com firstly, and then go to
 openstack-manuals translation page. After that, select your favorite
 language and click “join team” at the top right corner.

       你的加入请求需要被该语言的协调人批准。
       Your request will be approved by the language coordinator.




www.openstack.org                                                   27
如何获得最新的翻译文稿?
                    How to get the latest translation documents ?


       从 Git 代码库中检出最新的手册代码,从 Transifex 中检出最新的翻译结果,
       将翻译结果合并到文档中,生成新的 DocBook 。通过运行 Maven 命令,就
       可以生成最新的翻译后的手册了。
       Check out the latest resources from Git repository at first, and then
       check out the latest translation from Transifex. After that, merge
       the translation segment back to DocBook by running the Python
       script and generate PDF and HTML document by running Maven
       build.

       参考本文中的“示例:中文文档生成”
       Refer to “Sample: Chinese Document Generation”




www.openstack.org                                                          28
结束曲
                    Conclusion

        象对待代码一样管理文档,是 OpenStack 社区文档成功的关键。
        Managing document as code is key to the success of OpenStack
        documentation.

        OpenStack 翻译工作刚刚开始,还需要大家的大力支持和参与。
        The translation is just started. I will need the support and participation
        from all of you.

        欢迎大家加入到 OpenStack 文档工作中来。
        Your participation is warmly welcomed.

        有任何关于文档的问题,都可以联系 Anne Gentle 。
        For any problems about documentation, please contact with Anne Gentle.

        有任何关于翻译的问题,都可以联系我。
        For any problems about translation, please contact with me.




www.openstack.org                                                                    29
参考资料
                     Reference
       文档页面
       Documentation page
         http://docs.openstack.org

      文档设计蓝图
      Blueprints of documents
         https://blueprints.launchpad.net/ openstack-manuals

      文档 Bug 列表
      Bugs of documents
         http://bugs.launchpad.net/openstack-manuals

       Transifex 上的文档翻译主页面
      Main page for openstack-manuals translation in Transifex
         https://www.transifex.net/projects/p/openstack-manuals-i18n/

       文档翻译流程说明
      OpenStack Document Translation Guide
         https://gist.github.com/3037139

      中文手册地址(临时)
      Address of Chinese Openstack manuals (as temporary)
         http://1.openstackcn.sinaapp.com/?page_id=8
www.openstack.org

Contenu connexe

En vedette

NOTAM Sul/Sudeste - 12/abr/15
NOTAM Sul/Sudeste - 12/abr/15NOTAM Sul/Sudeste - 12/abr/15
NOTAM Sul/Sudeste - 12/abr/15Carlos Carvalho
 
Minimal pairs clothes
Minimal pairs   clothesMinimal pairs   clothes
Minimal pairs clothesLes Davy
 
Charles dickens power point pressentation
Charles dickens power point pressentationCharles dickens power point pressentation
Charles dickens power point pressentationlynnbeach86
 
Manifestação da República do Paraná contra Lula
Manifestação da República do Paraná contra LulaManifestação da República do Paraná contra Lula
Manifestação da República do Paraná contra LulaMiguel Rosario
 
the meaning of my life
the meaning of my lifethe meaning of my life
the meaning of my lifedonshe_26
 
2. κεφ.30 ο πλούτος της εκκλησιαστικής ποίησης
2.  κεφ.30  ο πλούτος της εκκλησιαστικής ποίησης2.  κεφ.30  ο πλούτος της εκκλησιαστικής ποίησης
2. κεφ.30 ο πλούτος της εκκλησιαστικής ποίησηςΠΕ 01 ΜΠΑΛΤΟΣ ΙΩΑΝΝΗΣ
 
Как региональному интернет-магазину работать по всей стране
Как региональному интернет-магазину работать по всей странеКак региональному интернет-магазину работать по всей стране
Как региональному интернет-магазину работать по всей странеTOCHKA
 
Blog8.3 656-680-695
Blog8.3 656-680-695Blog8.3 656-680-695
Blog8.3 656-680-695mepigxymayme
 
Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...
Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...
Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...Carlos Javier Di Salvo
 
A day in the life of learner with a smart phone
A day in the life of learner with a smart phoneA day in the life of learner with a smart phone
A day in the life of learner with a smart phoneNatalie Denmeade
 
Presentatie Park op Nijverdal
Presentatie Park op NijverdalPresentatie Park op Nijverdal
Presentatie Park op Nijverdalhuisj07
 
Kubryak 23-09-2013
Kubryak 23-09-2013Kubryak 23-09-2013
Kubryak 23-09-2013BIO-Z17
 
Kiwanis presentation 06-07-2011
Kiwanis presentation 06-07-2011Kiwanis presentation 06-07-2011
Kiwanis presentation 06-07-2011bhmiomaha
 

En vedette (20)

NOTAM Sul/Sudeste - 12/abr/15
NOTAM Sul/Sudeste - 12/abr/15NOTAM Sul/Sudeste - 12/abr/15
NOTAM Sul/Sudeste - 12/abr/15
 
Minimal pairs clothes
Minimal pairs   clothesMinimal pairs   clothes
Minimal pairs clothes
 
Charles dickens power point pressentation
Charles dickens power point pressentationCharles dickens power point pressentation
Charles dickens power point pressentation
 
Tabla de materiales y precios de colciencias (1)
Tabla de materiales y precios de colciencias (1)Tabla de materiales y precios de colciencias (1)
Tabla de materiales y precios de colciencias (1)
 
Manifestação da República do Paraná contra Lula
Manifestação da República do Paraná contra LulaManifestação da República do Paraná contra Lula
Manifestação da República do Paraná contra Lula
 
the meaning of my life
the meaning of my lifethe meaning of my life
the meaning of my life
 
2. κεφ.30 ο πλούτος της εκκλησιαστικής ποίησης
2.  κεφ.30  ο πλούτος της εκκλησιαστικής ποίησης2.  κεφ.30  ο πλούτος της εκκλησιαστικής ποίησης
2. κεφ.30 ο πλούτος της εκκλησιαστικής ποίησης
 
B a b 1 akuntansi
B a b 1 akuntansiB a b 1 akuntansi
B a b 1 akuntansi
 
Boosting Sales
Boosting SalesBoosting Sales
Boosting Sales
 
Как региональному интернет-магазину работать по всей стране
Как региональному интернет-магазину работать по всей странеКак региональному интернет-магазину работать по всей стране
Как региональному интернет-магазину работать по всей стране
 
Blog8.3 656-680-695
Blog8.3 656-680-695Blog8.3 656-680-695
Blog8.3 656-680-695
 
Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...
Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...
Conversamos sobre Grooming, Ciberbullying y otros temas a conocer para una na...
 
Hoteles
HotelesHoteles
Hoteles
 
A day in the life of learner with a smart phone
A day in the life of learner with a smart phoneA day in the life of learner with a smart phone
A day in the life of learner with a smart phone
 
Presentatie Park op Nijverdal
Presentatie Park op NijverdalPresentatie Park op Nijverdal
Presentatie Park op Nijverdal
 
PANHALA
PANHALAPANHALA
PANHALA
 
Kubryak 23-09-2013
Kubryak 23-09-2013Kubryak 23-09-2013
Kubryak 23-09-2013
 
What is your story
What is your storyWhat is your story
What is your story
 
Chapter 12
Chapter 12Chapter 12
Chapter 12
 
Kiwanis presentation 06-07-2011
Kiwanis presentation 06-07-2011Kiwanis presentation 06-07-2011
Kiwanis presentation 06-07-2011
 

Similaire à Openstack document for apac v3

基于 lucene 的站内搜索
基于 lucene 的站内搜索基于 lucene 的站内搜索
基于 lucene 的站内搜索fulin tang
 
Cloudstack dev/user sharing
Cloudstack dev/user sharingCloudstack dev/user sharing
Cloudstack dev/user sharinggavin_lee
 
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略maclean liu
 
2 Python开发工具链
2 Python开发工具链2 Python开发工具链
2 Python开发工具链March Liu
 
Software Engineer Talk
Software Engineer TalkSoftware Engineer Talk
Software Engineer TalkLarry Cai
 
基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Betazwxgo
 
Subversion
SubversionSubversion
Subversioni7Xh
 
Artifacts management with CI and CD
Artifacts management with CI and CDArtifacts management with CI and CD
Artifacts management with CI and CDChen-Tien Tsai
 
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡guest2d0fe3
 
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡Cary Yang
 
Langchain and Azure ML and Open AI
Langchain and Azure ML and Open AILangchain and Azure ML and Open AI
Langchain and Azure ML and Open AIKo Ko
 
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...Edward Kuo
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定Shengyou Fan
 
2015中国软件技术大会-开放云介绍
2015中国软件技术大会-开放云介绍2015中国软件技术大会-开放云介绍
2015中国软件技术大会-开放云介绍Li Jiansheng
 
基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Betazhu02
 
基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Betafulin tang
 
Kubernetes project update and how to contribute
Kubernetes project update and how to contributeKubernetes project update and how to contribute
Kubernetes project update and how to contributeinwin stack
 
使用Nginx轻松实现开源负载均衡——对外版
使用Nginx轻松实现开源负载均衡——对外版使用Nginx轻松实现开源负载均衡——对外版
使用Nginx轻松实现开源负载均衡——对外版pigso
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰Scourgen Hong
 

Similaire à Openstack document for apac v3 (20)

基于 lucene 的站内搜索
基于 lucene 的站内搜索基于 lucene 的站内搜索
基于 lucene 的站内搜索
 
Cloudstack dev/user sharing
Cloudstack dev/user sharingCloudstack dev/user sharing
Cloudstack dev/user sharing
 
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
【诗檀软件 郭兆伟-技术报告】跨国企业级Oracle数据库备份策略
 
2 Python开发工具链
2 Python开发工具链2 Python开发工具链
2 Python开发工具链
 
Xpp
XppXpp
Xpp
 
Software Engineer Talk
Software Engineer TalkSoftware Engineer Talk
Software Engineer Talk
 
基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta
 
Subversion
SubversionSubversion
Subversion
 
Artifacts management with CI and CD
Artifacts management with CI and CDArtifacts management with CI and CD
Artifacts management with CI and CD
 
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
 
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
 
Langchain and Azure ML and Open AI
Langchain and Azure ML and Open AILangchain and Azure ML and Open AI
Langchain and Azure ML and Open AI
 
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
 
2015中国软件技术大会-开放云介绍
2015中国软件技术大会-开放云介绍2015中国软件技术大会-开放云介绍
2015中国软件技术大会-开放云介绍
 
基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta
 
基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta基于Lucene的站内搜索 Beta
基于Lucene的站内搜索 Beta
 
Kubernetes project update and how to contribute
Kubernetes project update and how to contributeKubernetes project update and how to contribute
Kubernetes project update and how to contribute
 
使用Nginx轻松实现开源负载均衡——对外版
使用Nginx轻松实现开源负载均衡——对外版使用Nginx轻松实现开源负载均衡——对外版
使用Nginx轻松实现开源负载均衡——对外版
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
 

Plus de OpenCity Community

Plus de OpenCity Community (20)

开源讲义.pdf
开源讲义.pdf开源讲义.pdf
开源讲义.pdf
 
物联网操作系统漫谈-GIAC大会.pdf
物联网操作系统漫谈-GIAC大会.pdf物联网操作系统漫谈-GIAC大会.pdf
物联网操作系统漫谈-GIAC大会.pdf
 
2017开源年会-企业开源那些事儿-更新.pdf
2017开源年会-企业开源那些事儿-更新.pdf2017开源年会-企业开源那些事儿-更新.pdf
2017开源年会-企业开源那些事儿-更新.pdf
 
社会化研发
社会化研发社会化研发
社会化研发
 
Containers & CaaS
Containers & CaaSContainers & CaaS
Containers & CaaS
 
OaaS:Open as a Strategy
OaaS:Open as a StrategyOaaS:Open as a Strategy
OaaS:Open as a Strategy
 
Hello openstack 2014
Hello openstack 2014Hello openstack 2014
Hello openstack 2014
 
Docker openstack-2014
Docker openstack-2014Docker openstack-2014
Docker openstack-2014
 
Learn OpenStack from trystack.cn
Learn OpenStack from trystack.cnLearn OpenStack from trystack.cn
Learn OpenStack from trystack.cn
 
OpenStack系列公开课2 -20130508
OpenStack系列公开课2 -20130508OpenStack系列公开课2 -20130508
OpenStack系列公开课2 -20130508
 
OpenStack ecosystem
OpenStack ecosystemOpenStack ecosystem
OpenStack ecosystem
 
How to master OpenStack in 2 hours
How to master OpenStack in 2 hoursHow to master OpenStack in 2 hours
How to master OpenStack in 2 hours
 
Learn OpenStack from trystack.cn ——Folsom in practice
Learn OpenStack from trystack.cn  ——Folsom in practiceLearn OpenStack from trystack.cn  ——Folsom in practice
Learn OpenStack from trystack.cn ——Folsom in practice
 
Quantum Networks
Quantum NetworksQuantum Networks
Quantum Networks
 
云计算思考
云计算思考云计算思考
云计算思考
 
Openstorage Openstack
Openstorage OpenstackOpenstorage Openstack
Openstorage Openstack
 
Openstack的研究与实践
Openstack的研究与实践Openstack的研究与实践
Openstack的研究与实践
 
Open Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex YangOpen Stack Cheng Du Swift Alex Yang
Open Stack Cheng Du Swift Alex Yang
 
Nova与虚拟机管理
Nova与虚拟机管理Nova与虚拟机管理
Nova与虚拟机管理
 
Look Into Libvirt Osier Yang
Look Into Libvirt Osier YangLook Into Libvirt Osier Yang
Look Into Libvirt Osier Yang
 

Openstack document for apac v3

  • 1. 2012 OpenStack APAC Conference 11 Aug 2012 OpenStack 文档及其翻译管理 OpenStack Documentation and Translation Management 郭迎春 Anne Gentle OpenStack 文档组 OpenStack 文档组 guoyingc@cn.ibm.com anne@openstack.org © 2009 IBM Corporation
  • 2. 议程 Agenda OpenStack 文档现状 Status of OpenStack Document 翻译管理及流程 Translation Management & Process 翻译流程示例 Samples of Translation Process 常见问题解答 Questions with Answers www.openstack.org 2
  • 3. 议程 Agenda OpenStack 文档现状 Status of OpenStack Document 翻译管理及流程 Translation Management & Process 翻译流程示例 Samples of Translation Process 常见问题解答 Questions with Answers www.openstack.org 3
  • 4. 文档页面 Web Page for Documentation http://docs.openstack.org www.openstack.org
  • 5. 社区文档的挑战 Challenges of Community Documentation 代码量巨大 增长很快 Large amount of code Grow quickly 经常变化 松散管理 Change frequently Loose coupling 如同管理代码那样管理社区文档 ! Manage document as code ! www.openstack.org 5
  • 6. 文档流程 : 设计 Document Process: Design 设计峰会上的讨论和规划 Blueprints and discussion at Design Summit 蓝图 Blueprints 现有的蓝图可以在 https://blueprints.launchpad.net/openstack-manuals 上找到 Current blueprints found at https://blueprints.launchpad.net/ openstack-manuals www.openstack.org 6
  • 7. 文档流程:开发 Document Process : Development 管理员指南和 API 指南存储于 Github 代码库 Github repositories store admin guides and API guides 单元测试集成在 Jenkins 中 Unit tests with Jenkins 补丁包的审核通过 Gerrit 进行 Patch review with Gerrit www.openstack.org 7
  • 8. 文档流程: Bug 跟踪 Document Process : Bug tracking 通过 Launchpad 管理 Bug Manage bugs through Launchpad Bug logging Bug 登记 Bug triaging Bug 分类 Bug assigning Bug 指派 www.openstack.org 8
  • 9. 文档流程:发布 Document Process : Publishing 通过 Jenkins 上的任务进行自动发布 Automatically publish with Jenkins www.openstack.org 9
  • 10. 文档小组成员 Doc Team Composition 所有的 OpenStack 社区成员 All OpenStack community members OpenStack 文档小组的成员只占其中的百分之一 One percenter = OpenStack-doc-core 小组成员主要来自下列公司: Badge Wearers AT&T IBM Nebula Nicira Nimbis Services Nuage Rackspace RedHat www.openstack.org 10
  • 11. 统计 Statics api.openstack.org 中有 20 多个计算扩展 API 的文档描述。 20+ Compute Extensions documented at api.openstack.org 66% 的网站访问者会选择继续浏览而不是离开 66% Site visitors stay instead of leaving 一个月进行 100 的文档补丁包的审查 100 Doc patches and reviews a month 记录了 726 个配置选项。其中, 467 个为 nova 配置选项, 259 个为 swift 配置选项 726 Configuration options: 467 for nova.conf, 259 for swift conf files docs.openstack.org 一周的唯一访问量为 10,000 10,000 Unique visitors a week at docs.openstack.org www.openstack.org 11
  • 12. 议程 Agenda OpenStack 文档现状 Status of OpenStack Document 翻译管理及流程 Translation Management & Process 翻译流程示例 Samples of Translation Process 常见问题解答 Questions with Answers www.openstack.org 12
  • 13. 文档翻译的挑战 Challenges of Document Translation 代码量巨大 增长很快 Large amount of code Grow quickly 经常变化 松散管理 Change frequently Loose coupling 如同管理代码中字符串翻译那样管理社区文档翻译 ! Manage document translation as code string translation! www.openstack.org 13
  • 14. 文档翻译流程:切分 Translation Process : Slicing 通过一个 Python 脚本,将 DocBook 切分为字符串片断,整理为一个 PO 模板。 Slice DocBook into string segment with a Python script, and generate a PO template 。 ./tools/generatepot openstack-compute-admin www.openstack.org 14
  • 15. 文档翻译流程:翻译 Translation Process : Translating 借助 Transifex 进行翻译管理 Manage translation by Transifex 翻译项目和资源 Translation project & resources 翻译内存 Translation memory 术语 Glossary www.openstack.org 15
  • 16. 文档翻译流程:合并 Translation Process : Merging 通过一个 Python 脚本,将翻译后的字符串合并到 DocBook 中。 Merge the translated string into Docbook with a python script. ./tools/generatedocbook -l zh_CN -b openstack-compute-admin www.openstack.org 16
  • 17. 文档翻译流程:上传与下载 Translation Process : Uploading & Downloading 借助 Transifex 的客户端命令,完成翻译资源和翻译结果的上传下载。 Upload the translation resources and download the translated results by commands of Transifex Client tx set --auto-local -r openstack-manuals-i18n.openstack-api-programming 'doc/src/docbkx/openstack-api-programming/locale/<lang>.po' --source-lang en --source-file doc/src/docbkx/openstack-api- programming/locale/openstack-api-programming.pot –execute tx push -s -r openstack-manuals-i18n.api-quick-start tx pull -f -l zh_CN -r openstack-manuals-i18n.api-quick-start www.openstack.org 17
  • 18. 文档翻译流程:变更管理 Translation Process : Change Management 借助 Transifex 客户端命令,将本地翻译资源与服务器上的资源进行同步。 Synchronize the local translation resources with the resources in the Transifex server by Transifex Client commands. 当输入“ tx push” 命令将本地资源更新到服务器端时,会自动地检查本地资源与服务器资源的 不同,并且进行合并。 Command “tx push” will automatically check the differences and merge the local copy and remote copy. 新字符串会被添加。 New strings will be added. 更新的字符串会被当作新字符串被添加。 Modified strings will be considered new ones and added as well. 在新的源文件中不存在的字符串会被删除(包括那些被更新的)。 Strings which do not exist in the new source file (including ones which have been modified) will be removed from the database. 删除的字符串会被保存在翻译内存中,供以后参考。 The removed translations are kept in the Translation Memory of your project. ./tools/generatedocbook -l zh_CN -b openstack-manuals-i18n.api-quick-start tx push -s -r openstack-manuals-i18n.api-quick-start tx pull -r openstack-manuals-i18n.api-quick-start www.openstack.org 18
  • 19. 统计 Statics OpenStack 手册的 7 本书已经上传到 Transifex 上,包含 5550 个待翻译项。 7 books of OpenStack Manuals have been uploaded to Transifex, including 5550 items for translation. 6 个翻译小组在 Transifex 上已建立,负责如下 6 种语言的翻译: 6 translation teams created in Transifex for 6 languages translation: 中文,西班牙语,法语,日语,韩语,土耳其语 Chinese, Spanish, French, Japanese, Korean, Turkish (Turkey) 3 种语言的翻译工作已经启动 3 languages translation started 中文 – 4% ,西班牙 – 4% ,法语 - 1% Chinese – 4 %, Spanish – 4 %, French – 1 % 已有 9 人加入中文翻译小组 9 translators joined Chinese translation team 一本中文手册完成翻译 1 manual document finished Chinese translation OpenStack API 快速入门 OpenStack API Quick Start www.openstack.org 19
  • 20. 议程 Agenda OpenStack 文档现状 Status of OpenStack Document 翻译管理及流程 Translation Management & Process 翻译流程示例 Samples of Translation Process 常见问题解答 Questions with Answers www.openstack.org 20
  • 21. 示例:中文文档生成 Sample : Chinese Document Generation 步骤一:从 Git 代码仓库中检出所有的 OpenStack 手册的源码 Step 1: Check out the sources from Git repository git clone https://github.com/daisy-ycguo/openstack-manuals-i18n.git 步骤二:从 Transifex 中检出最新的翻译结果 Step 2: Check out the latest translation from Transifex tx pull -f -l zh_CN -r openstack-manuals-i18n.api-quick-start www.openstack.org 21
  • 22. 示例:中文文档生成 Sample : Chinese Document Generation 步骤三:将翻译结果合并到 DocBook 中,生成中文的 DocBook Step 3: Merge the translation segment back to DocBook ./tools/generatedocbook -l zh_CN -b api-quick-start 步骤四:根据中文 DocBook ,生成中文 PDF 和 HTML 文档 Step 4: Generate PDF and HTML document mvn generate-sources www.openstack.org
  • 23. 议程 Agenda OpenStack 文档现状 Status of OpenStack Document 翻译管理及流程 Translation Management & Process 翻译流程示例 Samples of Translation Process 常见问题解答 Questions with Answers www.openstack.org 23
  • 24. 如何加入 openstack-core-docs 组 How can I get on the openstack-core-docs team? 大量审阅 http://review.openstack.org 上的 openstack-manuals 项目 Do lots of reviews at http://review.openstack.org for the openstack- manuals project. 参与 Bug 的分类和修正工作 http://bugs.launchpad.net/openstack- manuals Triage bugs and log doc bugs at http://bugs.launchpad.net/openstack-manuals. 我们会在邮件列表 openstack-docs-core 通过讨论,邀请你加入 openstack- core-docs 组。 We’ll discuss on the openstack-docs-core mailing list and then invite you. www.openstack.org 24
  • 25. 如何找到某个项目需要做的文档工作列表? How should I find doc work that needs to be done on a particular project? 您可以到 http://bugs.launchpad.net/openstack-manuals 寻找含有 wishlist 字样的任务,或者任何其它的 bug ,都可以作为工作项。 Refer to http://bugs.launchpad.net/openstack-manuals and look for Wishlist for tasks, or any doc bug can be picked up as a work item. Bug 是最值得一看的地方,但是我们也通过少量的蓝图来跟踪某个工作。 We also track few blueprints which may need someone to work on, though doc bugs are probably the best first place to look www.openstack.org 25
  • 26. 谁会复审我对文档的修改? Who should do reviews of my document changes? Anne Gentle ,文档协调人,又或者任意 openstack-doc-core 的成员都可 以帮助你来制定审查人。或者你可以把 bug 报告者的名字加到审查人列表中 去。 Anne Gentle, the doc coordinator, or anyone on the openstack-doc- core team can help you identify reviewers, or you can also check the doc bug and ask the reporter to review the changes by adding their name to the reviewers list. www.openstack.org 26
  • 27. 如何加入翻译工作小组? How to join the translation team ? 在 www.transifex.net 上注册一个账号,打开 openstack 手册翻译的页面, 选择你熟悉的语言,然后点击右上角的“ join team” 。 Register an account at www.transifex.com firstly, and then go to openstack-manuals translation page. After that, select your favorite language and click “join team” at the top right corner. 你的加入请求需要被该语言的协调人批准。 Your request will be approved by the language coordinator. www.openstack.org 27
  • 28. 如何获得最新的翻译文稿? How to get the latest translation documents ? 从 Git 代码库中检出最新的手册代码,从 Transifex 中检出最新的翻译结果, 将翻译结果合并到文档中,生成新的 DocBook 。通过运行 Maven 命令,就 可以生成最新的翻译后的手册了。 Check out the latest resources from Git repository at first, and then check out the latest translation from Transifex. After that, merge the translation segment back to DocBook by running the Python script and generate PDF and HTML document by running Maven build. 参考本文中的“示例:中文文档生成” Refer to “Sample: Chinese Document Generation” www.openstack.org 28
  • 29. 结束曲 Conclusion 象对待代码一样管理文档,是 OpenStack 社区文档成功的关键。 Managing document as code is key to the success of OpenStack documentation. OpenStack 翻译工作刚刚开始,还需要大家的大力支持和参与。 The translation is just started. I will need the support and participation from all of you. 欢迎大家加入到 OpenStack 文档工作中来。 Your participation is warmly welcomed. 有任何关于文档的问题,都可以联系 Anne Gentle 。 For any problems about documentation, please contact with Anne Gentle. 有任何关于翻译的问题,都可以联系我。 For any problems about translation, please contact with me. www.openstack.org 29
  • 30. 参考资料 Reference 文档页面 Documentation page http://docs.openstack.org 文档设计蓝图 Blueprints of documents https://blueprints.launchpad.net/ openstack-manuals 文档 Bug 列表 Bugs of documents http://bugs.launchpad.net/openstack-manuals Transifex 上的文档翻译主页面 Main page for openstack-manuals translation in Transifex https://www.transifex.net/projects/p/openstack-manuals-i18n/ 文档翻译流程说明 OpenStack Document Translation Guide https://gist.github.com/3037139 中文手册地址(临时) Address of Chinese Openstack manuals (as temporary) http://1.openstackcn.sinaapp.com/?page_id=8 www.openstack.org