브랜치

브랜치 보기는 리포지토리의 여러 브랜치에 대한 개요를 제공합니다.

단계

Odoo.sh에는 브랜치가 다음과 같은 세 단계로 나누어져 있습니다:

원하는 단계로 드래그 앤 드롭하여 브랜치의 단계를 변경할 수 있습니다.

브랜치의 스테이지 변경하기

참고

  • 개발 브랜치는 스테이징 아래로 이동할 수 있습니다. 개발 브랜치를 프로덕션 아래로 이동하려고 하면 프로젝트당 하나의 프로덕션 브랜치만 가질 수 있다는 경고 메시지가 표시됩니다.

  • 스테이징 브랜치는 개발 아래로 이동할 수 있지만 프로덕션 아래로는 이동할 수 없습니다.

  • 프로덕션 브랜치는 개발 아래로만 이동할 수 있습니다. 스테이징 아래로 이동하려고 하면 병합만 수행할 수 있습니다. 이 프로세스에 대한 자세한 설명은 병합 섹션을 참조하세요.

생산

프로덕션 브랜치에는 프로덕션 데이터베이스를 실행하는 데 사용되는 코드가 포함되어 있습니다. 프로덕션 브랜치는 하나만 있을 수 있습니다.

이 브랜치에 새 커밋을 푸시하면 프로덕션 서버가 수정된 코드로 업데이트되고 재시작됩니다.

폼 뷰 변경과 같이 변경 사항으로 인해 모듈 업데이트가 필요하고 업데이트가 자동으로 수행되기를 원하는 경우 매니페스트 파일(__manifest__.py)에서 모듈의 버전 번호를 증가시킬 수 있습니다. 그러면 플랫폼이 업데이트를 수행하며, 이 동안 유지관리를 위해 인스턴스를 일시적으로 사용할 수 없게 됩니다.

이 방법은 메뉴 또는 명령줄 <../../../developer/reference/cli>`의 `-u 스위치를 사용하여 모듈을 업그레이드하는 것과 동일합니다.

참고

  • 변경 사항으로 인해 서버를 재시작할 수 없거나 모듈 업데이트가 실패하면 서버는 자동으로 이전에 성공한 코드 리비전으로 되돌아가고 데이터베이스는 이전 상태로 롤백됩니다. 실패한 업데이트의 로그에 액세스하여 문제를 해결하세요.

  • 데모 데이터는 프로덕션 데이터베이스에서 사용하기 위한 것이 아니므로 로드되지 않습니다. `단위 테스트 <https://en.wikipedia.org/wiki/Unit_testing>`_는 업데이트 중 프로덕션 데이터베이스의 사용 불가 시간을 늘리기 때문에 수행되지 않습니다.

Odoo.sh는 프로덕션 데이터베이스를 자동으로 백업합니다. 일일 백업 7개, 주간 백업 4개, 월간 백업 3개를 보관합니다. 각 백업에는 데이터베이스 덤프, 파일스토어(첨부 파일 및 바이너리 필드), 로그 및 세션이 포함됩니다.

경고

체험판 프로젝트**를 사용하는 경우 프로덕션 브랜치와 모든 스테이징 브랜치는 **30일 후에 자동으로 개발 단계로 되돌아갑니다.

스테이징

스테이징 브랜치는 실제 프로덕션 데이터베이스를 테스트 레코드로 손상시키지 않고 프로덕션 데이터를 사용하여 새로운 기능을 테스트하기 위한 것입니다. 프로덕션 데이터베이스의 무력화된 복제본을 생성합니다.

중립화 시 비활성화 대상:

  • 예약된 활동

    참고

    테스트하려면 수동으로 트리거하거나 다시 활성화하세요. 데이터베이스를 사용하는 사람이 없으면 리소스를 절약하기 위해 플랫폼이 덜 자주 트리거한다는 점에 유의하세요.

  • 발신 메일

    참고

    대신 메일 캐처를 사용하여 가로챕니다. 데이터베이스에서 보낸 이메일을 볼 수 있는 :ref:`인터페이스 <odoo-sh/branches/tabs/mails>`가 Odoo.sh 프로젝트에 제공됩니다. 이렇게 하면 연락처에 이메일이 전송되지 않습니다.

  • IAP 서비스

  • 결제 대행업체 및 배송 커넥터

    참고

    테스트 모드로 전환됩니다.

