refs #741 #742: reorganize repository by application

This commit is contained in:
devmrko
2026-08-03 10:20:36 +09:00
parent 2e44ed0b97
commit e9d50e6a32
445 changed files with 1523 additions and 1885 deletions

50
run.sh
View File

@@ -131,48 +131,48 @@ do_source() {
PGPASSWORD="$PG_PASSWORD" psql \
-h "$PG_HOST" -p "$PG_PORT" -U "$PG_USER" -d "$PG_DB" \
-v ON_ERROR_STOP=1 \
-f "$ROOT/sql/source/postgres_setup.sql"
-f "$ROOT/database/source/postgres_setup.sql"
ok "Postgres source 준비 완료"
log "-- MySQL ($MY_HOST:$MY_PORT/$MY_DB) --"
mysql \
-h "$MY_HOST" -P "$MY_PORT" -u "$MY_USER" "-p${MY_PASSWORD}" \
"$MY_DB" < "$ROOT/sql/source/mysql_setup.sql"
"$MY_DB" < "$ROOT/database/source/mysql_setup.sql"
ok "MySQL source 준비 완료"
}
do_adb() {
log "=== adb: ADB 측 cleanup → dblinks → perm/ctx/view/policy → end_users ==="
run_sqlplus_file "$ROOT/sql/adb/00_cleanup.sql"
run_sqlplus_file "$ROOT/sql/adb/01_dblinks.sql"
run_sqlplus_file "$ROOT/sql/adb/02_perm_tables.sql"
run_sqlplus_file "$ROOT/sql/adb/03_seed.sql"
run_sqlplus_file "$ROOT/sql/adb/04_secure_ctx.sql"
run_sqlplus_file "$ROOT/sql/adb/05_views.sql"
run_sqlplus_file "$ROOT/sql/adb/06_policy.sql"
run_sqlplus_file "$ROOT/sql/adb/06a_redaction.sql"
run_sqlplus_file "$ROOT/sql/adb/07_end_users.sql"
run_sqlplus_file "$ROOT/database/adb/00_cleanup.sql"
run_sqlplus_file "$ROOT/database/adb/01_dblinks.sql"
run_sqlplus_file "$ROOT/database/adb/02_perm_tables.sql"
run_sqlplus_file "$ROOT/database/adb/03_seed.sql"
run_sqlplus_file "$ROOT/database/adb/04_secure_ctx.sql"
run_sqlplus_file "$ROOT/database/adb/05_views.sql"
run_sqlplus_file "$ROOT/database/adb/06_policy.sql"
run_sqlplus_file "$ROOT/database/adb/06a_redaction.sql"
run_sqlplus_file "$ROOT/database/adb/07_end_users.sql"
ok "ADB setup 완료"
}
do_tests() {
log "=== tests: 4-user access matrix 검증 ==="
run_sqlplus_as vpduser_my "$VPDUSER_MY_PASSWORD" "$ROOT/sql/adb/08_tests_user_my.sql"
run_sqlplus_as vpduser_pg "$VPDUSER_PG_PASSWORD" "$ROOT/sql/adb/09_tests_user_pg.sql"
run_sqlplus_as vpduser_both "$VPDUSER_BOTH_PASSWORD" "$ROOT/sql/adb/10_tests_user_both.sql"
run_sqlplus_as vpduser_none "$VPDUSER_NONE_PASSWORD" "$ROOT/sql/adb/11_tests_user_none.sql"
run_sqlplus_as vpduser_my "$VPDUSER_MY_PASSWORD" "$ROOT/database/adb/08_tests_user_my.sql"
run_sqlplus_as vpduser_pg "$VPDUSER_PG_PASSWORD" "$ROOT/database/adb/09_tests_user_pg.sql"
run_sqlplus_as vpduser_both "$VPDUSER_BOTH_PASSWORD" "$ROOT/database/adb/10_tests_user_both.sql"
run_sqlplus_as vpduser_none "$VPDUSER_NONE_PASSWORD" "$ROOT/database/adb/11_tests_user_none.sql"
ok "4명 (MY / PG / BOTH / NONE) 테스트 실행 완료"
}
do_audit() {
log "=== audit: admin 으로 정책 / 뷰 / 매트릭스 점검 ==="
run_sqlplus_file "$ROOT/sql/adb/12_tests_admin_audit.sql"
run_sqlplus_file "$ROOT/database/adb/12_tests_admin_audit.sql"
ok "audit 완료"
}
do_backoffice_support() {
log "=== backoffice-support: Spring Boot 백오피스 보조 객체 생성 ==="
run_sqlplus_file "$ROOT/sql/adb/25_agent_ords_security_backoffice_support.sql"
run_sqlplus_file "$ROOT/database/adb/25_agent_ords_security_backoffice_support.sql"
ok "backoffice-support 완료"
}
@@ -191,7 +191,7 @@ do_backoffice_env_check() {
do_teardown() {
log "=== teardown: ADB 측 객체 + dblink/credential 정리 ==="
warn "원격 PG/MySQL 의 customers 테이블은 건드리지 않습니다 (수동으로 DROP 하세요)"
run_sqlplus_file "$ROOT/sql/adb/00_cleanup.sql"
run_sqlplus_file "$ROOT/database/adb/00_cleanup.sql"
ok "teardown 완료"
}
@@ -209,24 +209,24 @@ do_dds_prereq() {
do_dds_setup() {
log "=== dds-setup: 13_dds_variant.sql (END USER + DATA ROLE + DATA GRANT) ==="
# 멱등성: 부분 적용 상태를 먼저 청소한 뒤 재생성
run_sqlplus_file "$ROOT/sql/adb/15_dds_cleanup.sql"
run_sqlplus_file "$ROOT/sql/adb/13_dds_variant.sql"
run_sqlplus_file "$ROOT/database/adb/15_dds_cleanup.sql"
run_sqlplus_file "$ROOT/database/adb/13_dds_variant.sql"
ok "DDS 셋업 완료"
}
do_dds_tests() {
log "=== dds-tests: 4-user (ddsuser_*) 매트릭스 검증 ==="
# END USER 이름이 lowercase 라 사용자명을 큰따옴표로 감싸서 전달.
run_sqlplus_as '"ddsuser_my"' "$DDSUSER_MY_PASSWORD" "$ROOT/sql/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_pg"' "$DDSUSER_PG_PASSWORD" "$ROOT/sql/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_both"' "$DDSUSER_BOTH_PASSWORD" "$ROOT/sql/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_none"' "$DDSUSER_NONE_PASSWORD" "$ROOT/sql/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_my"' "$DDSUSER_MY_PASSWORD" "$ROOT/database/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_pg"' "$DDSUSER_PG_PASSWORD" "$ROOT/database/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_both"' "$DDSUSER_BOTH_PASSWORD" "$ROOT/database/adb/14_tests_dds_user.sql"
run_sqlplus_as '"ddsuser_none"' "$DDSUSER_NONE_PASSWORD" "$ROOT/database/adb/14_tests_dds_user.sql"
ok "DDS 4명 (MY / PG / BOTH / NONE) 테스트 실행 완료"
}
do_dds_teardown() {
log "=== dds-teardown: DDS 객체만 정리 (VPD 데모는 보존) ==="
run_sqlplus_file "$ROOT/sql/adb/15_dds_cleanup.sql"
run_sqlplus_file "$ROOT/database/adb/15_dds_cleanup.sql"
ok "DDS teardown 완료"
}