📄 ../../.github/workflows/deploy.yml
On every push to main:
- ✅ Run tests (823 tests)
- ✅ Generate coverage report
- ✅ Create JSDoc documentation
- ✅ Production build
- ✅ FTP upload to IONOS
📄 ../../jsdoc.json
- TypeScript support via Babel
- Docdash theme
- Automatic API documentation
"test:ci": "Tests with Coverage (Headless)"
"docs": "Generate JSDoc"
"docs:serve": "View JSDoc locally"
"deploy:prepare": "Build everything together"- Complete instructions
- Troubleshooting
- FTP setup
Go to: https://github.com/KosMaster87/Portfolio/settings/secrets/actions
Create new secrets:
Name: FTP_HOST
Value: ftp.your-ionos-server.de
Name: FTP_USERNAME
Value: pXXXXXXXXX
Name: FTP_PASSWORD
Value: your-ftp-password
Finding IONOS FTP credentials:
- Login to ionos.com
- Webhosting & Domains
- Webspace → FTP credentials
npm install(Already done: jsdoc, docdash, babel)
# Run tests locally
npm test
# With coverage
npm run test:ci
# Generate JSDoc
npm run docs
# View JSDoc
npm run docs:serve
# Open: http://localhost:8081git add .
git commit -m "Add GitHub Actions deployment pipeline"
git push origin mainGitHub Actions starts automatically!
After successful deployment:
✅ https://portfolio.dev2k.org # Your portfolio app
✅ https://portfolio.dev2k.org/coverage/index.html # Test coverage report
✅ https://portfolio.dev2k.org/jsdoc/index.html # API documentation
/ (Root directory)
├── index.html # Angular App
├── assets/
├── *.js, *.css
├── .htaccess # Auto-generated
├── coverage/
│ └── index.html # Coverage Report
└── jsdoc/
└── index.html # API Docs
After push:
- GitHub → Actions Tab
- Click on current workflow run
- View progress in real-time
Pipeline takes approx. 3-5 minutes
| File | Purpose |
|---|---|
../../.github/workflows/deploy.yml |
Deployment pipeline |
../../jsdoc.json |
JSDoc configuration |
./DEPLOYMENT-GUIDE.md |
Complete guide |
../../.gitignore |
Ignores docs/, coverage/, deploy/ |
See: DEPLOYMENT-GUIDE.md → Troubleshooting
Most common errors:
- Wrong FTP secrets → Check GitHub Secrets
- Tests fail → Run
npm testlocally - Build error → Test
npm run buildlocally
Before the first push:
- GitHub Secrets configured
-
npm installexecuted -
npm testpasses -
npm run docsworks - FTP credentials tested
- Domain points to IONOS
All set! 🚀
Just push to main and GitHub Actions handles the rest!