스테이징 데이터베이스에서 변경 사항을 구성하거나 보는 경우 단계별로 기록하거나 프로덕션에서 재현하는 등의 방법으로 기록하거나 XML 데이터 파일을 사용하여 기본 구성이나 뷰를 재정의하는 방식으로 브랜치의 모듈에 직접 작성하세요. 예제를 보려면 :ref:`첫 번째 모듈 문서 <odoo-sh/module/add>`를 확인하세요.

참고

단위 테스트는 수행되지 않습니다. 프로덕션 및 스테이징 데이터베이스에 로드되지 않는 데모 데이터에 의존합니다. Odoo가 데모 데이터 없이 단위 테스트 실행을 지원하면 Odoo.sh는 스테이징 데이터베이스에서 테스트 실행을 고려할 것입니다.

스테이징 데이터베이스는 자동으로 백업되지 않습니다. 그러나 테스트 목적이나 프로덕션 데이터베이스에서 실수로 삭제된 데이터를 수동으로 복구하기 위해 스테이징 브랜치에서 프로덕션 데이터베이스의 백업을 복원할 수 있습니다. 스테이징 데이터베이스의 수동 백업을 생성할 수 있습니다.

경고

스테이징 브랜치용으로 생성된 데이터베이스는 한 달 후 자동으로 삭제됩니다. 브랜치를 다시 사용하려면 다시 빌드해야 합니다.

개발

개발 브랜치는 단위 테스트를 실행하기 위해 데모 데이터를 사용하여 새 데이터베이스를 생성합니다. 설치된 모듈은 브랜치에 포함된 모듈입니다. :doc:`프로젝트 설정 <settings>`에서 설치할 모듈 목록을 변경할 수 있습니다.

개발 브랜치에 커밋을 푸시하면 새 서버가 시작되며, 여기에서 데이터베이스가 처음부터 생성되고 브랜치가 업데이트됩니다. 데모 데이터가 로드되고 단위 테스트가 실행되어 변경 사항으로 인해 테스트 중인 기능이 손상되지 않는지 확인합니다. 브랜치 설정 에서 테스트를 비활성화하거나 사용자 지정 태그를 활용하여 특정한 테스트가 실행되게 할 수 있습니다.

스테이징 브랜치와 마찬가지로 이메일은 전송되지 않고 메일 캐처에 의해 가로채지며, 데이터베이스가 사용되지 않는 한 예약된 작업은 트리거되지 않습니다.

개발 데이터베이스는 자동으로 백업되지 않으며 수동 백업도 불가능합니다.

경고

개발 브랜치용으로 생성된 데이터베이스는 약 3일 동안 지속되도록 의도되었습니다. 그 후에는 사전 통지 없이 새 데이터베이스를 위한 공간을 확보하기 위해 자동으로 가비지 수집될 수 있습니다.

브랜치 병합

브랜치를 서로 드래그 앤 드롭하여 병합할 수 있습니다.

서로 다른 브랜치 병합하기

개발 브랜치의 변경 사항을 프로덕션 데이터로 테스트하려면 다음 중 하나를 수행할 수 있습니다:

  • 개발 브랜치를 원하는 브랜치로 드래그 앤 드롭하여 스테이징 브랜치에 병합하거나

    개발 브랜치를 스테이징 브랜치에 병합하기
  • 개발 브랜치를 스테이징 섹션 아래로 드래그 앤 드롭하여 스테이징 브랜치로 만듭니다.

    개발 브랜치를 스테이징 환경으로 이동하기

변경 사항이 프로덕션 준비가 완료되면 스테이징 브랜치를 프로덕션 브랜치로 드래그 앤 드롭하여 병합하고 배포합니다.

참고

  • 개발 브랜치를 프로덕션 브랜치에 직접 병합할 수 있습니다. 그러나 변경 사항이 스테이징 브랜치를 통해 프로덕션 데이터에 대해 검증되지 않으므로 프로덕션 데이터베이스에서 문제가 발생할 위험이 더 높습니다.

  • 개발 브랜치를 서로 병합하고 스테이징 브랜치를 서로 병합할 수 있습니다.

  • 워크스테이션에서 `git merge`를 직접 사용하여 브랜치를 병합할 수도 있습니다. 새 리비전이 브랜치에 푸시되면 Odoo.sh에 알림이 전송됩니다.

