Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[MASOCON 2017] 협업으로 달라붙고, 빌드 자동화로 편해지자 - 배준현 운영자/코딩이랑 무관합니다만,

[MASOCON 2017] 협업으로 달라붙고, 빌드 자동화로 편해지자 - 배준현 운영자/코딩이랑 무관합니다만,

2017년 11월 25일 마이크로소프트웨어 개발자 콘퍼런스, 마소콘 2017
협업으로 달라붙고, 빌드 자동화로 편해지자 - 배준현 운영자/코딩이랑 무관합니다만,

MICROSOFTWARE

January 16, 2018
Tweet

More Decks by MICROSOFTWARE

Other Decks in Programming

Transcript

  1. 2015년 누군가는 이렇게 말했다. • 1. 작업항목 등록(backlog, task, bug,

    ...) 2. 작업항목 승인 및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) • 여기서 8번부터 15번까지가 자동화됩니다. 16번은 후달려서 자동화 못했지만 용자라면 쉽게 할 수 있습니다. 출처 https://www.facebook.com/gyuwon.yi
  2. 색상을 입혀 봤습니다. • 1. 작업항목 등록(backlog, task, bug, ...)

    2. 작업항목 승인 및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) • 여기서 8번부터 15번까지가 자동화됩니다. 16번은 후달려서 자동화 못했지만 용자라면 쉽게 할 수 있습니다. 출처 https://www.facebook.com/gyuwon.yi
  3. 하나씩 봅시다. • 1. 작업항목 등록(backlog, task, bug, ...) 2.

    작업항목 승인 및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포)
  4. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포)
  5. 저는 혼자 행복 했습니다… 누구나 나의 코드를 볼 수 있어!

    제 코드 리뷰 좀 해봐줘요! 제 코드요? 192.168.0…들어가시면 저때 탈출 했었어야…
  6. 근데 너무 느려 WakeUp Time 필요. Pull을 하고 F5를 눌렀는데

    404를 보게 됩니다. 저때 탈출 했었어야…
  7. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포)
  8. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 잠깐… 지금 랜덤코드가 아니라. 자료부터 만들어야해…
  9. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 잠깐… 지금 랜덤코드가 아니라. 자료부터 만들어야해…
  10. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 그럴리가 없죠. 요구사항이 발생했다! 떠넘기기 스킬을 시전했다 ! 떠넘기기 실패.
  11. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 잠깐… 지금 랜덤코드가 아니라. 자료부터 만들어야해… 그냥 이걸 자료로 쓰자.
  12. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 아참 빌드 자동화를 할 때 예전부터 꼭 참고 하고 싶었던 페이지가 있습니다.
  13. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 아프리카 친구도 쓰는 그것 ! !Emacs 참고)___________________________ VIM은 우간다에 후원중입니다.
  14. • 1. 작업항목 등록(backlog, task, bug, ...) 2. 작업항목 승인

    및 작업자 할당 3. 코딩(production code + tests) 4. 커밋 5. PR(pull request) 작성 6. 코드 리뷰 7. PR 승인 및 병합(merge into master) 8. 빌드(master 브랜치 트리거) 9. 단위(unit) 테스트 10. 패키징 11. 통합(integration) 테스트 12. 개발 환경 배포 13. 개발 환경 대상 기능(functional) 테스트 14. 스테이징 환경 배포 15. 스테이징 환경 대상 기능 테스트 16. 스왑(무중단 프로덕션 배포) 1. 베이스코드 투척