스케줄, 버전과 실행 건
Schedule은 현재 구성과 일시 중지 상태를, ScheduleVersion은 특정 버전의 구성을, ScheduleRun은 트리거를 한 번 처리한 결과를 나타냅니다. 실행 건이 만들어졌다는 사실과 빌드가 완료되었다는 사실을 구분합니다.
Schedule
currentVersionRid는 현재 버전을 가리킵니다. 특정 버전으로부터 부모 스케줄을 조회했더라도 반환한 현재 버전이 조회에 사용한 버전과 같다고 전제하지 않습니다.
반환된 스케줄입니다.
| 이름 | 자료형 | 필수 여부 | 의미와 조건 | 예시 값 |
|---|---|---|---|---|
rid | string | 필수 | 스케줄의 RID입니다. | ri.scheduler.main.schedule.5ad5c340-59f3-4a60-9fc6-161bb984f871 |
displayName | string | 선택 | My Daily Schedule | |
description | string | 선택 | Run all the transforms at midnight | |
currentVersionRid | string | 필수 | 현재 스케줄 버전의 RID입니다. | |
createdTime | string (date-time) | 필수 | 리소스 생성 시각입니다. | 2024-09-25T17:29:35.974Z |
createdBy | string | 필수 | 리소스를 생성한 Foundry 사용자입니다. | f05f8da4-b84c-4fca-9c77-8af0b13d11de |
updatedTime | string (date-time) | 필수 | 리소스를 가장 최근에 갱신한 시각입니다. | 2024-09-25T17:29:35.974Z |
updatedBy | string | 필수 | 리소스를 마지막으로 갱신한 Foundry 사용자입니다. | f05f8da4-b84c-4fca-9c77-8af0b13d11de |
paused | boolean | 필수 | false | |
trigger | union | 선택 | 스케줄 트리거입니다. 요청 사용자에게 트리거를 볼 권한이 없으면 값이 비어 있을 수 있습니다. | 응답 예시 참조 |
action | object | 필수 | 응답 예시 참조 | |
scopeMode | union<project, user> | 필수 | 스케줄이 빌드할 수 있는 범위입니다. | 응답 예시 참조 |
trigger의 구조
전체 11가지 분기는 트리거 참조를 따릅니다.
action의 구조
반환되는 액션의 필수 여부와 각 설정은 스케줄 액션을 따릅니다.
scopeMode의 구조
프로젝트 및 사용자 범위의 전체 필드는 실행 범위를 따릅니다.
ScheduleVersion
버전에는 트리거, 액션과 실행 범위가 있습니다. 스케줄의 현재 표시 이름이나 일시 중지 상태는 별도의 Schedule 모델에서 확인합니다.
| 이름 | 자료형 | 필수 여부 | 의미와 조건 | 예시 값 |
|---|---|---|---|---|
rid | string | 필수 | 스케줄 버전의 RID입니다. | ri.scheduler.main.schedule-version.4d1eb55f-6c13-411c-a911-5d84e08d8017 |
scheduleRid | string | 필수 | 스케줄의 RID입니다. | ri.scheduler.main.schedule.5ad5c340-59f3-4a60-9fc6-161bb984f871 |
createdTime | string (date-time) | 필수 | 스케줄 버전이 생성된 시각입니다. | 2003-05-06T12:34:56.789Z |
createdBy | string | 필수 | 스케줄 버전을 생성한 Foundry 사용자입니다. | f05f8da4-b84c-4fca-9c77-8af0b13d11de |
trigger | union | 선택 | ||
action | object | 필수 | 응답 예시 참조 | |
scopeMode | union<project, user> | 필수 | 스케줄이 빌드할 수 있는 범위입니다. |
trigger의 구조
전체 11가지 분기는 트리거 참조를 따릅니다.
action의 구조
반환되는 액션의 필수 여부와 각 설정은 스케줄 액션을 따릅니다.
scopeMode의 구조
프로젝트 및 사용자 범위의 전체 필드는 실행 범위를 따릅니다.
ScheduleRun
result가 없으면 서비스가 아직 트리거를 처리하는 중입니다. ignored는 모든 대상이 최신 상태여서 빌드를 만들지 않은 결과입니다. submitted의 buildRid는 시작된 빌드를 가리키며, 데이터 갱신 완료 여부는 빌드 상태로 확인합니다.
error에는 필수 errorName과 description이 있습니다. 이것은 스케줄 실행 건의 결과이며 HTTP 요청의 오류 응답과 별도로 처리합니다. createdBy는 수동 실행 사용자이며 자동 트리거 실행에서는 비어 있습니다.
| 이름 | 자료형 | 필수 여부 | 의미와 조건 | 예시 값 |
|---|---|---|---|---|
rid | string | 필수 | 스케줄 실행 건의 RID입니다. | ri.scheduler.main.run.d2a5e9c6-298d-4788-a71d-42885d7bebb3 |
scheduleRid | string | 필수 | 스케줄의 RID입니다. | ri.scheduler.main.schedule.5ad5c340-59f3-4a60-9fc6-161bb984f871 |
scheduleVersionRid | string | 필수 | 스케줄 버전의 RID입니다. | |
createdTime | string (date-time) | 필수 | 스케줄 실행 건이 생성된 시각입니다. | 2003-05-06T12:34:56.789Z |
createdBy | string | 선택 | 이 실행 건을 수동으로 시작한 Foundry 사용자입니다. 자동 트리거로 시작한 경우 값이 없습니다. | f05f8da4-b84c-4fca-9c77-8af0b13d11de |
result | union<ignored, submitted, error> | 선택 | 스케줄 트리거 처리의 결과입니다. 값이 없으면 서비스가 아직 트리거 처리를 진행 중입니다. |
result의 구조
분기 ignored
모든 대상이 최신 상태여서 빌드를 실행하지 않았습니다.
| 이름 | 자료형 | 필수 여부 | 의미와 조건 | 예시 값 |
|---|---|---|---|---|
type | enum | 필수 | 허용값: ignored. | ignored |
분기 submitted
스케줄이 성공적으로 트리거되었습니다.
| 이름 | 자료형 | 필수 여부 | 의미와 조건 | 예시 값 |
|---|---|---|---|---|
type | enum | 필수 | 허용값: submitted. | submitted |
buildRid | string | 필수 | 빌드의 RID입니다. | ri.foundry.main.build.a4386b7e-d546-49be-8a36-eefc355f5c58 |
분기 error
스케줄을 실행하려다 오류가 발생했습니다.
| 이름 | 자료형 | 필수 여부 | 의미와 조건 | 예시 값 |
|---|---|---|---|---|
type | enum | 필수 | 허용값: error. | error |
errorName | enum | 필수 | 허용값: TARGETRESOLUTIONFAILURE, CYCLICDEPENDENCY, INCOMPATIBLETARGETS, PERMISSIONDENIED, JOBSPECNOTFOUND, SCHEDULEOWNERNOTFOUND, INTERNAL. | TARGETRESOLUTIONFAILURE |
description | string | 필수 |