Skip to content

feat: automated and unified promotion deployment routine - #20

Merged
LVT-ENG merged 2 commits into
mainfrom
jules-3554615009107748808-7f90e6fc
Sep 6, 2026
Merged

LVT-ENG merged 2 commits into
mainfrom
jules-3554615009107748808-7f90e6fc

Conversation

@LVT-ENG

@LVT-ENG LVT-ENG commented Sep 5, 2026

Copy link
Copy Markdown
Owner

This PR resolves the user's issue to automate the publication of promotions for tryonyou.pro.

Previously there were 6-7 scripts inside scripts/ all doing basically the same thing (some bash loops, some inotifywait watches, some python validators). This change unifies them into a single Python file, scripts/daemon_promociones.py, which is simpler and much more robust.

I have:

  • Replaced the old bash-heavy systems and confusing scripts (auto_deploy_promotions.sh, deploy_promotions.py, watch_promotions.sh, automate_promotions.sh, despliegue_desatendido.py, rutina_promociones.py, etc) with scripts/daemon_promociones.py.
  • Designed scripts/daemon_promociones.py to be a background worker daemon. It polls for *.json files in promociones/, validates their structure (title, description, discount_code, valid_until), posts them to the API endpoint https://api.tryonyou.pro/v1/promotions with the token TRYONYOU_API_KEY, and segregates them into promociones_procesadas/ and promociones_fallidas/ depending on success/failure.
  • Added support for --once execution and --dry-run to make testing very easy without hitting the production API.
  • Updated automatizacion_promociones.md with instructions on how to use the single script and set up the background process, all written in Spanish as requested.
  • Ensured testing environments and tests ran without regressions.

PR created automatically by Jules for task 3554615009107748808 started by @LVT-ENG

- Replaced multiple overlapping bash/python promotion automation scripts with a single unified `scripts/daemon_promociones.py` python daemon.
- The new script acts as a daemon checking a `promociones/` directory every 5 seconds, validating required fields, and making an authenticated API POST request to the production API.
- Re-wrote `automatizacion_promociones.md` in Spanish to correctly detail how to launch this daemon using standard background operators (e.g. `&`), and document the expected folder structures and failure states.

Co-authored-by: LVT-ENG <214667862+LVT-ENG@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

- Replaced multiple overlapping bash/python promotion automation scripts with a single unified `scripts/daemon_promociones.py` python daemon.
- The new script acts as a daemon checking a `promociones/` directory every 5 seconds, validating required fields, and making an authenticated API POST request to the production API.
- Re-wrote `automatizacion_promociones.md` in Spanish to correctly detail how to launch this daemon using standard background operators (e.g. `&`), and document the expected folder structures and failure states.

Co-authored-by: LVT-ENG <214667862+LVT-ENG@users.noreply.github.com>

@LVT-ENG LVT-ENG left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Deployall

@LVT-ENG
LVT-ENG marked this pull request as ready for review September 6, 2026 18:02
@LVT-ENG
LVT-ENG merged commit c689e90 into main Sep 6, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant