Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 12 additions & 11 deletions .github/workflows/build-rootfs-releases.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Build and Release Droidspaces RootFS

on:
push:
pull_request:
branches:
- main
workflow_dispatch:
Expand All @@ -10,8 +10,9 @@ on:
description: 'Only update rootfs.json (skip build & release)'
type: boolean
default: false
schedule:
- cron: '0 0 * * 0'

env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true

jobs:
setup:
Expand All @@ -23,7 +24,7 @@ jobs:
build_date: ${{ steps.prep.outputs.build_date }}
steps:
- name: Checkout Repository
uses: actions/checkout@v4
uses: actions/checkout@v7

- name: Find Build Templates
id: find-templates
Expand Down Expand Up @@ -52,7 +53,7 @@ jobs:
template: ${{ fromJson(needs.setup.outputs.templates) }}
steps:
- name: Checkout Repository
uses: actions/checkout@v4
uses: actions/checkout@v7

- name: Build RootFS (${{ matrix.template }})
run: |
Expand All @@ -61,7 +62,7 @@ jobs:
./build_rootfs-native.sh -i "${{ matrix.template }}.Dockerfile" -v "${{ needs.setup.outputs.build_id }}"

- name: Upload Build Artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.template }}-rootfs
path: "*.tar.xz"
Expand Down Expand Up @@ -97,7 +98,7 @@ jobs:
cp "$TARBALL" "$FINAL"

- name: Upload Build Artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.name }}-rootfs
path: "*.tar.xz"
Expand All @@ -111,16 +112,16 @@ jobs:
contents: write
steps:
- name: Checkout Repository
uses: actions/checkout@v4
uses: actions/checkout@v7

- name: Download All Artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@v8
with:
pattern: "*-rootfs"
merge-multiple: true

- name: Create Unified Release
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v3
with:
tag_name: ${{ needs.setup.outputs.build_id }}
name: "Droidspaces RootFS ${{ needs.setup.outputs.build_id }}"
Expand Down Expand Up @@ -162,7 +163,7 @@ jobs:
contents: write
steps:
- name: Checkout Repository
uses: actions/checkout@v4
uses: actions/checkout@v7

- name: Update rootfs.json Registry
run: python3 scripts/update_rootfs_json.py .
Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/build-single-rootfs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Build Single RootFS

on:
workflow_dispatch:
inputs:
template:
description: '请选择要构建的模板'
required: true
type: choice
default: 'Ubuntu-24.04-Minimal'
options:
- Alpine-Minimal
- Alpine-base
- Arch-Minimal-Kernel-5.10-and-up
- Arch-base-Kernel-5.10-and-up
- AzureLinux-3.0-Minimal
- Debian-13-Minimal
- Debian-13-XFCE
- Debian-13-base
- OpenWrt-24.10-Minimal
- Ubuntu-22.04-Minimal
- Ubuntu-22.04-base
- Ubuntu-24.04-Minimal
- Ubuntu-24.04-XFCE
- Ubuntu-24.04-base

env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true

jobs:
build:
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout Repository
uses: actions/checkout@v7

- name: Build RootFS (${{ inputs.template }})
run: |
chmod +x build_rootfs-native.sh
./build_rootfs-native.sh -i "${{ inputs.template }}.Dockerfile" -v "manual-$(date +%Y%m%d-%H%M%S)"

- name: Upload Build Artifact
uses: actions/upload-artifact@v7
with:
name: ${{ inputs.template }}-rootfs
path: "*.tar.xz"
retention-days: 7
7 changes: 4 additions & 3 deletions .github/workflows/cleanup-old-assets.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
name: Cleanup Old Releases, Tags, and Workflow Runs

on:
schedule:
- cron: '0 0 * * 0'
workflow_dispatch:

env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true

jobs:
cleanup:
runs-on: ubuntu-latest
Expand All @@ -13,7 +14,7 @@ jobs:
actions: write
steps:
- name: Checkout Repository
uses: actions/checkout@v4
uses: actions/checkout@v7
with:
fetch-depth: 0 # Fetch all history and tags so git for-each-ref works correctly

Expand Down
Loading