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 2019/06/02 17:14:27 UTC
[airavata-php-gateway] branch dreg-gateway updated (b38e1fc ->
e52fc97)
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a change to branch dreg-gateway
in repository https://gitbox.apache.org/repos/asf/airavata-php-gateway.git.
from b38e1fc updating for new peak calling
add 0c04440 AIRAVATA-2441 Use landingpage for 'home' if user not logged in
add fa310a1 Fix storing gateway data as JSON in HTML data attribute
add e189880 Trigger mirror sync
add d3900b9 Set the gateway level maximum values for walltime, node and CPU counts
add 89547b3 Changed the : notation to => for logo key in auth-options array
add 33b1b88 Fixed the client side validation issue for experiment edit mode issue #2520 Included a jquery script for edit page as it seems to be missing it Added changes to load previously set values through jquery
add 07d3255 AIRAVATA-2520 Defer running queue block init code until jquery loaded
add e03d5e7 Merge branch 'AIRAVATA-2520-bugfix' into gateway-level-max-queue-values
add 85c0766 AIRAVATA-2521 Some pull requests fixes
add 02fde3e AIRAVATA-2508 Admin sets gateway password
add 26cf4f0 AIRAVATA-2508 Fixing layout of password popover
add b33401e AIRAVATA-2557 Fix problem with cancelling request
add 1adc6d8 Merge branch 'AIRAVATA-2508'
add 2203586 [JIRA-ISSUE: 2444] Added User list with username, email, firstname, lastname fields Issue Resolved
add 4f5aff9 AIRAVATA-2444 Fix searchUsers to return user fields
add fd6675b AIRAVATA-2502 External logins listed first (on the left)
add 4f1a349 AIRAVATA-2502 Fixing font size
add 7f9dbd5 AIRAVATA-2502 Adding header to external login options
add c8a9bfd Merge branch 'AIRAVATA-2502'
add 9041b4c Set CAINFO_PATH everywhere calls are made to Keycloak
add 64cb96d Merge branch 'set-CAINFO-everywhere'
add 943ed30 Add pga_config to gitignore
add 343eca1 Add Idea PHPStorm files to gitignore
add 660338c Add .idea to gitignore
add 3d21a7b Add 'emailVerified' info to list of users returned by Keycloak::listUsers() and add 'emailVerified' column to manage-users.blade.php
add cb0a276 Merge pull request #80 from neeraj-lad/AIRAVATA-2571
add 9e22a81 AIRAVATA-2571 Add userEnabled to getUsersWithRole
add 092026e Merge branch 'AIRAVATA-2571-email-verified'
add f562846 AIRAVATA-2571 User enabled instead of email verified
add d7966b5 Change sendEmail() so that it takes array of $recipient['firstName'], ['lastName'], ['email'] as parameter instead of just $recipient which was an email string
add 083adf9 Add 'E-mail (again)' input box in 'Create New Account' and add rule to make sure confirm_email and email are same
add a55ff28 Populate 'Create New Account' form with email if registration fails due to duplicate username and Explicitly declare as array() before adding key-value pairs to it in EmailController
add 76fa9f9 Merge pull request #79 from neeraj-lad/AIRAVATA-2509
add eb190c0 Added Class selectors to the rows in Experiment Summary to facilitate hiding
add c6b6f62 Merge pull request #82 from stephenpaul2727/add_selectors
add 7d20376 AIRAVATA-2674 FIXED
add f4b1ac0 Reverted auto generated key change
add eda3b65 Merge pull request #81 from stephenpaul2727/AIRAVATA-2675
add 0923f16 Adds ampersand to password regex validation
add 82b896f Merge branch 'password-ampersand-validation'
add f6653e2 AIRAVATA-2500 Initial work to setup ssh accounts and display
add cf2eae7 AIRAVATA-2500 Thrift stub code generation
add 3f67f68 AIRAVATA-2500 Display SSHAccountProvisioner additional info
add 2db05f4 AIRAVATA-2500 Thrift stub code generation
add 2782a49 AIRAVATA-2500 SSHAccountProvisioner error reporting
add 277f346 AIRAVATA-2500 Prevent deleting in-use user credentials
add 20db67c AIRAVATA-2500 Fixing layout
add 8a3b0ad AIRAVATA-2500 Using validated flag on UserComputeResourcePref
add 4727617 AIRAVATA-2500 Thrift stub code generation
add f78e49e AIRAVATA-2500 Disallow editing auto provisioned ssh accounts
add fcc30be AIRAVATA-2500 Only display auto ssh setup results if they exist
add e472d8e AIRAVATA-2500 Add closing tag
add d1d6d03 AIRAVATA-2500 Create UserResourceProfile before any auto setup
add 52351bd Merge remote-tracking branch 'origin/AIRAVATA-2500'
add 81d59ea AIRAVATA-2500 Don't display Additional Info if account is all set up
add 0054c6b AIRAVATA-2798 encode special characters in filenames
add 59910b6 Regenerate Thrift stubs
add 619dade Check if user is enabled first before verifying/resending verification email
add ffb4d85 Enabling search query field in application inputs
add 206b32a Showing parsed text outputs
add 47ad554 Removing unnecessary section of parsed outputs
add fc6885c AIRAVATA-2382 Moving max file upload size to Ansible vhost config
add 5c3b4e1 AIRAVATA-2509 Email verification: gateway specific FROM and SUBJECT details
add 1953d28 Regenerated Thrift stubs
add 12c9c9b Check if ssh account setup is complete
add 73bbc2f Fixing missing user_id variable error
add 93ee5fc Fixing typo
add 88ffd28 Removing links from input/output files when file doesn't exist
add 9b86f0d File download unavailable icon/tooltip
add f5d06d8 Merge branch 'handle-deleted-files'
add a4d540c AIRAVATA-2992 Ignore non-existent input file replicas when cloning
add 8915e40 AIRAVATA-2992 Skip display of experiment inputs that are null
add 6c29e3a Add missing closing tag
add 6f7d3b5 AIRAVATA-2995 Require input when file doesn't exist
add 76782a2 Updating thrift models to support staging environment
add 790bb23 Adding missing thrift models
add 152fe5f Updating thrift stubs
add 29ad008 Looking whether job statuses are empty before reading
add 82c231f Merge branch 'staging'
new e52fc97 Merge branch 'master' into dreg-gateway
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.gitignore | 8 +-
app/config/email_templates.json | 20 +-
app/config/pga_config.php.template | 17 +-
app/controllers/AccountController.php | 73 +-
app/controllers/AdminController.php | 35 +-
app/controllers/ExperimentController.php | 52 +-
app/controllers/GatewayRequestUpdateController.php | 14 +-
app/controllers/HomeController.php | 12 +-
app/controllers/UserSettingsController.php | 34 +-
app/libraries/AdminUtilities.php | 35 +-
app/libraries/Airavata/API/Airavata.php | 10257 ++++++------
app/libraries/Airavata/API/Error/Types.php | 2 +-
.../API/Sharing/SharingRegistryService.php | 15735 +++++++++++++++++++
.../{Service/Profile => API/Sharing}/Types.php | 4 +-
app/libraries/Airavata/API/Types.php | 2 +-
.../Model/AppCatalog/AccountProvisioning/Types.php | 345 +
.../Model/AppCatalog/AppDeployment/Types.php | 2 +-
.../Model/AppCatalog/AppInterface/Types.php | 2 +-
.../Model/AppCatalog/ComputeResource/Types.php | 2 +-
.../Model/AppCatalog/GatewayProfile/Types.php | 145 +-
.../Model/AppCatalog/Parallelism/Types.php | 2 +-
.../Model/AppCatalog/StorageResource/Types.php | 2 +-
.../Model/AppCatalog/UserResourceProfile/Types.php | 30 +-
.../Airavata/Model/Application/Io/Types.php | 2 +-
app/libraries/Airavata/Model/Commons/Types.php | 2 +-
.../Airavata/Model/Credential/Store/Types.php | 2 +-
.../Airavata/Model/Data/Movement/Types.php | 2 +-
.../Airavata/Model/Data/Replica/Types.php | 2 +-
app/libraries/Airavata/Model/Dbevent/Types.php | 2 +-
app/libraries/Airavata/Model/Experiment/Types.php | 2 +-
app/libraries/Airavata/Model/Group/Types.php | 2 +-
app/libraries/Airavata/Model/Job/Types.php | 2 +-
.../Airavata/Model/Messaging/Event/Types.php | 2 +-
app/libraries/Airavata/Model/Process/Types.php | 2 +-
app/libraries/Airavata/Model/Scheduling/Types.php | 2 +-
app/libraries/Airavata/Model/Security/Types.php | 2 +-
app/libraries/Airavata/Model/Sharing/Types.php | 2481 +++
app/libraries/Airavata/Model/Status/Types.php | 4 +-
app/libraries/Airavata/Model/Task/Types.php | 2 +-
app/libraries/Airavata/Model/Tenant/Types.php | 412 +-
app/libraries/Airavata/Model/Types.php | 2 +-
app/libraries/Airavata/Model/User/Types.php | 662 +-
app/libraries/Airavata/Model/Workspace/Types.php | 2 +-
.../Service/Iam/Admin/Services/CPI/Error/Types.php | 2 +-
.../Iam/Admin/Services/CPI/IamAdminServices.php | 298 +-
.../Service/Iam/Admin/Services/CPI/Types.php | 2 +-
.../{User => Groupmanager}/CPI/Error/Types.php | 10 +-
.../Groupmanager/CPI/GroupManagerService.php} | 1354 +-
.../Profile/{User => Groupmanager}/CPI/Types.php | 14 +-
.../Service/Profile/Tenant/CPI/Error/Types.php | 2 +-
.../Profile/Tenant/CPI/TenantProfileService.php | 4 +-
.../Airavata/Service/Profile/Tenant/CPI/Types.php | 2 +-
app/libraries/Airavata/Service/Profile/Types.php | 2 +-
.../Service/Profile/User/CPI/Error/Types.php | 2 +-
.../Airavata/Service/Profile/User/CPI/Types.php | 2 +-
.../Profile/User/CPI/UserProfileService.php | 4 +-
app/libraries/AppUtilities.php | 2 +-
app/libraries/CRUtilities.php | 5 +
app/libraries/CommonUtilities.php | 12 +-
app/libraries/EmailUtilities.php | 146 +-
app/libraries/ExperimentUtilities.php | 173 +-
app/libraries/IamAdminServicesUtilities.php | 8 +-
app/libraries/Keycloak/API/RoleMapper.php | 9 +
app/libraries/Keycloak/API/Roles.php | 3 +
app/libraries/Keycloak/API/Users.php | 9 +
app/libraries/Keycloak/Keycloak.php | 27 +-
app/libraries/Keycloak/KeycloakUtil.php | 4 +-
app/libraries/URPUtilities.php | 120 +-
app/views/account/create.blade.php | 36 +-
app/views/account/credential-store.blade.php | 11 +-
app/views/account/dashboard.blade.php | 3 +
app/views/account/login-desktop.blade.php | 36 +-
app/views/account/login.blade.php | 40 +-
app/views/account/update.blade.php | 34 -
app/views/admin/manage-gateway.blade.php | 44 +-
app/views/admin/manage-users.blade.php | 20 +-
app/views/experiment/edit.blade.php | 1 -
.../partials/auto-provisioned-accounts.blade.php | 58 +
app/views/partials/experiment-info.blade.php | 11 +-
app/views/partials/experiment-inputs.blade.php | 6 +-
.../partials/experiment-queue-block.blade.php | 69 +-
.../partials/interface-output-block.blade.php | 8 +
app/views/partials/login-external.blade.php | 14 +-
.../user-compute-resource-preferences.blade.php | 27 +-
public/.htaccess | 5 +-
public/css/bootstrap.min.css | 27 +
public/js/filemanager.js | 4 +-
public/js/util.js | 2 +-
88 files changed, 26632 insertions(+), 6461 deletions(-)
create mode 100644 app/libraries/Airavata/API/Sharing/SharingRegistryService.php
copy app/libraries/Airavata/{Service/Profile => API/Sharing}/Types.php (82%)
create mode 100644 app/libraries/Airavata/Model/AppCatalog/AccountProvisioning/Types.php
create mode 100644 app/libraries/Airavata/Model/Sharing/Types.php
copy app/libraries/Airavata/Service/Profile/{User => Groupmanager}/CPI/Error/Types.php (87%)
copy app/libraries/Airavata/Service/{Iam/Admin/Services/CPI/IamAdminServices.php => Profile/Groupmanager/CPI/GroupManagerService.php} (65%)
copy app/libraries/Airavata/Service/Profile/{User => Groupmanager}/CPI/Types.php (57%)
create mode 100644 app/views/partials/auto-provisioned-accounts.blade.php
[airavata-php-gateway] 01/01: Merge branch 'master' into
dreg-gateway
Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a commit to branch dreg-gateway
in repository https://gitbox.apache.org/repos/asf/airavata-php-gateway.git
commit e52fc972d8d6770038ff517652decd09ab16b984
Merge: b38e1fc 82c231f
Author: Marcus Christie <ma...@iu.edu>
AuthorDate: Sun Jun 2 13:13:58 2019 -0400
Merge branch 'master' into dreg-gateway
.gitignore | 8 +-
app/config/email_templates.json | 20 +-
app/config/pga_config.php.template | 17 +-
app/controllers/AccountController.php | 73 +-
app/controllers/AdminController.php | 35 +-
app/controllers/ExperimentController.php | 52 +-
app/controllers/GatewayRequestUpdateController.php | 14 +-
app/controllers/HomeController.php | 12 +-
app/controllers/UserSettingsController.php | 34 +-
app/libraries/AdminUtilities.php | 35 +-
app/libraries/Airavata/API/Airavata.php | 10257 ++++++------
app/libraries/Airavata/API/Error/Types.php | 2 +-
.../API/Sharing/SharingRegistryService.php | 15735 +++++++++++++++++++
.../{Service/Profile => API/Sharing}/Types.php | 4 +-
app/libraries/Airavata/API/Types.php | 2 +-
.../Model/AppCatalog/AccountProvisioning/Types.php | 345 +
.../Model/AppCatalog/AppDeployment/Types.php | 2 +-
.../Model/AppCatalog/AppInterface/Types.php | 2 +-
.../Model/AppCatalog/ComputeResource/Types.php | 2 +-
.../Model/AppCatalog/GatewayProfile/Types.php | 145 +-
.../Model/AppCatalog/Parallelism/Types.php | 2 +-
.../Model/AppCatalog/StorageResource/Types.php | 2 +-
.../Model/AppCatalog/UserResourceProfile/Types.php | 30 +-
.../Airavata/Model/Application/Io/Types.php | 2 +-
app/libraries/Airavata/Model/Commons/Types.php | 2 +-
.../Airavata/Model/Credential/Store/Types.php | 2 +-
.../Airavata/Model/Data/Movement/Types.php | 2 +-
.../Airavata/Model/Data/Replica/Types.php | 2 +-
app/libraries/Airavata/Model/Dbevent/Types.php | 2 +-
app/libraries/Airavata/Model/Experiment/Types.php | 2 +-
app/libraries/Airavata/Model/Group/Types.php | 2 +-
app/libraries/Airavata/Model/Job/Types.php | 2 +-
.../Airavata/Model/Messaging/Event/Types.php | 2 +-
app/libraries/Airavata/Model/Process/Types.php | 2 +-
app/libraries/Airavata/Model/Scheduling/Types.php | 2 +-
app/libraries/Airavata/Model/Security/Types.php | 2 +-
app/libraries/Airavata/Model/Sharing/Types.php | 2481 +++
app/libraries/Airavata/Model/Status/Types.php | 4 +-
app/libraries/Airavata/Model/Task/Types.php | 2 +-
app/libraries/Airavata/Model/Tenant/Types.php | 412 +-
app/libraries/Airavata/Model/Types.php | 2 +-
app/libraries/Airavata/Model/User/Types.php | 662 +-
app/libraries/Airavata/Model/Workspace/Types.php | 2 +-
.../Service/Iam/Admin/Services/CPI/Error/Types.php | 2 +-
.../Iam/Admin/Services/CPI/IamAdminServices.php | 298 +-
.../Service/Iam/Admin/Services/CPI/Types.php | 2 +-
.../{Tenant => Groupmanager}/CPI/Error/Types.php | 10 +-
.../Groupmanager/CPI/GroupManagerService.php} | 1354 +-
.../Profile/{Tenant => Groupmanager}/CPI/Types.php | 14 +-
.../Service/Profile/Tenant/CPI/Error/Types.php | 2 +-
.../Profile/Tenant/CPI/TenantProfileService.php | 4 +-
.../Airavata/Service/Profile/Tenant/CPI/Types.php | 2 +-
app/libraries/Airavata/Service/Profile/Types.php | 2 +-
.../Service/Profile/User/CPI/Error/Types.php | 2 +-
.../Airavata/Service/Profile/User/CPI/Types.php | 2 +-
.../Profile/User/CPI/UserProfileService.php | 4 +-
app/libraries/AppUtilities.php | 2 +-
app/libraries/CRUtilities.php | 5 +
app/libraries/CommonUtilities.php | 12 +-
app/libraries/EmailUtilities.php | 146 +-
app/libraries/ExperimentUtilities.php | 173 +-
app/libraries/IamAdminServicesUtilities.php | 8 +-
app/libraries/Keycloak/API/RoleMapper.php | 9 +
app/libraries/Keycloak/API/Roles.php | 3 +
app/libraries/Keycloak/API/Users.php | 9 +
app/libraries/Keycloak/Keycloak.php | 27 +-
app/libraries/Keycloak/KeycloakUtil.php | 4 +-
app/libraries/URPUtilities.php | 120 +-
app/views/account/create.blade.php | 36 +-
app/views/account/credential-store.blade.php | 11 +-
app/views/account/dashboard.blade.php | 3 +
app/views/account/login-desktop.blade.php | 36 +-
app/views/account/login.blade.php | 40 +-
app/views/account/update.blade.php | 34 -
app/views/admin/manage-gateway.blade.php | 44 +-
app/views/admin/manage-users.blade.php | 20 +-
app/views/experiment/edit.blade.php | 1 -
.../partials/auto-provisioned-accounts.blade.php | 58 +
app/views/partials/experiment-info.blade.php | 11 +-
app/views/partials/experiment-inputs.blade.php | 6 +-
.../partials/experiment-queue-block.blade.php | 69 +-
.../partials/interface-output-block.blade.php | 8 +
app/views/partials/login-external.blade.php | 14 +-
.../user-compute-resource-preferences.blade.php | 27 +-
public/.htaccess | 5 +-
public/css/bootstrap.min.css | 27 +
public/js/filemanager.js | 4 +-
public/js/util.js | 2 +-
88 files changed, 26632 insertions(+), 6461 deletions(-)
diff --cc app/libraries/ExperimentUtilities.php
index ade7873,b6295d5..5902a3d
--- a/app/libraries/ExperimentUtilities.php
+++ b/app/libraries/ExperimentUtilities.php
@@@ -99,8 -97,13 +97,13 @@@ class ExperimentUtilitie
$fileName = basename($input->value);
}
- echo '<p>' . $input->name . ': <a target="_blank" href="' . URL::to("/") . '/download/?id='
- . $input->value . '">' . $fileName . ' <span class="glyphicon glyphicon-save"></span></a></p>';
+ $path = parse_url($currentInputPath)['path'];
+ if(file_exists($path)){
+ echo '<p>' . $input->name . ': <a target="_blank" href="' . URL::to("/") . '/download/?id='
- . $input->value . '">' . $fileName . ' <span class="glyphicon glyphicon-new-window"></span></a></p>';
++ . $input->value . '">' . $fileName . ' <span class="glyphicon glyphicon-save"></span></a></p>';
+ } else {
+ echo '<p>' . $input->name . ': ' . $fileName . self::FILE_UNAVAILABLE_ICON_TOOLTIP;
+ }
}else if($input->type == DataType::URI_COLLECTION) {
$uriList = $input->value;
@@@ -121,8 -124,13 +124,13 @@@
$fileName = basename($input->value);
}
- $optFilesHtml = $optFilesHtml . '<a target="_blank" href="' . URL::to("/") . '/download/?id='
- . $uri . '">' . $fileName . ' <span class="glyphicon glyphicon-save"></span></a> ';
+ $path = parse_url($currentInputPath)['path'];
+ if(file_exists($path)){
+ $optFilesHtml = $optFilesHtml . '<a target="_blank" href="' . URL::to("/") . '/download/?id='
- . $uri . '">' . $fileName . ' <span class="glyphicon glyphicon-new-window"></span></a> ';
++ . $uri . '">' . $fileName . ' <span class="glyphicon glyphicon-save"></span></a> ';
+ } else {
+ $optFilesHtml = $optFilesHtml . $fileName . self::FILE_UNAVAILABLE_ICON_TOOLTIP;
+ }
}
@@@ -399,24 -407,17 +407,27 @@@
}
}
} elseif ($applicationInput->type == DataType::URI) {
- if ($_FILES[$applicationInput->sanitizedFormName]['name']) {
-
- $file = $_FILES[$applicationInput->sanitizedFormName];
- if ($file['error'] != 0) {
- throw new Exception("Failure occurred while uploading file '"
- . $file['name'] . "'. File upload error code is " . $file['error'] . ".");
- }
+//Changed for dREG gateway
+//Here use new file upload method: Resumable uploading method provided by Tus package
+ if (isset($_POST[ $applicationInput->sanitizedFormName ])) {
+// if ($_FILES[$applicationInput->sanitizedFormName]['name']) {
+// $file = $_FILES[$applicationInput->sanitizedFormName];
+// if ($file['error'] != 0) {
+// throw new Exception("Failure occurred while uploading file '"
+// . $file['name'] . "'. File upload error code is " . $file['error'] . ".");
+// }
+
+//changed for dREG gateway
+ $tmp_dir = ini_get('upload_tmp_dir') ? ini_get('upload_tmp_dir') : sys_get_temp_dir();
+// The _POST doesn't contain file data again. the URI value = [filename]:http://website/experiment/upload/[uploadpath]
+ $fileUpload = $_POST[$applicationInput->sanitizedFormName];
+ $filePieces = explode(":", $fileUpload);
+ $filename = $filePieces[0];
+ $fileTemp = $tmp_dir . "/" . substr($filePieces[2], strrpos($filePieces[2], '/')+1);
+ //FIX - AIRAVATA - 2674
+ //Replaced spaces with Underscore
+ $file['name'] = str_replace(' ', '_', $file['name']);
//
// move file to experiment data directory
//
diff --cc app/views/partials/experiment-info.blade.php
index 4f43aee,e174900..046fb32
mode 100755,100644..100755
--- a/app/views/partials/experiment-info.blade.php
+++ b/app/views/partials/experiment-info.blade.php
diff --cc app/views/partials/experiment-inputs.blade.php
index f245b19,4c48fbd..15e2ab1
mode 100755,100644..100755
--- a/app/views/partials/experiment-inputs.blade.php
+++ b/app/views/partials/experiment-inputs.blade.php
diff --cc app/views/partials/experiment-queue-block.blade.php
index b78d391,61948d4..61948d4
mode 100755,100644..100755
--- a/app/views/partials/experiment-queue-block.blade.php
+++ b/app/views/partials/experiment-queue-block.blade.php