Skip to content

Conversation

@RonaldRonnie
Copy link
Collaborator

Features Added:

  • Automated GitHub Actions workflow for PR-based beta releases
  • Docker-based deployment system with one-click testing
  • Web interface for easy beta deployment and management
  • REST API endpoints for beta container management
  • Shareable link generation for easy distribution
  • Comprehensive testing documentation and guides

Technical Implementation:

  • GitHub Actions workflow (.github/workflows/beta-release.yml)
  • Beta deployment API (app/api/beta_deployment.py)
  • Web deployment interface (frontend/beta-deploy.html)
  • Deployment scripts (scripts/deploy-beta.sh, scripts/generate-beta-link.py)
  • Issue templates for structured feedback collection
  • Complete documentation (BETA_SETUP.md, BETA_TESTING.md)

Benefits:

  • Zero installation required for testers
  • Instant access to latest changes via PR comments
  • Multiple testing methods (Docker, web interface, live URLs)
  • Automated cleanup when PRs are closed
  • Professional presentation with branded interface
  • Structured feedback collection system

Configuration:

  • Updated app.py to include beta deployment router
  • Added CORS support for beta deployment endpoints
  • Integrated with existing FastAPI application structure

This system enables easy remote testing without requiring to install dependencies or set up the development environment locally.

Closes: #37

✨ Features Added:
- Automated GitHub Actions workflow for PR-based beta releases
- Docker-based deployment system with one-click testing
- Web interface for easy beta deployment and management
- REST API endpoints for beta container management
- Shareable link generation for easy distribution
- Comprehensive testing documentation and guides

🛠️ Technical Implementation:
- GitHub Actions workflow (.github/workflows/beta-release.yml)
- Beta deployment API (app/api/beta_deployment.py)
- Web deployment interface (frontend/beta-deploy.html)
- Deployment scripts (scripts/deploy-beta.sh, scripts/generate-beta-link.py)
- Issue templates for structured feedback collection
- Complete documentation (BETA_SETUP.md, BETA_TESTING.md)

🎯 Benefits:
- Zero installation required for testers
- Instant access to latest changes via PR comments
- Multiple testing methods (Docker, web interface, live URLs)
- Automated cleanup when PRs are closed
- Professional presentation with branded interface
- Structured feedback collection system

🔧 Configuration:
- Updated app.py to include beta deployment router
- Added CORS support for beta deployment endpoints
- Integrated with existing FastAPI application structure

This system enables easy remote testing for US-based team members
without requiring them to install dependencies or set up the
development environment locally.
@RonaldRonnie RonaldRonnie self-assigned this Sep 15, 2025
RonaldRonnie and others added 6 commits September 15, 2025 13:53
- Changed 'type=sha,prefix={{branch}}-' to 'type=sha,prefix=sha-'
- This prevents invalid tag format like 'ghcr.io/waldronlab/bioanalyzer:-b475833'
- The branch name was causing a hyphen at the start of the tag, which is invalid Docker format
…ensitive information

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
…as HTML

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
RonaldRonnie and others added 3 commits September 15, 2025 17:24
…as HTML

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
- Fixed merge conflict markers that were causing syntax errors
- Added proper handling for multiple Docker tags (extract first tag only)
- Added error handling with try-catch block for better debugging
- Removed emojis to avoid potential character encoding issues
- Added debug logging to help troubleshoot future issues

The workflow should now run successfully without JavaScript syntax errors.
- Use JSON output from metadata action instead of multi-line tags string
- Parse tags from JSON to get clean first tag without newlines
- Use full image tag directly instead of constructing from registry/image
- This fixes the SyntaxError caused by multi-line tag string in JavaScript

The workflow should now handle Docker tags correctly without syntax errors.
@github-actions
Copy link

github-actions bot commented Sep 15, 2025

Beta Release Ready for Testing!\n\nPR #38 has been automatically deployed for testing.\n\n### Test Your Changes\nLive Demo: https://bioanalyzer-beta-38.vercel.app\n\n### Docker Image\nbash\ndocker pull ghcr.io/waldronlab/bioanalyzer:pr-38\n\n\n### Quick Local Test\nbash\n# Pull and run the beta image\ndocker run -d \\\n --name bioanalyzer-beta-38 \\\n -p 8000:8000 \\\n -e GEMINI_API_KEY=your_api_key \\\n -e NCBI_API_KEY=your_ncbi_key \\\n -e EMAIL=your_email \\\n ghcr.io/waldronlab/bioanalyzer:pr-38\n\n\n### Testing Checklist\n- [ ] Test paper analysis functionality\n- [ ] Verify API endpoints work correctly\n- [ ] Check frontend UI responsiveness\n- [ ] Test error handling\n- [ ] Verify data extraction accuracy\n\n### Changes in this PR\nCommit: 212a239\nBranch: beta-release\n\n---\nThis beta release will be automatically updated when you push new commits to this PR.\nThe deployment will be cleaned up when the PR is closed.

- Replaced template literals with properly escaped string concatenation
- Used \n for newlines and \\ for backslashes in YAML
- Removed problematic backticks and square brackets that caused syntax errors
- This should resolve the SyntaxError: Invalid or unexpected token

The workflow should now run successfully without JavaScript syntax errors.
- Add deployments: write permission for both jobs
- Create proper GitHub deployment with deployment ID
- Link deployment status to actual deployment ID instead of context.payload
- Fix code formatting and indentation
- Remove unnecessary comments and clean up spacing

This should resolve all workflow issues and enable proper deployment tracking.
@RonaldRonnie RonaldRonnie merged commit 9d3522c into master Sep 15, 2025
7 checks passed
@RonaldRonnie RonaldRonnie deleted the beta-release branch September 15, 2025 15:25
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.

Beta Release

2 participants