스테이징 브랜치를 프로덕션 브랜치에 병합하면 소스 코드만 병합됩니다. 스테이징 데이터베이스에 적용된 변경 사항은 프로덕션 데이터베이스로 전달되지 않습니다. 그러나 리포지토리의 코드를 수정하면 병합 시 프로덕션 브랜치로 전달됩니다.

스테이징 브랜치에서 구성 변경 사항을 테스트하고 프로덕션 브랜치에 적용하려면 다음 중 하나를 수행해야 합니다:

  • XML 데이터 파일에 구성 변경 사항을 작성하여 브랜치의 기본 구성이나 뷰를 재정의한 다음 매니페스트(__manifest__.py)에서 모듈 버전을 증가시켜 스테이징 브랜치를 프로덕션 브랜치에 병합할 때 모듈 업데이트를 트리거합니다.

    참고

    이 방법은 모든 구성 변경 사항에 대해 Git 버전 관리 기능을 사용하여 변경 사항의 추적 가능성을 보장하므로 개발의 확장성을 높이는 데 권장됩니다.

  • 스테이징 데이터베이스에서 프로덕션 데이터베이스로 복사하여 붙여넣어 수동으로 전달합니다.

기록

이력 탭에서 브랜치의 전체적인 이력을 확인할 수 있습니다:

  • 커밋 메시지 및 작성자

  • 스테이지 변경, 데이터베이스 가져오기, 백업 복원 등 플랫폼과 연결된 다양한 이벤트

브랜치 이력 탭

각 이벤트의 오른쪽 상단에 있는 상태는 데이터베이스에서 현재 진행 중인 작업(예: 설치, 업데이트, 백업 가져오기) 또는 그 결과(예: 테스트 피드백, 백업 가져오기 성공)를 나타냅니다. 작업이 성공하면 연결 버튼이 나타나 데이터베이스에 액세스할 수 있습니다.

메일

메일 탭에는 데이터베이스에서 보낸 이메일의 개요를 제공하는 메일 캐처가 포함되어 있습니다.

참고

메일 캐처는 개발 및 스테이징 브랜치에서 사용할 수 있습니다. 프로덕션 데이터베이스의 이메일은 실제로 전송되며 메일 캐처에 의해 가로채지지 않습니다.

브랜치 메일 탭

탭에서 컨테이너에 대한 셸 액세스를 할 수 있습니다.

셸`을 클릭하면 기본 리눅스 명령(`ls, top)을 실행할 수 있는 새 브라우저 탭이 열립니다. `psql`을 실행하여 데이터베이스에서 셸을 열 수 있습니다.

브랜치 셸 탭

여러 셸 탭을 동시에 열고 드래그 앤 드롭하여 레이아웃을 정렬할 수 있습니다.

참고

  • 프로덕션 인스턴스 셸은 프로덕션 인스턴스를 직접 조작하는 위험을 강조하기 위해 빨간색으로 표시되고, 스테이징/개발 인스턴스 셸은 노란색으로 표시됩니다.

  • 리소스를 확보하기 위해 장기 실행 셸 인스턴스/유휴 셸 세션은 언제든지 종료될 수 있습니다.

명령어

다음은 Odoo.sh 데이터베이스 터미널에서 실행할 수 있는 유용한 명령에 대한 개요입니다:

  • odoo-bin : Odoo 셸 열기

  • odoo-update: 데이터베이스 모듈 업데이트하기

  • odoosh-restart: Odoo.sh 서비스(http 또는 cron) 재시작

  • odoosh-storage: 인스턴스의 컨테이너 파일 시스템 저장소 사용량 확인

  • psql: 데이터베이스 셸을 실행합니다

  • mutt: 텍스트 클라이언트에서 이메일이 어떻게 표시되는지 확인(스테이징 및 개발 인스턴스)

  • lnav ~/logs/odoo.log: 인스턴스의 odoo.log 파일 검색하기

  • ncdu: 대화형 인터페이스로 디스크 사용량 분석기 실행

  • grep: 로그 또는 환경설정 파일에서 정보 필터 및 검색

편집기

