App Engine Gradle 플러그인 태스크 및 속성

App Engine Gradle 플러그인을 프로젝트에 추가하면 다음과 같은 App Engine별 Gradle 태스크를 사용할 수 있습니다.

태스크 설명
tasks 설치된 태스크에 대한 도움말 정보를 표시합니다.
appengineStage 배포용 애플리케이션 디렉터리를 생성합니다.
appengineDeploy 애플리케이션을 스테이징하고 App Engine에 배포합니다.
appengineDeployCron cron.yaml 구성 파일을 App Engine에 배포합니다.
appengineDeployDispatch dispatch.yaml 구성 파일을 App Engine에 배포합니다.
appengineDeployDos dos.yaml 구성 파일을 App Engine에 배포합니다.
appengineDeployIndex index.yaml 구성 파일을 App Engine에 배포합니다.
appengineDeployQueue queue.yaml 구성 파일을 App Engine에 배포합니다.
jettyRun Jetty의 기본 구성을 사용하여 개발 서버를 실행합니다. Gretty 플러그인에 대한 자세한 내용은 Gretty 구성Gretty 태스크를 참조하세요.

모든 작업 목록을 보려면 다음을 사용하세요.

gradle tasks

Gradle을 설정하고 사용하는 방법에 대한 자세한 내용은 GitHub의 App Engine Gradle 사용 및 GitHub의 app-gradle-plugin 저장소를 참조하세요.

태스크 속성

gradle.build 파일의 콘텐츠는 빌드를 설명하는 규칙 집합입니다. 이 파일은 빌드를 설명하기 위해 Groovy 언어 기반의 도메인 특정 언어로 작성됩니다.

각 태스크에는 아래와 같이 사용 가능한 속성이 연결되어 있습니다. gradle.build 파일에서 구성 닫기, 태스크, 속성을 사용하여 이러한 속성을 지정할 수 있습니다.

이 예에서는 다음과 같이 정의됩니다.

  • 플러그인의 구성 닫기는 appengine입니다.
  • 태스크는 deploy입니다.
  • 속성, stopPreviousVersion, promotetrue로 설정됩니다.
appengine {
  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}
지정할 속성이 많지 않다면 한 줄로 설정할 수 있습니다.

  appengine.deploy.stopPreviousVersion = true

각 태스크에 사용할 수 있는 속성 목록은 다음 섹션을 참조하세요.

appengineStage

task(stage)

배포용 애플리케이션 디렉터리를 생성합니다. appengineDeploy 작업 및 jettyRun 작업에서 사용됩니다.

다음 속성을 사용할 수 있습니다.

속성 설명
artifact 클래스, 리소스, 매니페스트가 모두 있는 빌드된 아티팩트입니다. 기본값은 build/libs/[YOUR_SERVLET].war입니다.
appEngineDirectory app.yaml 파일의 위치입니다. 기본값은 src/main/appengine입니다.
dockerDirectory Dockerfile의 위치입니다. 기본값은 src/main/docker입니다.
stagingDirectory 필수. 애플리케이션을 스테이징할 디렉터리로, 기본값은 build/staged-app입니다.

appengineDeploy

task(deploy)

애플리케이션을 스테이징하고 App Engine에 배포합니다.

각 태스크에는 아래와 같이 사용 가능한 속성이 연결되어 있습니다. gradle.build 파일에서 구성 닫기, 태스크, 속성을 사용하여 이러한 속성을 지정할 수 있습니다.

아래 예시를 참조하세요.

  • 플러그인의 구성 닫기는 appengine입니다.
  • 태스크는 run입니다.
  • port 속성은 8080으로 설정됩니다.
appengine {  // App Engine tasks configuration
  run {      // local (dev_appserver) configuration (standard environments only)
    port = 8080                 // default
  }

  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}

지정할 속성이 많지 않다면 한 줄로 설정할 수 있습니다.

  appengine.run.port = 8888
속성 설명
appEngineDirectory 구성별 배포(appengineDeployCron 등)를 수행하는 .yaml 구성 파일(크론, 색인 등)의 위치입니다. 가변형 애플리케이션의 경우 이 기본값은 src/main/appengine입니다.
bucket 배포와 연결된 파일을 스테이징하는 데 사용되는 Cloud Storage 버킷입니다. 이 인수가 지정되지 않으면 애플리케이션의 기본 버킷이 사용됩니다.
deployables 배포하려는 구성 또는 서비스용 YAML 파일. 기본값은 스테이징 디렉터리에 있는 app.yaml 파일입니다. 이 파일을 찾을 수 없는 경우 스테이징 디렉터리에서 필요한 구성 파일(예: app.yaml)의 자동 생성을 시도합니다.
imageUrl 특정 Docker 이미지를 사용하여 배포합니다. Docker URL은 유효한 Artifact Registry 호스트 이름 중 하나여야 합니다.
project 이 호출에 사용할 Google Cloud Platform 프로젝트 이름입니다. 기본값은 gcloud 도구를 초기화할 때 선택한 현재 프로젝트입니다. 확인하려면 gcloud config list project를 사용합니다.
promote 배포된 버전을 승격하여 모든 트래픽을 수신합니다. 기본값은 True입니다.
server 연결할 App Engine 서버입니다. 일반적으로 이 값은 변경할 필요가 없습니다.
stopPreviousVersion 모든 트래픽을 수신하는 새 버전을 배포할 때 이전에 실행 중인 버전을 중지합니다.
version 이 배포에서 생성되거나 대체되는 앱의 버전입니다. 버전을 지정하지 않으면 자동으로 생성됩니다.

전역 속성

속성설명
tools.cloudSdkHome Google Cloud CLI의 위치를 구성하는 선택적 속성입니다. 일반적으로 플러그인은 gcloud components install app-engine-java를 통해 설치될 때 gcloud CLI에서 이 속성을 찾습니다.