Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Python 함수 로컬 개발

Python 함수 저장소를 로컬 IDE에서 편집할 수 있습니다. 아티팩트 게시와 Foundry의 검사 및 빌드는 변경을 저장소로 push한 뒤 실행합니다.

저장소 복제

Code Repositories 메뉴의 Work locally를 열고 표시된 저장소 URL을 복사합니다.

아래 Bash 명령은 REPOSITORY_URL에 복사한 URL, LOCAL_REPOSITORY_DIR에 새 로컬 디렉터리를 미리 설정한 상태에서 실행합니다. 복제에 실패하면 다른 위치에서 후속 작업을 하지 않도록 이동을 연결합니다.

: "${REPOSITORY_URL:?Work locally의 저장소 URL이 필요합니다}"
: "${LOCAL_REPOSITORY_DIR:?새 로컬 저장소 디렉터리가 필요합니다}"
git clone "$REPOSITORY_URL" "$LOCAL_REPOSITORY_DIR" && cd "$LOCAL_REPOSITORY_DIR"

복제에 제공된 토큰은 짧게 유효하며 해당 저장소에 push하는 예외를 제외하면 읽기 전용입니다. 토큰을 코드나 설정 파일에 커밋하지 않습니다.

환경 조건

  • Java 21을 설치하고 JAVA_HOME을 해당 설치 경로로 설정합니다.
  • 저장소를 최신 템플릿으로 업그레이드합니다.
  • CI, JEMMA와 CA 환경 변수가 설정되지 않아야 합니다.
  • Apple silicon Mac은 Rosetta 2가 필요합니다. 설치하지 않았다면 macOS의 Rosetta 설치 절차에 따라 사용 조건을 확인하고 설치합니다.

Linux 또는 macOS의 Bash에서 JDK21_HOME에 실제 설치 경로를 미리 넣은 뒤 현재 세션을 설정할 수 있습니다.

: "${JDK21_HOME:?설치한 Java 21의 홈 경로가 필요합니다}"
export JAVA_HOME="$JDK21_HOME"
unset CI JEMMA CA

Windows PowerShell에서는 실제 경로를 입력받아 현재 프로세스에 설정합니다.

$env:JAVA_HOME = Read-Host "설치한 Java 21의 홈 경로"
Remove-Item Env:CI, Env:JEMMA, Env:CA -ErrorAction SilentlyContinue

영구 시스템 설정은 JAVA_HOME을 먼저 설정한 관리 권한 PowerShell에서 setx JAVA_HOME "$env:JAVA_HOME" /M 또는 Machine 범위의 환경 설정을 사용하며 새 셸을 열어야 반영됩니다. 현재 셸 설정과 시스템 전체 설정은 범위가 다릅니다.

템플릿 오류

Gradle 실행 중 다음과 같은 condaPackRun 오류가 나오면 오래된 템플릿의 문제입니다.

A problem occurred evaluating project ':transforms-python'.
> Failed to apply plugin class 'com.palantir.transforms.lang.python.gradle.ModelTrainingPlugin'.
   > Could not create task ':transforms-python:createCondaPackLayer'.
      > Task with name 'condaPackRun' not found in project ':transforms-python'.

저장소의 수동 브랜치 업그레이드 절차로 템플릿을 최신으로 올린 뒤 환경 생성을 다시 수행합니다.

Visual Studio Code

VS Code와 Microsoft Python 확장을 설치합니다. 로컬 저장소 루트에서 다음 명령으로 Python 인터프리터 설정 파일을 생성합니다.

./gradlew vsCode

Windows PowerShell에서는 저장소의 gradlew.bat를 사용하여 .\gradlew.bat vsCode를 실행합니다.

PyCharm

먼저 저장소 루트에서 개발용 Conda 환경을 준비합니다.

./gradlew condaDevelop

Windows는 .\gradlew.bat condaDevelop를 사용합니다. PyCharm에서 프로젝트를 연 뒤 상태 표시줄의 Python Interpreter > Add New Interpreter를 선택합니다.

Add Python Interpreter에서 Virtualenv Environment를 선택하고 Existing environment의 Interpreter에 만들어진 Conda 환경의 실행 파일을 지정합니다.

Unix 계열 실행 파일은 환경 디렉터리의 bin/python, Windows는 python.exe입니다. 테스트 플러그인 설정에 따라 저장소 아래에 다음 환경 중 하나 또는 둘 다 생깁니다.

  • python-functions/build/conda/run-env
  • python-functions/build/conda/test-env

로컬 테스트를 준비한다면 test-env를 선택하고 OK로 확정합니다. 적용 대기 쓰기의 함수 미리보기는 별도의 지원 범위를 따르며 로컬 개발 환경에서 지원하지 않습니다.