Effect on updating current running WAR file in Google App Engine - google-app-engine

What would happen on the current running application if you are going to update the WAR file in Google App Engine? Will Google App Engine automatically stop the service of your application while new WAR file is being uploaded?
Thanks!

Deploying a new version of your app causes App Engine to spin up an entirely new set of VMs with your new code, transfer traffic from the old VMs to the new ones, then shutdown the old ones (presuming you're deploying to the default version). At no point is your service down - traffic transitions seamlessly from the old instance to the new one.

Related

Can I delete default buckets on Google App Engine Storage?

When I create a new application on Google Cloud App Engine, these buckets in Google Storage show up as well:
bucket_1: <region>.artifacts.<app_id>.appspot.com
bucket_2: staging.<app_id>.appspot.com
bucket_3: <app_id>.appspot.com
I've only added 300MB on bucket_3 and never added anything to bucket_1. Nonetheless, bucket_1 is currently occupying 3.9GB. Why do I need this bucket_1? Can I delete all its content or even delete the whole bucket?
Thanks in advance.
When you create a new App Engine Application, these buckets in Google Storage are created:
bucket_2: staging.<app_id>.appspot.com
bucket_3: <app_id>.appspot.com
Bucket bucket_1: <region>.artifacts.<app_id>.appspot.com is created when you run the command gcloud app deploy. This is the Container Registry bucket where App Engine stores container images. You can delete this bucket, however, next time when you deploy a new version gcloud app deploy the bucket will be recreated.
I did some testing on my side and observed that when you deploy your first app engine standard version, 48 images are created in us.artifacts.your-project.appspot.com/containers/images folder. From this moment, every time you deploy a new app engine version 3 more images are added to this folder. I am not sure about the internal implementation, but I think it caches the images in this folder.

How to deploy React webapp deployed on Docker and GCP only for a set of users

I want to achieve something that Google Play store offers i.e. releasing app to a set of users and the rest of users will keep seeing the existing app.
Is there a way to achieve this with a web app deployed using Docker and GCP?
Someone shared an interesting article about Canary build.
Canary Deployments are where you roll out the new version of your service while keeping the older one alive. Some customers will be routed to the new version while others will be routed to your existing version.
https://stackify.com/canary-deployments/

Google Cloud Platform - App Engine - can't stop and delete a version

I wonder is it possible to stop and remove an app's version? I use App Engine.
I tried many times but no success. Also I tried to do it if the app is inactive, still can't remove it.
As stated in the documentation you can stop an App Engine version only if your app has manual or basic scaling. Also, you cannot delete a version that is sharing traffic.
Meaning, if you only have one version in the default App Engine service, the only way you can delete the version of your App Engine app is by deleting your project.
There's currently a public Feature Request open to allow a full deletion of an App Engine app in a project which you can find here.
In any way, if you wish to, you can always disable the App Engine app completely as described here.

Can't delete app engine project

I have an app engine project which coun't be deleted. The project was created by ‘Duplicate Application Settings' function when migrating an application with a master-slave datastore.
Something went wrong during the migration process and I decided to delete the newly created application but had no success. I used both traditional app engine adiministration console and the new cloud platform console to delete the application but the application still be there and running after the scheduled time.
I want to reuse the application id and don't like to have an unused project in my app list. Is there any way to delete it successfully?
Thanks!

Google Web Toolkit throws java.security.AccessControlException

I'm trying to read a sqlite db from the server side code in my gwt project. It throws AccessControlException. I looked a lot on the web and all solutions seems to be disabling Google App Engine, but when I do this, I can't run my project. I'm new to GWT and I have no idea where it runs when Google App Engine is shut down. I look for possibly this two solutions: Any setting that Google App Engine is set to be able to read any file, or other engine that I run my application on. Thanks
The problem is that Google App Engine (GAE) does not support sqlite (I assume you are reading it using JDBC).
If your intention is to make a GWT project that will not be deployed on GAE, you should create the project disabling this feature from the very beginning, because afterwards its a nightmare as you are experiencing right now.
If your intention is to deploy in GAE, you must use the google's persistence mechanisms (JDO) to store your data. SqlLite is off the table here.

Resources