System and methods for declaration-based extension management for multi-tenant environments
First Claim
1. A method for improving the performance of a computing system, the method comprising:
- receiving an extension package at a multi-tenant computing service platform and receiving a request to install the extension package as part of the multi-tenant computing service platform;
parsing the request and the extension package to identify whether a declaration is included, wherein the declaration identifies one or more resources of the multi-tenant computing service platform to be utilized by the extension package;
if the declaration is not identified by the parsing, then rejecting the request to install the extension package to avoid installing an incompatible extension;
if the declaration is identified by the parsing, then proceeding with the installation comprising;
identifying validation instructions included with the extension package, wherein the validation instructions are executable by an electronic processor to validate operation of the extension package with regard to service platform resources on the multi-tenant computing service platform;
determining the one or more resources identified in the declaration;
operating the electronic processor to execute the validation instructions to validate operation of the extension package with regard to service platform resources on the multi-tenant computing service platform;
determining if execution of the validation instructions results in a condition with respect to a characteristic of the extension package; and
installing the extension package as part of the multi-tenant computing service platform if execution of the validation instructions results in the condition.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and associated methods for enabling a tenant user of a multi-tenant computing platform to introduce an extension to the platform'"'"'s functions and capabilities. A computing system, such as a distributed computing service platform, may manage independent customizations and/or extensions (collectively, “extensions”) of the service platform by multiple tenants in a manner that avoids undesirable behavior that may be caused by incompatible extensions. The service may accomplish this by requiring that a proposed extension provided by a tenant or extension vendor be accompanied by a formal declaration with respect to service platform component functionality and/or service platform data objects (collectively, “service platform resources”) that are utilized and/or modified by the extension. The service may further require that the extension be accompanied by validation code (e.g., one or more modules) that is capable of verifying that particular code modules or data objects of the extension are functioning as expected.
20 Citations
20 Claims
-
1. A method for improving the performance of a computing system, the method comprising:
-
receiving an extension package at a multi-tenant computing service platform and receiving a request to install the extension package as part of the multi-tenant computing service platform; parsing the request and the extension package to identify whether a declaration is included, wherein the declaration identifies one or more resources of the multi-tenant computing service platform to be utilized by the extension package; if the declaration is not identified by the parsing, then rejecting the request to install the extension package to avoid installing an incompatible extension; if the declaration is identified by the parsing, then proceeding with the installation comprising; identifying validation instructions included with the extension package, wherein the validation instructions are executable by an electronic processor to validate operation of the extension package with regard to service platform resources on the multi-tenant computing service platform; determining the one or more resources identified in the declaration; operating the electronic processor to execute the validation instructions to validate operation of the extension package with regard to service platform resources on the multi-tenant computing service platform; determining if execution of the validation instructions results in a condition with respect to a characteristic of the extension package; and installing the extension package as part of the multi-tenant computing service platform if execution of the validation instructions results in the condition. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer-readable medium having computer executable instructions that, when executed in a computing environment by one or more electronic processors, facilitate introduction of an extension package to one or more of functions of the multi-tenant computing service platform, the instructions when executed cause the one or more electronic processors to:
-
receive an extension package at a multi-tenant computing service platform and receive a request to install the extension package as part of the multi-tenant computing service platform; parse the request and the extension package to identify whether a declaration is included, wherein the declaration identifies one or more resources of the multi-tenant computing service platform to be utilized by the extension package; if the declaration is not identified by the parsing, then reject the request to install the extension package to avoid installing an incompatible extension; if the declaration is identified by the parsing, then proceed with the installation comprising; identify validation instructions included with the extension package, wherein the validation instructions are executable by an electronic processor to validate operation of the extension package with regard to service platform resources on the multi-tenant computing service platform; determine the one or more resources identified in the declaration; operate the electronic processor to execute the validation instructions to validate operation of the extension package with regard to service platform resources on the multi-tenant computing service platform; determine if execution of the validation instructions results in a condition with respect to a characteristic of the extension package; and install the extension package as part of the multi-tenant computing service platform if execution of the validation instructions results in the condition. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer system having at least one electronic processor configured to execute instructions from a memory for permitting users of a multi-tenant computing service platform to introduce an extension package to one or more of the functions of the platform, the computer system comprising:
-
an extension package manager configured to install a proposed extension package, the extension package manager comprising instructions executable by the at least one electronic processor to cause the at least one electronic processor to; receive the proposed extension package and receive a request to install the proposed extension package as part of the multi-tenant computing service platform; parse the proposed extension package to identify whether a declaration is included, wherein the declaration identifies one or more resources of the multi-tenant computing service platform to be utilized by the proposed extension package; if the declaration is not identified by the parsing, then reject the request to install the proposed extension package to avoid installing an incompatible extension; if the declaration is identified by the parsing, then proceed with the installation comprising; identify validation code included with the proposed extension package, wherein the validation code is executable by the at least one electronic processor to validate operation of the proposed extension package with regard to service platform resources on the multi-tenant computing service platform; determine whether execution of the validation code associated with the proposed extension package would result in access of a resource associated with one or more other previously installed extension packages; and determine whether execution of the validation code associated with the proposed extension package results in access of the resource identified in the declaration associated with the proposed extension package. - View Dependent Claims (18, 19, 20)
-
Specification