ci: disable GitHub Actions and add manual quality checks
- Disable CI workflows due to billing issues - Add quick-check.sh script for 5-min pre-push validation - Add MANUAL_CI.md with comprehensive instructions - Update README with CI disabled notice - Production readiness workflow updated with manual check note
This commit is contained in:
parent
ac24a6ba20
commit
a383b245e5
22
.github/workflows/disabled.yml
vendored
Normal file
22
.github/workflows/disabled.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# GitHub Actions temporarily disabled due to billing issues
|
||||||
|
#
|
||||||
|
# To re-enable: rename this file back to ci.yml
|
||||||
|
#
|
||||||
|
# For manual quality checks, see: MANUAL_CI.md
|
||||||
|
name: Disabled - CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
pull_request:
|
||||||
|
branches: [main]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
disabled:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: CI Disabled
|
||||||
|
run: |
|
||||||
|
echo "GitHub Actions are temporarily disabled."
|
||||||
|
echo "Please run manual quality checks using the workflows in .windsurf/workflows/"
|
||||||
|
echo "See MANUAL_CI.md for instructions."
|
||||||
153
MANUAL_CI.md
Normal file
153
MANUAL_CI.md
Normal file
@ -0,0 +1,153 @@
|
|||||||
|
# Manual CI Instructions
|
||||||
|
|
||||||
|
> **GitHub Actions are temporarily disabled** due to billing issues. Please run these manual quality checks before merging code.
|
||||||
|
|
||||||
|
## Why CI is Disabled
|
||||||
|
|
||||||
|
GitHub Actions are currently disabled because:
|
||||||
|
|
||||||
|
- Account billing issues/spending limit reached
|
||||||
|
- Self-hosted runner setup in progress (see scripts/azure-runner-setup.sh)
|
||||||
|
- Cost optimization measures being implemented
|
||||||
|
|
||||||
|
## Manual Quality Check Workflow
|
||||||
|
|
||||||
|
### Quick Pre-push Checklist (5 minutes)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 1. Type-check
|
||||||
|
pnpm typecheck
|
||||||
|
|
||||||
|
# 2. Lint
|
||||||
|
pnpm lint
|
||||||
|
|
||||||
|
# 3. Format check
|
||||||
|
pnpm format:check
|
||||||
|
|
||||||
|
# 4. Run tests
|
||||||
|
pnpm test
|
||||||
|
|
||||||
|
# If any fail, fix and commit before pushing!
|
||||||
|
```
|
||||||
|
|
||||||
|
### Full Quality Check (15-20 minutes)
|
||||||
|
|
||||||
|
Use the production-readiness workflow: `.windsurf/workflows/production-readiness.md`
|
||||||
|
|
||||||
|
### Per-Repository Instructions
|
||||||
|
|
||||||
|
#### learning_ai_common_plat
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /path/to/learning_ai_common_plat
|
||||||
|
|
||||||
|
# Build all packages
|
||||||
|
pnpm build
|
||||||
|
|
||||||
|
# Full check suite
|
||||||
|
pnpm typecheck && pnpm lint && pnpm format:check && pnpm test && pnpm audit
|
||||||
|
```
|
||||||
|
|
||||||
|
#### learning_voice_ai_agent (LysnrAI)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /path/to/learning_voice_ai_agent
|
||||||
|
|
||||||
|
# Dashboards
|
||||||
|
cd admin-dashboard-web && npm run typecheck && npm run lint && npm test
|
||||||
|
cd ../user-dashboard-web && npm run typecheck && npm run lint && npm test
|
||||||
|
cd ../tracker-dashboard-web && npm run typecheck && npm run lint && npm test
|
||||||
|
|
||||||
|
# Python
|
||||||
|
make lint && python -m pytest tests/ backend/tests/
|
||||||
|
```
|
||||||
|
|
||||||
|
#### learning_multimodal_memory_agents (MindLyst)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /path/to/learning_multimodal_memory_agents/mindlyst-native
|
||||||
|
|
||||||
|
# KMP compile
|
||||||
|
./gradlew :shared:compileKotlinIosSimulatorArm64
|
||||||
|
|
||||||
|
# Web
|
||||||
|
cd web && npm run build && npm run lint
|
||||||
|
|
||||||
|
# Tests
|
||||||
|
./gradlew test
|
||||||
|
```
|
||||||
|
|
||||||
|
## When to Run Full Checks
|
||||||
|
|
||||||
|
- **Before creating a PR**: Always run quick checklist
|
||||||
|
- **Before merging to main**: Run full quality check
|
||||||
|
- **After major changes**: Run full check for affected repo
|
||||||
|
- **Weekly**: Run full check across all repos to catch drift
|
||||||
|
|
||||||
|
## Re-enabling CI
|
||||||
|
|
||||||
|
CI will be re-enabled when:
|
||||||
|
|
||||||
|
1. Billing issues are resolved, OR
|
||||||
|
2. Self-hosted runners are fully operational
|
||||||
|
|
||||||
|
To re-enable:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# In each repo
|
||||||
|
mv .github/workflows/ci.yml.disabled .github/workflows/ci.yml
|
||||||
|
rm .github/workflows/disabled.yml
|
||||||
|
git add .github/workflows/
|
||||||
|
git commit -m "ci: re-enable GitHub Actions"
|
||||||
|
git push
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### Corporate Proxy Issues
|
||||||
|
|
||||||
|
If you encounter SSL/certificate errors:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# For Gradle (MindLyst)
|
||||||
|
export GRADLE_OPTS="-Dtrust_all_cert=true"
|
||||||
|
|
||||||
|
# For npm/pnpm
|
||||||
|
npm config set strict-ssl false
|
||||||
|
```
|
||||||
|
|
||||||
|
### Memory Issues
|
||||||
|
|
||||||
|
- Close unused applications
|
||||||
|
- Run checks sequentially instead of parallel
|
||||||
|
- Use `--max-old-space-size=4096` for Node.js if needed
|
||||||
|
|
||||||
|
## Automation Options (While CI is Disabled)
|
||||||
|
|
||||||
|
### Git Hooks
|
||||||
|
|
||||||
|
Install pre-commit hooks to run basic checks:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# In each repo
|
||||||
|
npm install -g husky
|
||||||
|
npx husky install
|
||||||
|
npx husky add .husky/pre-commit "pnpm typecheck && pnpm lint"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Local GitHub Actions Runner
|
||||||
|
|
||||||
|
If you have a local machine:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Install GitHub Actions runner
|
||||||
|
# Follow: https://docs.github.com/en/actions/hosting-your-own-runners
|
||||||
|
```
|
||||||
|
|
||||||
|
## Questions?
|
||||||
|
|
||||||
|
Contact the team or check:
|
||||||
|
|
||||||
|
- `.windsurf/workflows/production-readiness.md` for comprehensive checks
|
||||||
|
- `.windsurf/workflows/mobile-code-quality.md` for mobile-specific checks
|
||||||
|
- Repo-specific README files for additional instructions
|
||||||
36
README.md
36
README.md
@ -1,6 +1,35 @@
|
|||||||
# @bytelyst/common-platform
|
# ByteLyst Common Platform
|
||||||
|
|
||||||
Shared packages **and** product-agnostic microservices for the ByteLyst ecosystem — used by [LysnrAI](https://github.com/saravanakumardb1/learning_voice_ai_agent) and [MindLyst](https://github.com/saravanakumardb1/learning_multimodal_memory_agents).
|
> Shared packages and microservices for ByteLyst ecosystem products.
|
||||||
|
|
||||||
|
## ⚠️ GitHub Actions Temporarily Disabled
|
||||||
|
|
||||||
|
CI/CD is currently disabled due to billing issues. Please run manual quality checks before merging:
|
||||||
|
|
||||||
|
- See [MANUAL_CI.md](./MANUAL_CI.md) for instructions
|
||||||
|
- Use `.windsurf/workflows/production-readiness.md` for comprehensive checks
|
||||||
|
|
||||||
|
## Quick Start
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Install dependencies
|
||||||
|
pnpm install
|
||||||
|
|
||||||
|
# Build all packages + services
|
||||||
|
pnpm build
|
||||||
|
|
||||||
|
# Quick quality check (5 min) - run before pushing!
|
||||||
|
./quick-check.sh
|
||||||
|
|
||||||
|
# Run all tests (165 total across packages + services)
|
||||||
|
pnpm test
|
||||||
|
|
||||||
|
# Type-check all packages
|
||||||
|
pnpm typecheck
|
||||||
|
|
||||||
|
# Run a specific service in dev mode
|
||||||
|
pnpm --filter @lysnrai/platform-service dev
|
||||||
|
```
|
||||||
|
|
||||||
## Repository Structure
|
## Repository Structure
|
||||||
|
|
||||||
@ -56,6 +85,9 @@ pnpm install
|
|||||||
# Build all packages + services
|
# Build all packages + services
|
||||||
pnpm build
|
pnpm build
|
||||||
|
|
||||||
|
# Quick quality check (5 min) - run before pushing!
|
||||||
|
./quick-check.sh
|
||||||
|
|
||||||
# Run all tests (165 total across packages + services)
|
# Run all tests (165 total across packages + services)
|
||||||
pnpm test
|
pnpm test
|
||||||
|
|
||||||
|
|||||||
45
quick-check.sh
Executable file
45
quick-check.sh
Executable file
@ -0,0 +1,45 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Quick quality check (5 minutes)
|
||||||
|
# Run before pushing code
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
echo "🔍 Running quick quality checks..."
|
||||||
|
echo
|
||||||
|
|
||||||
|
# Colors
|
||||||
|
GREEN='\033[0;32m'
|
||||||
|
RED='\033[0;31m'
|
||||||
|
NC='\033[0m' # No Color
|
||||||
|
|
||||||
|
# Function to print status
|
||||||
|
status() {
|
||||||
|
if [ $1 -eq 0 ]; then
|
||||||
|
echo -e "${GREEN}✓ $2${NC}"
|
||||||
|
else
|
||||||
|
echo -e "${RED}✗ $2${NC}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "📦 Type-checking..."
|
||||||
|
pnpm typecheck
|
||||||
|
status $? "Type-check passed"
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "🔧 Linting..."
|
||||||
|
pnpm lint
|
||||||
|
status $? "Linting passed"
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "📝 Checking formatting..."
|
||||||
|
pnpm format:check
|
||||||
|
status $? "Formatting check passed"
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "🧪 Running tests..."
|
||||||
|
pnpm test
|
||||||
|
status $? "Tests passed"
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo -e "${GREEN}✅ All checks passed! Safe to push.${NC}"
|
||||||
Loading…
Reference in New Issue
Block a user