tokyo upstream training 후기 @openstack 한국 커뮤니티 2015년 하반기 스터디
TRANSCRIPT
OpenStack Korea Community
OpenStack Upstream Training 참여후기
(before Tokyo Summit)
Nov 17, 2015
발표자: Ian Y. Choi
- 회사: 휴레이포지티브
OpenStack Korea Community
Index
Part 1: Upstream Training에 대해
Part 2: Upstream Training @Tokyo
Part 3: Self-assignment @Launchpad + Gerrit review
Part 4: My impression & Conclusion
OpenStack Korea Community
Upstream Training: 무슨 행사일까? – (1)
• Upstream Training 위키 페이지• https://wiki.openstack.org/wiki/OpenStack_Upstream_Training• 번역: https://wiki.openstack.org/wiki/OpenStack_Upstream_Training/ko
OpenStack Korea Community
Upstream Training: 무슨 행사일까? – (2)
• OpenStack 개발자를 위해 OpenStack 프로젝트 technical tool 및social interaction이 어떻게 이루어지는지를 이틀 동안 학습
Social norms & technical conventions
• 실제 OpenStack 프로젝트 내에서 bug (문서 오류도 okay)를 선택하여 OpenStack upstream 소스 저장소에 반영하는 것을 목표로 함
• 보통 OpenStack Summit 행사 이전에 열린다고 함• Day 1: 전체적인 안내 & 버그 선택을 위한 가이드 & git & devstack 설치 등• Day 2: 실제 버그 해결 시간 & LEGO 블록을 통한 OpenStack Agile 방법론
수행
• Upstream Training 공식 자료• http://docs.openstack.org/upstream-training/
OpenStack Korea Community
Upstream Training 사용 자료 & 도구 - (1)
• http://docs.openstack.org/upstream-training/
OpenStack Korea Community
Upstream Training 사용 자료 & 도구 - (2)
• Etherpad• 메모를 빠르게 실시간으로 공유• 참고: OpenStack Summit – working session 및 Design Summit에서
공유 & 토론 내용 실시간 정리, OpenStack 관련 메모 공유 (IRC 미팅 등), …
OpenStack Korea Community
Upstream Training 사용 자료 & 도구 - (3)
• Linux & Tools on Laptop• 가상 머신: Ubuntu 14.04
+ >=4GB RAM 권장• 사용 & 접속했던 도구 & 사이트
• git & git-review• http://lanuchpad.net
• 버그 등록 등을 위해 필요
• http://www.openstack.org/• Foundation Member 가입
• IRC• …
OpenStack Korea Community
Upstream Training 사용 자료 & 도구 - (4)
• OpenStack Sandbox 저장소• https://review.openstack.org/
#/admin/projects/openstack-dev/sandbox
• Git 커밋, 패치, 리뷰 등 연습 공간
OpenStack Korea Community
@Tokyo: Day 1
• Topics• How OpenStack is made• Workflow of an OpenStack
contribution and tools
OpenStack Korea Community
@Tokyo: Day 2
• Topics• The Contribution Process• Agile for Contributors• Contribution Simulation• (Contribution Planning)
Photo: taken by Lucas Kim, GIST
OpenStack Korea Community
나의 버그 선택
• 특정 Project 내 프로그래밍 소스로부터의 버그 선택은 다소 어려웠음• 문서 수정에 대한 low-hanging-fruit 버그 목록을 mentor에서 제안
• 그 중 선택한 버그• https://launchpad.net/openstack-manuals/+bug/1492253
OpenStack Korea Community
버그 상태 및 이력 살펴보기
• Review가 제안상태가 abandoned 으로 변경assignee: nobody로 변경
• 버그 수정을 위해 Upstream Training 기간 중 본인이 assign 선택
OpenStack Korea Community
이전 Review 상태 파악하기 – (3)
• 1st ‘-1’ reviewer• 버그는 XML 형식 오류인데, 패치는 XML이 아닌 RST..
OpenStack Korea Community
이전 Review 상태 파악하기 – (4)
• 2nd ‘-1’ reviewer• Master 가 아닌 “stable/kilo”에 대한 패치 필요..
• 기타: “Cherry pick” 불가능
OpenStack Korea Community
Git로 저장소 데이터 가져오기
• (Launchpad & OpenStack Foundation 가입, ICLA 동의 필요)• 저장소로부터 최신 데이터를 fetch
• “stable/kilo”에 대한 branch로부터 작업하기 위해 checkout
OpenStack Korea Community
버그 수정하기
• XML 파일 내용을 수정해야 함• Glossary에 “LVM”이 아닌 “Logical Volume Manager (LVM)” 이에 맞게 수정!
OpenStack Korea Community
수정된 내용 정상 동작 확인
• XML 문서 형식: maven 명령어를 사용한 build
• 로컬에 생성된 HTML 파일 내용을 웹 브라우저에서 열어 확인Okay
OpenStack Korea Community
버그 커밋하기
• Git commit 메시지 작성• 첫 줄은 요약, 이후 상세 내용, 마지막에 버그와 관련된 태그 등 덧붙임
• 주의: “git review –s”를 먼저 실행하고 commit을 해야 함
OpenStack Korea Community
생성된 Gerrit Review 확인
• 패치가 잘 등록되었음을 확인: https://review.openstack.org/#/c/239314
OpenStack Korea Community
Upstream Training Mentor’s Comment
• “LVM” 텍스트를 유지하고, ‘baseform’ 태그 속성을사용하여 glossary를 reference하도록 수정 제안 nice idea!
OpenStack Korea Community
수정 후 Commit 수정하기
• 수정 후 다시 HTML build하여 확인 완료• “git commit --amend” 명령어를 사용 후 다시 “git review” 실행하여
수정된 내용 업로드
OpenStack Korea Community
Patch set 2의 등록 (Gerrit Review)
• 수정된 commit 내용은 “Patch Set 2”로 관리됨 (이전: “Patch Set 1”)
OpenStack Korea Community
(시간이 지나고) 메인 홈페이지에도 반영 완료!
• http://docs.openstack.org/kilo/install-guide/install/apt/content/cinder-install-storage-node.html
OpenStack Korea Community
My impression
• OpenStack social norms & technical conventions!• OpenStack 오픈 소스에 좀 더 가까워진 느낌• Playing with LEGO: Agile with Sprint
• 알게 된 많은 사람들• Instructors, GIST 4명, 일본 Active guys, 태국 친구들 등
1. With GIST 4 guys: Junsik Shin, Jungsu Han, Jeongju Bae and Namgon Lucas Kim2. With Takashi Torii, NEC Japan & OpenStack Japan User Group3. With Esteban Arias, a PTL during Tokyo upstream training LEGO play time
OpenStack Korea Community
Conclusion – (1): 이전에 만들었던 슬라이드
소스 기여
오픈소스 사용도 좋지만, 직접적인 코드 추가/수정을 통한 기여는 어떨까요?
버그 리포팅 / 번역
오픈소스를 사용하면서 불편한 점이 있으면 버그 리포트! 번역으로도 기여 가능합니다.
커뮤니티 활동 참가
커뮤니티를 통해 많은 사람들과 이야기하면서, 오픈소스의 경험을 공유하셨으면 합니다
OpenStack Korea Community
Conclusion – (2)
• 추후, 국내에서도 Upstream Training이 개최되기를 희망!http://dachary.org/?p=3240 (Sep 2014,
11월 Paris Summit 준비)http://www.openstack.org/blog/2014/11/openstack-upstream-training-in-japan/(2014년 10월 10-11일, Paris Summit 이전에 개최됨 from 일본 유저 그룹)
http://superuser.openstack.org/articles/big-in-japan-openstack-days-in-tokyo-double-in-size2015년 2월, OpenStack Days Japan에서
http://superuser.openstack.org/articles/jumpstart-your-openstack-know-how-with-upstream-training@Vancouver