[](https://github.com/AlbanAndrieu/nabla-site-apache) nabla-site-apache
April 23, 2026 · View on GitHub
layout: default
Text can be bold, italic, or strikethrough.
nabla-site-apache
Project Goal
This is a simple HTML project for Nabla company that promotes Alban Andrieu as an experienced DevSecOps professional.
Default nabla files for apache
GitHub Actions
The repository currently includes these workflows:
- Playwright Tests (
.github/workflows/playwright.yml) - Docker CI (
.github/workflows/docker-build.yml) - MegaLinter (
.github/workflows/mega-linter.yml) - Build CV PDFs (
.github/workflows/build-pdf.yml) - OpenCommit Action (
.github/workflows/opencommit.yml) - Copilot Setup Steps (
.github/workflows/copilot-setup-steps.yml)
Workflow secrets currently used:
DOCKER_USERNAME,DOCKER_PASSWORD(Docker CI)OCO_API_KEY(OpenCommit)- Optional
PATfor MegaLinter auto-commit/PR steps (falls back toGITHUB_TOKENwhere applicable)
Monorepo Structure
This repository contains multiple deployable projects:
- Root Project - PHP API + Static HTML site
- my-app/ - Next.js application (separate Vercel deployment)
- vue-client/ - Vue/Vite application (separate Vercel deployment)
CV Documentation
For CV architecture, build workflow, and troubleshooting, see
public/cv/README.md.
Frontend Runtime Documentation
For analytics mode selection, shared widget attributes, script integration examples, and troubleshooting, see
docs/frontend-runtime-scripts-runbook.md.
Deployment
Root Project (PHP + Static Site)
npm run start:python
# Cloudflare wrangler
npm run start
For Vercel:
vc build
vercel dev
vercel deploy
# php -S localhost:8000 api/index.php
vercel --prod
For vercel php
composer install --ignore-platform-req=ext-mbstring
php -S localhost:8000 api/index.php
Stripe Checkout
Pages:
public/checkout.html— starts hosted Checkout (public/create-checkout-session.js+POST /create-checkout-session)public/success.html— return URL after payment (session_idquery param when configured on the server)public/cancel.html— return URL if the customer abandons Checkout
Backend (local / your own Node host):
export STRIPE_SECRET_KEY=sk_test_...
export STRIPE_PRICE_ID=price_...
export DOMAIN=http://localhost:4242
npm run start:stripe
Then open http://localhost:4242/checkout.html. The secret key and Price ID come from the Stripe Dashboard; DOMAIN must match the origin users use (no trailing slash).
Deployment note: Vercel serves POST /create-checkout-session via api/create-checkout-session.js, routed by the catch-all vercel.json route (/(.*) → /api/\$1). Set STRIPE_SECRET_KEY and STRIPE_PRICE_ID in the Vercel project. Local dev still uses npm run start:stripe (server.cjs).
Details: docs/checkout-support-runbook.md.
Local Apache deployment
For Apache
aa-teardown
sudo service apache2 restart
sudo service php8.4-fpm restart
tail -f /var/log/apache2/error.log
php-framework-symfony-microservice
# Python 2
python -m SimpleHTTPServer 8001
# Python 3
python -m http.server 8001
Terraform
terraform-s3-static-website-hosting
Testing
This project uses Playwright for end-to-end testing. The test suite includes:
- Homepage Tests: Validates meta tags, Open Graph tags, and page structure
- Accessibility Tests: Checks WCAG compliance, keyboard navigation, and theme support
- Responsive Design Tests: Ensures proper mobile, tablet, and desktop layouts
- Navigation Tests: Verifies internal/external links and navigation structure
Running Tests Locally
# Install dependencies (includes Playwright)
npm install
# Install Playwright browsers (first time only)
npx playwright install
# Run all tests
npm test
# Run tests in headed mode (see browser)
npm run test:headed
# Run tests in interactive UI mode
npm run test:ui
# Debug tests
npm run test:debug
# View test report
npm run test:report
SDLC Integration
Tests run automatically on GitHub Actions for all push and pull request events. The workflow:
- Sets up Node.js environment
- Installs dependencies
- Installs Playwright browsers
- Runs the test suite
- Uploads test reports and traces as artifacts
See .github/workflows/playwright.yml for the complete workflow configuration.
Contributing
The issue tracker is the preferred channel for bug reports, features requests and submitting pull requests.
For pull requests, editor preferences are available in the editor config for easy use in common text editors. Read more and download plugins at http://editorconfig.org.
License
Alban Andrieu linkedin