SlideShare a Scribd company logo
1 of 32
Download to read offline
2016년 12월 16일, ONOS/CORD 워킹 그룹 2차 세미나
최영락, 오픈스택 한국 커뮤니티 운영진
2
목차
• Part 1: 오픈 소스와 Upstream 개발 개요
• Part 2: 주요 Upstream 개발 워크플로우
• Part 3: Sandbox를 활용한 워크플로우 살펴보기 (with Demo)
• Part 4: 결론
오픈 소스와 Upstream 개발 개요
4
Upstream 개발이 지니는 의미가 무엇일까요?
http://docs.openstack.org/ko_KR/upstream-training/
5
참고: OpenStack에서 바라보는 Openness
• Open Source
• 재사용 및 확장 가능한 진정한 의미에서의 오픈 소스를 목표로 함
• No “Enterprise Edition”
• Open Design
• 요구 사항 수집 및 로드맵 승인 등 모든 절차를 대중에게 공개
• 개방형 디자인의 의미보다는 모든 설계 과정을 open하겠다는
의미에 가까움
• Open Development
• 모든 소스 코드 공개를 개방된 코드 리뷰 과정을 거치며, 모든
과정은 투명하게 문서화됨
• Open Community
• 커뮤니티를 통해 설계 과정을 결정
• 모든 프로젝트 미팅은 공개 IRC 채널을 통해 열리며 기록
[1] 서주영, 오픈 소스를 통해 개발 근육 강화하기, GDG DevFest Seoul 2016
(커뮤니티를 통해 함께)
6
오픈 소스 시작: from small to larger
• Github 하나로 시작할 수 있습니다!
• 소스 관리도 되고 (git repository)
7
오픈 소스 시작: from small to larger
• Github 하나로 시작할 수 있습니다!
• 다른 사용자가 소스를 가져다가 작업할 수도 있고 (fork & pull request)
8
오픈 소스 시작: from small to larger
• Github 하나로 시작할 수 있습니다!
• 다른 사용자가 작업한 소스를 리뷰 및 코멘트를 작성 가능하고 (pull request review)
9
오픈 소스 시작: from small to larger
• Github 하나로 시작할 수 있습니다!
• 리뷰를 완료하면 병합 또한 가능하며 (merge and/or rebase)
10
오픈 소스 시작: from small to larger
• Github 하나로 시작할 수 있습니다!
• 버그 등이 있을 때 사용자 피드백을 받을 수도 있으며 (issues)
11
오픈 소스 시작: from small to larger
• Github 하나로 시작할 수 있습니다!
• 문서화 등을 위한 위키 또한 지원합니다 (wiki)
12
오픈 소스 규모가 커지면…
• 코드 리뷰의 중요성: e.g.) Gerrit
• Case example: https://review.openstack.org/#/c/396943/
13
오픈 소스 규모가 커지면…
• 이슈 및 기능 추적: e.g.) Launchpad, Jira
• Case example 1: https://bugs.launchpad.net/pbr/+bug/1379998
14
오픈 소스 규모가 커지면…
• 이슈 및 기능 추적: e.g.) Launchpad, Jira
• Case example 2: Jira 사용 (예시)
15
오픈 소스 규모가 커지면…
• 자동 빌드: Jenkins
• Case example: https://review.openstack.org/#/c/410341/
16
오픈 소스 규모가 커지면…
• 통합 인증 체계
• Case example 1: openstackid (https://openstackid.org/accounts/user/profile)
• Case example 2: ONOS crowd (https://crowd.onlab.us/openidserver/)
주요 Upstream 개발 워크플로우
18
Github 기반 워크플로우
19
OpenStack에서의 워크플로우
http://docs.openstack.org/infra/manual/developers.html
20
OpenStack에서의 워크플로우
Copyright by koain (김영우), OpenStack Korea Community – 업스트림 컨트리뷰션 스터디
Sandbox를 활용한 워크플로우
살펴보기
22
Sandbox 저장소 공간
• OpenStack Sandbox 저장소
• https://review.openstack.org/#/admin/
projects/openstack-dev/sandbox
• Git 커밋, 패치, 리뷰 등 연습 공간
23
OpenStack: Sandbox 저장소
• OpenStack은 학습 및 테스트 목적을 위해 sandbox 저장소를 보유하고
있습니다
• OpenStack 학습을 시작하기 위한 훌륭한 저장소입니다
• https://git.openstack.org/cgit/openstack-dev/sandbox
24
Sandbox Launchpad
• openstack-dev/sandbox 저장소와 관련이 있는 보고된 버그 및 이슈를 추석 및
관리
• https://launchpad.net/openstack-dev-sandbox
25
Gerrit을 활용한 워크플로우 확인
• Gerrit
• GitHub에서의 pull
request와 비슷
• 여러 사람에 의한
code review 가능
26
Gerrit 리뷰 과정 in OpenStack
• 점수 부여
• -2: 받아들일 수 없는 수정
• -1: 수정 필요한 사항
• 0 : 중립 또는 자세한
comment 작성시
• +1: 리뷰 결과 괜찮음
• +2: 해당 프로젝트의 핵심
개발자가 괜찮음을 표현
• 일반적인 코드 병합
• 2명의 핵심 개발자가 각각
+2를 주었을 때 병함됨
• Workflow를 +1로 주었을
때 최종 코드 병합 이루어짐
27
코드 병합 (Merged) in OpenStack
• 업로드한 코드는 patch set
단위로 관리됨
• 모든 업로드 코드는
Jenkins에 의해 업로드한
코드에 대해 자동 점검 수행
• 일반적으로 해당 프로젝트 내
+2를 2번 이상 받았을 때
Workflow +1를 주면 해당
코드에 대한 병합이 이루어짐
28
Sandbox 저장소를 활용한 데모
• 참고: http://docs.openstack.org/ko_KR/upstream-
training/workflow-using-sandbox.html
결론
30
OpenStack with Open Ecosystem
• OpenStack과 업스트림 컨트리뷰션
• 변화하는 IT (예: Docker 등 컨테이너) 및 문제 해결을 좋아하는 컨트리뷰터들이 주축이
되어 활동
• 기술 위원회의 모든 투표 과정을 공개할 만큼 Openness를 실천하고 있음
• 소스 코드 개발뿐만 아니라, 문서화, 번역 등도 컨트리뷰션에 간주함
• ONOS에서의 업스트림 컨트리뷰션
• Jira를 기반으로 프로젝트 버전 및 관련된 기능 개발, 이슈를 통합적으로 관리
• 업스트림 컨트리뷰션을 위해서는 해당 분야 지식 뿐만 아니라 Git, Jira, Gerrit 등 오픈 소스
기반 도구에 익숙해질 필요가 있음
31
참고: OpenStack 번역 업스트림 컨트리뷰션
• 오픈 소스 번역 플랫폼인 Zanata를 사용하여 번역에 컨트리뷰션
Finished!

More Related Content

What's hot

2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개Ian Choi
 
오픈스택 커뮤니티 소개 및 기술 동향
오픈스택 커뮤니티 소개 및 기술 동향오픈스택 커뮤니티 소개 및 기술 동향
오픈스택 커뮤니티 소개 및 기술 동향Nalee Jang
 
OpenStack DevStack Install - 1부 (All-in-one)
OpenStack DevStack Install - 1부 (All-in-one)OpenStack DevStack Install - 1부 (All-in-one)
OpenStack DevStack Install - 1부 (All-in-one)Ian Choi
 
[OpenStack Day in Korea] Introduction to open stack
[OpenStack Day in Korea] Introduction to open stack[OpenStack Day in Korea] Introduction to open stack
[OpenStack Day in Korea] Introduction to open stackNalee Jang
 
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션Ian Choi
 
OpenStack 2018 Vancouver Summit 후기
OpenStack 2018 Vancouver Summit 후기OpenStack 2018 Vancouver Summit 후기
OpenStack 2018 Vancouver Summit 후기Ian Choi
 
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기OpenStack Korea Community
 
[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기
[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기
[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기OpenStack Korea Community
 
Open technet openstack
Open technet openstackOpen technet openstack
Open technet openstackNalee Jang
 
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력Ian Choi
 
OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack DevStack Install - 2부 (Multi-nodes)OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack DevStack Install - 2부 (Multi-nodes)Ian Choi
 
Kcd open stack
Kcd open stackKcd open stack
Kcd open stackNalee Jang
 
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티OpenStack Korea Community
 
오픈스택커뮤니티와기술동향
오픈스택커뮤니티와기술동향오픈스택커뮤니티와기술동향
오픈스택커뮤니티와기술동향Nalee Jang
 
OpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
OpenStack 개요 및 활용 사례 @ Community Open Camp with MicrosoftOpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
OpenStack 개요 및 활용 사례 @ Community Open Camp with MicrosoftIan Choi
 
OpenSource! OpenStack!
OpenSource! OpenStack!OpenSource! OpenStack!
OpenSource! OpenStack!Nalee Jang
 
Red hat and after 1 year
Red hat and after 1 yearRed hat and after 1 year
Red hat and after 1 yearNalee Jang
 
Openstack에 컨트리뷰션 해보기
Openstack에 컨트리뷰션 해보기Openstack에 컨트리뷰션 해보기
Openstack에 컨트리뷰션 해보기영우 김
 
[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개
[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개
[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개OpenStack Korea Community
 

What's hot (20)

2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
 
OpenStack 커뮤니티 상반기 스터디
OpenStack 커뮤니티 상반기 스터디 OpenStack 커뮤니티 상반기 스터디
OpenStack 커뮤니티 상반기 스터디
 
오픈스택 커뮤니티 소개 및 기술 동향
오픈스택 커뮤니티 소개 및 기술 동향오픈스택 커뮤니티 소개 및 기술 동향
오픈스택 커뮤니티 소개 및 기술 동향
 
OpenStack DevStack Install - 1부 (All-in-one)
OpenStack DevStack Install - 1부 (All-in-one)OpenStack DevStack Install - 1부 (All-in-one)
OpenStack DevStack Install - 1부 (All-in-one)
 
[OpenStack Day in Korea] Introduction to open stack
[OpenStack Day in Korea] Introduction to open stack[OpenStack Day in Korea] Introduction to open stack
[OpenStack Day in Korea] Introduction to open stack
 
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
 
OpenStack 2018 Vancouver Summit 후기
OpenStack 2018 Vancouver Summit 후기OpenStack 2018 Vancouver Summit 후기
OpenStack 2018 Vancouver Summit 후기
 
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
 
[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기
[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기
[12월 번역 Meetup] 나의 오픈스택 번역 contributing 삽질 경험기
 
Open technet openstack
Open technet openstackOpen technet openstack
Open technet openstack
 
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
 
OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack DevStack Install - 2부 (Multi-nodes)OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack DevStack Install - 2부 (Multi-nodes)
 
Kcd open stack
Kcd open stackKcd open stack
Kcd open stack
 
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
 
오픈스택커뮤니티와기술동향
오픈스택커뮤니티와기술동향오픈스택커뮤니티와기술동향
오픈스택커뮤니티와기술동향
 
OpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
OpenStack 개요 및 활용 사례 @ Community Open Camp with MicrosoftOpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
OpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
 
OpenSource! OpenStack!
OpenSource! OpenStack!OpenSource! OpenStack!
OpenSource! OpenStack!
 
Red hat and after 1 year
Red hat and after 1 yearRed hat and after 1 year
Red hat and after 1 year
 
Openstack에 컨트리뷰션 해보기
Openstack에 컨트리뷰션 해보기Openstack에 컨트리뷰션 해보기
Openstack에 컨트리뷰션 해보기
 
[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개
[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개
[12월 번역 Meetup] 오픈스택 official 번역 프로젝트 소개
 

Viewers also liked

무엇이 무엇이 닮았을까?- OpenStack과 Azure
무엇이 무엇이 닮았을까?- OpenStack과 Azure무엇이 무엇이 닮았을까?- OpenStack과 Azure
무엇이 무엇이 닮았을까?- OpenStack과 AzureIan Choi
 
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?OpenStack Korea Community
 
About IssueTracker
About IssueTrackerAbout IssueTracker
About IssueTrackerManjong Han
 
공개SW와 개발방법론(오픈소스 성공요인 사례)
공개SW와 개발방법론(오픈소스 성공요인 사례)공개SW와 개발방법론(오픈소스 성공요인 사례)
공개SW와 개발방법론(오픈소스 성공요인 사례)mosaicnet
 
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)Channy Yun
 
South Korea OpenStack UG - Study & Development team activities
South Korea OpenStack UG - Study & Development team activitiesSouth Korea OpenStack UG - Study & Development team activities
South Korea OpenStack UG - Study & Development team activitiesIan Choi
 
Aug seoul 활동 가이드라인
Aug seoul 활동 가이드라인Aug seoul 활동 가이드라인
Aug seoul 활동 가이드라인철민 신
 
openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)
openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)
openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)Ian Choi
 
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)Osc Osc
 
필요해서 하는 개발 자동화
필요해서 하는 개발 자동화필요해서 하는 개발 자동화
필요해서 하는 개발 자동화none
 
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian 대한민국
 
OpenStack : DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)
OpenStack: DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)OpenStack: DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)
OpenStack : DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)Ian Choi
 
Cloud life seminar open shift,이준영(배포용)
Cloud life seminar   open shift,이준영(배포용)Cloud life seminar   open shift,이준영(배포용)
Cloud life seminar open shift,이준영(배포용)Software in Life
 
OpenStack: running manually installed components on VirtualBox
OpenStack: running manually installed components on VirtualBoxOpenStack: running manually installed components on VirtualBox
OpenStack: running manually installed components on VirtualBoxIan Choi
 
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용Terry Cho
 
애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발
애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발
애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발Jaehoon Oh
 
제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발Terry Cho
 
애자일활용사례
애자일활용사례애자일활용사례
애자일활용사례Dexter Jung
 
AWS Lambdas with a Static Outgoing IP
AWS Lambdas with a Static Outgoing IPAWS Lambdas with a Static Outgoing IP
AWS Lambdas with a Static Outgoing IPJongwon Han
 
Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성
Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성
Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성KwangSeob Jeong
 

Viewers also liked (20)

무엇이 무엇이 닮았을까?- OpenStack과 Azure
무엇이 무엇이 닮았을까?- OpenStack과 Azure무엇이 무엇이 닮았을까?- OpenStack과 Azure
무엇이 무엇이 닮았을까?- OpenStack과 Azure
 
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
 
About IssueTracker
About IssueTrackerAbout IssueTracker
About IssueTracker
 
공개SW와 개발방법론(오픈소스 성공요인 사례)
공개SW와 개발방법론(오픈소스 성공요인 사례)공개SW와 개발방법론(오픈소스 성공요인 사례)
공개SW와 개발방법론(오픈소스 성공요인 사례)
 
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
오픈소스 개발 방법론 - Mozilla 사례 중심 (2010)
 
South Korea OpenStack UG - Study & Development team activities
South Korea OpenStack UG - Study & Development team activitiesSouth Korea OpenStack UG - Study & Development team activities
South Korea OpenStack UG - Study & Development team activities
 
Aug seoul 활동 가이드라인
Aug seoul 활동 가이드라인Aug seoul 활동 가이드라인
Aug seoul 활동 가이드라인
 
openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)
openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)
openstack-ko 메일링 리스트 이용하기 (openstack-ko@lists.openstack.org)
 
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
[오픈소스컨설팅] Atlassian webinar 기본 트러블슈팅(1 of 2)
 
필요해서 하는 개발 자동화
필요해서 하는 개발 자동화필요해서 하는 개발 자동화
필요해서 하는 개발 자동화
 
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
 
OpenStack : DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)
OpenStack: DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)OpenStack: DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)
OpenStack : DevStack installation using VirtualBox & Ubnutu (Juno with Neutron)
 
Cloud life seminar open shift,이준영(배포용)
Cloud life seminar   open shift,이준영(배포용)Cloud life seminar   open shift,이준영(배포용)
Cloud life seminar open shift,이준영(배포용)
 
OpenStack: running manually installed components on VirtualBox
OpenStack: running manually installed components on VirtualBoxOpenStack: running manually installed components on VirtualBox
OpenStack: running manually installed components on VirtualBox
 
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
 
애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발
애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발
애자일 개발 프로세스를 이용한 고품질 소프트웨어 개발
 
제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발제13회컨퍼런스 조대협 서버사이드개발
제13회컨퍼런스 조대협 서버사이드개발
 
애자일활용사례
애자일활용사례애자일활용사례
애자일활용사례
 
AWS Lambdas with a Static Outgoing IP
AWS Lambdas with a Static Outgoing IPAWS Lambdas with a Static Outgoing IP
AWS Lambdas with a Static Outgoing IP
 
Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성
Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성
Atlassian confluence WIKI를 활용한 공유와 협업 환경 구성
 

Similar to 오픈소스 개발 Upstream - ONOS/CORD 워킹 그룹 2차 세미나

Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로Ubuntu Korea Community
 
Open Source 그리고 git과 github, code review
Open Source 그리고 git과 github, code reviewOpen Source 그리고 git과 github, code review
Open Source 그리고 git과 github, code reviewMinsuk Lee
 
Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기nexusz99
 
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)NAVER D2
 
