Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Update to latest #3

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

Merged
merged 24 commits into from
Jun 26, 2025
Merged

Update to latest #3

merged 24 commits into from
Jun 26, 2025

Conversation

un33k
Copy link
Owner

@un33k un33k commented Jun 26, 2025

Final Summary:

  • ✅ Smart output system with comprehensive noise filtering
  • ✅ Command structure modernization (db.pg., sys., recipe.*)
  • ✅ Recipe success messages with detailed configuration summaries
  • ✅ SSH reconnection fixes with proper retry logic
  • ✅ GitHub Actions CI for Python 3.9-3.11
  • ✅ All tests passing (12/12)
  • ✅ All linting checks passed
  • ✅ Bootstrap setup with dependency caching
  • ✅ Environment standardized to .venv

bitshifterr and others added 24 commits June 19, 2025 10:18
Major improvements:
- ✅ Removed legacy setup.py, now using pyproject.toml
- ✅ Created comprehensive help system with `fab help`
- ✅ Dramatically simplified command structure:
  * setup.server (vs recipe-generic-server.setup-server)
  * db.psql.create-user (vs database.psql.db-psql-create-user)
  * security.secure-server (vs security.firewall.fw-secure-server)
- ✅ Organized database commands by type (db.psql.*, db.mysql.*)
- ✅ Fixed all linting issues (100-char lines, imports, code quality)
- ✅ Updated to use .venv virtual environment
- ✅ Added bootstrap.sh for automated setup
- ✅ Updated CLAUDE.md with modern patterns

Commands are now 50-70% shorter and much more intuitive\!

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
…hentication

This commit fixes critical issues with SSH key installation and sudo authentication,
enabling full automation of secure server deployments.

Major fixes:
- Fix SSH key installation order in recipe_generic_server.py
- Fix Fabric sudo password handling via INVOKE_SUDO_PASSWORD environment variable
- Fix nginx.py use_sudo parameter error in file transfer operations
- Add proper validation functions for user and SSH configuration
- Add connection verification with working sudo tests

Security improvements:
- Ensure SSH keys installed before disabling root login
- Reconnect as admin user (not auto user) after root disable
- Add passwordless sudo option with security warnings
- Validate configuration early in deployment process

New features:
- Environment variable sudo authentication: export INVOKE_SUDO_PASSWORD=password
- Comprehensive connection verification after user creation
- Enhanced configuration validation with proper error messages
- Updated documentation with secure workflow examples

The complete workflow now works:
1. fab -H root@host recipe.gen-install --cfg-file=config (sets up secure server)
2. export INVOKE_SUDO_PASSWORD=admin_password
3. fab -H admin@host:port web.nginx.install (automated sudo commands work)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Enhanced pattern matching in Context class to hide more noisy commands
- Added pg_createcluster and pg_dropcluster to quiet patterns
- Fixed f-string linting issues in psql.py and postfix.py
- Applied proper line length formatting to postfix.py
- All recipe success messages remain comprehensive and informative
- Tests passing: 12/12 ✅
- Linting: All critical checks passing ✅

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Tests and linting across Python versions
- Runs on push to main and PRs
- Uses test.sh and lint.sh scripts
- Bootstrap setup with dependency caching

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Runs on push to main, dev, and feat/* branches
- PRs target main and dev branches
- Ensures feature branch testing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Uses bootstrap.sh instead of manual pip install
- Ensures proper .venv setup for test.sh and lint.sh
- Matches local development workflow

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Creates .venv directly instead of using bootstrap.sh
- Avoids interactive prompts and OS-specific dependencies
- Ensures consistent environment across CI runners
- Compatible with Python 3.9-3.11 matrix testing

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Remove Python 3.9 from CI matrix (3.10, 3.11 only)
- Keep modern union syntax (Type | None) instead of Optional
- Aligns with modern Python type hinting standards
- Python 3.10+ required for union operator support

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@un33k un33k merged commit a4ddb24 into main Jun 26, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants