Difference between revisions of "Automation Analytics"

From tannerjc wiki
Jump to: navigation, search
(FAQ)
Line 115: Line 115:
 
== FAQ ==
 
== FAQ ==
  
=== How do I enabling calls to the browser console in the frontend code? ===
+
=== How do I enable calls to the browser console in the frontend code? ===
 
eslint disabes console.log entries in the code, and needs configuration to allow it ...
 
eslint disabes console.log entries in the code, and needs configuration to allow it ...
  

Revision as of 07:26, 10 June 2020


frontend dev setup

use nvm to install and use node 10.15
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
source ~/.bashrc
nvm install 10.15
nvm use 10.15
clone the various repos
mkdir -p ~/workspace/github/RedHatInsights
git clone https://github.com/RedHatInsights/tower-analytics-frontend ~/workspace/github/RedHatInsights/tower-analytics-frontend
git clone https://github.com/RedHatInsights/insights-proxy ~/workspace/github/RedHatInsights/insights-proxy
fix the frontend spandx config
diff --git a/config/spandx.config.js b/config/spandx.config.js
index c40e554..611bc40 100644
--- a/config/spandx.config.js
+++ b/config/spandx.config.js
@@ -9,6 +9,5 @@ module.exports = {
         '/apps/automation-analytics': { host: `https://${localhost}:8002` },
         '/ansible/automation-analytics': { host: `https://${localhost}:8002` },
         '/beta/ansible/automation-analytics': { host: `https://${localhost}:8002` },
-        '/beta/config': { host: `http://${localhost}:8889` }
     }
 };
set the hosts file
cd ~/workspace/github/RedHatInsights/insights-proxy
sudo ./scripts/patch-etc-hosts.sh


start the proxy [requires docker or podman-docker]
cd ~/workspace/github/RedHatInsights/insights-proxy
SPANDX_CONFIG=~/workspace/github/RedHatInsights/tower-analytics-frontend/config/spandx.config.js ./scripts/run.sh


install the npm packages
cd ~/workspace/github/RedHatInsights/tower-analytics-frontend
npm install
npm run


open the "prod" url

https://prod.foo.redhat.com:1337/beta/ansible/automation-analytics/clusters


fullstack dev setup

The backend stack is in a private repo https://github.com/RedHatInsights/tower-analytics-backend

The stack is heavily reliant on docker-compose to spin up and podman-compose will fail if used.

fix the spandx config
[jtanner@corsair tower-analytics-frontend]$ git diff config/local-api.spandx.config.js
diff --git a/config/local-api.spandx.config.js b/config/local-api.spandx.config.js
index 0645a59..4529b37 100644
--- a/config/local-api.spandx.config.js
+++ b/config/local-api.spandx.config.js
@@ -11,7 +11,6 @@ module.exports = {
         '/apps/automation-analytics': { host: `https://${localhost}:8002` },
         '/ansible/automation-analytics': { host: `https://${localhost}:8002` },
         '/beta/ansible/automation-analytics': { host: `https://${localhost}:8002` },
-        '/beta/config': { host: `http://${localhost}:8889` },
         '/api/tower-analytics': { host: `http://${localhost}:8000` }
     }
 };
run the insights proxy
cd ~/workspace/github/RedHatInsights/insights-proxy
SPANDX_CONFIG=~/workspace/github/RedHatInsights/tower-analytics-frontend/config/local-api.spandx.config.js ./scripts/run.sh
run the backend
cd ~/workspace/github/RedHatInsights/tower-analytics-backend
docker-compose -f local_ui_dev.yml kill
docker-compose -f local_ui_dev.yml down
docker image prune -a
sudo rm -rf integration_test/__pycache__
docker-compose -f local_ui_dev.yml up
migrate the database and make some fake data
cd ~/workspace/github/RedHatInsights/tower-analytics-backend
make init
run the frontend
nvm use 10.15
cd ~/workspace/github/RedHatInsights/tower-analytics-frontend
npm install
DEBUG='express:*' npm start


FAQ

How do I enable calls to the browser console in the frontend code?

eslint disabes console.log entries in the code, and needs configuration to allow it ...

diff --git a/.eslintrc.yml b/.eslintrc.yml
index c5d7d33..61835e5 100644
--- a/.eslintrc.yml
+++ b/.eslintrc.yml
@@ -72,6 +72,7 @@ rules:
   new-cap: 2
   no-bitwise: 2
   no-caller: 2
+  no-console: "off"
   no-mixed-spaces-and-tabs: 2
   no-multiple-empty-lines:
     - error
Another option is to add
\* eslint-disable *\
at the top of the individual files.


How can I connect to the local backend postgres?

docker-compose -f local.yml exec postgres /bin/sh
su - postgres	
psql

How can I see what active queries are running in postgres?

SELECT * FROM pg_stat_activity WHERE state = 'active';

How do I kill a query in postgres?

SELECT pg_terminate_backend(<pid>);

troubleshooting

podman permission or OCI errors ...
sudo rm -rf  ~/.local/share/containers/