:guilabel:`Editor`를 클릭하면 새 브라우저 탭이 열려 소스 코드를 편집할 수 있는 온라인 통합 개발 환경(IDE)에 액세스할 수 있습니다. 터미널, Python 콘솔 및 Odoo 셸 콘솔도 열 수 있습니다.

브랜치 편집기 탭

여러 탭을 열고 드래그 앤 드롭하여 원하는 대로 레이아웃을 배치할 수 있습니다.

모니터

Monitor 탭에는 현재 빌드의 다양한 성능 모니터링 지표가 표시됩니다.

커서로 확대하여 시간 범위를 조정하거나 시간 범위 선택기에서 수동으로 선택하십시오. 시간대를 변경할 수도 있습니다.

브랜치 모니터 탭의 시간 범위 선택 메뉴

참고

  • 기술 로그는 항상 :abbr:`UTC(협정 세계시)`를 사용합니다. 이러한 로그를 모니터링 지표와 함께 분석하려면 모니터링 도구에서 :abbr:`UTC(협정 세계시)`가 선택되어 있는지 확인하십시오.

  • 마찬가지로 지원 티켓을 보낼 때 공유하는 정보가 :abbr:`UTC(협정 세계시)`를 기반으로 하는지 확인하십시오. Odoo는 이 시간대를 사용하여 성능 문제를 조사합니다.

정보는 주기적으로 집계됩니다. 이 경우 파란색 점선이 Aggregate Date 태그와 함께 표시됩니다. 이는 이 날짜 이전의 데이터가 이 날짜 이후의 데이터와 비교할 때 평평하게 나타남을 의미합니다. 따라서 모니터링 도구를 사용할 때는 가능한 한 가장 자세한 정보를 얻기 위해 최근 이벤트에 집중하는 것이 좋습니다.

참고

다른 색상의 점선은 빌드의 다른 변경 사항(데이터베이스 가져오기, git push 등)과 관련하여 도움을 줍니다.

CPU 모니터링 집계 데이터

각 그래프에서 𝕚(정보) 아이콘이 왼쪽 상단 모서리에 표시됩니다. 마우스를 올려놓으면 그래프가 나타내는 내용에 대한 자세한 정보를 얻을 수 있습니다.

지표

시스템

메모리 그래프에는 메모리 사용량 정보가 표시됩니다:

  • 메모리 컨테이너 에는 Odoo 워커와 컨테이너 프로세스가 표시됩니다.

  • Memory postgresql 은 데이터베이스를 나타냅니다.

모니터 탭의 메모리 그래프

CPU 그래프에는 CPU 사용량 정보가 표시됩니다.

  • CPU http 는 Odoo 작업자를 나타냅니다.

  • CPU cron/mail 에는 예약된 작업과 수신된 이메일이 표시됩니다.

  • CPU postgresql (데이터베이스 프로세스)

  • CPU 기타 는 웹셸, 편집기 등을 의미합니다.

모니터 탭의 CPU 그래프

저장소 그래프에는 사용 중인 저장소 정보가 표시됩니다.

  • 컨테이너 는 파일 저장소, 로그 파일 및 사용자 파일을 의미합니다.

  • Postgresql 은 데이터베이스와 인덱스를 나타냅니다.

모니터 탭의 저장소 그래프
HTTP

Requests 그래프는 초당 HTTP 요청 수에 대한 정보를 표시합니다:

  • HTTP 성공 은 요청에 성공했다는 의미입니다.

  • HTTP 오류 는 요청 실패를 의미합니다 ( odoo.log 확인).

  • :guilabel:`HTTP rate limited`는 워커 부족으로 인해 거부된 요청을 나타냅니다.

모니터 탭의 요청 그래프

Concurrent requests (max) 그래프는 초당 최대 동시 HTTP 요청 수를 표시합니다.

모니터 탭의 동시 요청 그래프

참고

데이터베이스 워커는 동시에 관리할 수 있는 동시 요청 수를 결정합니다. 들어오는 모든 요청을 처리하기에 충분한 워커를 확보하는 것이 중요합니다. 그러나 이를 초과하는 추가 워커가 있다고 해서 요청 처리 속도가 향상되지는 않습니다.

:guilabel:`Average Response time`은 HTTP 요청에 대한 평균 응답 시간(밀리초)을 표시합니다.

모니터 탭의 평균 응답 시간 그래프
메일

