Skip to content

feat: centralize info.xml lint workflow - #22

Merged
vitormattos merged 5 commits into
mainfrom
feat/reusable-lint-info-xml
Sep 20, 2026
Merged

vitormattos merged 5 commits into
mainfrom
feat/reusable-lint-info-xml

Conversation

@vitormattos

@vitormattos vitormattos commented Sep 20, 2026 •

Copy link
Copy Markdown
Member

Summary

Start #15 with lint-info-xml using the adoption model from #16.

Instead of copying the complete workflow into every consumer, this PR splits the concern into:

  • a reusable workflow in .github/workflows/lint-info-xml.yml;
  • a small organization template in workflow-templates/lint-info-xml.yml that owns the pull_request event and calls the reusable implementation;
  • catalog metadata for GitHub's Actions → New workflow experience.

Improvements over the upstream Nextcloud template

The reusable implementation keeps the useful behavior from Nextcloud while making several LibreCode adaptations:

  • use public ubuntu-latest instead of ubuntu-latest-low;
  • use actions/checkout v7.0.1 with persisted credentials disabled;
  • keep sparse checkout limited to appinfo/;
  • pin the Nextcloud App Store schema to immutable commit
    c8fe8dcb388d2ed7b566e982fd64aa38463ba80a
    instead of downloading from mutable master;
  • keep ChristophWurst/xmllint-action pinned to a full commit SHA.

Distribution model

The consumer-owned workflow stays intentionally small:

on: pull_request

jobs:
  lint-info-xml:
    uses: LibreCodeCoop/github-workflows/.github/workflows/lint-info-xml.yml@c5f578281fa7d270b839866ebc07047287ff50d8

This preserves repository-level event ownership while keeping implementation centralized. The caller is pinned to the exact repository commit that introduced the reusable workflow; updates therefore remain reviewable through the catalog/consumer synchronization path instead of silently following a mutable branch.

After merge, the catalog publisher can publish the caller template and LibreCodeCoop/extract can be migrated from its current copied Nextcloud workflow to the thin caller.

@vitormattos
vitormattos merged commit d4260ca into main Sep 20, 2026
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant