name: Update README with Download Links

on:
  workflow_run:
    workflows: ["Build apt-ostree Package"]
    types: [completed]
    branches: [main, master]

jobs:
  update-readme:
    name: Update README with Download Links
    runs-on: ubuntu-latest
    container:
      image: ubuntu:latest
    if: ${{ github.event.workflow_run.conclusion == 'success' }}
    steps:
      - name: Setup environment
        run: |
          apt update -y
          apt install -y git curl

      - name: Checkout repository manually
        run: |
          # Clone the repository manually instead of using actions/checkout
          git clone https://git.raines.xyz/robojerk/apt-ostree.git /tmp/apt-ostree
          cp -r /tmp/apt-ostree/* .
          cp -r /tmp/apt-ostree/.* . 2>/dev/null || true

      - name: Update README with download links
        run: |
          # Get current date and workflow run ID
          BUILD_DATE=$(date '+%Y-%m-%d %H:%M:%S UTC')
          WORKFLOW_RUN_ID=${{ github.event.workflow_run.id }}
          
          echo "Updating README with workflow run ID: $WORKFLOW_RUN_ID"
          
          # Create the download section content
          cat > download-section.md << EOF
          
          ## 📦 Download Latest Build
          
          **Last Built**: $BUILD_DATE  
          **Version**: 0.1.0-1  
          **Target**: Ubuntu Noble (24.04 LTS)
          **Build ID**: [$WORKFLOW_RUN_ID](https://git.raines.xyz/robojerk/apt-ostree/actions/runs/$WORKFLOW_RUN_ID)
          
          ### Download Links
          
          - **apt-ostree_0.1.0-1_amd64.deb** - [Download from Build $WORKFLOW_RUN_ID](https://git.raines.xyz/robojerk/apt-ostree/actions/runs/$WORKFLOW_RUN_ID)
          - **apt-ostree-dbgsym_0.1.0-1_amd64.ddeb** - [Download from Build $WORKFLOW_RUN_ID](https://git.raines.xyz/robojerk/apt-ostree/actions/runs/$WORKFLOW_RUN_ID)
          
          ### Quick Installation
          
          \`\`\`bash
          # Download and install the package
          # Visit: https://git.raines.xyz/robojerk/apt-ostree/actions/runs/$WORKFLOW_RUN_ID
          # Download the .deb files and run:
          sudo dpkg -i apt-ostree_0.1.0-1_amd64.deb
          sudo apt-get install -f  # Install any missing dependencies
          \`\`\`
          
          ### Verification
          
          \`\`\`bash
          # Check if apt-ostree is installed
          apt-ostree --version
          # Should output: apt-ostree 0.1.0
          \`\`\`
          
          ### Usage Example
          
          \`\`\`bash
          # Check status
          apt-ostree status
          
          # List packages
          apt-ostree list
          
          # Search packages
          apt-ostree search <package-name>
          
          # Build OCI image
          apt-ostree compose build-chunked-oci <treefile.yaml>
          \`\`\`
          
          ---
          
          EOF
          
          # Replace the existing download section in README.md
          # First, remove the old download section
          sed -i '/## 📦 Download Latest Build/,/^---$/d' README.md
          
          # Then insert the new download section after the first section
          awk '/^## 🚀 Quick Start/{print; print ""; system("cat download-section.md"); next} 1' README.md > README.md.tmp
          mv README.md.tmp README.md
          
          echo "README updated with download links for workflow run $WORKFLOW_RUN_ID"

      - name: Commit and push changes
        run: |
          # Configure git
          git config --global user.email "ci@raines.xyz"
          git config --global user.name "CI Bot"
          
          # Add and commit changes
          git add README.md
          git commit -m "Update README with download links from workflow run ${{ github.event.workflow_run.id }}"
          
          # Push changes
          git push origin main 