Incoming 그래프는 일일 수신 이메일 수에 대한 데이터를 표시합니다:

  • 수신된 이메일 은 성공적으로 수신된 이메일을 나타냅니다.

  • 수신된 이메일이 반송되었습니다 는 이메일 수신에 실패했다는 것을 의미합니다.

모니터 탭의 수신 그래프

Outgoing 그래프는 일일 발신 이메일 수에 대한 데이터를 표시합니다:

  • 발신된 이메일 은 성공적으로 발송된 이메일을 나타냅니다.

  • 발신된 이메일이 반송되었습니다 는 이메일 발신에 실패했다는 것을 의미합니다.

모니터 탭의 발신 그래프

로그

로그 탭에서 서버 로그를 실시간으로 확인할 수 있습니다.

브랜치 로그 탭

다양한 로그를 사용할 수 있습니다.

  • pip.log: 파이썬 종속성 설치 기록

  • install.log: 데이터베이스 설치 (개발 브랜치의 경우 테스트 포함)

  • odoosh-import-database.log: 최근 가져온 덤프 프로세스

  • odoo.log: 운영 중인 서버

  • update.log: 데이터베이스 업데이트

  • pg_slow_queries.log: 비정상적으로 많은 시간이 소요된 경우 psql 쿼리

  • sh_webshell.log: 웹셸에서 수행된 작업

  • sh_editor.log: 편집기에서 수행된 작업

  • neutralize.log: 데이터베이스 중립화 (스테이징에만 적용)

로그가 자동으로 스크롤됩니다

로그에 새 줄이 추가되면 자동으로 표시됩니다. 하단으로 스크롤하면 새 줄이 추가될 때마다 브라우저가 자동으로 스크롤됩니다.

오른쪽 상단의 (일시정지) 버튼을 클릭하여 로그 가져오기 프로세스를 일시중지할 수 있습니다. 그렇지 않으면 5분 후에 프로세스가 중지됩니다. (재생) 버튼을 클릭하여 다시 시작할 수 있습니다.

백업

백업 탭에는 다운로드 및 복원 가능한 백업 목록이 표시되며, 수동 백업을 수행하고 데이터베이스를 가져올 수 있습니다.

브랜치 백업 탭

프로덕션 데이터베이스는 매일 자동으로 백업됩니다. 7개의 일일 백업, 4개의 주간 백업, 3개의 월간 백업이 보관됩니다. 각 백업에는 데이터베이스 덤프, 파일 저장소(첨부 파일 및 바이너리 필드), 로그, 세션이 포함됩니다.

참고

시스템 작동 방식을 더 잘 이해하려면 `자동 백업 예상 일정 <https://docs.google.com/spreadsheets/d/e/2PACX-1vSJpyyyQ7kr5WSutkrDE3ybgpYySogseN7x2Og6fIbpPYABHe0q8xq0y0xh7P-QSHkX3RTTVqKMIExy/pubhtml?gid=0&single=true>`_을 참조할 수 있습니다. 이 파일은 현재 날짜를 기준점으로 하여 매일 업데이트됩니다.

스테이징 및 개발 데이터베이스는 자동으로 백업되지 않습니다. 그러나 테스트 목적으로 스테이징 브랜치에서 프로덕션 데이터베이스의 백업을 복원하거나, 프로덕션 데이터베이스에서 실수로 삭제된 데이터를 수동으로 복구할 수 있습니다.

목록에는 프로덕션 데이터베이스 서버에 보관된 백업이 포함됩니다. 이 서버는 한 달 동안의 백업만 보관합니다: 7개의 일일 백업과 4개의 주간 백업.

전용 백업 서버는 동일한 백업과 3개의 추가 월간 백업을 보관합니다. 이러한 월간 백업 중 하나를 복원하거나 다운로드하려면 `Odoo 지원팀 <https://www.odoo.com/help>`_에 문의하십시오.

커밋을 병합하여 하나 이상의 모듈 버전(__manifest__.py 파일 내) 혹은 해당 모듈의 연결된 Python 종속성 버전(requirements.txt 내)으로 업데이트할 경우, Odoo.sh에서는 자동으로 백업이 진행됩니다(목록에서 업데이트 유형으로 표시됨). 이와 같은 상황이 발생되는 이유는, 먼저 새로운 pip 패키지 설치로 인해 컨테이너가 변경되는 경우 혹은 모듈 업데이트가 트리거되어 데이터베이스 자체가 변경될 수 있기 때문입니다. 이러한 경우 백업이 실행되어 시스템 장애가 발생할 가능성에 대비합니다.

