This is an automated email from the ASF dual-hosted git repository.
yasith pushed a change to branch merge-django-portal
in repository https://gitbox.apache.org/repos/asf/airavata.git
from eddace98e7 Add 'portals/admin-portal/' from commit
'a723111d1032402d5f9f479da926df3eeac109da'
add cc10e5d11c Initial commit: moved data_products_helper.py ->
user_storage.py
add 6f9d189033 AIRAVATA-3342 Changed SDK to Django app so it could define
model
add 250dcb8da1 AIRAVATA-3342 Generate documentation for the SDK
add b1931a8037 AIRAVATA-3342 Lazy load models
add 293a9c2612 AIRAVATA-3342 Rename some methods
add 105339c2a1 Updates to requirements.txt files
add d725911120 Fixes to autogenerated docs
add 10baf35e29 Adding updates from AIRAVATA-3310
add b043a78758 Fixing test
add 2dd9556309 AIRAVATA-3346: AIRAVATA-3346 Implementing remote API mode
for user_storage functions to support user storage view
add d3bf173e03 AIRAVATA-3346: AIRAVATA-3346 Fixing preservation of content
type in uploads
add dacf2332b8 AIRAVATA-3346: AIRAVATA-3346: AIRAVATA-3346 Implement
remote save_input_file
add a705626931 AIRAVATA-3346: AIRAVATA-3346 Prevent accidentally using
local data store API when configured for remote data store API
add b5f8260cd1 AIRAVATA-3346: AIRAVATA-3346 removing deprecated
user_file_exists
add 8c6b231289 AIRAVATA-3346: AIRAVATA-3346 Enable remote API for
update_file_content
add da9b23b27a AIRAVATA-3346 Factor out common code
add f58ebbc288 Merge pull request #1 from
apache/AIRAVATA-3346-implement-remote-fs-abstraction-of-user-storage
add 70ae23b60a AIRAVATA-3346 Fix handling default value of path_params
add 0ef7fbb616 Quote file path in replica location URI
add 457b189774 AIRAVATA-3362 list_experiment_dir function
add df140c04d6 AIRAVATA-3362 Add list_experiment_dir to docs
add 053bf0cbef Fix readthedocs build by removing duplicate entry
add ff2b662cf1 Move git repo for airavata-python-sdk to requirements.txt
add c387158f57 updating getting started notes
add a0842917d4 AIRAVATA-3346 Restoring user_file_exists
add 226d740e3d AIRAVATA-3389 Skip broken symlinks in user storage
add 50bc3aec5e AIRAVATA-3346 implement remote api for user_file_exists
add d72bf49af9 AIRAVATA-3346 handle 404 with dir_exists
add af54b48527 AIRAVATA-3310 SDK support for updating data product content
add 5a61fab2a0 AIRAVATA-3362 experiment_dir_exists and fixes to computed
paths
add e9e98e8d41 urls module for constructing REST API urls
add fdbfcd0e08 AIRAVATA-3362 Fixes to relative path of dir in experiment
dir
add 28e3f278bf get_rel_experiment_dir
add 015dff5508 adding linting, import sorting
add f44651e25d fixing typo
add 2c52fec854 adding CI badge
add 7b48a600e1 Add data_product_uri parameter option to user_storage
functions
add eedd030e91 AIRAVATA-3362 implementing remote api support for exp dir
functions
add c687b45420 WIP: UserStorageProvider abstraction
add 58ff63c4ac AIRAVATA-3420 Implements DjangoFileSystemProvider,
refactored user_storage module to use UserStorageProvider
add d7858965e9 AIRAVATA-3420 Implement browsing methods of
MFTUserStorageProvider
add c80aa13688 AIRAVATA-3420 Implementing get_download_url, moving
download view to sdk
add c0b9ef8080 AIRAVATA-3420 Fix content type determination by switching
to UserStorageProvider.open
add 87b33a18d0 AIRAVATA-3420 Revert download url change
add 197731ff05 AIRAVATA-3420 /sdk/download redirects to the download url
add 31d2d07313 AIRAVATA-3420 For backwards compat, keep file hidden
attribute
add dc30954bae AIRAVATA-3420 Fix unit tests
add c19c2c63f1 AIRAVATA-3420 Fixing linting, clean up
add 1e4970cd4f AIRAVATA-3420 Adding resource id to UserFiles model
add a5f2d0c436 AIRAVATA-3420 Updating docs
add 296874bbf2 AIRAVATA-3420 Fix flake8 incompatible dependencies
add c8cacc2271 AIRAVATA-3420 Only load MFTUserStorageProvider if
dependencies are also available
add 7d06516eeb AIRAVATA-3420 For backwards compat, keep file hidden
attribute
add e02efcced3 AIRAVATA-3458 Get file metadata for a data product
add 2f981eb2a0 AIRAVATA-3458 Add gzip compression to download
add 21119c5d78 AIRAVATA-3420 Handle special case of creating user's home
directory
add 3c3fb34b18 AIRAVATA-3420 import style fix
add e14b8300a9 AIRAVATA-3362 Make sure experiment storage path is relative
to experiment data dir
add 4d4b8470b0 AIRAVATA-3420 Return full path to created directory
add b840ef0c90 Fixing linting error (trailing ws)
add 76f44b10de In remote API `exists()`, handle case where data product
itself doesn't exist
add f1cbe976a0 AIRAVATA-3458 Support get_data_product_metadata when user
isn't owner
add 8b9e926367 AIRAVATA-3420 Fix remote api mode of create_user_dir to
return resource id, path tuple
add 54914bced9 AIRAVATA-3460 Pass path as request param
add 4a981ae259 AIRAVATA-3420 Pass experiment owner to user storage
provider backend
add 6672f541cb AIRAVATA-3420 Add token based auth for downloads
add 7cb087cb2e AIRAVATA-3420 backwards compatible /api/download
add 5d0f4e562e AIRAVATA-3420 Fix dependency on DRF
add 3ac051a1f6 Revert "AIRAVATA-3460 Pass path as request param"
add 45bfff18c6 AIRAVATA-3420 Check if 'path' in create directory response
add 069af28ad9 In remote API `exists()`, handle case where data product
itself doesn't exist
add bbfe5924dd Adding LICENSE file
add b79cd5c730 prep for 1.0 release
add 9fef525623 Merge branch 'master' into mft-integration
add a8f80a14f9 AIRAVATA-3420 Bump version to 1.1dev1
add 5242c0e3be AIRAVATA-3420 Add get_lazy_download_url
add 28ca541b8f AIRAVATA-3469 Download storage dir and experiment dir
add f93bb9488c AIRAVATA-3469 Switch to temporary file for building zip file
add e703bd7bf2 Merge branch 'download-folder'
add d437dca49c AIRAVATA-3469 Bump version to 1.1.dev2
add b63ea603ab AIRAVATA-3469 Add max zip file size check
add beddf0f82f AIRAVATA-3475 Adds create_symlink() to user_storage module
add 5802ba9607 AIRAVATA-3475 bump version to 1.1.dev3
add 5173c93898 Merge branch 'airavata-3475'
add e71e1f36c6 Notes on pushing a release to PyPI
add 80c7fb2f1d AIRAVATA-3469 Preserve force download param when redirecting
add 3b0a4ee7e3 AIRAVATA-3420 Preserve mime-type query param
add b33bcf0dac AIRAVATA-3431 Copy fix to the SDK download_file view
add f532edc206 AIRAVATA-3485 Accept experiment data dir relative paths in
user_storage functions
add a5a8369d6e AIRAVATA-3485 Also adding experiment_id to listdir and
get_file_metadata, for testing purposes mostly
add f5f04d107a AIRAVATA-3485 Support for experiment-id in remote API
add 46c15e603a AIRAVATA-3485 Bump version to 1.1.dev.4
add f30958b512 AIRAVATA-3460 Pass path as query param to handle full
resource path paths when creating a directory
add 11e39590e7 AIRAVATA-3485 POST experiment-id in request body for
consistency
add 4ce71c91c1 Version bump to 1.1.dev5
add 5087097fc6 Pass name of file in remote API call when saving file
add bd420b84b5 AIRAVATA-3485 Use experiment owner user storage directory
for listdir, get_file_metadata
add b67bb33f9a AIRAVATA-3485 Bump version to 1.1.dev6
add f835ec1c0f AIRAVATA-3420 bug fix: resource_path should be full path
add 7d8a750a68 AIRAVATA-3485 Document the optional experiment_id parameter
in user_storage API
add ea4e68a564 AIRAVATA-3485 Bump version to 1.1.dev7
add 33428c1718 AIRAVATA-3485 Fix looking up/creating data products for
experiment files owned by experiment owner
add e5b9ea1eb4 AIRAVATA-3485 Bump version to 1.1.dev8
add 2be2ab981e AIRAVATA-3420 Regenerate the grpc stubs
add 9c5e75e3b2 AIRAVATA-3420 Fix computing path when relative, and allow
optimization where base resource path is configured
add 94ec26a463 AIRAVATA-3420 Allow reading just a few bytes from very
large files by streaming http download (initial use case is to determine file
type)
add 5c5b002f22 AIRAVATA-3420 Implement get_download_url for REMOTE API,
return full URL
add 5a0a08aabb Bump version to 1.2.dev1
add 9c3be01151 AIRAVATA-3420 Remove redundant parameter
add 4e977dbb3d AIRAVATA-3420 Utility method to get the default storage id
add cfac345e7a AIRAVATA-3420 Change remote API implementation of
get_download_url to resolve to local URL and stream from remote server
add c121c9e5fe Bump version to 1.2.dev2
add abd7c6002e Fixing minor linting errors
add b777a55773 AIRAVATA-3498 Fix download bug with 2 or more nested
directories
add 7a71303973 AIRAVATA-3420 Add utility method to user_storage module
add 4aec179d4c Bump version to 1.2.0
add ab922276b1 Add tags push to release docs
add 8e3f23ffd3 AIRAVATA-3420 Fixing typo
add fb68a45c78 Bump version to 1.2.1
add d3b757abaf Return 404 when using remote API mode and file doesn't exist
add 4b437bf7ed Bump version to 1.2.2
add fccabee446 Fix bug when user-storage request fails but code assumes
isDir in the response
add 53ab81bf32 Updating README to reflect that sdk is now on pypi
add 554f08776f README formatting
add 0bf9e843f3 AIRAVATA-3532 In addition to checking that data product
exists, also double check it is a file
add f48f22490c Bump version to 1.2.3
add bad5b05352 Fix formatting
add ec1477ea15 Fix remote API support for create_user_dir
add cbd94a4a6a AIRAVATA-3538 experiment_util module with launch and clone
functions
add a9977de235 AIRAVATA-3538 Fix issue with setting experimentDataDir
add 20679297e0 AIRAVATA-3542 download experiments endpoint
add 28ccd98b9f AIRAVATA-3542 bump version to 1.3.dev3
add 5a658fbac1 AIRAVATA-3542 include and exclude patterns for multi
experiment download
add c0baca904a AIRAVATA-3542 rename files matching include patterns
add ec03fef7c1 AIRAVATA-3542 version 1.3.dev4
add c978cc8b79 AIRAVATA-3542 Convert given filename, renames to valid
filenames
add a2e6adc9fc AIRAVATA-3542 Bump version to 1.3.dev5
add e645ebada1 Update release instructions with $VERSION env var
add 2cc61dbadb Bump to version 1.3.0
add 45aec2e23c AIRAVATA-3583 Add index on file_path column
add e979c40a19 AIRAVATA-3618 Open in UTF8 for updating
add 12cd55f381 Bump to version 1.3.2
add b990360a73 AIRAVATA-3625 intermediate_output module with utility
functions
add ba78fdd9dc Bump to version 1.4.0
add 7f0bd4fca8 Fix Travis builds for Py 3.7, also adding 3.9
add f571d089b5 Adding requests to dependencies
add 24faafd967 Updating mkdocs and pinning Jinja2 to fix readthedocs build
add 1f1122ec63 Dropping Jinja2 to 3.0 for Py3.6 compat
add da035d15f2 AIRAVATA-3646 improved error message when storage resource
is missing provider config
add cf1213027e Bump to version 1.4.1
add 5b916d9bb8 AIRAVATA-3648 Report last modified time in metadata
add eb903882e2 Bump to version 1.5.0
add db1ec02306 AIRAVATA-3649 Moved tests into module
add 9c45b34b79 AIRAVATA-3649 Decorator for registering queue settings
calculator functions
add 4a38c1a511 AIRAVATA-3649 Added exists method to check if queue
settings calculator exists
add d7a82882bd Bump to version 1.6.0
add 7fbf6d55da Making flake8 happy
add b009297905 Add request data to error emails
add c0d74942ad AIRAVATA-3676 Fix default USER_STORAGES lookup
add 64d75c41a7 Bump django from 3.2.12 to 3.2.15
add 94e539ad29 Merge pull request #9 from
apache/dependabot/pip/django-3.2.15
add 7d34bbf80d Bump django from 3.2.15 to 3.2.16
add bddb2b45d4 Merge pull request #10 from
apache/dependabot/pip/django-3.2.16
add b870c97615 Bump djangorestframework from 3.10.3 to 3.11.2
add 30688512b1 Merge pull request #7 from
apache/dependabot/pip/djangorestframework-3.11.2
add abd91a2ebd Bump requests from 2.18.4 to 2.20.0
add 0c84f0a989 Merge pull request #4 from
apache/dependabot/pip/requests-2.20.0
add 9f47fd52b2 Bump paramiko from 2.7.1 to 2.10.1
add d3883fa523 Merge pull request #3 from
apache/dependabot/pip/paramiko-2.10.1
add 4b23512c36 Bump cryptography from 3.0 to 3.3.2
add a609fe0839 Merge pull request #6 from
apache/dependabot/pip/cryptography-3.3.2
add 8b0ad58200 AIRAVATA-3676 Bump to version 1.6.1
add ded99240c4 AIRAVATA-3677 Convert creation time with microseconds
add 14c69b2796 AIRAVATA-3679 stream the zip file instead of creating temp
file
add e954a84321 Bump to version 1.7.0
add 4176db563f Tell pypi that the long description is in markdown
add 5619f46792 Switch to pytest for running unit tests
add e4f9ce25c1 AIRAVATA-3529 Upgrade grpc to support 3.10
add 36887dc976 AIRAVATA-3529 Support Py 3.10, 3.11, and fix 3.6 support
add 8d03cdf350 Fix travis build for python 3.6
add fbc4d841f1 Fix travis build for python 3.6
add 705eeca6cd Adding Py 3.11 to travis build
add b26d7a83ba Bump to version 1.8.0
add 8ac0a1db78 AIRAVATA-3679 Switch to zipstream-new for large file
handling
add 90c544f238 Bump to version 1.8.1
add 041321d5dd flake8 exclude patterns
add 62051ea0b9 adding .asf.yaml to control commit and pr emails
add f5b2684461 AIRAVATA-3682 Passthrough 'userHasWriteAccess'
add b3d2dcb292 Bump to version 1.8.2
add 350636eca0 Removing travis file
add d0de482e13 AIRAVATA-3697 Set filename appropriately when downloading
file with utf8 characters
add 4190add81a Bump to version 1.8.3
add 7f57be6a19 Adding .readthedocs.yaml
add 3a6edf04d5 AIRAVATA-3702 Preserve original filename of input file when
it has the same name
add 0e0956af11 Bump version to 1.8.4
add 3bf41755f5 Adding build.os to .readthedocs.yaml
add cf4c4789e8 Update mkautodoc to work with RTD
add 52e99a4aa7 Add 'portals/admin-portal-sdk/' from commit
'cf4c4789e851e42e7daaf4202e43732f0117669a'
No new revisions were added by this update.
Summary of changes:
.../{admin-portal => admin-portal-sdk}/.asf.yaml | 11 +-
portals/admin-portal-sdk/.gitignore | 8 +
.../.readthedocs.yaml | 2 -
LICENSE => portals/admin-portal-sdk/LICENSE | 0
portals/admin-portal-sdk/README.md | 123 ++
.../airavata_django_portal_sdk}/__init__.py | 0
.../airavata_django_portal_sdk/apps.py | 5 +
.../airavata_django_portal_sdk/decorators.py | 1 +
.../experiment_util/__init__.py | 4 +
.../experiment_util/api.py | 194 ++++
.../experiment_util/intermediate_output.py | 98 ++
.../migrations/0001_initial.py} | 15 +-
.../migrations/0002_userfiles_file_resource_id.py | 29 +
.../migrations/0003_auto_20220225_1510.py | 48 +
.../migrations}/__init__.py | 0
.../airavata_django_portal_sdk/models.py | 18 +
.../queue_settings_calculators.py | 57 +
.../airavata_django_portal_sdk/remoteapi.py | 50 +
.../airavata_django_portal_sdk/serializers.py | 27 +
.../airavata_django_portal_sdk/tests}/__init__.py | 0
.../tests/test_queue_settings_calculator.py | 91 ++
.../tests/test_settings.py | 18 +
.../tests/test_user_storage.py | 364 ++++++
.../airavata_django_portal_sdk/tests/test_util.py | 13 +
.../airavata_django_portal_sdk/tests/test_views.py | 122 ++
.../airavata_django_portal_sdk/urls.py | 24 +
.../user_storage/__init__.py | 55 +
.../airavata_django_portal_sdk/user_storage/api.py | 927 +++++++++++++++
.../user_storage/backends/CredCommon_pb2.py | 364 ++++++
.../user_storage/backends/CredCommon_pb2_grpc.py | 4 +
.../user_storage/backends/MFTApi_pb2.py | 1176 ++++++++++++++++++++
.../user_storage/backends/MFTApi_pb2_grpc.py | 297 +++++
.../user_storage/backends/__init__.py | 10 +
.../user_storage/backends/base.py | 83 ++
.../backends/django_filesystem_provider.py | 335 ++++++
.../user_storage/backends/mft_provider.py | 260 +++++
.../airavata_django_portal_sdk/util.py | 9 +
.../airavata_django_portal_sdk/views.py | 193 ++++
portals/admin-portal-sdk/docs/index.md | 58 +
portals/admin-portal-sdk/mkdocs.yml | 6 +
portals/admin-portal-sdk/pytest.ini | 2 +
portals/admin-portal-sdk/requirements-dev.txt | 13 +
portals/admin-portal-sdk/requirements.txt | 24 +
portals/admin-portal-sdk/setup.cfg | 17 +
portals/admin-portal-sdk/setup.py | 44 +
portals/{admin-portal => admin-portal-sdk}/tox.ini | 8 +-
46 files changed, 5187 insertions(+), 20 deletions(-)
copy portals/{admin-portal => admin-portal-sdk}/.asf.yaml (88%)
create mode 100644 portals/admin-portal-sdk/.gitignore
copy portals/{admin-portal => admin-portal-sdk}/.readthedocs.yaml (93%)
copy LICENSE => portals/admin-portal-sdk/LICENSE (100%)
create mode 100644 portals/admin-portal-sdk/README.md
copy {airavata-api/airavata-client-sdks/airavata-python-sdk =>
portals/admin-portal-sdk/airavata_django_portal_sdk}/__init__.py (100%)
create mode 100644 portals/admin-portal-sdk/airavata_django_portal_sdk/apps.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/decorators.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/experiment_util/__init__.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/experiment_util/api.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/experiment_util/intermediate_output.py
copy
portals/{admin-portal/django_airavata/apps/api/migrations/0002_auto_20190513_2037.py
=> admin-portal-sdk/airavata_django_portal_sdk/migrations/0001_initial.py}
(50%)
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/migrations/0002_userfiles_file_resource_id.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/migrations/0003_auto_20220225_1510.py
copy {airavata-api/airavata-client-sdks/airavata-python-sdk =>
portals/admin-portal-sdk/airavata_django_portal_sdk/migrations}/__init__.py
(100%)
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/models.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/queue_settings_calculators.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/remoteapi.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/serializers.py
copy {airavata-api/airavata-client-sdks/airavata-python-sdk =>
portals/admin-portal-sdk/airavata_django_portal_sdk/tests}/__init__.py (100%)
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/tests/test_queue_settings_calculator.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/tests/test_settings.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/tests/test_user_storage.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/tests/test_util.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/tests/test_views.py
create mode 100644 portals/admin-portal-sdk/airavata_django_portal_sdk/urls.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/__init__.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/api.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/CredCommon_pb2.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/CredCommon_pb2_grpc.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/MFTApi_pb2.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/MFTApi_pb2_grpc.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/__init__.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/base.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/django_filesystem_provider.py
create mode 100644
portals/admin-portal-sdk/airavata_django_portal_sdk/user_storage/backends/mft_provider.py
create mode 100644 portals/admin-portal-sdk/airavata_django_portal_sdk/util.py
create mode 100644 portals/admin-portal-sdk/airavata_django_portal_sdk/views.py
create mode 100644 portals/admin-portal-sdk/docs/index.md
create mode 100644 portals/admin-portal-sdk/mkdocs.yml
create mode 100644 portals/admin-portal-sdk/pytest.ini
create mode 100644 portals/admin-portal-sdk/requirements-dev.txt
create mode 100644 portals/admin-portal-sdk/requirements.txt
create mode 100644 portals/admin-portal-sdk/setup.cfg
create mode 100644 portals/admin-portal-sdk/setup.py
copy portals/{admin-portal => admin-portal-sdk}/tox.ini (64%)