Exemple #1
0
 def _sanitize(self, value, name, further_args):
     app_id = value
     app_version = None
     if '=' in value:
         app_id, app_version = tuple(value.split('=', 1))
     app = Apps().find(app_id, app_version=app_version)
     if not app.is_installed() and not app.install_permissions_exist():
         apps = Apps().get_all_apps_with_id(app.id)
         apps = [_app for _app in apps if not _app.install_permissions]
         if apps:
             if app_version:
                 for _app in apps:
                     if _app.version == app_version:
                         app = _app
                         break
             else:
                 app = sorted(apps)[-1]
     return app
Exemple #2
0
	def _candidate_dict(cls, app):
		ret = {}
		if app.is_installed():
			candidate = Apps().find_candidate(app)
		else:
			candidate = None
		if candidate:
			ret['update_available'] = True
			ret['candidate_docker'] = candidate.docker
			ret['candidate_version'] = candidate.version
			ret['candidate_component_id'] = candidate.component_id
			ret['candidate_readme_update'] = candidate.readme_update
			ret['candidate_readme_post_update'] = candidate.readme_post_update
			ret['candidate_needs_install_permissions'] = not candidate.install_permissions_exist()
			ret['candidate_install_permissions_message'] = candidate.install_permissions_message
		else:
			ret['update_available'] = False  # TODO: ucr.is_true(app.ucr_upgrade_key); Bug#39916
			ret['candidate_needs_install_permissions'] = not app.install_permissions_exist()
			ret['candidate_install_permissions_message'] = app.install_permissions_message
		return ret