Opensource contributor 회고_ver_0.6
Opensource contributor 회고_ver_0.6Opensource contributor 회고_ver_0.6
Opensource contributor 회고_ver_0.6명준 김
 
개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님NAVER D2
 
청강대 특강 - 프로젝트 제대로 해보기
청강대 특강 - 프로젝트 제대로 해보기청강대 특강 - 프로젝트 제대로 해보기
청강대 특강 - 프로젝트 제대로 해보기Chris Ohk
 
학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님NAVER D2
 
github actions kubernetes 설치&운영하기
github actions kubernetes 설치&운영하기github actions kubernetes 설치&운영하기
github actions kubernetes 설치&운영하기newdeal2
 
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 KubernetesTommy Lee
 
2022.08 멘토링 자료.pptx
2022.08 멘토링 자료.pptx2022.08 멘토링 자료.pptx
2022.08 멘토링 자료.pptxssuserf875e6
 
오픈소스가이드 win,c++
오픈소스가이드 win,c++오픈소스가이드 win,c++
오픈소스가이드 win,c++jdo
 
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)Yoonsoo Kim
 
2021년 4월 10일 개발자 이야기
2021년 4월 10일 개발자 이야기2021년 4월 10일 개발자 이야기
2021년 4월 10일 개발자 이야기Jay Park
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료지원 정
 
[113]apache zeppelin 이문수
[113]apache zeppelin 이문수[113]apache zeppelin 이문수
[113]apache zeppelin 이문수NAVER D2
 
jjongwuner_cv_page
jjongwuner_cv_pagejjongwuner_cv_page
jjongwuner_cv_page종원 이
 
DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기SeungYong Baek
 
오픈소스 프로젝트 따라잡기_공개
오픈소스 프로젝트 따라잡기_공개오픈소스 프로젝트 따라잡기_공개
오픈소스 프로젝트 따라잡기_공개Hyoungjun Kim
 
위클리 발표자료
위클리 발표자료위클리 발표자료
위클리 발표자료hosung kang
 

Similar to 오픈소스 개발 Upstream - ONOS/CORD 워킹 그룹 2차 세미나 (20)

Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
 
Open Source 그리고 git과 github, code review
Open Source 그리고 git과 github, code reviewOpen Source 그리고 git과 github, code review
Open Source 그리고 git과 github, code review
 
Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기
 
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
경희대 해커 기술 세미나 - Git hub으로 학교 팀프로젝트 하기(조성수)
 
Opensource contributor 회고_ver_0.6
Opensource contributor 회고_ver_0.6Opensource contributor 회고_ver_0.6
Opensource contributor 회고_ver_0.6
 
개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님
 
청강대 특강 - 프로젝트 제대로 해보기
청강대 특강 - 프로젝트 제대로 해보기청강대 특강 - 프로젝트 제대로 해보기
청강대 특강 - 프로젝트 제대로 해보기
 
학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님학교에선 알려주지 않는 오픈소스이야기 - 박치완님
학교에선 알려주지 않는 오픈소스이야기 - 박치완님
 
github actions kubernetes 설치&운영하기
github actions kubernetes 설치&운영하기github actions kubernetes 설치&운영하기
github actions kubernetes 설치&운영하기
 
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
 
2022.08 멘토링 자료.pptx
2022.08 멘토링 자료.pptx2022.08 멘토링 자료.pptx
2022.08 멘토링 자료.pptx
 
오픈소스가이드 win,c++
오픈소스가이드 win,c++오픈소스가이드 win,c++
오픈소스가이드 win,c++
 
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
오픈 플랫폼 타이젠과 컨트리부션하기(연세대 오픈소스 미니콘서트)
 
2021년 4월 10일 개발자 이야기
2021년 4월 10일 개발자 이야기2021년 4월 10일 개발자 이야기
2021년 4월 10일 개발자 이야기
 
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
오픈소스 컨트리뷰톤 2020 backend.ai 발표자료
 
