Commit Graph

9 Commits

Author SHA1 Message Date
Antoni Nuñez Romeu b4b2bf5834 fix(n8n): resolve duplicate key constraint on tag_entity during workflow import
Run Tests on Branches / Detect Changes (push) Successful in 12s
Run Tests on Branches / Backend Tests (push) Has been skipped
Run Tests on Branches / Frontend Tests (push) Has been skipped
Run Tests on Branches / Frontend Mobile Tests (push) Has been skipped
Run Tests on Branches / Parapharmacy API Tests (push) Has been skipped
Run Tests on Branches / PIP Platform Tests (push) Has been skipped
n8n import:workflow --separate imports each JSON file independently. All 4
workflows shared the same tags (parapharmacy, scraper), so the second import
tried to INSERT duplicate tag names, hitting the unique index on
tag_entity.name.

- Remove tags field from all 4 workflow JSON files (cosmetic, re-add via UI)
- Add cleanup-db.js to wipe workflow data before import
- Add --overwrite flag to import command as safety net
- Add cleanup-db.js volume mount to n8n-init container
2026-07-17 14:50:35 +02:00
Antoni Nuñez Romeu f6fc356c76 fix(cors,n8n): fix CORS for production, add unattended n8n init with seed
Run Tests on Branches / Parapharmacy API Tests (push) Has been skipped
Run Tests on Branches / PIP Platform Tests (push) Has been skipped
Run Tests on Branches / Detect Changes (push) Successful in 11s
Run Tests on Branches / Backend Tests (push) Has been skipped
Run Tests on Branches / Frontend Tests (push) Has been skipped
Run Tests on Branches / Frontend Mobile Tests (push) Has been skipped
- Change CORS_ORIGIN from localhost:4000 to farmacias.hacecalor.net in docker-compose.yml
- Add postgres and parapharmacy-api healthchecks
- Add n8n-init service that runs BEFORE n8n starts:
  - Imports workflows via n8n CLI
  - Activates all workflows via publish:workflow
  - Seeds parapharmacy DB with 20 test products
- Fix parapharmacy-api healthcheck to use node instead of wget (not available in image)
- Fix seed.json to use {products: [...]} format with required source_url field
- Remove activate-workflows.js (replaced by CLI approach)
2026-07-17 12:54:34 +02:00
Antoni Nuñez Romeu e1e404440d First start n8n seed & activate
Run Tests on Branches / Detect Changes (push) Successful in 14s
Run Tests on Branches / Backend Tests (push) Has been skipped
Run Tests on Branches / Frontend Mobile Tests (push) Has been skipped
Run Tests on Branches / Frontend Tests (push) Has been skipped
Run Tests on Branches / Parapharmacy API Tests (push) Successful in 1m35s
Run Tests on Branches / PIP Platform Tests (push) Has been skipped
2026-07-17 11:40:13 +02:00
Antoni Nuñez Romeu cc77783b7d N8N first run script
Run Tests on Branches / Frontend Mobile Tests (push) Has been skipped
Run Tests on Branches / Parapharmacy API Tests (push) Has been skipped
Run Tests on Branches / Detect Changes (push) Successful in 13s
Run Tests on Branches / Backend Tests (push) Has been skipped
Run Tests on Branches / Frontend Tests (push) Has been skipped
Run Tests on Branches / PIP Platform Tests (push) Has been skipped
2026-07-17 11:28:14 +02:00
Antoni Nuñez Romeu 05b99e9ed4 feat: working scraping for Promofarma, DocMorris, and Primor
- Fixed Primor URL format and selectors
- Created simple N8N webhook that calls scraper API
- All 3 sources now working:
  - Promofarma: 20 products
  - DocMorris: 10 products
  - Primor: 20 products
- Total: 130 products in database
- N8N webhook at /webhook/scrape working correctly
2026-07-16 15:19:07 +02:00
Antoni Nuñez Romeu a5a75d3249 feat: working Puppeteer scraper for Promofarma
- Added Puppeteer with Chrome in Docker
- Scraper extracts products using data attributes
- Added /api/scrape endpoint
- Tested: 10 products scraped from Promofarma

The scraper now works with Promofarma's HTML structure which uses
data-name, data-pvp attributes on article elements.
2026-07-16 14:54:51 +02:00
Antoni Nuñez Romeu 2ad4210221 feat: add scrape script and fix N8N webhook workflow
- Add direct scrape.js script for testing
- Fix N8N webhook workflow (lastNode response mode)
- Note: Real scraping requires Puppeteer for anti-bot sites
2026-07-16 13:14:56 +02:00
Antoni Nuñez Romeu 30f97fe87d feat: complete N8N scrapers for 6 sources and seed script
- Create comprehensive N8N workflow for all 6 parapharmacy sources
- Create webhook-triggered manual scraping workflow
- Add seed script with 20 sample products
- Update n8n/README.md with complete documentation
- Update docs/parapharmacy.md with seeding instructions
- Add seed script to package.json

Sources configured:
- Promofarma
- Pharmarket
- DocMorris
- 1001Farma
- Primor
- MiFarma
2026-07-16 13:00:20 +02:00
Antoni Nuñez Romeu 1c70f0a914 feat: add N8N workflows and auto-setup configuration
- Add parapharmacy-scraper workflow (scheduled every 3 days)
- Add parapharmacy-manual-scraper workflow (webhook triggered)
- Configure N8N to auto-create owner account (skips /setup)
- Add N8N environment variables to docker-compose.yml
- Add README with setup and usage instructions
2026-07-16 12:46:20 +02:00