GitHub News

Codespaces 소개

GitHubKorea 2022. 8. 30. 17:36

안녕하세요 GitHub 한국 총판 단군소프트입니다.

오늘은 'Codespaces'에 대해 소개​해드리려고 합니다.

그럼 시작해 볼까요?

현재 Codespaces 사전 구축 기능은 공개 베타로 전환되고 있습니다.

Codespaces를 사전에 구축하여 저장소의 크기와 복잡성에 관계없이 환경 작성 시간을 단축할 수 있습니다. 사전 구축된 Codespaces는 소스코드, 에디터 확장 기능, 프로젝트 의존 관계, 명령 및 설정이 이미 다운로드, 설치 및 적용되어 '바로 사용 가능한’ 템플릿이므로 새 Codespaces를 생성할 때마다 이런 작업을 할 필요가 없습니다.


공개베타

Codespaces의 주요 목표는 개발자가 수동 설정을 수행하지 않고도 프로젝트를 빠르게 시작할 수 있도록 하는 원클릭 온보딩 솔루션을 제공하는 것입니다. 그러나 Codespaces는 개발 환경을 부트스트랩 하기 위해 저장소를 복제하고(옵션) 사용자 정의된 Dockerfile을 빌드하고, 프로젝트 종속성 및 편집기 확장을 설치하고, 스크립트를 초기화하는 등의 작업을 수행해야 하므로 개발자가 실제로 경험하는 설정에 소요되는 시간은 상당히 다를 수 있습니다. 이러한 작업의 대부분은 저장소 크기와 구성의 복잡성에 따라 달라집니다.

아시는 분들도 계시겠지만, Codespaces로 마이그레이션 하면서 ​GitHub에서 개발하는 방식이 바뀌었습니다.

사전 빌드는 GitHub.com 코드베이스의 코어에 대한 Codespaces의 부트스트랩 시간을 의미 있게 줄이는 방법의 큰 부분이었습니다. 이를 통해, 우리의 다음 임무는 이러한 성공을 재현하고 고객에게 경험을 제공하는 것입니다.

지난 몇 개월 동안 우리는 약 50개 조직과 사전 빌드에 대한 비공개 프리뷰를 진행했습니다. 전반적으로 우리는 복잡한 프로젝트에서 작업하는 팀의 생산성을 향상시키는 사전 빌드 기능에 대해 긍정적인 피드백을 받았습니다. 동시에 사전 빌드의 구성 및 관리에 대한 귀중한 피드백도 많이 받았으며 오늘 이러한 개선 사항을 공유하게 되어 기쁩니다.

이제 "사전 빌드 준비" 태그가 있는 머신 유형을 선택하여 빠른 생성 환경을 찾아 빠르게 시작할 수 있습니다.

원활한 구성 환경을 통해 저장소 관리자는 다양한 브랜치 및 지역에 대한 사전 빌드 구성을 쉽게 설정하고 관리할 수 있습니다.

미리 빌드 된 각 브랜치에 대한 Actions 버전 업데이트를 관리하는 것과 관련된 저장소 관리자의 부담을 줄이기 위해 Codespaces 서비스에서 관리할 GitHub Actions 워크플로우에 대한 지원을 도입했습니다.

사전 빌드 구성은 이제 GitHub Actions 가상 머신에서 빌드 됩니다. 이를 통해 저장소의 각 푸시에 대해 더 빠른 사전 빌드 템플릿 생성이 가능하고 저장소 관리자에게 풍부한 로그 집합에 대한 액세스 권한을 제공하여 오류가 발생할 경우 효율적인 디버깅을 돕습니다.

우리의 목표는 공개 베타 동안 받은 피드백을 기반으로 이 경험을 계속 반복하면서 개발자들의 온보딩 경험이 원활하게 유지되도록 하는 것입니다.

 

 

사전 빌드는 어떻게 동작할까요?

공개 베타 기간 동안 저장소 관리자는 특정 브랜치 및 지역에 대한 사전 빌드 구성을 생성할 수 있습니다.

사전 빌드 구성은 브랜치의 devcontainer 구성과 후속 커밋을 사전 빌드 처리할 때 Codespaces 서비스에서 관리되는 GitHub 작업 워크플로우를 자동으로 트리거하여 진행됩니다. 연결된 사전 빌드 템플릿은 선택한 각 지역의 Blob Storage에 저장됩니다.

각 워크플로우는 오류 발생 시 디버깅에 도움이 되는 풍부한 로그 집합을 제공합니다.

사전 빌드 된 Codespaces를 요청할 때마다 서비스는 사전 빌드 된 템플릿을 가져와 기존 가상 머신에 연결하므로 Codespaces 생성 시간이 크게 줄어듭니다. 필요에 따라 브랜치의 사전 빌드 구성에 대한 변경을 요청하려면 관련된 devcontainer 구성을 pull request로 업데이트하거나 특히 onCreateCommand 또는 updateContentCommand의 라이프사이클 스크립트를 이용할 수 있습니다.

 

 

시작하는 방법

사전 빌드GitHub Enterprise Cloud 및 팀 플랜을 사용하는 모든 조직에서 공개 베타를 사용할 수 있습니다.
조직 또는 저장소 관리자저장소의 설정 페이지로 이동하여 "Codespaces" 탭에서 사전 빌드 구성을 생성할 수 있습니다.
개발자저장소의 사전 빌드 지원 브랜치로 이동하고 "사전 빌드 준비" 레이블이 있는 머신 유형을 선택하여 사전 빌드 된 Codespaces를 만들 수 있습니다.


시작하는 데 도움이 되는 ​되는 사전 빌드 문서에 대한 링크입니다!

이 경험을 개선하는 데 도움이 되는 피드백이 있으면 토론 포럼에 게시해 보세요.

긴 글 읽어주셔서 감사합니다.