-
Notifications
You must be signed in to change notification settings - Fork 0
Add error fallback webserver with custom error pages and deployment configuration #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…ment configuration - Implemented a webserver to handle error responses with custom HTML pages for various HTTP errors (404, 500, 502, 503, 504). - Added Dockerfile and docker-compose configuration for local development. - Created Kubernetes deployment and service configuration for production deployment. - Introduced a generator script to automate the creation of error pages. - Updated README with instructions on running the service and generating pages.
There was a problem hiding this 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 implements a custom error fallback webserver for the CTF Pilot ecosystem, providing branded error pages for common HTTP errors (404, 500, 502, 503, 504) with automatic retry functionality.
Key Changes:
- Created a static webserver with custom HTML error pages and automatic service availability polling
- Added deployment infrastructure including Kubernetes manifests, Dockerfile, and docker-compose configuration
- Implemented a Python-based generator script to build error pages from templates and content files
Reviewed Changes
Copilot reviewed 17 out of 19 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| template/k8s.yml | Kubernetes deployment and service configuration for the error fallback webserver with HA setup (3 replicas) |
| src/layouts/error.html | HTML template layout for error pages with loading spinner and auto-reload functionality |
| src/js/main.js | JavaScript polling logic to check service availability and automatically reload when service recovers |
| src/css/main.css | CSS styling with dark/light theme support and responsive design |
| src/generator.py | Python script to generate static error pages by combining layouts, content, CSS, and JavaScript |
| src/content/error_*.html | Individual error page content for various HTTP status codes (404, 500, 502, 503, 504, index) |
| Dockerfile | Multi-stage Docker build using Python for generation and static-web-server for serving |
| docker-compose.yml | Local development setup for the error fallback service |
| README.md | Documentation on running the service and generating error pages |
| .releaserc.json | Semantic release configuration with K8s manifest generation |
| .github/workflows/release.yml | CI/CD workflow for automated releases and Docker image publishing |
| .github/workflows/cla-assistant.yml | Updated repository reference for CLA assistant |
| .gitignore | Excludes generated public/ directory from version control |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 18 out of 19 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 19 out of 20 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This update adds: