From 5df136c51719fad06750edea82412ffa73ea3960 Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Mon, 16 Jun 2025 14:54:07 +0700 Subject: [PATCH 1/9] update workflow --- .github/workflows/test-install.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index 0c79440..5162e67 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -32,7 +32,7 @@ jobs: # docker ps - name: Checkout ab-cli - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup Node uses: actions/setup-node@v4 @@ -124,7 +124,7 @@ jobs: - run: podman compose --help - name: Checkout ab-cli - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Install npm packages run: npm i From 15b34007f275174b34aea27cf7a0f39d841addcf Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Mon, 16 Jun 2025 15:18:39 +0700 Subject: [PATCH 2/9] update to v4 --- .github/workflows/codeql.yml | 2 +- .github/workflows/test-install.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index f05e268..7bde2b0 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -24,7 +24,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Initialize CodeQL uses: github/codeql-action/init@v2 diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index 5162e67..aae17d9 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -32,7 +32,7 @@ jobs: # docker ps - name: Checkout ab-cli - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup Node uses: actions/setup-node@v4 @@ -124,7 +124,7 @@ jobs: - run: podman compose --help - name: Checkout ab-cli - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install npm packages run: npm i From 9d4c6ca6d7fb49ede243af38cf54a15e7b54743d Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Mon, 16 Jun 2025 15:39:29 +0700 Subject: [PATCH 3/9] add logging to debug actions --- .github/workflows/test-install.yml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index aae17d9..dbf6d79 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -116,7 +116,7 @@ jobs: CYPRESS_RETRIES: 2 steps: - run: sudo apt-get update & sudo apt-get -y install podman & systemctl --user enable --now podman.socket - # connect Docker CLI to Podman’s socket + # connect Docker CLI to Podman's socket - run: export DOCKER_HOST=unix://$XDG_RUNTIME_DIR/podman/podman.sock @@ -129,6 +129,9 @@ jobs: - name: Install npm packages run: npm i + - name: Ensure clean enviroment + run: rm -rf ./ab-test + - name: Install AppBuilder run: node index.js install ab-test --stack=ab-test --port=8090 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:8090 --tenant.username=admin --tenant.password=admin --tenant.email=admin@email.com --tenant.url=http://localhost:8090 --platform=podman @@ -138,6 +141,18 @@ jobs: run: ./UP.sh -t -q working-directory: ./ab-test + - name: Check Database Logs + run: | + echo "Checking database logs..." + podman logs $(podman ps -q -f name=ab-test_db) | tail -n 50 + working-directory: ./ab-test + + - name: Check Tenant Setup + run: | + echo "Checking tenant setup..." + podman exec -i $(podman ps -q -f name=ab-test_db) mysql -uroot -proot "appbuilder-admin" -e "SELECT * FROM SITE_USER WHERE username='admin';" + working-directory: ./ab-test + - name: Wait for AB (Main Stack) uses: ifaxity/wait-on-action@v1 with: From 4c561ac4b6d0200f909d766d1ad9fbe08bed2603 Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Thu, 19 Jun 2025 15:46:06 +0700 Subject: [PATCH 4/9] more git tweaks --- .github/workflows/test-install.yml | 4 ++++ .gitignore | 1 + 2 files changed, 5 insertions(+) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index dbf6d79..04cf279 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -151,6 +151,10 @@ jobs: run: | echo "Checking tenant setup..." podman exec -i $(podman ps -q -f name=ab-test_db) mysql -uroot -proot "appbuilder-admin" -e "SELECT * FROM SITE_USER WHERE username='admin';" + echo "Checking tenant manager logs..." + podman logs $(podman ps -q -f name=ab-test_tenant_manager) | tail -n 50 + echo "Checking running services..." + podman ps working-directory: ./ab-test - name: Wait for AB (Main Stack) diff --git a/.gitignore b/.gitignore index 894d2ee..c6c679c 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,7 @@ lib-cov *.log *.out *.pid +.vscode node_modules/ From 355e8a8cf018dc0803120604ffd90eb7af2f6421 Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Thu, 19 Jun 2025 15:54:38 +0700 Subject: [PATCH 5/9] more git tweaks --- .github/workflows/test-install.yml | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index 04cf279..e37cdd0 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -149,12 +149,19 @@ jobs: - name: Check Tenant Setup run: | - echo "Checking tenant setup..." - podman exec -i $(podman ps -q -f name=ab-test_db) mysql -uroot -proot "appbuilder-admin" -e "SELECT * FROM SITE_USER WHERE username='admin';" - echo "Checking tenant manager logs..." - podman logs $(podman ps -q -f name=ab-test_tenant_manager) | tail -n 50 - echo "Checking running services..." - podman ps + echo "Listing all running containers..." + podman ps -a + echo "\nWaiting for database to be ready..." + sleep 90 + echo "\nTrying to find database container..." + DB_CONTAINER=$(podman ps -a --filter name=db --format "{{.Names}}") + echo "Found containers matching 'db': $DB_CONTAINER" + if [ -n "$DB_CONTAINER" ]; then + echo "\nChecking tenant setup in container: $DB_CONTAINER" + podman exec -i $DB_CONTAINER mysql -uroot -proot "appbuilder-admin" -e "SELECT * FROM SITE_USER WHERE username='admin';" + else + echo "No database container found!" + fi working-directory: ./ab-test - name: Wait for AB (Main Stack) From 66fd57e32a00d34d18c93590454ebf0cedd35051 Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Thu, 19 Jun 2025 16:21:16 +0700 Subject: [PATCH 6/9] try password changes --- .github/workflows/test-install.yml | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index e37cdd0..0ee484b 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -47,7 +47,11 @@ jobs: run: docker swarm init --advertise-addr 127.0.0.1 - name: Install AppBuilder - run: node index.js install ab-test --stack=ab-test --develop --port=80 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:80 --tenant.username=admin --tenant.password=admin --tenant.email=admin@email.com --tenant.url=http://localhost:80 + env: + TENANT_PASSWORD: "admin123!@#" + run: | + echo "Installing AppBuilder with secure password..." + node index.js install ab-test --stack=ab-test --port=80 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:80 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:80 --platform=podman # Give some time for the stack to come down fully - run: sleep 15 @@ -133,7 +137,11 @@ jobs: run: rm -rf ./ab-test - name: Install AppBuilder - run: node index.js install ab-test --stack=ab-test --port=8090 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:8090 --tenant.username=admin --tenant.password=admin --tenant.email=admin@email.com --tenant.url=http://localhost:8090 --platform=podman + env: + TENANT_PASSWORD: "admin123!@#" + run: | + echo "Installing AppBuilder with secure password..." + node index.js install ab-test --stack=ab-test --port=80 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:80 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:80 --platform=podman # Give some time for the stack to come down fully - run: sleep 15 @@ -158,16 +166,26 @@ jobs: echo "Found containers matching 'db': $DB_CONTAINER" if [ -n "$DB_CONTAINER" ]; then echo "\nChecking tenant setup in container: $DB_CONTAINER" - podman exec -i $DB_CONTAINER mysql -uroot -proot "appbuilder-admin" -e "SELECT * FROM SITE_USER WHERE username='admin';" + podman exec -i $DB_CONTAINER mysql -uroot -proot "appbuilder-admin" -e "SELECT username, email, salt FROM SITE_USER WHERE username='admin';" + echo "\nChecking .env file for Cypress settings..." + cat .env | grep CYPRESS else echo "No database container found!" fi working-directory: ./ab-test + - name: Test Login + run: | + echo "Testing login with credentials..." + curl -X POST http://localhost:80/auth/login \ + -H "Content-Type: application/json" \ + -d '{"tenant":"admin","email":"admin@email.com","password":"admin123!@#"}' + working-directory: ./ab-test + - name: Wait for AB (Main Stack) uses: ifaxity/wait-on-action@v1 with: - resource: http://localhost:8090 + resource: http://localhost:80 timeout: 300000 - name: Run Cypress Tests (Main Stack) From bc9e4fb76c13ea94c697494b88974db394e81c5d Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Thu, 19 Jun 2025 16:39:02 +0700 Subject: [PATCH 7/9] try other port --- .github/workflows/test-install.yml | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index 0ee484b..df4a1b9 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -51,7 +51,7 @@ jobs: TENANT_PASSWORD: "admin123!@#" run: | echo "Installing AppBuilder with secure password..." - node index.js install ab-test --stack=ab-test --port=80 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:80 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:80 --platform=podman + node index.js install ab-test --stack=ab-test --port=8090 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:8090 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:8090 --platform=podman # Give some time for the stack to come down fully - run: sleep 15 @@ -63,7 +63,7 @@ jobs: - name: Wait for AB (Main Stack) uses: ifaxity/wait-on-action@v1 with: - resource: http://localhost:80 + resource: http://localhost:8090 timeout: 300000 - name: Run Cypress Tests (Main Stack) @@ -90,7 +90,7 @@ jobs: # - name: Wait for AB (Test Stack) # uses: ifaxity/wait-on-action@v1 # with: - # resource: http://localhost:8088 + # resource: http://localhost:809088 # timeout: 300000 # # - name: Run Cypress Tests (Test Stack) @@ -141,7 +141,7 @@ jobs: TENANT_PASSWORD: "admin123!@#" run: | echo "Installing AppBuilder with secure password..." - node index.js install ab-test --stack=ab-test --port=80 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:80 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:80 --platform=podman + node index.js install ab-test --stack=ab-test --port=8090 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:8090 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:8090 --platform=podman # Give some time for the stack to come down fully - run: sleep 15 @@ -174,20 +174,21 @@ jobs: fi working-directory: ./ab-test + + - name: Wait for AB (Main Stack) + uses: ifaxity/wait-on-action@v1 + with: + resource: http://localhost:8090 + timeout: 300000 + - name: Test Login run: | echo "Testing login with credentials..." - curl -X POST http://localhost:80/auth/login \ + curl -X POST http://localhost:8090/auth/login \ -H "Content-Type: application/json" \ -d '{"tenant":"admin","email":"admin@email.com","password":"admin123!@#"}' working-directory: ./ab-test - - name: Wait for AB (Main Stack) - uses: ifaxity/wait-on-action@v1 - with: - resource: http://localhost:80 - timeout: 300000 - - name: Run Cypress Tests (Main Stack) run: npm run test:e2e:ab-runtime -- --browser chrome working-directory: ./ab-test From 2305559fa4187e39e803ab184830defa49c4dd6a Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster <213383044+roguisharcanetrickster@users.noreply.github.com> Date: Fri, 20 Jun 2025 15:08:44 +0700 Subject: [PATCH 8/9] Update test-install.yml --- .github/workflows/test-install.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index df4a1b9..6020a33 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -66,6 +66,31 @@ jobs: resource: http://localhost:8090 timeout: 300000 + - name: Test Login 1 + run: | + curl -X POST http://localhost:8090/auth/login \ + -H "Content-Type: application/json" \ + -d '{"tenant":"admin","email":"admin@email.com","password":"admin"}' + working-directory: ./ab-test + + - name: Reset Test Environment + run: npm run test:reset ab-test + working-directory: ./ab-test + + - name: Reset via API + run: | + curl -X POST http://localhost:8090/test/reset \ + -H "Content-Type: application/json" \ + -d '{"tenant":"admin"}' + working-directory: ./ab-test + + - name: Test Login post reset + run: | + curl -X POST http://localhost:8090/auth/login \ + -H "Content-Type: application/json" \ + -d '{"tenant":"admin","email":"admin@email.com","password":"admin"}' + working-directory: ./ab-test + - name: Run Cypress Tests (Main Stack) run: npm run test:e2e:ab-runtime -- --browser chrome working-directory: ./ab-test From 2e4cfa2a304d8248e61f21945103080d63559e89 Mon Sep 17 00:00:00 2001 From: roguisharcanetrickster Date: Fri, 20 Jun 2025 14:13:12 +0700 Subject: [PATCH 9/9] try test reset actions to see if cause --- .github/workflows/test-install.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test-install.yml b/.github/workflows/test-install.yml index 6020a33..c0b3283 100644 --- a/.github/workflows/test-install.yml +++ b/.github/workflows/test-install.yml @@ -48,7 +48,7 @@ jobs: - name: Install AppBuilder env: - TENANT_PASSWORD: "admin123!@#" + TENANT_PASSWORD: "admin" run: | echo "Installing AppBuilder with secure password..." node index.js install ab-test --stack=ab-test --port=8090 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:8090 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:8090 --platform=podman @@ -163,7 +163,7 @@ jobs: - name: Install AppBuilder env: - TENANT_PASSWORD: "admin123!@#" + TENANT_PASSWORD: "admin" run: | echo "Installing AppBuilder with secure password..." node index.js install ab-test --stack=ab-test --port=8090 --tag=latest --dbExpose=true --dbPort=8888 --dbPassword=root --authType=login --relayEnabled=false --siteURL=http://localhost:8090 --tenant.username=admin --tenant.password=$TENANT_PASSWORD --tenant.email=admin@email.com --tenant.url=http://localhost:8090 --platform=podman @@ -211,7 +211,7 @@ jobs: echo "Testing login with credentials..." curl -X POST http://localhost:8090/auth/login \ -H "Content-Type: application/json" \ - -d '{"tenant":"admin","email":"admin@email.com","password":"admin123!@#"}' + -d '{"tenant":"admin","email":"admin@email.com","password":"admin"}' working-directory: ./ab-test - name: Run Cypress Tests (Main Stack)