[113]apache zeppelin 이문수
[113]apache zeppelin 이문수[113]apache zeppelin 이문수
[113]apache zeppelin 이문수
 
jjongwuner_cv_page
jjongwuner_cv_pagejjongwuner_cv_page
jjongwuner_cv_page
 
DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기
 
오픈소스 프로젝트 따라잡기_공개
오픈소스 프로젝트 따라잡기_공개오픈소스 프로젝트 따라잡기_공개
오픈소스 프로젝트 따라잡기_공개
 
위클리 발표자료
위클리 발표자료위클리 발표자료
위클리 발표자료
 

More from Ian Choi

Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023Ian Choi
 
클라우드 컴퓨팅 기본 사항 (Fundamentals)
클라우드 컴퓨팅 기본 사항 (Fundamentals)클라우드 컴퓨팅 기본 사항 (Fundamentals)
클라우드 컴퓨팅 기본 사항 (Fundamentals)Ian Choi
 
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요Ian Choi
 
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)Ian Choi
 
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...Ian Choi
 
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개Ian Choi
 
오픈 소스 프로그래밍 - NoSQL with Python
오픈 소스 프로그래밍 - NoSQL with Python오픈 소스 프로그래밍 - NoSQL with Python
오픈 소스 프로그래밍 - NoSQL with PythonIan Choi
 
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)Ian Choi
 
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...Ian Choi
 
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...Ian Choi
 
Microsoft loves communities - Korea DevRel Team
Microsoft loves communities - Korea DevRel TeamMicrosoft loves communities - Korea DevRel Team
Microsoft loves communities - Korea DevRel TeamIan Choi
 
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴Ian Choi
 
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우Ian Choi
 
