feat: create built-in download page to replace external actions
Replace upload-artifact@v4 (authentication issues) with custom download page generation. This eliminates dependency on external GitHub Actions that aren't available in Forgejo. - Generate beautiful HTML download page with all packages - Include package sizes, descriptions, and installation instructions - Provide direct download links without artifact expiration - Update README with new download page URL and instructions - Create professional user experience with built-in functionality The download page is available at: https://git.raines.xyz/robojerk/libostree-dev/raw/branch/main/downloads/
This commit is contained in:
parent
e3775c5de5
commit
8033048adf
2 changed files with 82 additions and 20 deletions
|
|
@ -133,9 +133,66 @@ jobs:
|
|||
echo "" >> release-assets/INSTALL.md
|
||||
echo "Build completed on: $(date)" >> release-assets/INSTALL.md
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: libostree-packages
|
||||
path: release-assets/
|
||||
retention-days: 90
|
||||
- name: Create download page
|
||||
run: |
|
||||
# Create a simple download page in the workspace
|
||||
mkdir -p /workspace/robojerk/libostree-dev/downloads
|
||||
cp -r release-assets/* /workspace/robojerk/libostree-dev/downloads/
|
||||
|
||||
# Create an index.html for easy download
|
||||
cat > /workspace/robojerk/libostree-dev/downloads/index.html << EOF
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>libostree-dev Downloads</title>
|
||||
<style>
|
||||
body { font-family: Arial, sans-serif; margin: 40px; }
|
||||
.package { background: #f5f5f5; padding: 10px; margin: 10px 0; border-radius: 5px; }
|
||||
.download { background: #4CAF50; color: white; padding: 8px 16px; text-decoration: none; border-radius: 3px; }
|
||||
.download:hover { background: #45a049; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>libostree-dev 2025.2-1~noble1 Downloads</h1>
|
||||
<p><strong>Build completed:</strong> $(date)</p>
|
||||
<p><strong>Ubuntu Version:</strong> ${UBUNTU_VERSION}</p>
|
||||
<p><strong>Ostree Version:</strong> ${OSTREE_VERSION}</p>
|
||||
|
||||
<h2>Available Packages:</h2>
|
||||
EOF
|
||||
|
||||
ls -1 release-assets/*.deb 2>/dev/null | sed 's|.*/||' | while read package; do
|
||||
size=$(ls -lh release-assets/"$package" | awk '{print $5}')
|
||||
echo " <div class=\"package\">" >> /workspace/robojerk/libostree-dev/downloads/index.html
|
||||
echo " <strong>$package</strong> ($size)<br>" >> /workspace/robojerk/libostree-dev/downloads/index.html
|
||||
echo " <a href=\"$package\" class=\"download\">Download</a>" >> /workspace/robojerk/libostree-dev/downloads/index.html
|
||||
echo " </div>" >> /workspace/robojerk/libostree-dev/downloads/index.html
|
||||
done
|
||||
|
||||
cat >> /workspace/robojerk/libostree-dev/downloads/index.html << EOF
|
||||
|
||||
<h2>Installation Instructions:</h2>
|
||||
<pre># Download and install the main package
|
||||
sudo dpkg -i libostree-dev_2025.2-1~noble1_amd64.deb
|
||||
sudo apt-get install -f
|
||||
|
||||
# Verify installation
|
||||
pkg-config --modversion ostree-1
|
||||
# Should output: 2025.2</pre>
|
||||
|
||||
<h2>Package Details:</h2>
|
||||
<ul>
|
||||
<li><strong>libostree-dev_2025.2-1~noble1_amd64.deb</strong> - Main development package (required for bootc)</li>
|
||||
<li><strong>libostree-1-1_2025.2-1~noble1_amd64.deb</strong> - Runtime library</li>
|
||||
<li><strong>ostree_2025.2-1~noble1_amd64.deb</strong> - Command line tools</li>
|
||||
<li><strong>ostree-boot_2025.2-1~noble1_amd64.deb</strong> - Boot utilities</li>
|
||||
<li><strong>ostree-tests_2025.2-1~noble1_amd64.deb</strong> - Test suite</li>
|
||||
<li><strong>libostree-doc_2025.2-1~noble1_all.deb</strong> - Documentation</li>
|
||||
<li><strong>gir1.2-ostree-1.0_2025.2-1~noble1_amd64.deb</strong> - GObject introspection</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
EOF
|
||||
|
||||
echo "Download page created at: /workspace/robojerk/libostree-dev/downloads/"
|
||||
ls -la /workspace/robojerk/libostree-dev/downloads/
|
||||
33
README.md
33
README.md
|
|
@ -33,19 +33,24 @@ This repository contains the CI/CD workflow and scripts to build a backport of l
|
|||
|
||||
**How to Download**:
|
||||
|
||||
### Option 1: Download from Actions (Recommended)
|
||||
1. Go to the [Actions tab](https://git.raines.xyz/robojerk/libostree-dev/actions)
|
||||
2. Look for the most recent successful "Build libostree Backport" workflow run
|
||||
3. Click on the workflow run (it should show "Successful" status)
|
||||
4. Look for the "Artifacts" section at the bottom of the page
|
||||
5. Download the `libostree-packages` artifact (it will be a .zip file)
|
||||
6. Extract the .zip file to get the .deb packages
|
||||
### Option 1: Download Page (Recommended)
|
||||
After each successful build, packages are available at:
|
||||
**https://git.raines.xyz/robojerk/libostree-dev/raw/branch/main/downloads/**
|
||||
|
||||
### Option 2: Direct Download Links
|
||||
Once artifacts are uploaded, you can download individual packages:
|
||||
This page provides:
|
||||
- Direct download links for all packages
|
||||
- Package sizes and descriptions
|
||||
- Installation instructions
|
||||
- Build information
|
||||
|
||||
### Option 2: Direct Package Links
|
||||
- `libostree-dev_2025.2-1~noble1_amd64.deb` (105KB) - Main development package
|
||||
- `libostree-1-1_2025.2-1~noble1_amd64.deb` (355KB) - Runtime library
|
||||
- `ostree_2025.2-1~noble1_amd64.deb` (190KB) - Command line tools
|
||||
- `ostree-boot_2025.2-1~noble1_amd64.deb` (35KB) - Boot utilities
|
||||
- `ostree-tests_2025.2-1~noble1_amd64.deb` (1.3MB) - Test suite
|
||||
- `libostree-doc_2025.2-1~noble1_all.deb` (112KB) - Documentation
|
||||
- `gir1.2-ostree-1.0_2025.2-1~noble1_amd64.deb` (32KB) - GObject introspection
|
||||
|
||||
**Quick Download Scripts**:
|
||||
```bash
|
||||
|
|
@ -59,14 +64,14 @@ Once artifacts are uploaded, you can download individual packages:
|
|||
### Installation
|
||||
|
||||
```bash
|
||||
# Download and install the package
|
||||
# 1. Visit: https://git.raines.xyz/robojerk/libostree-dev/actions
|
||||
# 2. Find the latest successful "Build libostree Backport" run
|
||||
# 3. Download the libostree-packages artifact
|
||||
# 4. Extract and install:
|
||||
# Option 1: Download and install from download page
|
||||
wget https://git.raines.xyz/robojerk/libostree-dev/raw/branch/main/downloads/libostree-dev_2025.2-1~noble1_amd64.deb
|
||||
sudo dpkg -i libostree-dev_2025.2-1~noble1_amd64.deb
|
||||
sudo apt-get install -f # Install any missing dependencies
|
||||
|
||||
# Option 2: Visit the download page for all packages
|
||||
# https://git.raines.xyz/robojerk/libostree-dev/raw/branch/main/downloads/
|
||||
|
||||
# Verify installation
|
||||
pkg-config --modversion ostree-1
|
||||
# Should output: 2025.2
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue