Skip to content

chore: production infrastructure and CI/CD pipeline#36

Merged
The-Leyn merged 9 commits intodevelopfrom
feature/35-ci-cd-pipeline
Apr 15, 2026
Merged

chore: production infrastructure and CI/CD pipeline#36
The-Leyn merged 9 commits intodevelopfrom
feature/35-ci-cd-pipeline

Conversation

@The-Leyn
Copy link
Copy Markdown
Collaborator

No description provided.

@The-Leyn The-Leyn self-assigned this Mar 25, 2026
Copilot AI review requested due to automatic review settings March 25, 2026 14:17
@The-Leyn The-Leyn added the feat New feature or request label Mar 25, 2026
@The-Leyn The-Leyn changed the base branch from main to develop March 25, 2026 14:19
@The-Leyn The-Leyn moved this from Backlog to In review in @The-Leyn's Pinball_three.js Mar 25, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR introduces production/development Docker Compose infrastructure and a GitHub-based deployment pipeline intended to deploy the app to a VPS, plus a small frontend ignore-list update.

Changes:

  • Add compose.dev.yml for local development (Node container + Mosquitto).
  • Add compose.prod.yml for production deployment (build frontend image + Mosquitto with persistent volumes).
  • Add a GitHub deployment workflow and update frontend/.gitignore with OS/model ignores.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 4 comments.

File Description
frontend/.gitignore Ignore model assets and OS-specific files in the frontend workspace.
compose.prod.yml Define production services (frontend build + Mosquitto) and persistence volumes.
compose.dev.yml Define development services (pnpm dev server in Node container + Mosquitto).
.github/deploy.yml Add an automated VPS deployment pipeline using SCP + SSH.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/deploy.yml Outdated
Comment thread .github/workflows/deploy.yml Outdated
Comment thread compose.prod.yml
Comment on lines +10 to +16
mosquitto:
image: eclipse-mosquitto:latest
container_name: mosquitto
ports:
- "1883:1883"
- "9001:9001"
volumes:
Copy link

Copilot AI Mar 25, 2026

Choose a reason for hiding this comment

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

Using eclipse-mosquitto:latest makes deployments non-reproducible and can unexpectedly pull breaking/security changes. Pin the Mosquitto image to a specific version tag for production stability (and ideally align dev/prod tags).

Copilot uses AI. Check for mistakes.
Comment thread compose.prod.yml
Comment on lines +13 to +19
ports:
- "1883:1883"
- "9001:9001"
volumes:
- ./mqtt/mosquitto.conf:/mosquitto/config/mosquitto.conf
- mosquitto_data:/mosquitto/data
- mosquitto_log:/mosquitto/log
Copy link

Copilot AI Mar 25, 2026

Choose a reason for hiding this comment

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

Mosquitto is published on host ports 1883/9001; combined with the current mqtt/mosquitto.conf settings (allow_anonymous true on both listeners), this allows unauthenticated access from the network. For production, restrict exposure (bind to localhost / private network, or remove public port mappings) and/or enable authentication/TLS in Mosquitto.

Copilot uses AI. Check for mistakes.
@The-Leyn The-Leyn merged commit 96d687b into develop Apr 15, 2026
2 checks passed
@github-project-automation github-project-automation Bot moved this from In review to Done in @The-Leyn's Pinball_three.js Apr 15, 2026
@The-Leyn The-Leyn deleted the feature/35-ci-cd-pipeline branch April 15, 2026 07:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feat New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants