Files
dcr/.github/workflows/dexoron-packages-index.yml

73 lines
2.5 KiB
YAML

name: Dexoron Packages Index
on:
workflow_run:
workflows: ["Release"] # Укажи точное имя твоего релизного воркфлоу
types:
- completed
jobs:
update-index:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
- name: Checkout DCR repository
uses: actions/checkout@v4
# --- СКАЧИВАНИЕ АРТЕФАКТОВ ИЗ РЕЛИЗА ---
- name: Download Arch package artifact
if: ${{ github.event_name == 'workflow_run' }}
uses: actions/download-artifact@v4
with:
name: arch-package
path: central-packages/archlinux/x86_64/
github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }}
- name: Download Debian package artifact
if: ${{ github.event_name == 'workflow_run' }}
uses: actions/download-artifact@v4
with:
name: debian-package
path: central-packages/debian/
github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }}
- name: Download RPM package artifact
if: ${{ github.event_name == 'workflow_run' }}
uses: actions/download-artifact@v4
with:
name: rpm-package
path: central-packages/rpm/x86_64/
github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }}
# --- КЛОНИРОВАНИЕ ИНДЕКСНОГО РЕПОЗИТОРИЯ ---
- name: Checkout Central Packages Repo
uses: actions/checkout@v4
with:
repository: dexoron/packages
token: ${{ secrets.PACKAGES_REPO_TOKEN }}
path: packages-repo
# --- ПЕРЕНОС И ИНДЕКСАЦИЯ ---
- name: Copy packages to repo
run: |
cp -r central-packages/* packages-repo/ || true
- name: Build Index
run: |
cd packages-repo
# Здесь находятся твои команды для генерации индексов (repo-add, dpkg-scanpackages, createrepo и т.д.)
echo "Run indexing scripts here"
# --- КОММИТ И ПУШ ---
- name: Commit and push changes
run: |
cd packages-repo
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add .
git commit -m "chore: update packages index" || echo "No changes to commit"
git push