From 003855a4cf7aeb056f4093723638bcf08fa18eb4 Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Fri, 25 Oct 2024 13:25:44 -0400 Subject: [PATCH 1/7] Update pass-core docs --- developer-documentation/pass-core/README.md | 112 ++++++++++---------- 1 file changed, 55 insertions(+), 57 deletions(-) diff --git a/developer-documentation/pass-core/README.md b/developer-documentation/pass-core/README.md index 39a5af0..54dbb1c 100644 --- a/developer-documentation/pass-core/README.md +++ b/developer-documentation/pass-core/README.md @@ -47,15 +47,17 @@ Java 17, Maven 3.8, and Docker are required. mvn clean install ``` -This will produce an executabler jar `pass-core-main/target/pass-core-main.jar` and a docker image `ghcr.io/eclipse-pass/pass-core-main`. +This will produce an executabler jar `pass-core-main/target/pass-core-main--exec.jar` and a docker image `ghcr.io/eclipse-pass/pass-core-main`. #### Running the local build +After you have run `mvn clean install`, execute the following command from the `pass-core-main` directory: + ```shell -java -jar pass-core-main/target/pass-core-main.jar +java -Dspring.config.import=file:./src/test/resources/application-test.yml -jar target/pass-core-main--exec.jar ``` -By default, an in memory database is used. +This command will use the configuration defined in the `pass-core-main/src/test/resources/application-test.yml` file. **This configuration should not be used in production, it is only meant for testing purposes.** You can verify it is running by making a request like: @@ -65,65 +67,61 @@ curl -u backend:moo localhost:8080/data/grant #### Running with Docker -To run pass-core in a full local environment use pass-docker. But for testing focused on pass-core, there is a docker environment which just runs pass-core and Postgres. See the pass-core-main/docker-compose.yml. You will have to set the pass-core image version manually. You may also need to adjust environment variables in `pass-core-main/.env`. - -In pass-core-main run: - -```shell -docker compose up -d -``` +Run `mvn clean install`. Then go to the [pass-docker](https://github.com/eclipse-pass/pass-docker) repository and following the instructions for starting a local environment. ### Configuration The application is configured by its `pass-core-main/src/main/resources/application.yaml` which in turn references a number of environment variables. -By default, pass-core-main, will run with an in memory database. In order to use Postgres, switch to the production profile and set the database environment variables as below. +The application is configured by its application.yaml which in turn references a number of environment variables. + +By default, pass-core-main will run with a typical production configuration. In order to run the default configuration, the environment variables below must be set with appropriate values for your environment. + +Environment variables: +| Environment Variable | Default Value | Description | +|--------------------------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------| +| `PASS_CORE_APP_LOCATION` | classpath:app/ | IP address or host name of the server running the SWORD protocol version 2 endpoint | +| `PASS_CORE_APP_CSP` | | TCP port exposing the SWORD protocol version 2 endpoint | +| `PASS_CORE_DATABASE_URL` | | Connection URL to database | +| `PASS_CORE_DATABASE_USERNAME` | | Username for database login | +| `PASS_CORE_DATABASE_PASSWORD` | | Password for database login | +| `PASS_CORE_PORT` | | The port to expose for pass-core API | +| `PASS_CORE_LOG_DIR` | ${java.io.tmpdir}/pass-core | Path to log directory | +| `PASS_CORE_USER` | | Default user name for pass-core | +| `PASS_CORE_PASSWORD` | true | Default user password for pass-core | +| `PASS_CORE_USE_SQS` | true | Flag to use AWS SQS for messaging | +| `PASS_CORE_EMBED_JMS_BROKER` | false | Flag to use Embedded ActiveMQ for messaging | +| `PASS_CORE_SUBMISSION_QUEUE` | pass-submission | Name of submission queue | +| `PASS_CORE_DEPOSIT_QUEUE` | pass-deposit | Name of deposit queue | +| `PASS_CORE_SUBMISSION_EVENT_QUEUE` | pass-submission-event | Name of submission event queue | +| `PASS_CORE_SP_ID` | | SAML SP ID [SAML configuration](#saml-configuration) | +| `PASS_CORE_SP_ACS` | | SAML SP ACS [SAML configuration](#saml-configuration) | +| `PASS_CORE_SP_KEY` | | Location of SAML SP private key pem file [SAML configuration](#saml-configuration) | +| `PASS_CORE_SP_CERT` | | Location of SAML SP public certificate pem file [SAML configuration](#saml-configuration) | +| `PASS_CORE_IDP_METADATA` | | Location of SAML IDM Metadata file [SAML configuration](#saml-configuration) | +| `PASS_CORE_DEAULT_LOGIN_SUCCESS` | | Path to redirect to after login success [SAML configuration](#saml-configuration) | +| `PASS_CORE_LOGIN_PROCESSING_PATH` | | Path to handle login from SAML IDP [SAML configuration](#saml-configuration) | +| `PASS_CORE_LOGOUT_SUCCESS` | | Path to redirect to after SAML logout [SAML configuration](#saml-configuration) | +| `PASS_CORE_LOGOUT_DELETE_COOKIES` | | Name of cookies to delete as part of SAML logout [SAML configuration](#saml-configuration) | +| `PASS_CORE_USERTOKEN_KEY` | | If not present, one is generated. See the [user service](pass-core-user-service/README.md) for how to create manually. | +| `PASS_CORE_JAVA_OPTS` | | Used by the Docker image to pass arguments to Java. | +| `PASS_CORE_BASE_URL` | | Used when services send URLs to the client such as relationship links. | +| `PASS_CORE_FILE_SERVICE_TYPE` | FILE_SYSTEM | The port to expose for pass-core API | +| `PASS_CORE_FILE_SERVICE_ROOT_DIR` | | Path to log directory | +| `PASS_CORE_S3_BUCKET_NAME` | pass-core-file | Default user name for pass-core | +| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | Default user password for pass-core | +| `PASS_CORE_POLICY_INSTITUTION` | | Name of the institution | +| `PASS_CORE_POLICY_INSTITUTIONAL_POLICY_TITLE` | | Title of the institutional policy | +| `PASS_CORE_POLICY_INSTITUTIONAL_REPOSITORY_NAME` | | Name of institutional repository | + The liquibase changelog located `pass-core-main/src/main/resources/db/changelog/changelog.yaml` will create the pass-core database schema if needed. -If `PASS_CORE_USE_SQS` is `true`, then pass-core will attempt to connect to Amazon SQS. The connection must be configured with `AWS_REGION`, `AWS_ACCESS_KEY_ID`, and `AWS_SECRET_ACCESS_KEY`. The AWS credentials are also needed if the file service S3 backend is used. - -Otherwise, a connection to an ActiveMQ broker can be configured by setting `SPRING_ACTIVEMQ_BROKER_URL`. If `PASS_CORE_EMBED_JMS_BROKER` is true, then an embedded ActiveMQ broker will be started using that url. This can be useful to set tcp transport for connecting containers in a docker environment. The default is an embedded broker using vm transport. - -**Environment Variables:** - -* spring_profiles_active=production -* AWS_REGION=us-east-1 -* AWS_ACCESS_KEY_ID=xxx -* AWS_SECRET_ACCESS_KEY=xxx -* PASS_CORE_APP_LOCATION=classpath:app/ -* PASS_CORE_APP_CSP=default-src 'self'; - * Value of Content-Security-Policy set on responses. -* PASS_CORE_DATABASE_URL=jdbc:postgresql://postgres:5432/pass -* PASS_CORE_DATABASE_USERNAME=pass -* PASS_CORE_DATABASE_PASSWORD=moo -* PASS_CORE_PORT=8080 -* PASS_CORE_LOG_DIR=${java.io.tmpdir}/pass-core -* PASS_CORE_USER=backend -* PASS_CORE_PASSWORD=moo -* PASS_CORE_USE_SQS=false -* PASS_CORE_EMBED_JMS_BROKER=true -* PASS_CORE_SUBMISSION_QUEUE=pass-submission -* PASS_CORE_DEPOSIT_QUEUE=pass-deposit -* PASS_CORE_IDP_METADATA=classpath:saml2/idp-metadata.xml -* PASS_CORE_INSTN_CHG_LOG=file:////tmp/instn-changelog.yaml -* PASS_CORE_DEFAULT_LOGIN_SUCCESS=/app/ -* PASS_CORE_LOGOUT_SUCCESS=/app/ -* PASS_CORE_LOGOUT_DELETE_COOKIES="JSESSIONID /" - * Whitespace separated list of cookie name followed by path to delete on logout. -* PASS_CORE_SP_ID=https://sp.pass/shibboleth -* PASS_CORE_SP_ACS=http://localhost:8080/login/saml2/sso/pass -* PASS_CORE_LOGIN_PROCESSING_PATH=/login/saml2/sso/pass -* PASS_CORE_SP_KEY=classpath:saml2/sp-key.pem -* PASS_CORE_SP_CERT=classpath:saml2/sp-cert.pem -* PASS_CORE_SUBMISSION_EVENT_QUEUE=pass-submission-event -* PASS_CORE_USERTOKEN_KEY=xxx - * If not present, one is generated. See the [user service](api/user-service.md) for how to create manually. -* PASS_CORE_JAVA_OPTS="" - * Used by the Docker image to pass arguments to Java -* PASS_CORE_BASE_URL=http://localhost:8080 - * Used when services send URLs to the client such as relationship links. - -The environment variables in `pass-core-main/.env` are intended to be used for local testing of pass-core in isolation. +If `PASS_CORE_USE_SQS` is `true`, then pass-core will attempt to connect to Amazon SQS. For testing purposes, you can set `AWS_REGION`, `AWS_ACCESS_KEY_ID`, and `AWS_SECRET_ACCESS_KEY` for connecting to AWS resources. In production, AWS IAM Service Roles should be used. + +Otherwise, a connection to an ActiveMQ broker can be configured by setting `SPRING_ACTIVEMQ_BROKER_URL`. If `PASS_CORE_EMBED_JMS_BROKER` is true, then an embedded ActiveMQ broker will be started +using that url. This can be useful to set tcp transport for connecting containers in a docker environment. The default is an embedded broker using vm transport. + +**Note you can quickly start pass-core locally for testing purposes following the instructions in [Running local build](#running-local-build) section.** ### Access control @@ -146,12 +144,12 @@ Use `PASS_CORE_SP_ID` to set the identifier of the pass-core SP, `PASS_CORE_IDP_ `PASS_CORE_SP_ACS` for the Assertion Consumer Service of the SP and `PASS_CORE_LOGIN_PROCESSING_PATH` to set the path for handling login from the IDP. Note that `PASS_CORE_SP_ACS` is a URL which must match the path specified in `PASS_CORE_LOGIN_PROCESSING_PATH`. -The defaults are set such that the integration tests can run against a [SimpleSAMLphp based IDP](https://github.com/kenchan0130/docker-simplesamlphp/) using resources included in `saml2/`. These defaults should not be used in production. +The `application-test.yml` configuration is are set such that the integration tests can run against a [SimpleSAMLphp based IDP](https://github.com/kenchan0130/docker-simplesamlphp/) using resources included in `saml2/`. These defaults should not be used in production. The image can be run with: ```shell -docker run --name=idp -p 8090:8080 -e SIMPLESAMLPHP_SP_ENTITY_ID=https://sp.pass/shibboleth -e SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=http://localhost:8080/login/saml2/sso/pass -e SIMPLESAMLPHP_IDP_BASE_URL=http://localhost:8090/ -v ./pass-core/pass-core/main/src/main/resources/saml2/authsources.php:/var/www/simplesamlphp/config/authsources.php -d kenchan0130/simplesamlphp +docker run --name=idp -p 8090:8080 -e SIMPLESAMLPHP_SP_ENTITY_ID=https://sp.pass/shibboleth -e SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=http://localhost:8080/login/saml2/sso/pass -e SIMPLESAMLPHP_IDP_BASE_URL=http://localhost:8090/ -v ./pass-core/pass-core/main/src/test/resources/saml2/authsources.php:/var/www/simplesamlphp/config/authsources.php -d kenchan0130/simplesamlphp ``` Note the volume mount which is set the user information appropriately for PASS. From d681742326aa2ded22da9d3d60f9b38aa5d93c99 Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Fri, 25 Oct 2024 13:31:19 -0400 Subject: [PATCH 2/7] Clean doc --- developer-documentation/pass-core/README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/developer-documentation/pass-core/README.md b/developer-documentation/pass-core/README.md index 54dbb1c..b2cad8e 100644 --- a/developer-documentation/pass-core/README.md +++ b/developer-documentation/pass-core/README.md @@ -73,8 +73,6 @@ Run `mvn clean install`. Then go to the [pass-docker](https://github.com/eclipse The application is configured by its `pass-core-main/src/main/resources/application.yaml` which in turn references a number of environment variables. -The application is configured by its application.yaml which in turn references a number of environment variables. - By default, pass-core-main will run with a typical production configuration. In order to run the default configuration, the environment variables below must be set with appropriate values for your environment. Environment variables: From a101f9d4c438eeee7d1c3dd5e666694e59f5cbeb Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Fri, 25 Oct 2024 13:39:54 -0400 Subject: [PATCH 3/7] Fix env var definitions --- developer-documentation/pass-core/README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/developer-documentation/pass-core/README.md b/developer-documentation/pass-core/README.md index b2cad8e..4a42f8f 100644 --- a/developer-documentation/pass-core/README.md +++ b/developer-documentation/pass-core/README.md @@ -78,8 +78,7 @@ By default, pass-core-main will run with a typical production configuration. In Environment variables: | Environment Variable | Default Value | Description | |--------------------------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------| -| `PASS_CORE_APP_LOCATION` | classpath:app/ | IP address or host name of the server running the SWORD protocol version 2 endpoint | -| `PASS_CORE_APP_CSP` | | TCP port exposing the SWORD protocol version 2 endpoint | +| `PASS_CORE_APP_LOCATION` | classpath:app/ | Location where requests are resolved | | `PASS_CORE_DATABASE_URL` | | Connection URL to database | | `PASS_CORE_DATABASE_USERNAME` | | Username for database login | | `PASS_CORE_DATABASE_PASSWORD` | | Password for database login | @@ -97,6 +96,7 @@ Environment variables: | `PASS_CORE_SP_KEY` | | Location of SAML SP private key pem file [SAML configuration](#saml-configuration) | | `PASS_CORE_SP_CERT` | | Location of SAML SP public certificate pem file [SAML configuration](#saml-configuration) | | `PASS_CORE_IDP_METADATA` | | Location of SAML IDM Metadata file [SAML configuration](#saml-configuration) | +| `PASS_CORE_APP_CSP` | | The Content Security Policy definition | | `PASS_CORE_DEAULT_LOGIN_SUCCESS` | | Path to redirect to after login success [SAML configuration](#saml-configuration) | | `PASS_CORE_LOGIN_PROCESSING_PATH` | | Path to handle login from SAML IDP [SAML configuration](#saml-configuration) | | `PASS_CORE_LOGOUT_SUCCESS` | | Path to redirect to after SAML logout [SAML configuration](#saml-configuration) | @@ -104,10 +104,10 @@ Environment variables: | `PASS_CORE_USERTOKEN_KEY` | | If not present, one is generated. See the [user service](pass-core-user-service/README.md) for how to create manually. | | `PASS_CORE_JAVA_OPTS` | | Used by the Docker image to pass arguments to Java. | | `PASS_CORE_BASE_URL` | | Used when services send URLs to the client such as relationship links. | -| `PASS_CORE_FILE_SERVICE_TYPE` | FILE_SYSTEM | The port to expose for pass-core API | -| `PASS_CORE_FILE_SERVICE_ROOT_DIR` | | Path to log directory | -| `PASS_CORE_S3_BUCKET_NAME` | pass-core-file | Default user name for pass-core | -| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | Default user password for pass-core | +| `PASS_CORE_FILE_SERVICE_TYPE` | FILE_SYSTEM | The type of File Service, FILE_SYSTEM or S3 | +| `PASS_CORE_FILE_SERVICE_ROOT_DIR` | | Path to File Service root directory | +| `PASS_CORE_S3_BUCKET_NAME` | pass-core-file | If File Service is S3, the S3 bucket name | +| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | If File Service is S3, the S3 prefix | | `PASS_CORE_POLICY_INSTITUTION` | | Name of the institution | | `PASS_CORE_POLICY_INSTITUTIONAL_POLICY_TITLE` | | Title of the institutional policy | | `PASS_CORE_POLICY_INSTITUTIONAL_REPOSITORY_NAME` | | Name of institutional repository | From 9214cd18e3a1453c1201d18e9dd9c3a919f084f3 Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Fri, 25 Oct 2024 13:40:54 -0400 Subject: [PATCH 4/7] Clean table --- developer-documentation/pass-core/README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/developer-documentation/pass-core/README.md b/developer-documentation/pass-core/README.md index 4a42f8f..2ca88df 100644 --- a/developer-documentation/pass-core/README.md +++ b/developer-documentation/pass-core/README.md @@ -78,7 +78,7 @@ By default, pass-core-main will run with a typical production configuration. In Environment variables: | Environment Variable | Default Value | Description | |--------------------------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------| -| `PASS_CORE_APP_LOCATION` | classpath:app/ | Location where requests are resolved | +| `PASS_CORE_APP_LOCATION` | classpath:app/ | Location where requests are resolved | | `PASS_CORE_DATABASE_URL` | | Connection URL to database | | `PASS_CORE_DATABASE_USERNAME` | | Username for database login | | `PASS_CORE_DATABASE_PASSWORD` | | Password for database login | @@ -96,7 +96,7 @@ Environment variables: | `PASS_CORE_SP_KEY` | | Location of SAML SP private key pem file [SAML configuration](#saml-configuration) | | `PASS_CORE_SP_CERT` | | Location of SAML SP public certificate pem file [SAML configuration](#saml-configuration) | | `PASS_CORE_IDP_METADATA` | | Location of SAML IDM Metadata file [SAML configuration](#saml-configuration) | -| `PASS_CORE_APP_CSP` | | The Content Security Policy definition | +| `PASS_CORE_APP_CSP` | | The Content Security Policy definition | | `PASS_CORE_DEAULT_LOGIN_SUCCESS` | | Path to redirect to after login success [SAML configuration](#saml-configuration) | | `PASS_CORE_LOGIN_PROCESSING_PATH` | | Path to handle login from SAML IDP [SAML configuration](#saml-configuration) | | `PASS_CORE_LOGOUT_SUCCESS` | | Path to redirect to after SAML logout [SAML configuration](#saml-configuration) | @@ -104,10 +104,10 @@ Environment variables: | `PASS_CORE_USERTOKEN_KEY` | | If not present, one is generated. See the [user service](pass-core-user-service/README.md) for how to create manually. | | `PASS_CORE_JAVA_OPTS` | | Used by the Docker image to pass arguments to Java. | | `PASS_CORE_BASE_URL` | | Used when services send URLs to the client such as relationship links. | -| `PASS_CORE_FILE_SERVICE_TYPE` | FILE_SYSTEM | The type of File Service, FILE_SYSTEM or S3 | -| `PASS_CORE_FILE_SERVICE_ROOT_DIR` | | Path to File Service root directory | -| `PASS_CORE_S3_BUCKET_NAME` | pass-core-file | If File Service is S3, the S3 bucket name | -| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | If File Service is S3, the S3 prefix | +| `PASS_CORE_FILE_SERVICE_TYPE` | FILE_SYSTEM | The type of File Service, FILE_SYSTEM or S3 | +| `PASS_CORE_FILE_SERVICE_ROOT_DIR` | | Path to File Service root directory | +| `PASS_CORE_S3_BUCKET_NAME` | pass-core-file | If File Service is S3, the S3 bucket name | +| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | If File Service is S3, the S3 prefix | | `PASS_CORE_POLICY_INSTITUTION` | | Name of the institution | | `PASS_CORE_POLICY_INSTITUTIONAL_POLICY_TITLE` | | Title of the institutional policy | | `PASS_CORE_POLICY_INSTITUTIONAL_REPOSITORY_NAME` | | Name of institutional repository | From e1b482ad9c41e9ac99bf82f4deebe21a1516341e Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Fri, 25 Oct 2024 13:46:48 -0400 Subject: [PATCH 5/7] Update s3 prefix doc --- developer-documentation/pass-core/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/developer-documentation/pass-core/README.md b/developer-documentation/pass-core/README.md index 2ca88df..c227661 100644 --- a/developer-documentation/pass-core/README.md +++ b/developer-documentation/pass-core/README.md @@ -107,7 +107,7 @@ Environment variables: | `PASS_CORE_FILE_SERVICE_TYPE` | FILE_SYSTEM | The type of File Service, FILE_SYSTEM or S3 | | `PASS_CORE_FILE_SERVICE_ROOT_DIR` | | Path to File Service root directory | | `PASS_CORE_S3_BUCKET_NAME` | pass-core-file | If File Service is S3, the S3 bucket name | -| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | If File Service is S3, the S3 prefix | +| `PASS_CORE_S3_REPO_PREFIX` | pass-core-file | If File Service is S3, the prefix of S3 keys in the bucket | | `PASS_CORE_POLICY_INSTITUTION` | | Name of the institution | | `PASS_CORE_POLICY_INSTITUTIONAL_POLICY_TITLE` | | Title of the institutional policy | | `PASS_CORE_POLICY_INSTITUTIONAL_REPOSITORY_NAME` | | Name of institutional repository | From 05dbe2db177a93ec4af29e0273cf287c7611f5d8 Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Fri, 25 Oct 2024 14:27:35 -0400 Subject: [PATCH 6/7] Update other prop default values --- .../data-loaders/grant-loader.md | 6 +- .../deposit-service/ds-configuration.md | 70 +++++++++---------- .../notification-service/ns-configuration.md | 10 +-- 3 files changed, 43 insertions(+), 43 deletions(-) diff --git a/developer-documentation/data-loaders/grant-loader.md b/developer-documentation/data-loaders/grant-loader.md index 60ada11..888bef3 100644 --- a/developer-documentation/data-loaders/grant-loader.md +++ b/developer-documentation/data-loaders/grant-loader.md @@ -120,9 +120,9 @@ Once pass-docker is up and the loader container is done running, open a browser ```text APP_HOME_ENV=/data/grantloader POLICY_PROP_PATH=file:/data/grantloader/policy.properties - PASS_CLIENT_URL=http://localhost:8080 - PASS_CLIENT_USER= - PASS_CLIENT_PASSWORD= + PASS_CORE_URL=http://localhost:8080 + PASS_CORE_USER= + PASS_CORE_PASSWORD= ``` 4. Copy your grant CSV file to the `grantloadertest` directory. 5. Open a new terminal and cd to the pass-docker directory. diff --git a/developer-documentation/deposit-service/ds-configuration.md b/developer-documentation/deposit-service/ds-configuration.md index 5d06a2d..f75797c 100644 --- a/developer-documentation/deposit-service/ds-configuration.md +++ b/developer-documentation/deposit-service/ds-configuration.md @@ -8,41 +8,41 @@ parameters such as message queues, the base URL of Pass Core, etc. ## Production Configuration Variables -| Environment Variable | Default Value | Description | -|-----------------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `DSPACE_HOST` | localhost | IP address or host name of the server running the SWORD protocol version 2 endpoint | -| `DSPACE_PORT` | 8181 | TCP port exposing the SWORD protocol version 2 endpoint | -| `DSPACE_SERVER` | dspace | Domain name of the DSpace server | -| `DSPACE_USER` | test@test.edu | DSpace user | -| `DSPACE_PASSWORD` | admin | DSpace password | -| `DSPACE_API_PROTOCOL` | https | Dspace API protocol | -| `DSPACE_API_PATH` | /server/api | Dspace API path | -| `INVENIORDM_API_BASE_URL` | | Base URL for InvenioRDM API | -| `INVENIORDM_VERIFY_SSL_CERT` | true | Required since the localhost InvenioRDM runs with a self-signed certificate | -| `INVENIORDM_API_TOKEN` | | InvenioRDM API token | -| `PMC_FTP_HOST` | localhost | IP address or host name of the NIH FTP server | -| `PMC_FTP_PORT` | 21 | TCP control port of the NIH FTP server | -| `PMC_FTP_USER` | nihmsftpuser | PMC S/FTP user | -| `PMC_FTP_PASSWORD` | nihmsftppass | PMC S/FTP password | -| `PASS_DEPOSIT_QUEUE_SUBMISSION_NAME` | submission | Name of the JMS queue that has messages pertaining to `Submission` resources | -| `PASS_DEPOSIT_QUEUE_DEPOSIT_NAME` | deposit | Name of the JMS queue that has messages pertaining to `Deposit` resources | -| `PASS_DEPOSIT_REPOSITORY_CONFIGURATION` | classpath:/repositories.json | Points to a json file containing the configuration for the transport of custodial content to remote repositories. Values must be [Spring Resource URIs][1]. | -| `PASS_CLIENT_URL` | localhost:8080 | URL used to communicate with the PASS Core API. Normally this variable does not need to be changed. | -| `PASS_CLIENT_PASSWORD` | fakepassword | Password used for `Basic` HTTP authentication to the PASS Core API | -| `PASS_CLIENT_USER` | fakeuser | Username used for `Basic` HTTP authentication to the PASS Core API | -| `NIHMS_MAIL_HOST` | | Host URL of the email service that will receive NIHMS emails regarding deposit statuses. | -| `NIHMS_MAIL_PORT` | | Port of the email service that that will receive NIHMS emails regarding deposit statuses. | -| `NIHMS_MAIL_USERNAME` | | Email address that will receive the NIHMS emails regarding deposit statuses. | -| `NIHMS_MAIL_PASSWORD` | | Password of the email address that will receive the NIHMS emails regarding deposit statuses. | -| `NIHMS_MAIL_TENANT_ID` | | The tenant ID if the `NIHMS_MAIL_HOST` is a cloud provided email services (e.g. Office 365). | -| `NIHMS_MAIL_CLIENT_ID` | | The client ID if the `NIHMS_MAIL_HOST` is a cloud provided email services (e.g. Office 365). | -| `NIHMS_MAIL_CLIENT_SECRET` | | The client secret if the `NIHMS_MAIL_HOST` is a cloud provided email services (e.g. Office 365). | -| `NIHMS_MAIL_AUTH` | | The type of authentication. Valid values are: `MS_EXCHANGE_OAUTH2` and `LOGIN`. | -| `PASS_DEPOSIT_NIHMS_EMAIL_FROM` | nihms-help@ncbi.nlm.nih.gov | The official email address that sends the error messages. | | -| `TEST_DATA_POLICY_TITLE` | | The title of the Policy to associate to the Deployment Test Funder of the Test Grant. | -| `TEST_DATA_USER_EMAIL` | | The email of the User to set as the PI on the Test Grant. | -| `TEST_DATA_SKIP_DEPOSITS` | true | Whether to skip sending the Deployment Test Deposit to the remote repository or not. | -| `TEST_DATA_DSPACE_REPO_KEY` | JScholarship | The repository key of the DSpace repository, if exists, that will be used to delete Deployment Test Deposit Items if made. | +| Environment Variable | Default Value | Description | +|------------------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `DSPACE_HOST` | | IP address or host name of the server running the SWORD protocol version 2 endpoint | +| `DSPACE_PORT` | | TCP port exposing the SWORD protocol version 2 endpoint | +| `DSPACE_SERVER` | | Domain name of the DSpace server | +| `DSPACE_USER` | | DSpace user | +| `DSPACE_PASSWORD` | | DSpace password | +| `DSPACE_API_PROTOCOL` | | Dspace API protocol | +| `DSPACE_API_PATH` | | Dspace API path | +| `INVENIORDM_API_BASE_URL` | | Base URL for InvenioRDM API | +| `INVENIORDM_VERIFY_SSL_CERT` | true | Required since the localhost InvenioRDM runs with a self-signed certificate | +| `INVENIORDM_API_TOKEN` | | InvenioRDM API token | +| `PMC_FTP_HOST` | | IP address or host name of the NIH FTP server | +| `PMC_FTP_PORT` | | TCP control port of the NIH FTP server | +| `PMC_FTP_USER` | | PMC S/FTP user | +| `PMC_FTP_PASSWORD` | | PMC S/FTP password | +| `PASS_DEPOSIT_QUEUE_SUBMISSION_NAME` | submission | Name of the JMS queue that has messages pertaining to `Submission` resources | +| `PASS_DEPOSIT_QUEUE_DEPOSIT_NAME` | deposit | Name of the JMS queue that has messages pertaining to `Deposit` resources | +| `PASS_DEPOSIT_REPOSITORY_CONFIGURATION` | classpath:/repositories.json | Points to a json file containing the configuration for the transport of custodial content to remote repositories. Values must be [Spring Resource URIs][1]. | +| `PASS_CORE_URL` | | URL used to communicate with the PASS Core API. Normally this variable does not need to be changed. | +| `PASS_CORE_PASSWORD` | | Password used for `Basic` HTTP authentication to the PASS Core API | +| `PASS_CORE_USER` | | Username used for `Basic` HTTP authentication to the PASS Core API | +| `NIHMS_MAIL_HOST` | | Host URL of the email service that will receive NIHMS emails regarding deposit statuses. | +| `NIHMS_MAIL_PORT` | | Port of the email service that that will receive NIHMS emails regarding deposit statuses. | +| `NIHMS_MAIL_USERNAME` | | Email address that will receive the NIHMS emails regarding deposit statuses. | +| `NIHMS_MAIL_PASSWORD` | | Password of the email address that will receive the NIHMS emails regarding deposit statuses. | +| `NIHMS_MAIL_TENANT_ID` | | The tenant ID if the `NIHMS_MAIL_HOST` is a cloud provided email services (e.g. Office 365). | +| `NIHMS_MAIL_CLIENT_ID` | | The client ID if the `NIHMS_MAIL_HOST` is a cloud provided email services (e.g. Office 365). | +| `NIHMS_MAIL_CLIENT_SECRET` | | The client secret if the `NIHMS_MAIL_HOST` is a cloud provided email services (e.g. Office 365). | +| `NIHMS_MAIL_AUTH` | | The type of authentication. Valid values are: `MS_EXCHANGE_OAUTH2` and `LOGIN`. | +| `PASS_DEPOSIT_NIHMS_EMAIL_FROM` | | The official email address that sends the error messages. | | +| `TEST_DATA_POLICY_TITLE` | | The title of the Policy to associate to the Deployment Test Funder of the Test Grant. | +| `TEST_DATA_USER_EMAIL` | | The email of the User to set as the PI on the Test Grant. | +| `TEST_DATA_SKIP_DEPOSITS` | true | Whether to skip sending the Deployment Test Deposit to the remote repository or not. | +| `TEST_DATA_DSPACE_REPO_KEY` | | The repository key of the DSpace repository, if exists, that will be used to delete Deployment Test Deposit Items if made. | ## Repositories Configuration diff --git a/developer-documentation/notification-service/ns-configuration.md b/developer-documentation/notification-service/ns-configuration.md index ceea960..bc89253 100644 --- a/developer-documentation/notification-service/ns-configuration.md +++ b/developer-documentation/notification-service/ns-configuration.md @@ -172,11 +172,11 @@ Supported environment variables (system property analogs) and default values are * `PASS_NOTIFICATION_QUEUE_EVENT_NAME` (`pass.notification.queue.event.name`): `event` * `PASS_NOTIFICATION_MODE` (`pass.notification.mode`): `DEMO` -* `PASS_CLIENT_URL` (`pass.client.url`): `{PASS_CLIENT_URL:localhost:8080}` -* `PASS_CLIENT_USER` (`pass.client.user`): `{PASS_CLIENT_USER:fakeuser}` -* `PASS_CLIENT_PASSWORD` (`pass.client.password`): `${PASS_CLIENT_PASSWORD:fakepassword}` -* `SPRING_MAIL_HOST` (`spring.mail.host`): `${SPRING_MAIL_HOST:localhost}` -* `SPRING_MAIL_PORT` (`spring.mail.port`): `${SPRING_MAIL_PORT:587}` +* `PASS_CORE_URL` (`pass.client.url`): `{PASS_CORE_URL}` +* `PASS_CORE_USER` (`pass.client.user`): `{PASS_CORE_USER}` +* `PASS_CORE_PASSWORD` (`pass.client.password`): `${PASS_CORE_PASSWORD}` +* `SPRING_MAIL_HOST` (`spring.mail.host`): `${SPRING_MAIL_HOST}` +* `SPRING_MAIL_PORT` (`spring.mail.port`): `${SPRING_MAIL_PORT}` * `SPRING_MAIL_USERNAME` (`spring.mail.user`): `{SPRING_MAIL_USERNAME}` * `SPRING_MAIL_PASSWORD` (`spring.mail.pass`): `{SPRING_MAIL_PASSWORD}` * `SPRING_MAIL_PROTOCOL` (`spring.mail.transport`): `${SPRING_MAIL_PROTOCOL:SMTP}` From 1789075bec038d3425f66c31966d3b6ed0213c28 Mon Sep 17 00:00:00 2001 From: Russ Poetker Date: Mon, 28 Oct 2024 15:29:58 -0400 Subject: [PATCH 7/7] Remove pass_core_password default true --- developer-documentation/pass-core/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/developer-documentation/pass-core/README.md b/developer-documentation/pass-core/README.md index c227661..2940f73 100644 --- a/developer-documentation/pass-core/README.md +++ b/developer-documentation/pass-core/README.md @@ -85,7 +85,7 @@ Environment variables: | `PASS_CORE_PORT` | | The port to expose for pass-core API | | `PASS_CORE_LOG_DIR` | ${java.io.tmpdir}/pass-core | Path to log directory | | `PASS_CORE_USER` | | Default user name for pass-core | -| `PASS_CORE_PASSWORD` | true | Default user password for pass-core | +| `PASS_CORE_PASSWORD` | | Default user password for pass-core | | `PASS_CORE_USE_SQS` | true | Flag to use AWS SQS for messaging | | `PASS_CORE_EMBED_JMS_BROKER` | false | Flag to use Embedded ActiveMQ for messaging | | `PASS_CORE_SUBMISSION_QUEUE` | pass-submission | Name of submission queue |