You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2020/04/23 00:39:03 UTC
[airavata] 02/02: Merge branch
'AIRAVATA-3126--Implement-compute-resource-reservation-addition'
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/airavata.git
commit 56b3f0ab77b7b68e3ebb4179a66eb4189b8d66fb
Merge: e78ff86 6f35091
Author: Marcus Christie <ma...@iu.edu>
AuthorDate: Wed Apr 22 20:30:52 2020 -0400
Merge branch 'AIRAVATA-3126--Implement-compute-resource-reservation-addition'
.../appcatalog/groupresourceprofile/ttypes.py | 217 +++++-
.../ComputeResourcePolicy.java | 32 +-
.../ComputeResourceReservation.java | 820 +++++++++++++++++++++
.../GroupComputeResourcePreference.java | 189 ++++-
.../groupresourceprofile/GroupResourceProfile.java | 108 +--
airavata-api/airavata-model-utils/pom.xml | 6 +
.../util/GroupComputeResourcePreferenceUtil.java | 44 ++
.../GroupComputeResourcePreferenceUtilTest.java | 116 +++
.../airavata/helix/impl/task/TaskContext.java | 9 +
.../org/apache/airavata/common/utils/JPAUtils.java | 146 +++-
.../src/main/resources/META-INF/persistence.xml | 1 +
.../init/03-appcatalog-migrations.sql | 8 +
modules/registry/registry-core/README.md | 13 +
....java => ComputeResourceReservationEntity.java} | 93 ++-
.../appcatalog/GroupComputeResourcePrefEntity.java | 15 +-
.../GroupSSHAccountProvisionerConfig.java | 2 +-
.../core/repositories/AbstractRepository.java | 10 +-
.../appcatalog/GroupResourceProfileRepository.java | 29 +-
.../core/utils/JPAUtil/AppCatalogJPAUtils.java | 11 +-
.../src/main/resources/META-INF/persistence.xml | 1 +
.../src/main/resources/appcatalog-derby.sql | 6 +
.../src/main/resources/appcatalog-mysql.sql | 8 +
.../GroupResourceProfileRepositoryTest.java | 257 ++++++-
.../next/DeltaScripts/appCatalog_schema_delta.sql | 8 +
.../group_resource_profile_model.thrift | 13 +-
25 files changed, 1981 insertions(+), 181 deletions(-)
diff --cc modules/ide-integration/src/main/resources/database_scripts/init/03-appcatalog-migrations.sql
index 4022bf3,a07c0f0..cf6f9c7
--- a/modules/ide-integration/src/main/resources/database_scripts/init/03-appcatalog-migrations.sql
+++ b/modules/ide-integration/src/main/resources/database_scripts/init/03-appcatalog-migrations.sql
@@@ -1,3 -1,10 +1,11 @@@
use app_catalog;
+ALTER TABLE APPLICATION_INPUT ADD COLUMN OVERRIDE_FILENAME VARCHAR(255);
+ -- AIRAVATA-3126
+ CREATE TABLE IF NOT EXISTS COMPUTE_RESOURCE_RESERVATION -- ComputeResourceReservationEntity
+ (RESERVATION_ID VARCHAR(255) NOT NULL, END_TIME TIMESTAMP NOT NULL, RESERVATION_NAME VARCHAR(255) NOT NULL, START_TIME TIMESTAMP NOT NULL, RESOURCE_ID VARCHAR(255) NOT NULL, GROUP_RESOURCE_PROFILE_ID VARCHAR(255) NOT NULL, PRIMARY KEY (RESERVATION_ID)
+ )ENGINE=InnoDB DEFAULT CHARSET=latin1;
+ CREATE TABLE IF NOT EXISTS COMPUTE_RESOURCE_RESERVATION_QUEUE (RESERVATION_ID VARCHAR(255), QUEUE_NAME VARCHAR(255) NOT NULL
+ )ENGINE=InnoDB DEFAULT CHARSET=latin1;
+ CREATE INDEX I_CMPTN_Q_RESERVATION_ID ON COMPUTE_RESOURCE_RESERVATION_QUEUE (RESERVATION_ID);
+ ALTER TABLE COMPUTE_RESOURCE_RESERVATION ADD CONSTRAINT FK_COMPUTE_RESOURCE_RESERVATION FOREIGN KEY (RESOURCE_ID, GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_COMPUTE_RESOURCE_PREFERENCE (RESOURCE_ID, GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE;
diff --cc modules/registry/release-migration-scripts/next/DeltaScripts/appCatalog_schema_delta.sql
index b9f4385,c25b3b1..6dacaa4
--- a/modules/registry/release-migration-scripts/next/DeltaScripts/appCatalog_schema_delta.sql
+++ b/modules/registry/release-migration-scripts/next/DeltaScripts/appCatalog_schema_delta.sql
@@@ -20,21 -20,11 +20,29 @@@
use app_catalog;
+-- AIRAVATA-3276 Replace JSON configuration: "toggle": ["isRequired"] ->
+-- "isRequired": true. Toggling requiredToAddedToCommandLine no longer needed.
+
+-- replace toggle with is isRequired
+update APPLICATION_INPUT
+set METADATA = REGEXP_REPLACE(METADATA, '"toggle": \\[[^}]+\\]', CONCAT('"isRequired": ', IF(IS_REQUIRED=1, 'true', 'false')))
+-- showOptions has "toggle" but not "isRequired"
+where METADATA rlike '"showOptions": {"toggle": \\[[^}]+\\]'
+ and NOT METADATA rlike '"showOptions": {.*"isRequired": (true|false)'
+;
+
+-- remove toggle since isRequired is already there
+update APPLICATION_INPUT
+set METADATA = REGEXP_REPLACE(METADATA, '(, )?"toggle": \\[[^}]+\\](, )?', '')
+-- showOptions has BOTH "toggle" and "isRequired"
+where METADATA rlike '"showOptions": {"toggle": \\[[^}]+\\]'
+ and METADATA rlike '"showOptions": {.*"isRequired": (true|false)'
+;
+ -- AIRAVATA-3126
+ CREATE TABLE IF NOT EXISTS COMPUTE_RESOURCE_RESERVATION -- ComputeResourceReservationEntity
+ (RESERVATION_ID VARCHAR(255) NOT NULL, END_TIME TIMESTAMP NOT NULL DEFAULT 0, RESERVATION_NAME VARCHAR(255) NOT NULL, START_TIME TIMESTAMP NOT NULL DEFAULT 0, RESOURCE_ID VARCHAR(255) NOT NULL, GROUP_RESOURCE_PROFILE_ID VARCHAR(255) NOT NULL, PRIMARY KEY (RESERVATION_ID)
+ )ENGINE=InnoDB DEFAULT CHARSET=latin1;
+ CREATE TABLE IF NOT EXISTS COMPUTE_RESOURCE_RESERVATION_QUEUE (RESERVATION_ID VARCHAR(255), QUEUE_NAME VARCHAR(255) NOT NULL
+ )ENGINE=InnoDB DEFAULT CHARSET=latin1;
+ CREATE INDEX IF NOT EXISTS I_CMPTN_Q_RESERVATION_ID ON COMPUTE_RESOURCE_RESERVATION_QUEUE (RESERVATION_ID);
+ ALTER TABLE COMPUTE_RESOURCE_RESERVATION ADD CONSTRAINT FK_COMPUTE_RESOURCE_RESERVATION FOREIGN KEY IF NOT EXISTS (RESOURCE_ID, GROUP_RESOURCE_PROFILE_ID) REFERENCES GROUP_COMPUTE_RESOURCE_PREFERENCE (RESOURCE_ID, GROUP_RESOURCE_PROFILE_ID) ON DELETE CASCADE;