Hi Marcus, Thanks for the help! 1. Applying database migrations worked as you said to look at running containers using *docker ps *I observed that the name of the container was containers_db_1 and not containers-db-1 as shown in documentation here <https://github.com/apache/airavata/blob/develop/modules/ide-integration/README.md#starting-backend-components-database-keycloak-kafka-rabbitmq-sshd-server>. I think we can update it in documentation.
2. Fixing 1 fixed the second one as you said. but there is another exception related to *expcatalog database*: Exception in thread "main" java.lang.RuntimeException: Failed to post-initialize the expcatalog database at org.apache.airavata.registry.core.utils.ExpCatalogDBInitConfig.postInit(ExpCatalogDBInitConfig.java:81) at org.apache.airavata.common.utils.DBInitializer.initializeDB(DBInitializer.java:46) at org.apache.airavata.registry.api.service.RegistryAPIServer.StartRegistryServer(RegistryAPIServer.java:69) at org.apache.airavata.registry.api.service.RegistryAPIServer.start(RegistryAPIServer.java:151) at org.apache.airavata.ide.integration.APIServerStarter.main(APIServerStarter.java:23) Caused by: java.lang.RuntimeException: Failed to get EntityManager at org.apache.airavata.registry.core.repositories.AbstractRepository.execute(AbstractRepository.java:137) at org.apache.airavata.registry.core.repositories.AbstractRepository.get(AbstractRepository.java:75) at org.apache.airavata.registry.core.repositories.AbstractRepository.isExists(AbstractRepository.java:113) at org.apache.airavata.registry.core.repositories.expcatalog.GatewayRepository.isGatewayExist(GatewayRepository.java:99) at org.apache.airavata.registry.core.utils.ExpCatalogDBInitConfig.postInit(ExpCatalogDBInitConfig.java:62) ... 4 more Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal user error> org.apache.openjpa.persistence.ArgumentException: This configuration disallows runtime optimization, but the following listed types were not enhanced at build time or at class load time with a javaagent: " 3. I copied the *django_airavata/settings_local.py.ide* to my *settings_local.py* file and still the issue exists. I have attached the settings_local.py file with this email. Thanks & Regards, Saurav Kumar Jha On Wed, Jun 7, 2023 at 3:18 AM Christie, Marcus Aaron <machr...@iu.edu> wrote: > > Hi Saurav, > > > On Jun 6, 2023, at 12:51 PM, saurav kumar jha < > imsauravgaurav...@gmail.com> wrote: > > > > 1. While Following the steps mentioned at below link: > > airavata/README.md at develop · apache/airavata · GitHub > > > > Apply any database migrations. Go to src/main/containers directory > and run > > cat ./database_scripts/init/*-migrations.sql | docker exec -i > containers-db-1 mysql -p123456 > > > > Above command produces following error: > > Error response from daemon: No such container: containers-db-1 > > > > > You need to run docker-compose up first. Make sure that the > 'containers-db-1' container is running, maybe by doing 'docker ps'. > > > 2. Running the APIServerStarter produces following error: > > > > Caused by: org.apache.openjpa.persistence.ArgumentException: Table > "COMPUTE_RESOURCE_SCHEDULING" given for > "org.apache.airavata.registry.core.entities.expcatalog.ComputationalResourceSchedulingEntity" > does not exist. > > > > Fixing #1 will fix this one. > > > 3. Running Django-Portal works and app frontend is loaded but when I try > to login, it gives SSL version related error: > > > > > > I'm not sure about this one. Did you use the > django_airavata/settings_local.py.ide as your settings_local.py file? If > you are still having issues, please share your settings_local.py file.
""" Override default Django settings for a particular instance. Copy this file to settings_local.py and modify as appropriate. This file will be imported into settings.py last of all so settings in this file override any defaults specified in settings.py. """ import os # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # Django - general settings # Uncomment and specify for production deployments # DEBUG = False # STATIC_ROOT = "/var/www/path/to/sitename/static/" # ALLOWED_HOSTS = ['production.hostname'] # Django - Email settings # Uncomment and specify the following for sending emails (default email backend # just prints to the console) # EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' # EMAIL_HOST = '...' # EMAIL_PORT = '...' # EMAIL_HOST_USER = '...' # EMAIL_HOST_PASSWORD = '...' # EMAIL_USE_TLS = True ADMINS = [('Admin Name', 'ad...@example.com')] # PORTAL_ADMINS receive administrative emails, like when a new user is created # This can be set to a different value than ADMINS so that the PORTAL_ADMINS # don't receive error emails PORTAL_ADMINS = ADMINS # SERVER_EMAIL = 'por...@example.com' # Keycloak Configuration KEYCLOAK_CLIENT_ID = 'pga' KEYCLOAK_CLIENT_SECRET = '9790c8c4-7d9b-4ccc-a820-ca5aac38d2ad' KEYCLOAK_AUTHORIZE_URL = 'https://airavata.host:8443/auth/realms/default/protocol/openid-connect/auth' KEYCLOAK_TOKEN_URL = 'https://airavata.host:8443/auth/realms/default/protocol/openid-connect/token' KEYCLOAK_USERINFO_URL = 'https://airavata.host:8443/auth/realms/default/protocol/openid-connect/userinfo' KEYCLOAK_LOGOUT_URL = 'https://airavata.host:8443/auth/realms/default/protocol/openid-connect/logout' # Optional: specify if using self-signed certificate or certificate from unrecognized CA # KEYCLOAK_CA_CERTFILE = os.path.join(BASE_DIR, "django_airavata", "resources", "incommon_rsa_server_ca.pem") KEYCLOAK_VERIFY_SSL = False AUTHENTICATION_OPTIONS = { # Control whether username/password authentication is allowed 'password': { 'name': 'your account', }, # Can have multiple external logins # 'external': [ # { # 'idp_alias': 'cilogon', # 'name': 'CILogon', # } # ] } # Airavata API Configuration GATEWAY_ID = 'default' AIRAVATA_API_HOST = 'localhost' AIRAVATA_API_PORT = 9930 AIRAVATA_API_SECURE = True FILE_UPLOAD_TEMP_DIR = '/tmp' USER_STORAGES = { 'default': { 'BACKEND': 'airavata_django_portal_sdk.user_storage.backends.DjangoFileSystemProvider', 'STORAGE_RESOURCE_ID': 'airavata.host_77116e91-f042-4d3a-ab9c-3e7b4ebcd5bd', 'OPTIONS': { 'directory': '/tmp', } } } # Profile Service Configuration PROFILE_SERVICE_HOST = AIRAVATA_API_HOST PROFILE_SERVICE_PORT = 8962 PROFILE_SERVICE_SECURE = False # Portal settings PORTAL_TITLE = 'Django Airavata Gateway' # Logging configuration LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'formatters': { 'verbose': { 'format': '[%(asctime)s %(name)s:%(lineno)d %(levelname)s] %(message)s' }, }, 'filters': { 'require_debug_true': { '()': 'django.utils.log.RequireDebugTrue', }, }, 'handlers': { 'console': { 'filters': ['require_debug_true'], 'class': 'logging.StreamHandler', 'formatter': 'verbose', 'level': 'DEBUG', }, 'file': { 'class': 'logging.FileHandler', 'filename': 'django_airavata.log', 'formatter': 'verbose', }, }, 'loggers': { 'django': { 'handlers': ['console', 'file'], 'level': os.getenv('DJANGO_LOG_LEVEL', 'INFO'), }, 'airavata': { 'handlers': ['console', 'file'], 'level': 'DEBUG', }, 'django_airavata': { 'handlers': ['console', 'file'], 'level': 'DEBUG', }, }, }