Skip to content

Test Ubuntu 24.04 Compatibility #1

Test Ubuntu 24.04 Compatibility

Test Ubuntu 24.04 Compatibility #1

name: Test Ubuntu 24.04 Compatibility
on:
# Manual trigger only for testing
workflow_dispatch:
# Run weekly to catch any system-level changes
schedule:
- cron: "0 0 * * 0" # Every Sunday at midnight UTC
jobs:
test-ubuntu24:
name: Test on Ubuntu 24.04
runs-on: ubuntu-24.04
env:
TZ: "America/New_York"
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Setup Bun
uses: oven-sh/setup-bun@v1
- name: System Information
run: |
echo "Ubuntu Version:"
cat /etc/os-release
echo -e "\nPython Version:"
python --version
echo -e "\nNode Version:"
node --version
echo -e "\nNPM Version:"
npm --version
echo -e "\nInstalled Packages:"
dpkg -l | grep -E 'python|node|npm'
- name: Install Python dependencies
id: pip-install
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Install Node dependencies
id: bun-install
run: bun install --frozen-lockfile
- name: Test Data Processing
id: data-processing
env:
GH_TOKEN: ${{ secrets.GH_ACCESS_TOKEN }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
# Create test directories
mkdir -p data/test/daily
# Test GitHub API interaction
bash scripts/fetch_github.sh elizaos eliza --type prs --days 1 > data/test/daily/prs.json
# Test data processing
python scripts/combine_raw.py -p data/test/daily/prs.json -i data/test/daily/prs.json -c data/test/daily/prs.json -o data/test/daily/combined.json
python scripts/calculate_scores.py data/test/daily/combined.json data/test/daily/scored.json
- name: Test Site Generation
id: site-generation
run: bun run build
env:
NEXT_TELEMETRY_DISABLED: 1
- name: Report Test Results
if: always()
run: |
echo "Test Results Summary:"
echo "====================="
echo "Python Dependencies: ${{ steps.pip-install.outcome }}"
echo "Node Dependencies: ${{ steps.bun-install.outcome }}"
echo "Data Processing: ${{ steps.data-processing.outcome }}"
echo "Site Generation: ${{ steps.site-generation.outcome }}"
- name: Upload Test Artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: test-outputs
path: |
data/test/
.nuxt/
dist/
retention-days: 7