병합된 커밋이 모듈 또는 연결된 종속성의 버전을 업데이트하지 않으면 Odoo.sh에서 백업이 트리거되지 않습니다. 컨테이너나 데이터베이스가 수정되지 않기 때문입니다. 따라서 플랫폼은 이를 충분히 안전하다고 판단합니다. 추가 예방 조치로 프로덕션 소스를 수정하기 전에 수동 백업을 만들 수 있습니다.

수동 백업의 목적은 프로덕션 또는 스테이징 데이터베이스의 특정 스냅샷을 생성하는 것입니다(개발에는 사용 불가). 이러한 백업은 7일 동안 사용할 수 있습니다. 그러나 일일 수동 백업은 5개로 제한됩니다.

단계

자동 백업

수동 백업

생산

예 (최대 3개월)

예 (3일)

스테이징

아니요

예 (3일)

개발

아니요

아니요

다음에서 데이터베이스 가져오기 기능에 데이터베이스 아카이브가 적용됩니다:

  • 표준 Odoo 데이터베이스 관리자(온프레미스 Odoo 서버의 `/web/database/manager`에서 사용 가능)

  • Odoo 온라인 데이터베이스 관리자

  • Odoo.sh 백업 탭 ( (다운로드 옵션) 버튼 사용)

  • Odoo.sh 빌드 보기 (DB 덤프 다운로드 를 클릭)

업그레이드

업그레이드 탭은 유효한 프로젝트의 프로덕션 및 스테이징 브랜치를 업그레이드하는 데 사용할 수 있습니다. 업그레이드 프로세스에 대한 자세한 내용은 :doc:`업그레이드 문서 <../../upgrade>`를 참조하십시오.

브랜치 업그레이드 탭

도구

도구 탭에는 코드 프로파일러가 포함되어 있습니다. 이는 프로파일링 세션을 시작하여 인스턴스에서 실행 중인 Odoo 워커의 활동을 최대 5분 동안 기록하는 데 사용됩니다. 세션을 더 일찍 종료하도록 선택할 수 있으며, 짧은 시간 동안 도구를 실행하면 보고서의 노이즈 양을 줄일 수 있습니다.

코드 프로파일러 활용하기

각 세션 후에는 Odoo 워커가 시간을 할당하는 방식을 시각화하는 데 도움이 되는 대화형 플레임 그래프가 생성됩니다.

경고

프로파일러를 실행하면 많은 서버 리소스가 소모되므로 너무 오래 실행하지 마십시오. 목표는 데이터베이스에서 특정 작업을 기록하는 것입니다.

설정

설정 탭에는 현재 선택된 브랜치에 사용 가능한 구성 옵션이 나열됩니다. 옵션은 각 단계마다 다릅니다.

브랜치 설정 탭

새 커밋 시 동작

개발스테이징 브랜치에 대해 새 커밋을 받을 때 브랜치의 동작을 변경할 수 있습니다.

기본적으로 개발 브랜치는 새 빌드를 생성하고 스테이징 브랜치는 이전 빌드를 업데이트합니다. 작업 중인 기능이 특정 구성을 필요로 하는 경우 유용합니다. 커밋할 때마다 수동으로 다시 구성할 필요가 없기 때문입니다.

스테이징 브랜치에 대해 :guilabel:`새 빌드`를 선택하면 커밋이 푸시될 때마다 프로덕션 빌드의 새로운 사본이 생성됩니다.

**스테이징**에서 **개발**로 이동된 브랜치는 자동으로 :guilabel:`아무 작업 안 함`으로 설정됩니다.

모듈 설치

개발 브랜치에 대해 자동으로 설치할 모듈을 선택할 수 있습니다.

설정 탭 모듈 설치

