Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I execute the command 'appcfg rollback'?

While uploading the project , there was a network failure and I had to stop, when the uploading process was only 31% complete. Now when I click to deploy application to google app engine the following message is produced :

com.google.appengine.tools.admin.HttpIoException: Error posting to URL: 
https://appengine.google.com/api/appversion/create?app_id=programworks&version=1&
409 Conflict
Another transaction by user suhailgupta03 is already in progress for app: 
s~programworks, version: 1. That user can undo the transaction with 
"appcfg rollback".

Unable to update app: Error posting to URL: https://appengine.google.com/api/appversion/create?app_id=programworks&version=1&
409 Conflict
Another transaction by user suhailgupta03 is already in progress for app: 
s~programworks, version: 1. That user can undo the transaction with "appcfg rollback".

I open my shell prompt and type in there appcfg rollback but I get a message that this command is not found.I have installed google app engine as a plugin for netbeans.

The path where I have kept the jars of google app engine : /home/non-admin/appengine-java-sdk-1.6.6/lib/

Please tell what should I do to rollback the previous process ? I badly need to upload the war file.!

like image 793
Suhail Gupta Avatar asked Jul 26 '12 18:07

Suhail Gupta


2 Answers

You want appcfg.sh rollback (which is in path_to_your_app_engine_sdk/bin/). appcfg comes in different variants for each type of runtime (Python, Java, Go), so the suggested command is a bit generic.

If, for whatever reason, you don't have easy access to the entire war directory of your project (if, for example your IDE only gives you a .war file), you can do the following:

  1. Make a directory named war.
  2. Inside the war folder make another directory and name it as WEB-INF.
  3. In the folder WEB-INF drop two xml files, namely web.xml and appengine-web.xml. These should have the contents of your deployed web.xml and appengine-web.xml files respectively.

Then run the following shell command (this assumes you execute it from the bin directory of the App Engine Java SDK):

[non-admin@user bin]$ ./appcfg.sh rollback /home/non-admin/NetBeansProjects/PersonalSite/web/war

If you are using the Go appengine tools, then you'll need to run:

$ cd [your go_appengine directory]
$ ./appcfg.py rollback [your app directory with app.yaml in it]
like image 118
Dan Holevoet Avatar answered Nov 04 '22 18:11

Dan Holevoet


If you are using windows, follow the same steps given above and run command in DOS prompt..

C:\eclipse-jee-helios-win32\eclipse\plugins\com.google.appengine.eclipse.sdkbund le_1.7.3\appengine-java-sdk-1.7.3\bin> appcfg.cmd rollback "C:\home\myweb\war"

like image 18
Knowledge Serve Avatar answered Nov 04 '22 18:11

Knowledge Serve