This is an automated email from the ASF dual-hosted git repository. yasith pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/airavata-portals.git
commit bf7c8644c37d6417168f51eb2b5d3795a1a9a3cc Merge: 2d316351d 4f03e32c0 Author: Yasith Jayawardana <[email protected]> AuthorDate: Sun Jun 22 12:07:31 2025 -0400 Merge pull request #2 from apache/merge-portals Merge legacy custos portal airavata-custos-portal/.dockerignore | 15 + airavata-custos-portal/.env | 13 + airavata-custos-portal/.gitignore | 10 + airavata-custos-portal/.nvmrc | 1 + airavata-custos-portal/1 | 11 + airavata-custos-portal/Dockerfile | 32 + airavata-custos-portal/LICENSE | 201 + airavata-custos-portal/README.md | 150 + .../airavata_custos_portal/__init__.py | 0 .../airavata_custos_portal/apps/__init__.py | 0 .../airavata_custos_portal/apps/api/__init__.py | 0 .../airavata_custos_portal/apps/api/admin.py | 3 + .../airavata_custos_portal/apps/api/apps.py | 6 + .../apps/api/migrations/__init__.py | 0 .../airavata_custos_portal/apps/api/models.py | 3 + .../airavata_custos_portal/apps/api/tests.py | 3 + .../airavata_custos_portal/apps/api/urls.py | 10 + .../airavata_custos_portal/apps/api/views.py | 191 + .../apps/frontend/__init__.py | 0 .../airavata_custos_portal/apps/frontend/admin.py | 3 + .../airavata_custos_portal/apps/frontend/apps.py | 6 + .../apps/frontend/migrations/__init__.py | 0 .../airavata_custos_portal/apps/frontend/models.py | 3 + .../airavata_custos_portal_frontend/index.html | 29 + .../airavata_custos_portal/apps/frontend/tests.py | 3 + .../airavata_custos_portal/apps/frontend/urls.py | 28 + .../airavata_custos_portal/apps/frontend/views.py | 13 + .../airavata_custos_portal/asgi.py | 16 + .../airavata_custos_portal/settings.py | 166 + .../airavata_custos_portal/urls.py | 24 + .../airavata_custos_portal/wsgi.py | 16 + airavata-custos-portal/babel.config.js | 5 + airavata-custos-portal/docker-compose.yml | 22 + airavata-custos-portal/entrypoint.sh | 22 + airavata-custos-portal/manage.py | 22 + airavata-custos-portal/nginx.conf | 90 + airavata-custos-portal/package.json | 62 + .../public/custos-logo_custos-logomark-color.png | Bin 0 -> 749 bytes airavata-custos-portal/public/favicon.ico | Bin 0 -> 28747 bytes airavata-custos-portal/public/index.html | 17 + airavata-custos-portal/requirements.txt | 40 + airavata-custos-portal/setup.cfg | 12 + airavata-custos-portal/setup.py | 46 + airavata-custos-portal/src/App.vue | 62 + airavata-custos-portal/src/assets/bots.png | Bin 0 -> 35160 bytes airavata-custos-portal/src/assets/credentials.png | Bin 0 -> 25037 bytes .../assets/custos-logo_custos-logo-color-v1.png | Bin 0 -> 3084 bytes airavata-custos-portal/src/assets/custos_home.png | Bin 0 -> 44021 bytes airavata-custos-portal/src/assets/dblogs.png | Bin 0 -> 50013 bytes .../src/assets/green-successfull-icon.svg | 3 + airavata-custos-portal/src/assets/groups_web.png | Bin 0 -> 57778 bytes airavata-custos-portal/src/assets/logo.png | Bin 0 -> 6849 bytes .../src/assets/not-found-icon.svg | 5 + airavata-custos-portal/src/assets/sharings.png | Bin 0 -> 44305 bytes airavata-custos-portal/src/assets/users.png | Bin 0 -> 68955 bytes airavata-custos-portal/src/components/Password.vue | 45 + .../src/components/validation-regex.js | 5 + airavata-custos-portal/src/config.js | 50 + .../src/lib/components/block/Breadcrumb.vue | 34 + .../src/lib/components/block/Footer.vue | 13 + .../src/lib/components/block/Header.vue | 120 + .../block/entity-view/entity-view-default.vue | 55 + .../block/entity-view/entity-view-secret.vue | 144 + .../components/block/entity-view/entity-view.vue | 43 + .../src/lib/components/button/button-copy.vue | 25 + .../button/button-delete-after-confirmation.vue | 66 + .../src/lib/components/button/button-view.vue | 31 + .../input-fields/input-select-users-or-groups.vue | 121 + .../input-fields/user-tenant-roles-select.vue | 24 + .../modals/modal-select-users-or-groups.vue | 103 + .../lib/components/modals/modal-share-entity.vue | 224 + .../src/lib/components/overlay/button-overlay.vue | 19 + .../lib/components/overlay/table-overlay-info.vue | 40 + .../src/lib/components/pages/404.vue | 15 + .../src/lib/components/pages/Callback.vue | 35 + .../src/lib/components/pages/Landing.vue | 217 + .../src/lib/components/pages/ListTenants.vue | 267 + .../src/lib/components/pages/Maintenance.vue | 29 + .../src/lib/components/pages/NewTenant.vue | 540 + .../src/lib/components/pages/TenantEntities.vue | 276 + .../src/lib/components/pages/TenantEntity.vue | 73 + .../src/lib/components/pages/TenantEntityTypes.vue | 102 + .../src/lib/components/pages/TenantGroup.vue | 148 + .../src/lib/components/pages/TenantGroups.vue | 120 + .../src/lib/components/pages/TenantHome.vue | 213 + .../src/lib/components/pages/TenantNewEntity.vue | 217 + .../lib/components/pages/TenantNewEntityType.vue | 140 + .../src/lib/components/pages/TenantNewGroup.vue | 124 + .../components/pages/TenantNewPermissionType.vue | 140 + .../src/lib/components/pages/TenantNewRole.vue | 144 + .../lib/components/pages/TenantPermissionTypes.vue | 102 + .../src/lib/components/pages/TenantProfile.vue | 439 + .../src/lib/components/pages/TenantRoles.vue | 128 + .../src/lib/components/pages/TenantUser.vue | 383 + .../src/lib/components/pages/TenantUsers.vue | 138 + .../src/lib/service/ci-logon-service/idplist.json | 24566 +++++++++++++++++++ .../src/lib/service/ci-logon-service/index.js | 56 + .../lib/service/custos-portal-services/index.js | 16 + .../custos-service-entities-secrets-password.js | 48 + .../custos-service-entities-secrets-ssh.js | 47 + .../custos-service-entities-secrets.js | 62 + .../custos-service-entities/index.js | 124 + .../custos-service/custos-service-groups.js | 307 + .../custos-service/custos-service-identity.js | 82 + .../custos-service/custos-service-sharing.js | 197 + .../custos-service/custos-service-tenants.js | 173 + .../service/custos-service/custos-service-users.js | 201 + .../src/lib/service/custos-service/index.js | 133 + airavata-custos-portal/src/lib/store/index.js | 7 + .../src/lib/store/modules/auth.store.js | 91 + .../src/lib/store/modules/ci-logon.store.js | 67 + .../src/lib/store/modules/entity.store.js | 132 + .../src/lib/store/modules/group.store.js | 194 + .../src/lib/store/modules/sharing.store.js | 206 + .../src/lib/store/modules/tenant.store.js | 313 + .../src/lib/store/modules/user.store.js | 205 + airavata-custos-portal/src/lib/store/typedefs.js | 29 + .../src/lib/store/util/ci-logon.util.js | 5 + .../src/lib/store/util/custos.util.js | 7 + airavata-custos-portal/src/lib/store/util/index.js | 36 + airavata-custos-portal/src/main.js | 29 + airavata-custos-portal/src/router.js | 236 + airavata-custos-portal/src/styles.scss | 111 + airavata-custos-portal/vue.config.js | 26 + airavata-custos-portal/yarn-error.log | 8587 +++++++ airavata-custos-portal/yarn.lock | 9087 +++++++ 126 files changed, 51896 insertions(+)
