Discourse 팀 - 왜 몇 분마다 버전 업데이트를 그렇게 자신 있게 밀어붙이는 거죠?

디스코urses에 대한 메타 질문이라 죄송합니다(이건 의도한 말장난이에요). 하지만 꼭 알아야 할 것 같습니다. 이렇게 매일 수십 번의 버전 업데이트를 자신 있게 배포할 수 있는 비결이 뭔가요?

코드가 수많은 곳에 실시간으로 배포되는데, 제3자 플러그인/테마/컴포넌트가 여러 개 달린 사이트가 깨질 위험은 실제로 존재하거든요.

정말 놀라운 지속적 통합(CI) 프로세스를 갖추고 계실 텐데, 이렇게 철저하게 테스트하는 비법을 좀 공유해 주실 수 있을까요?

7개의 좋아요

우리는 모든 새로운 변경 사항을 먼저 내부 커뮤니티에 배포하는 것이 도움이 됩니다. 이 커뮤니티는 우리가 매일 업무에 사용하는 곳이기도 하고, meta.discourse.org이기도 합니다.

Discourse 팀은 가장 최신이고 반짝이는 변경 사항… 그리고 버그를 받게 됩니다. 그런 다음 meta의 여러분도 그 영향을 직접 받게 됩니다.

일반적인 믿음과 달리, 우리는 모든 사이트를 대상으로 항상 모든 변경 사항을 배포하지는 않습니다. 대신 정기적으로 사이트를 배포합니다. 사이트가 깨지는 것은 위험이라는 점은 맞습니다. 우리는 사이트를 안전하고 최신 상태로 유지하는 것과, 깨짐에 대한 우려로 인해 업데이트를 전혀 하지 않는 것 사이의 적절한 균형을 찾아야 합니다.

테스트에 대해서는 저장소를 확인해 보실 수 있습니다. 또한 추가적인 내부 빌드+테스트 프로세스도 있습니다.

  • 코어에서 커밋마다 실행되는 테스트
  • 지원되는 플러그인에서 실행되는 테스트
  • 지원되는 테마에서 실행되는 테스트

서드파티 플러그인에도 테스트가 있는 것이 이상적인 시나리오입니다. 또한 호환성 및 보안 문제를 관리할 수 없기 때문에, 우리는 자체 호스팅에서 서드파티 플러그인을 지원하지 않는다는 점도 참고할 가치가 있습니다.

17개의 좋아요