기본 동작을 변경하려면 Development build behavior 아래의 Use Default 옵션을 해제하고 Module Installation 아래에서 다음 옵션 중 하나를 선택하세요:

  • Install only my modules (does not include submodules): 브랜치의 모듈만 설치하고 :doc:`하위 모듈 <../advanced/submodules>`은 제외합니다. 이것은 기본 옵션입니다.

  • Full installation (no test suite): 브랜치의 모듈, 하위 모듈 및 모든 표준 Odoo 모듈을 설치합니다. 전체 설치를 실행하면 테스트 스위트가 비활성화됩니다.

  • Install a list of modules: 지정된 모듈을 설치합니다. 기술 이름을 입력하고 쉼표로 구분하세요(예: sale_management,website,accountant).

참고

테스트 스위트가 활성화된 경우 모든 표준 Odoo 모듈을 설치하는 데 최대 1시간이 걸릴 수 있습니다.

제품군 테스트

기본적으로 개발 브랜치의 테스트 스위트는 활성화되어 있습니다. 테스트 태그 <developer/reference/testing/selection>`를 입력하고 쉼표로 구분하여 실행할 테스트를 제한할 수 있습니다(예: `custom_tags,at_install,post_install).

테스트 스위트를 완전히 비활성화하려면 :guilabel:`Validate the test suite on new builds`를 해제하세요.

Odoo 버전

다른 :guilabel:`Version`을 선택하여 개발 브랜치의 Odoo 버전을 변경할 수 있습니다. 예를 들어 업그레이드된 코드를 테스트하거나 프로덕션 데이터베이스가 최신 버전으로 업그레이드되는 동안 기능을 개발할 수 있습니다.

기본적으로 :guilabel:`Revision`으로 :guilabel:`Latest`가 선택되며, Odoo 서버의 소스는 최신 버그, 보안 및 성능 수정 사항을 적용받기 위해 매주 자동으로 업데이트됩니다.

대신 특정 리비전을 선택하려면 Revision 필드를 사용하여 선택하세요.

경고

리비전은 3개월 후에 만료됩니다. 리비전의 만료일이 다가오면 이메일로 알림을 받게 됩니다. 만료될 때까지 조치를 취하지 않으면 Revision 필드가 자동으로 :guilabel:`Latest`로 다시 설정됩니다.

설정 탭 변경 사항

사용자 지정 도메인

모든 브랜치 유형에 대해 추가 <name>.odoo.com 도메인 또는 자체 사용자 지정 도메인을 구성할 수 있습니다.

사용자 지정 도메인을 사용하려면 필수적으로:

  • 도메인 주소를 확보하거나 구매합니다.

  • Custom domains 아래에 도메인 이름을 입력한 다음(예: www.mycompany.com) :guilabel:`Add domain`을 클릭하세요.

  • 등록 기관의 도메인 이름 관리자를 사용하여 CNAME 레코드 값을 프로덕션 데이터베이스 도메인 이름(예: mycompany.odoo.com)으로 설정하여 도메인 이름(예: www.mycompany.com)을 구성하세요.

중요

베어 도메인(예: mycompany.com)은 허용되지 않습니다. 베어 도메인은 IP 주소만 값으로 허용하는 A 레코드를 사용하여만 구성할 수 있습니다. 따라서 데이터베이스의 IP 주소가 변경될 수 있으므로(예: 업그레이드, 하드웨어 장애, 데이터베이스 호스팅 위치 변경) 베어 도메인이 갑자기 작동하지 않을 수 있습니다.

베어 도메인(예: mycompany.com)과 www 도메인(예: www.mycompany.com)이 모두 작동하도록 하려면 베어 도메인을 www 도메인으로 리디렉션해야 합니다. 대부분의 도메인 관리자는 일반적으로 웹 리디렉션이라고 하는 이 리디렉션을 구성하는 방법을 제공합니다.

HTTPS/SSL

리디렉션이 올바르게 설정되면 한 시간 이내에 `Let’s Encrypt <https://letsencrypt.org/about>`_를 사용하여 SSL 인증서가 자동으로 생성되며, 이는 도메인이 HTTPS를 통해 액세스 가능함을 의미합니다.

SPF 및 DKIM 준수

이메일 주소의 도메인이 SPF 또는 DKIM 인증 프로토콜을 사용하는 경우, 발신 이메일의 전달 가능성을 높이기 위해 도메인 이름 설정에서 Odoo를 발신 호스트로 승인해야 합니다. 자세한 내용은 :doc:`Configure DNS records to send emails in Odoo documentation <../../../applications/general/email_communication/email_domain>`을 참조하세요.

