Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(306)

Unified Diff: remoting/webapp/build-webapp.py

Issue 1816653002: Remove app_remoting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « remoting/webapp/app_remoting/vendor/arv_wcs_sandbox.html ('k') | remoting/webapp/build_template.gni » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/webapp/build-webapp.py
diff --git a/remoting/webapp/build-webapp.py b/remoting/webapp/build-webapp.py
index ca0fbd24db21f25c982f6c198d72cd435aebf255..3df0f21381490c8cea5e46fd605a1525d9fede8c 100755
--- a/remoting/webapp/build-webapp.py
+++ b/remoting/webapp/build-webapp.py
@@ -108,7 +108,7 @@ def processJinjaTemplate(input_file, include_paths, output_file, context):
def buildWebApp(buildtype, version, destination, zip_path,
- manifest_template, webapp_type, appid, app_client_id, app_name,
+ manifest_template, appid, app_client_id, app_name,
app_description, app_capabilities, manifest_key, files,
files_listfile, locales_listfile, jinja_paths,
service_environment, use_gcd):
@@ -121,9 +121,6 @@ def buildWebApp(buildtype, version, destination, zip_path,
zipfile: A string with path to the zipfile to create containing the
contents of |destination|.
manifest_template: jinja2 template file for manifest.
- webapp_type: webapp type:
- For DesktopRemoting: "desktop"
- For AppRemoting: "app_remoting" or "shared_module"
appid: A string with the Remoting Application Id (only used for app
remoting webapps). If supplied, it defaults to using the
test API server.
@@ -163,7 +160,7 @@ def buildWebApp(buildtype, version, destination, zip_path,
for s in input:
files.append(s.rstrip())
- # Ensure a fresh directory.
+#Ensure a fresh directory.
try:
shutil.rmtree(destination)
except OSError:
@@ -177,7 +174,6 @@ def buildWebApp(buildtype, version, destination, zip_path,
raise Exception('Unknown buildtype: ' + buildtype)
jinja_context = {
- 'webapp_type': webapp_type,
'buildtype': buildtype,
}
@@ -214,11 +210,7 @@ def buildWebApp(buildtype, version, destination, zip_path,
else:
raise Exception('Unknown extension: ' + current_locale)
- is_app_remoting_webapp = webapp_type == 'app_remoting'
- is_app_remoting_shared_module = webapp_type == 'shared_module'
- is_app_remoting = is_app_remoting_webapp or is_app_remoting_shared_module
is_prod_service_environment = service_environment == 'prod'
- is_desktop_remoting = not is_app_remoting
# Allow host names for google services/apis to be overriden via env vars.
oauth2AccountsHost = os.environ.get(
@@ -230,85 +222,16 @@ def buildWebApp(buildtype, version, destination, zip_path,
remotingApiHost = os.environ.get(
'REMOTING_API_HOST', 'https://remoting-pa.googleapis.com')
- if is_app_remoting:
- appRemotingApiHost = os.environ.get(
- 'APP_REMOTING_API_HOST', None)
-
- if is_app_remoting_webapp:
- appRemotingApplicationId = os.environ.get(
- 'APP_REMOTING_APPLICATION_ID', None)
-
- # Release/Official builds are special because they are what we will upload
- # to the web store. The checks below will validate that prod builds are
- # being generated correctly (no overrides) and with the correct buildtype.
- # They also verify that folks are not accidentally building dev apps for
- # Release (no impersonation) instead of Dev.
- if is_prod_service_environment and buildtype == 'Dev':
- raise Exception("Prod environment cannot be built for 'dev' builds")
-
- if buildtype != 'Dev':
- if not is_prod_service_environment:
- raise Exception('Invalid service_environment targeted for '
- + buildtype + ': ' + service_environment)
- if appid != None:
- raise Exception('Cannot pass in an appid for '
- + buildtype + ' builds: ' + service_environment)
- if appRemotingApiHost != None:
- raise Exception('Cannot set APP_REMOTING_API_HOST env var for '
- + buildtype + ' builds')
- if appRemotingApplicationId != None:
- raise Exception('Cannot set APP_REMOTING_APPLICATION_ID env var for '
- + buildtype + ' builds')
-
- # If an Application ID was set (either from service_environment variable or
- # from a command line argument), hardcode it, otherwise get it at runtime.
- effectiveAppId = appRemotingApplicationId or appid
- if effectiveAppId:
- appRemotingApplicationId = "'" + effectiveAppId + "'"
- else:
- appRemotingApplicationId = "chrome.i18n.getMessage('@@extension_id')"
- findAndReplace(os.path.join(destination, 'arv_main.js'),
- "'APP_REMOTING_APPLICATION_ID'", appRemotingApplicationId)
-
oauth2BaseUrl = oauth2AccountsHost + '/o/oauth2'
oauth2ApiBaseUrl = oauth2ApiHost + '/oauth2'
directoryApiBaseUrl = directoryApiHost + '/chromoting/v1'
telemetryApiBaseUrl = remotingApiHost + '/v1/events'
- if is_app_remoting:
- # Set the base endpoint url first and then set the endpoint version.
- if not appRemotingApiHost:
- if is_prod_service_environment:
- appRemotingApiHost = 'https://www.googleapis.com'
- else:
- appRemotingApiHost = 'https://www-googleapis-test.sandbox.google.com'
-
- # TODO(garykac) Currently, the shared module is always set up for the
- # dev service_environment. Update build so that the dev environment can
- # be controlled by the app stub rather than hard-coded into the shared
- # module.
- if service_environment == 'dev' or is_app_remoting_shared_module:
- appRemotingServicePath = '/appremoting/v1beta1_dev'
- elif service_environment == 'prod':
- appRemotingServicePath = '/appremoting/v1beta1'
- else:
- raise Exception('Unknown service environment: ' + service_environment)
- appRemotingApiBaseUrl = appRemotingApiHost + appRemotingServicePath
- else:
- appRemotingApiBaseUrl = ''
-
- # TODO(garykac) replaceString (et al.) implictly update plugin_settings.js,
- # which doesn't exist for the app stub. We need to move app-specific
- # AppRemoting options into arv_main.js.
- if not is_app_remoting_webapp:
- replaceBool(destination, 'USE_GCD', use_gcd)
- replaceString(destination, 'OAUTH2_BASE_URL', oauth2BaseUrl)
- replaceString(destination, 'OAUTH2_API_BASE_URL', oauth2ApiBaseUrl)
- replaceString(destination, 'DIRECTORY_API_BASE_URL', directoryApiBaseUrl)
- replaceString(destination, 'TELEMETRY_API_BASE_URL', telemetryApiBaseUrl)
- if is_app_remoting:
- replaceString(destination, 'APP_REMOTING_API_BASE_URL',
- appRemotingApiBaseUrl)
+ replaceBool(destination, 'USE_GCD', use_gcd)
+ replaceString(destination, 'OAUTH2_BASE_URL', oauth2BaseUrl)
+ replaceString(destination, 'OAUTH2_API_BASE_URL', oauth2ApiBaseUrl)
+ replaceString(destination, 'DIRECTORY_API_BASE_URL', directoryApiBaseUrl)
+ replaceString(destination, 'TELEMETRY_API_BASE_URL', telemetryApiBaseUrl)
# Substitute hosts in the manifest's CSP list.
# Ensure we list the API host only once if it's the same for multiple APIs.
@@ -348,24 +271,23 @@ def buildWebApp(buildtype, version, destination, zip_path,
thirdPartyAuthUrlJson = oauth2RedirectBaseUrlJson + '/thirdpartyauth*'
xmppServer = os.environ.get('XMPP_SERVER', 'talk.google.com:443')
- if not is_app_remoting_webapp:
- replaceString(destination, 'TALK_GADGET_URL', talkGadgetBaseUrl)
- findAndReplace(os.path.join(destination, 'plugin_settings.js'),
- "'OAUTH2_REDIRECT_URL'", oauth2RedirectUrlJs)
-
- # Configure xmpp server and directory bot settings in the plugin.
- xmpp_server_user_tls = getenvBool('XMPP_SERVER_USE_TLS', True)
- if (buildtype != 'Dev' and not xmpp_server_user_tls):
- raise Exception('TLS can must be enabled in non Dev builds.')
-
- replaceBool(
- destination, 'XMPP_SERVER_USE_TLS', xmpp_server_user_tls)
- replaceString(destination, 'XMPP_SERVER', xmppServer)
- replaceString(destination, 'DIRECTORY_BOT_JID',
- os.environ.get('DIRECTORY_BOT_JID',
- 'remoting@bot.talk.google.com'))
- replaceString(destination, 'THIRD_PARTY_AUTH_REDIRECT_URL',
- thirdPartyAuthUrlJs)
+ replaceString(destination, 'TALK_GADGET_URL', talkGadgetBaseUrl)
+ findAndReplace(os.path.join(destination, 'plugin_settings.js'),
+ "'OAUTH2_REDIRECT_URL'", oauth2RedirectUrlJs)
+
+ # Configure xmpp server and directory bot settings in the plugin.
+ xmpp_server_user_tls = getenvBool('XMPP_SERVER_USE_TLS', True)
+ if (buildtype != 'Dev' and not xmpp_server_user_tls):
+ raise Exception('TLS can must be enabled in non Dev builds.')
+
+ replaceBool(
+ destination, 'XMPP_SERVER_USE_TLS', xmpp_server_user_tls)
+ replaceString(destination, 'XMPP_SERVER', xmppServer)
+ replaceString(destination, 'DIRECTORY_BOT_JID',
+ os.environ.get('DIRECTORY_BOT_JID',
+ 'remoting@bot.talk.google.com'))
+ replaceString(destination, 'THIRD_PARTY_AUTH_REDIRECT_URL',
+ thirdPartyAuthUrlJs)
# Set the correct API keys.
# For overriding the client ID/secret via env vars, see google_api_keys.py.
@@ -373,42 +295,22 @@ def buildWebApp(buildtype, version, destination, zip_path,
apiClientSecret = google_api_keys.GetClientSecret('REMOTING')
apiKey = google_api_keys.GetAPIKeyRemoting()
- if is_app_remoting_webapp and buildtype != 'Dev':
- if not app_client_id:
- raise Exception('Invalid app_client_id passed in: "' +
- app_client_id + '"')
- apiClientIdV2 = app_client_id + '.apps.googleusercontent.com'
- else:
- apiClientIdV2 = os.environ.get(
- 'REMOTING_IDENTITY_API_CLIENT_ID',
- google_api_keys.GetClientID('REMOTING_IDENTITY_API'))
-
- if not is_app_remoting_webapp:
- replaceString(destination, 'API_CLIENT_ID', apiClientId)
- replaceString(destination, 'API_CLIENT_SECRET', apiClientSecret)
- replaceString(destination, 'API_KEY', apiKey)
-
- # Write the application capabilities.
- if is_app_remoting_webapp:
- appCapabilities = ','.join(
- ['remoting.ClientSession.Capability.' + x for x in app_capabilities])
- findAndReplace(os.path.join(destination, 'arv_main.js'),
- "'APPLICATION_CAPABILITIES'", appCapabilities)
-
- # Official AppRemoting builds get the key from the gyp/gn build file. All
- # other builds use a fixed key. For dev builds, this ensures that the app
- # can be run directly from the output directory. For official CRD builds,
+ apiClientIdV2 = os.environ.get(
+ 'REMOTING_IDENTITY_API_CLIENT_ID',
+ google_api_keys.GetClientID('REMOTING_IDENTITY_API'))
+
+ replaceString(destination, 'API_CLIENT_ID', apiClientId)
+ replaceString(destination, 'API_CLIENT_SECRET', apiClientSecret)
+ replaceString(destination, 'API_KEY', apiKey)
+
+ # Use a fixed key in the app manifest. For dev builds, this ensures that the
+ # app can be run directly from the output directory. For official CRD builds,
# it allows QA to test the app without uploading it to Chrome Web Store.
- if is_app_remoting_webapp and buildtype != 'Dev':
- if not manifest_key:
- raise Exception('No manifest_key passed in')
- else:
- manifest_key = 'remotingdevbuild'
+ manifest_key = 'remotingdevbuild'
# Generate manifest.
if manifest_template:
context = {
- 'webapp_type': webapp_type,
'FULL_APP_VERSION': version,
'MANIFEST_KEY': manifest_key,
'OAUTH2_REDIRECT_URL': oauth2RedirectUrlJson,
@@ -419,7 +321,6 @@ def buildWebApp(buildtype, version, destination, zip_path,
'OAUTH2_API_BASE_URL': oauth2ApiBaseUrl,
'DIRECTORY_API_BASE_URL': directoryApiBaseUrl,
'TELEMETRY_API_BASE_URL':telemetryApiBaseUrl ,
- 'APP_REMOTING_API_BASE_URL': appRemotingApiBaseUrl,
'CLOUD_PRINT_URL': '',
'OAUTH2_ACCOUNTS_HOST': oauth2AccountsHost,
'GOOGLE_API_HOSTS': googleApiHosts,
@@ -457,7 +358,6 @@ def main():
parser.add_argument('destination')
parser.add_argument('zip_path')
parser.add_argument('manifest_template')
- parser.add_argument('webapp_type')
parser.add_argument('files', nargs='*', metavar='file', default=[])
parser.add_argument('--app_name', metavar='NAME')
parser.add_argument('--app_description', metavar='TEXT')
« no previous file with comments | « remoting/webapp/app_remoting/vendor/arv_wcs_sandbox.html ('k') | remoting/webapp/build_template.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698