[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용Ian Choi
 
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기Ian Choi
 
"docs.microsoft.com"에 기여하기
"docs.microsoft.com"에 기여하기"docs.microsoft.com"에 기여하기
"docs.microsoft.com"에 기여하기Ian Choi
 
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례Ian Choi
 
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드Ian Choi
 

More from Ian Choi (18)

Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
 
클라우드 컴퓨팅 기본 사항 (Fundamentals)
클라우드 컴퓨팅 기본 사항 (Fundamentals)클라우드 컴퓨팅 기본 사항 (Fundamentals)
클라우드 컴퓨팅 기본 사항 (Fundamentals)
 
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
 
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
 
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
 
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
 
오픈 소스 프로그래밍 - NoSQL with Python
오픈 소스 프로그래밍 - NoSQL with Python오픈 소스 프로그래밍 - NoSQL with Python
오픈 소스 프로그래밍 - NoSQL with Python
 
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
 
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
 
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
 
Microsoft loves communities - Korea DevRel Team
Microsoft loves communities - Korea DevRel TeamMicrosoft loves communities - Korea DevRel Team
Microsoft loves communities - Korea DevRel Team
 
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
 
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
 
[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용
 
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
 
"docs.microsoft.com"에 기여하기
"docs.microsoft.com"에 기여하기"docs.microsoft.com"에 기여하기
"docs.microsoft.com"에 기여하기
 
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
 
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
 

오픈소스 개발 Upstream - ONOS/CORD 워킹 그룹 2차 세미나

  • 1. 2016년 12월 16일, ONOS/CORD 워킹 그룹 2차 세미나 최영락, 오픈스택 한국 커뮤니티 운영진
  • 2. 2 목차 • Part 1: 오픈 소스와 Upstream 개발 개요 • Part 2: 주요 Upstream 개발 워크플로우 • Part 3: Sandbox를 활용한 워크플로우 살펴보기 (with Demo) • Part 4: 결론
  • 4. 4 Upstream 개발이 지니는 의미가 무엇일까요? http://docs.openstack.org/ko_KR/upstream-training/
  • 5. 5 참고: OpenStack에서 바라보는 Openness • Open Source • 재사용 및 확장 가능한 진정한 의미에서의 오픈 소스를 목표로 함 • No “Enterprise Edition” • Open Design • 요구 사항 수집 및 로드맵 승인 등 모든 절차를 대중에게 공개 • 개방형 디자인의 의미보다는 모든 설계 과정을 open하겠다는 의미에 가까움 • Open Development • 모든 소스 코드 공개를 개방된 코드 리뷰 과정을 거치며, 모든 과정은 투명하게 문서화됨 • Open Community • 커뮤니티를 통해 설계 과정을 결정 • 모든 프로젝트 미팅은 공개 IRC 채널을 통해 열리며 기록 [1] 서주영, 오픈 소스를 통해 개발 근육 강화하기, GDG DevFest Seoul 2016 (커뮤니티를 통해 함께)
  • 6. 6 오픈 소스 시작: from small to larger • Github 하나로 시작할 수 있습니다! • 소스 관리도 되고 (git repository)
  • 7. 7 오픈 소스 시작: from small to larger • Github 하나로 시작할 수 있습니다! • 다른 사용자가 소스를 가져다가 작업할 수도 있고 (fork & pull request)
  • 8. 8 오픈 소스 시작: from small to larger • Github 하나로 시작할 수 있습니다! • 다른 사용자가 작업한 소스를 리뷰 및 코멘트를 작성 가능하고 (pull request review)
  • 9. 9 오픈 소스 시작: from small to larger • Github 하나로 시작할 수 있습니다! • 리뷰를 완료하면 병합 또한 가능하며 (merge and/or rebase)
  • 10. 10 오픈 소스 시작: from small to larger • Github 하나로 시작할 수 있습니다! • 버그 등이 있을 때 사용자 피드백을 받을 수도 있으며 (issues)
  • 11. 11 오픈 소스 시작: from small to larger • Github 하나로 시작할 수 있습니다! • 문서화 등을 위한 위키 또한 지원합니다 (wiki)
  • 12. 12 오픈 소스 규모가 커지면… • 코드 리뷰의 중요성: e.g.) Gerrit • Case example: https://review.openstack.org/#/c/396943/
  • 13. 13 오픈 소스 규모가 커지면… • 이슈 및 기능 추적: e.g.) Launchpad, Jira • Case example 1: https://bugs.launchpad.net/pbr/+bug/1379998
  • 14. 14 오픈 소스 규모가 커지면… • 이슈 및 기능 추적: e.g.) Launchpad, Jira • Case example 2: Jira 사용 (예시)
  • 15. 15 오픈 소스 규모가 커지면… • 자동 빌드: Jenkins • Case example: https://review.openstack.org/#/c/410341/
  • 16. 16 오픈 소스 규모가 커지면… • 통합 인증 체계 • Case example 1: openstackid (https://openstackid.org/accounts/user/profile) • Case example 2: ONOS crowd (https://crowd.onlab.us/openidserver/)
  • 17. 주요 Upstream 개발 워크플로우
  • 20. 20 OpenStack에서의 워크플로우 Copyright by koain (김영우), OpenStack Korea Community – 업스트림 컨트리뷰션 스터디
  • 22. 22 Sandbox 저장소 공간 • OpenStack Sandbox 저장소 • https://review.openstack.org/#/admin/ projects/openstack-dev/sandbox • Git 커밋, 패치, 리뷰 등 연습 공간
  • 23. 23 OpenStack: Sandbox 저장소 • OpenStack은 학습 및 테스트 목적을 위해 sandbox 저장소를 보유하고 있습니다 • OpenStack 학습을 시작하기 위한 훌륭한 저장소입니다 • https://git.openstack.org/cgit/openstack-dev/sandbox
  • 24. 24 Sandbox Launchpad • openstack-dev/sandbox 저장소와 관련이 있는 보고된 버그 및 이슈를 추석 및 관리 • https://launchpad.net/openstack-dev-sandbox
  • 25. 25 Gerrit을 활용한 워크플로우 확인 • Gerrit • GitHub에서의 pull request와 비슷 • 여러 사람에 의한 code review 가능
  • 26. 26 Gerrit 리뷰 과정 in OpenStack • 점수 부여 • -2: 받아들일 수 없는 수정 • -1: 수정 필요한 사항 • 0 : 중립 또는 자세한 comment 작성시 • +1: 리뷰 결과 괜찮음 • +2: 해당 프로젝트의 핵심 개발자가 괜찮음을 표현 • 일반적인 코드 병합 • 2명의 핵심 개발자가 각각 +2를 주었을 때 병함됨 • Workflow를 +1로 주었을 때 최종 코드 병합 이루어짐
  • 27. 27 코드 병합 (Merged) in OpenStack • 업로드한 코드는 patch set 단위로 관리됨 • 모든 업로드 코드는 Jenkins에 의해 업로드한 코드에 대해 자동 점검 수행 • 일반적으로 해당 프로젝트 내 +2를 2번 이상 받았을 때 Workflow +1를 주면 해당 코드에 대한 병합이 이루어짐
  • 28. 28 Sandbox 저장소를 활용한 데모 • 참고: http://docs.openstack.org/ko_KR/upstream- training/workflow-using-sandbox.html
  • 30. 30 OpenStack with Open Ecosystem • OpenStack과 업스트림 컨트리뷰션 • 변화하는 IT (예: Docker 등 컨테이너) 및 문제 해결을 좋아하는 컨트리뷰터들이 주축이 되어 활동 • 기술 위원회의 모든 투표 과정을 공개할 만큼 Openness를 실천하고 있음 • 소스 코드 개발뿐만 아니라, 문서화, 번역 등도 컨트리뷰션에 간주함 • ONOS에서의 업스트림 컨트리뷰션 • Jira를 기반으로 프로젝트 버전 및 관련된 기능 개발, 이슈를 통합적으로 관리 • 업스트림 컨트리뷰션을 위해서는 해당 분야 지식 뿐만 아니라 Git, Jira, Gerrit 등 오픈 소스 기반 도구에 익숙해질 필요가 있음
  • 31. 31 참고: OpenStack 번역 업스트림 컨트리뷰션 • 오픈 소스 번역 플랫폼인 Zanata를 사용하여 번역에 컨트리뷰션