중요

Odoo가 발신 호스트로 승인되지 않으면 발신 이메일이 스팸으로 표시될 수 있습니다.

셸 명령어

보기의 오른쪽 상단 모서리에 여러 셸 명령이 표시됩니다. 명령은 클립보드 버튼을 사용하여 복사한 다음 터미널에서 사용할 수 있습니다. 또한 일부 명령은 Odoo.sh 인터페이스에서 직접 사용할 수 있습니다.

브랜치 셸 명령어 단축키

복제하기

clone 명령은 Git 저장소의 로컬 복사본을 생성하는 데 사용됩니다.

Example

git clone --recurse-submodules --branch development git@github.com:my-organization/my-repository.git
  • --recurse-submodules 로 저장소의 하위 모듈 다운로드

  • --branch main`은 저장소의 특정 브랜치(예: `development)를 체크아웃합니다

참고

run 버튼은 사용할 수 없습니다. 이 명령은 머신에 로컬 복사본을 생성하는 데 사용되기 때문입니다.

Fork

fork 명령은 현재 브랜치를 기반으로 새 브랜치를 생성하는 데 사용됩니다.

Example

git checkout -b main-1 development && git push -u origin development-1
  • git checkout -b main-1 main 현재 브랜치(예: development)를 기반으로 새 브랜치(예: development-1)를 생성하는 명령

  • git push -u origin development-1 새 브랜치(예: development-1)를 원격 리포지토리에 업로드하는 명령

병합

merge 명령은 한 브랜치의 변경 사항을 다른 브랜치에 결합하는 데 사용됩니다.

Example

git merge staging-1 && git push -u origin staging
  • git merge staging-1 현재 브랜치의 변경 사항을 다른 브랜치(예: staging-1)에 병합하는 명령

  • git push -u origin staging 병합된 변경 사항을 원격 리포지토리 브랜치(예: staging)에 업로드하는 명령

SSH

SSH 명령은 SSH를 사용하여 빌드에 연결하는 데 사용됩니다.

SSH 명령을 사용하려면 먼저 SSH 키를 설정해야 합니다. 설정 방법:

Example

ssh 25004381@my-user-my-repository-staging-25004381.dev.odoo.com
  • 25004381 빌드 ID

  • my-user-my-repository-staging-25004381.dev.odoo.com 빌드 연결에 사용된 도메인

프로젝트에 대한 필요한 :ref:`접근 권한 <odoo-sh/settings/collaborators>`이 있으면 빌드에 대한 SSH 액세스 권한이 부여됩니다.

참고

장시간 실행되는 SSH 연결은 보장되지 않습니다. 유휴 연결은 리소스를 확보하기 위해 연결이 해제될 수 있습니다.

하위 모듈

submodule 명령은 다른 저장소의 브랜치를 서브모듈로 현재 브랜치에 추가하는 데 사용됩니다.

Example

git submodule add -b master <URL> <PATH> && git commit -a && git push -u origin staging
  • git submodule add -b master <URL> <PATH> 리포지토리(<URL>)의 특정 브랜치(예: master)를 현재 브랜치의 지정된 경로(<PATH>) 아래에 서브모듈로 추가하는 명령

  • git commit -a 는 현재 변경 사항을 모두 커밋하는 명령어입니다

  • git push -u origin staging 현재 브랜치(예: staging)의 변경 사항을 원격 리포지토리에 업로드하는 명령

삭제

delete 명령은 저장소에서 브랜치를 삭제하는 데 사용됩니다.

참고

브랜치를 삭제하면 백업이 존재하지 않는 한 복구할 방법이 없습니다. 스테이징 브랜치는 자동으로 백업되지 않지만 수동으로 백업할 수 있습니다. 개발 브랜치는 백업할 수 없습니다.

Example

git push origin :staging && git branch -D staging
  • git push origin :staging 원격 리포지토리의 특정 브랜치(예: staging)를 삭제하는 명령

  • git branch -D staging 리포지토리의 로컬 복사본에서 특정 브랜치를 삭제하는 명령

경고

브랜치를 삭제하기 전에 :ref:`백업 섹션 <odoo-sh/branches/tabs/backups>`을 참조하여 백업 작동 방식과 수동 백업을 생성해야 하는 시기를 잘 이해하시기 바랍니다.