- Improve container state detection to handle different Docker API responses
- Check both string and hash format state responses
- Add proper error handling for container state queries
- Update test results with latest timing information
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Workflow Simplification:
- Consolidate 8 workflows into 1 comprehensive ci.yml workflow
- Delete redundant workflows: test.yml, build.yml, docker.yml, minimal.yml,
node-ruby.yml, shell-only.yml, simple.yml
- Keep shell-based approach for maximum Forgejo runner compatibility
- Update README.md to document simplified single-workflow design
Test Fix:
- Fix failing container_spec.rb test for missing state information
- Add missing json method mock to handle fallback scenario
- All 121 tests now passing
The single workflow provides:
- Test job: Install dependencies and run RSpec tests
- Build job: Build Docker image and push to Docker Hub
- Notify job: Report pipeline status
- Full compatibility with any Forgejo runner configuration
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace Sinatra run! calls with direct Puma::Server usage
- Use Rack-compatible approach to avoid Sinatra::Wrapper issues
- Remove problematic set method calls and run! method calls
- Both integrated and standalone health servers now use same Puma/Rack approach
- Remove outdated baktainer/logger require from main file
This should resolve the undefined method errors with Sinatra::Wrapper.
- Replace hardcoded timestamps with regex patterns in integration tests
- Use dynamic file discovery instead of exact filenames in unit tests
- Change timestamp pattern from specific values to \d{10} regex for 10-digit unix timestamps
- Update backup file assertions to use Dir.glob and pattern matching
- Ensure tests are robust across different execution environments and times
This resolves intermittent test failures caused by timestamp variations
between test runs and different execution contexts.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implement complete test suite with 63 examples (49 unit + 14 integration tests)
- Add RSpec, FactoryBot, WebMock, and SimpleCov testing dependencies
- Create mocked integration tests eliminating need for real Docker containers
- Fix SQLite method signature to accept login/password parameters
- Enhance container discovery to handle nil labels gracefully
- Add test coverage reporting and JUnit XML output for CI
- Update GitHub Actions workflow to run tests before Docker builds
- Add Ruby 3.3 setup with gem caching for faster CI execution
- Create CI test script and comprehensive testing documentation
- Ensure Docker builds only proceed when all tests pass
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>