Command Line Arguments

The tool does a variety of application management tasks including deploying your app and updating datastore indexes. The appcfg tool is included with the App Engine SDK, which you can download and install at App Engine Java 8 SDK.

usage: [options] <action> [<app-dir>] [<argument>]

<app-dir> must be the directory that contains your WAR file. See deploying your app for more information.

Action must be one of:
help: Print help for a specific action.
download_app: Download a previously uploaded app version.
request_logs: Write request logs in Apache common log format.
rollback: Rollback an in-progress update.
start_module_version: Start the specified module version.
stop_module_version: Stop the specified module version.
update: Create or update an app version.
update_indexes: Update application indexes.
update_cron: Update application cron jobs.
update_queues: Update application task queue definitions.
update_dispatch: Update the application dispatch configuration.
update_dos: Update application DoS protection configuration.
version: Prints version information.
set_default_version: Set the default serving version.
cron_info: Displays times for the next several runs of each cron job.
resource_limits_info: Display resource limits.
vacuum_indexes: Delete unused indexes from application.
backends list: List the currently configured backends.
backends update: Update the specified backend or all backends.
backends rollback: Roll back a previously in-progress update.
backends start: Start the specified backend.
backends stop: Stop the specified backend.
backends delete: Delete the specified backend.
backends configure: Configure the specified backend.
list_versions: List the currently uploaded versions.
delete_version: Delete the specified version.

Use 'help <action>' for a detailed description.


-s SERVER, --server=SERVER
The server to connect to.
-e EMAIL, --email=EMAIL
The username to use. Will prompt if omitted.
-H HOST, --host=HOST
Overrides the Host header sent with all RPCs.
Proxies requests through the given proxy server. If --proxy_https is also set, only HTTP will be proxied here, otherwise both HTTP and HTTPS will.
Proxies HTTPS requests through the given proxy server.
Do not save/load access credentials to/from disk.
Overrides where the SDK is located.
Always read the login password from stdin.
-A APP_ID, --application=PROJECT_ID
Specifies the project ID.
Override the name of the service, which was formerly known as "modules", from the appengine-web.xml or app.yaml files.
Override (major) version from appengine-web.xml or app.yaml
Ignored (OAuth2 is the default).
Log much more information about what the tool is doing.
Split large jar files (> 10M) into smaller fragments.
When --enable-jar-splitting is set, files that match the list of comma separated SUFFIXES will be excluded from all jars.
Do not jar the classes generated from JSPs.
Jar the WEB-INF/classes content.
Delete the JSP source files after compilation.
Do not delete temporary (staging) directory used in uploading.
The character encoding to use when compiling JSPs.
-n NUM_DAYS, --num_days=NUM_DAYS
Number of days worth of log data to get. The cut-off point is midnight UTC. Use 0 to get all available logs. Default is 1.
Severity of app-level log messages to get. The range is 0 (DEBUG) through 4 (CRITICAL). If omitted, only request logs are returned.
Include everything in log messages.
-a, --append
Append to existing file.
-n NUM_RUNS, --num_runs=NUM_RUNS
Number of scheduled execution times to compute
-f, --force
Force deletion of indexes without being prompted.
Disable usage reporting.
Use Google Application Default Credentials as described in
location of the service account json key file for a Service Account Credential login. (The cloud SDK uses ~/.config/gcloud/application_default_credentials.json)

Alternatives to appcfg command line for staging configuration

The command line staging options include the following:

  • --enable_jar_splitting
  • --jar_splitting_excludes=SUFFIXES
  • --disable_jar_jsps
  • --enable_jar_classes
  • --delete_jsps

Instead of using these command line options, you should consider setting staging configuration in the application configuration file. This means you can set configuration once for your application instead of having to specify configuration every time you deploy.