본문으로 건너뛰기
DispatchAtlas
검색

설치

DispatchAtlas는 Python 3.12 이상을 대상으로 하며, 재현 가능한 로컬 개발을 위해 uv를 사용합니다.

원샷 설치

설치 명령은 명시적인 DISPATCHATLAS_REF를 요구하며, 이를 통해 다운로드한 스크립트가 안정적인 소스 리비전에 고정됩니다. 전체 40자 커밋 SHA는 변경되지 않고, 정확히 하나의 트리를 가리키며, 구성상 검증되는 가장 강력한 고정 방식이므로, 설치된 리비전을 검증할 수 있어야 하는 경우 이를 우선하세요. 릴리스 태그도 허용되지만 편의를 위한 고정 방식이며, 태그는 이동할 수 있고 설치 프로그램이 태그 서명을 검증하지 않으므로 무인 설치에는 SHA를 고정 방식으로 사용하세요. 릴리스 워크플로가 생성하는 cosign 서명과 빌드 프로버넌스는 게시된 배포 아티팩트를 대상으로 하며, 이는 이 소스 체크아웃 대신 해당 자산을 설치하는 사용자를 위한 별도의 검증 표면입니다. 스크립트를 다운로드하고 검토한 다음 실행하세요. 각 블록의 마지막 파이프 명령은 원샷 대안입니다. 검토 단계 없이 스트림을 실행하므로, 이미 검증한 참조에만 사용하세요.

export DISPATCHATLAS_REF="<full-40-character-commit-sha>"   # a release tag also works
curl -fsSL -o install.sh "https://raw.githubusercontent.com/ahmed-g-gad/dispatchatlas/${DISPATCHATLAS_REF}/scripts/installer/install.sh"
sh install.sh   # run after reviewing install.sh
 
curl -fsSL "https://raw.githubusercontent.com/ahmed-g-gad/dispatchatlas/${DISPATCHATLAS_REF}/scripts/installer/install.sh" | sh   # one-shot alternative
$env:DISPATCHATLAS_REF = "<full-40-character-commit-sha>"   # a release tag also works
iwr -OutFile install.ps1 "https://raw.githubusercontent.com/ahmed-g-gad/dispatchatlas/$($env:DISPATCHATLAS_REF)/scripts/installer/install.ps1"
.\install.ps1   # run after reviewing install.ps1
 
irm "https://raw.githubusercontent.com/ahmed-g-gad/dispatchatlas/$($env:DISPATCHATLAS_REF)/scripts/installer/install.ps1" | iex   # one-shot alternative

설치 프로그램은 gituv가 있는지 확인하고, 체크아웃을 복제하거나 업데이트한 다음 uv sync --all-extras --group dev를 실행합니다. 체크아웃만 구체화하려면 DISPATCHATLAS_SKIP_SYNC=1을 설정하세요.

🧱 워크스페이스 설치

uv sync --all-extras --group dev

워크스페이스는 루트 네임스페이스와 함께 목적별 배포판을 설치합니다.

배포판임포트 네임스페이스
dispatchatlasdispatchatlas
dispatchatlas-coredispatchatlas.core
dispatchatlas-benchdispatchatlas.bench
dispatchatlas-solvedispatchatlas.solve
dispatchatlas-labdispatchatlas.lab
dispatchatlas-analyticadispatchatlas.analytica

검증

uv run python -c "import dispatchatlas, dispatchatlas.core"
uv run dispatchatlas --help
uv run pytest
npm --prefix site run build
npm --prefix site run check

선택적 대형 솔버 통합은 extras 뒤에 유지됩니다. 이러한 백엔드가 없을 때에도 기본 워크스페이스는 임포트가 가볍게 유지됩니다.

⚙️ 구성

변수기본값용도
DISPATCHATLAS_HOMEPOSIX에서는 $HOME/.local/share/dispatchatlas, Windows에서는 %LOCALAPPDATA%\DispatchAtlas설치된 체크아웃 경로.
DISPATCHATLAS_REPO_URLhttps://github.com/ahmed-g-gad/dispatchatlas.git설치 프로그램이 사용하는 Git 원격.
DISPATCHATLAS_REF필수설치하거나 업데이트할 릴리스 태그 또는 전체 40자 커밋 SHA.
DISPATCHATLAS_SKIP_SYNC0체크아웃 후 의존성 동기화를 건너뛰려면 1로 설정합니다.

🔄 업데이트

업데이트 스크립트는 적용 플래그를 전달하지 않는 한 읽기 전용입니다. 업데이트를 확인하거나 적용하기 전에 DISPATCHATLAS_REF를 릴리스 태그 또는 전체 40자 커밋 SHA로 설정하세요; 설치 시와 마찬가지로 SHA는 변경되지 않고 구성상 검증되는 고정 방식인 반면, 태그는 업데이터가 서명으로 검증하지 않는 이동형 편의용 고정 방식입니다:

$env:DISPATCHATLAS_REF = "<release-tag>"
.\scripts\installer\update.ps1
.\scripts\installer\update.ps1 -Apply
export DISPATCHATLAS_REF="<release-tag>"
scripts/installer/update.sh
scripts/installer/update.sh --apply

🗑️ 제거

제거 스크립트는 제거 전에 확인하고, 안전하지 않은 대상을 거부하며, 기본적으로 체크아웃을 타임스탬프가 붙은 백업으로 이동합니다.

.\scripts\installer\uninstall.ps1 -Yes
scripts/installer/uninstall.sh --yes

백업 경로가 필요하지 않을 때에만 -Permanent 또는 --permanent를 사용하세요.