데이터베이스 마이그레이션 API
Offering: GitLab Self-Managed
이 API를 사용하여 GitLab 데이터베이스 마이그레이션을 관리합니다. 보류 중인 마이그레이션을 성공적으로 실행된 것으로 표시하여 db:migrate 태스크에서 실행되지 않도록 합니다. 지정된 데이터베이스에 대해 아직 실행되지 않은 모든 보류 중인 마이그레이션 목록을 반환합니다.
히스토리
- GitLab 16.2에서 도입되었습니다.
이 API를 사용하여 GitLab 데이터베이스 마이그레이션을 관리합니다.
전제 조건:
- 인스턴스에 대한 관리자 접근 권한이 있어야 합니다.
마이그레이션을 성공으로 표시#
보류 중인 마이그레이션을 성공적으로 실행된 것으로 표시하여 db:migrate 태스크에서 실행되지 않도록 합니다.
이 API를 사용하여 건너뛰어도 안전하다고 판단된 실패한 마이그레이션을 건너뜁니다.
POST /api/v4/admin/migrations/:version/mark
| 속성 | 유형 | 필수 | 설명 |
|---|---|---|---|
version |
정수 | 예 | 건너뛸 마이그레이션의 버전 타임스탬프 |
database |
문자열 | 아니요 | 마이그레이션을 건너뛸 데이터베이스 이름. 기본값은 main. |
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/admin/migrations/:version/mark"
보류 중인 마이그레이션 목록#
지정된 데이터베이스에 대해 아직 실행되지 않은 모든 보류 중인 마이그레이션 목록을 반환합니다.
GET /api/v4/admin/migrations/pending
| 속성 | 유형 | 필수 | 설명 |
|---|---|---|---|
database |
문자열 | 아니요 | 쿼리할 데이터베이스 이름. 기본값은 main. |
요청 예시:
curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/admin/migrations/pending?database=main"
응답 예시:
{
"pending_migrations": [
{
"version": 20240101120000,
"name": "create_users_table",
"filename": "20240101120000_create_users_table.rb",
"status": "pending"
},
{
"version": 20240102150000,
"name": "add_email_to_users",
"filename": "20240102150000_add_email_to_users.rb",
"status": "pending"
}
],
"database": "main",
"total_pending": 2
}
