From 9d501ee7fcd840410af270eddac2d8ab77e74f25 Mon Sep 17 00:00:00 2001 From: cendle Date: Tue, 1 Dec 2020 09:49:38 -0600 Subject: [PATCH 1/7] Updated README file with deployment information. --- README.md | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fd392b2a5..1db3a298e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,73 @@ # report-exporter -export reports from lexevs queries. +Export reports from the NCI Thesaurus. The Report Exporter utilizes the EVS REST API for querying its data. +## Development Setup +### Report Exporter UI Setup +The UI is developed using [Vue.js](https://vuejs.org/). +Vue.js can be installed with NPM. NPM is available through [Node.js](https://nodejs.org/en/). + +Once Vue.js and NMP are installed, the Report Exporter UI can be build and run the client in dev mode. To do this, go to the **report-exporter/clientui** directory. + +To build the UI, run the following command: + + npm run build + +To run the UI, run the following command: + + npm run serve + + +### Report Exporter Service Setup +## Deployment Setup - Tomcat +The Report Exporter Application has been built and tested on a Tomcat 8 webserver. Our instructions will focus on deploying to a Tomcat server. + +### Report Exporter Build + +At the root of the git project directory, run the Maven command that builds both the client and the server and encapsulates them in on war file. + +**Maven builds for their respective tier** +* mvn clean install -DBuild_Env=build-dev +* mvn clean install -DBuild_Env=build-qa +* mvn clean install -DBuild_Env=build-stage +* mvn clean install -DBuild_Env=build-prod + +Add the war file from the Maven build to Tomcat webapps directory. The war file will be located under **report-exporter/service/target/** + +#### Configure Tomcat Server +You will need to create a file called **Tomcat8/conf/Catalina/localhost/rewrite.config** and add the following contents in it. + + #------------------------------------------------------------------------------- + # site that has example of this. + # https://stackoverflow.com/questions/34619751/tomcat-8-url-rewrite-issues + #------------------------------------------------------------------------------- + #------------------------------------------------------------------------------- + # Any subsequent file that the index.html file needs, needs to pass through. + # This would be the js and css files along with other miscellaneous ones. + #------------------------------------------------------------------------------- + RewriteCond %{REQUEST_URI} .*\.(css|map|js|html|png|jpg|jpeg|gif|txt|ttf|json|woff|ico)$ [OR] + + #---------------------------------------- + # Allow these service calls to go through + #---------------------------------------- + RewriteCond %{REQUEST_URI} ^(/reportexporter/download).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/properties).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/codereadrest).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/roots).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/curated).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/resolve\-).*$ [OR] + + RewriteRule ^(.*)$ - [L] + RewriteRule ^(.*)$ /reportexporter/index.html + + +Update the **Tomcat8/conf/server.xml** file for Tomcat. Add the following **"RewriteValve"** entry to the Host section: + + + + + + + + Start the Tomcat server + + Open a browser and go to http://localhost:8080/reportexporter From 91f980c3e233b11680633c6ab8a857f71c0428bd Mon Sep 17 00:00:00 2001 From: hsbauer Date: Wed, 24 Feb 2021 10:23:25 -0600 Subject: [PATCH 2/7] Update README.md --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 1db3a298e..cbfe5fcbb 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,13 @@ Update the **Tomcat8/conf/server.xml** file for Tomcat. Add the following **"Rew - + Tier related settings must be adjusted using the application properties files specific to each tier. Since there is a dependency upon the EVS REST API these settings would be specific EVS REST API instances on each tier. So for the production tier the application-prod.properties file would contain URLs for both meta and concept resources. THe tomcat server would be started using a setenv.sh file with the prod version of one of the following additions to the CATALINA_OPTS environmental variable configuration: + + -Dspring.profiles.active=dev + -Dspring.profiles.active=qa + -Dspring.profiles.active=stage + -Dspring.profiles.active=prod + Start the Tomcat server Open a browser and go to http://localhost:8080/reportexporter From 7691c939cb34e0dd3c9d5bd3bf060c0a64ee8cee Mon Sep 17 00:00:00 2001 From: cendle Date: Fri, 26 Feb 2021 13:31:44 -0600 Subject: [PATCH 3/7] Update README.md --- README.md | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cbfe5fcbb..2d4d504cc 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,20 @@ Update the **Tomcat8/conf/server.xml** file for Tomcat. Add the following **"Rew - Tier related settings must be adjusted using the application properties files specific to each tier. Since there is a dependency upon the EVS REST API these settings would be specific EVS REST API instances on each tier. So for the production tier the application-prod.properties file would contain URLs for both meta and concept resources. THe tomcat server would be started using a setenv.sh file with the prod version of one of the following additions to the CATALINA_OPTS environmental variable configuration: +### Content Security Policy (CSP) +The following CSP settings were set to satisfy some app scan security issues. + +On the apache server, add the following section to +/local/content/apache/conf/vhosts-ssl/reportexporter.conf + + + RequestHeader set X-HTTPS 1 + Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self'; img-src 'self' data:; style-src 'self' 'unsafe-inline'; base-uri 'self'; form-action 'self'" + + +#### Application Properties + +Tier related settings must be adjusted using the application properties files specific to each tier. Since there is a dependency upon the EVS REST API these settings would be specific EVS REST API instances on each tier. So for the production tier the application-prod.properties file would contain URLs for both meta and concept resources. The tomcat server would be started using a setenv.sh file with the prod version of one of the following additions to the CATALINA_OPTS environmental variable configuration: -Dspring.profiles.active=dev -Dspring.profiles.active=qa From fe74768cfe735dbd2fbebd7801540480b56086e2 Mon Sep 17 00:00:00 2001 From: cendle Date: Fri, 26 Feb 2021 13:33:48 -0600 Subject: [PATCH 4/7] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2d4d504cc..bdaee1295 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,8 @@ Update the **Tomcat8/conf/server.xml** file for Tomcat. Add the following **"Rew -### Content Security Policy (CSP) +#### Content Security Policy (CSP) + The following CSP settings were set to satisfy some app scan security issues. On the apache server, add the following section to From 2ce4e36638d4bd578627c22e89baa0d350f90e78 Mon Sep 17 00:00:00 2001 From: cendle Date: Mon, 29 Mar 2021 11:05:45 -0500 Subject: [PATCH 5/7] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index bdaee1295..169b97590 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,8 @@ You will need to create a file called **Tomcat8/conf/Catalina/localhost/rewrite. RewriteCond %{REQUEST_URI} ^(/reportexporter/roots).*$ [OR] RewriteCond %{REQUEST_URI} ^(/reportexporter/curated).*$ [OR] RewriteCond %{REQUEST_URI} ^(/reportexporter/resolve\-).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/survey).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/sortedroles).*$ [OR] RewriteRule ^(.*)$ - [L] RewriteRule ^(.*)$ /reportexporter/index.html @@ -76,7 +78,7 @@ On the apache server, add the following section to RequestHeader set X-HTTPS 1 - Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline'; connect-src 'self'; img-src 'self' data:; style-src 'self' 'unsafe-inline'; base-uri 'self'; form-action 'self'" + Header set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' www.googletagmanager.com www.google-analytics.com ajax.googleapis.com; connect-src 'self' www.google-analytics.com; img-src 'self' data:; style-src 'self' 'unsafe-inline'; base-uri 'self'; form-action 'self'" #### Application Properties From 3743df15757f6eb8ead53c0d792694bf0afccca8 Mon Sep 17 00:00:00 2001 From: cendle Date: Tue, 13 Apr 2021 14:38:38 -0500 Subject: [PATCH 6/7] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 169b97590..f3b6c2eff 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,7 @@ You will need to create a file called **Tomcat8/conf/Catalina/localhost/rewrite. RewriteCond %{REQUEST_URI} ^(/reportexporter/resolve\-).*$ [OR] RewriteCond %{REQUEST_URI} ^(/reportexporter/survey).*$ [OR] RewriteCond %{REQUEST_URI} ^(/reportexporter/sortedroles).*$ [OR] + RewriteCond %{REQUEST_URI} ^(/reportexporter/sortedassociations).*$ [OR] RewriteRule ^(.*)$ - [L] RewriteRule ^(.*)$ /reportexporter/index.html From 9f03e2f28727d2727d1c918b1411a15ccb283605 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 11 Dec 2022 21:36:35 +0000 Subject: [PATCH 7/7] Bump qs from 6.5.2 to 6.5.3 in /clientui Bumps [qs](https://github.com/ljharb/qs) from 6.5.2 to 6.5.3. - [Release notes](https://github.com/ljharb/qs/releases) - [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md) - [Commits](https://github.com/ljharb/qs/compare/v6.5.2...v6.5.3) --- updated-dependencies: - dependency-name: qs dependency-type: indirect ... Signed-off-by: dependabot[bot] --- clientui/package-lock.json | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/clientui/package-lock.json b/clientui/package-lock.json index 0293f9896..e675ad17a 100644 --- a/clientui/package-lock.json +++ b/clientui/package-lock.json @@ -3445,7 +3445,6 @@ "thread-loader": "^2.1.3", "url-loader": "^2.2.0", "vue-loader": "^15.9.2", - "vue-loader-v16": "npm:vue-loader@^16.1.0", "vue-style-loader": "^4.1.2", "webpack": "^4.0.0", "webpack-bundle-analyzer": "^3.8.0", @@ -3607,7 +3606,6 @@ "lru-cache": "^4.1.2", "merge-source-map": "^1.1.0", "postcss-selector-parser": "^6.0.2", - "prettier": "^1.18.2", "source-map": "~0.6.1", "vue-template-es2015-compiler": "^1.9.0" }, @@ -5312,7 +5310,6 @@ "anymatch": "^2.0.0", "async-each": "^1.0.1", "braces": "^2.3.2", - "fsevents": "^1.2.7", "glob-parent": "^3.1.0", "inherits": "^2.0.3", "is-binary-path": "^1.0.0", @@ -10952,9 +10949,12 @@ "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" }, "node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "engines": { + "node": ">=0.6" + } }, "node_modules/query-string": { "version": "4.3.4", @@ -11479,7 +11479,6 @@ "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.3.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", @@ -13571,10 +13570,8 @@ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dependencies": { - "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.1" + "neo-async": "^2.5.0" }, "optionalDependencies": { "chokidar": "^3.4.1", @@ -25477,9 +25474,9 @@ "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" }, "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" }, "query-string": { "version": "4.3.4",