Todos los paquetes de código abierto
InfraestructuraYAML

.github

Archivos de comunidad compartidos y siete workflows reutilizables de GitHub Actions para los repositorios de muhittincamdali.

0EstrellasÚltima versión: v1.1.0Actualizado: 14 de octubre de 2026
Plataformas:GitHub Actions

Licencia: MIT

GitHub aplica la guía de contribución, el código de conducta, la política de seguridad, la guía de soporte, los formularios de issue y la plantilla de pull request de este repositorio a todos los repositorios que no tienen una copia propia. Junto a ellos hay siete workflows reutilizables que otros repositorios invocan con workflow_call: build y test de paquetes Swift con xcodebuild opcional por plataforma Apple, DocC a GitHub Pages, Flutter, Node.js, comprobación de enlaces con lychee, una comprobación de traducción del README y un escaneo de higiene para archivos y mensajes de commit. Cada action está fijada a un SHA de commit completo, cada job solo pide los permisos que necesita, y quienes lo invocan fijan los workflows a un commit etiquetado que Dependabot mantiene actualizado.

Características

  • swift-ci: swift build --build-tests y swift test, además de una matriz opcional de xcodebuild para iOS, macOS, Mac Catalyst, tvOS, watchOS y visionOS
  • docc-pages: compila DocC con xcodebuild docbuild, combina varios módulos en un solo sitio y lo despliega en GitHub Pages
  • flutter-ci y node-ci: format, analyze y test para Flutter; instalación desde el lockfile con npm o pnpm y los scripts de lint, typecheck, test y build que existan, en varias versiones de Node.js
  • links: comprobación de enlaces y anclas #anchor con lychee, con una caché de un día y una configuración predeterminada compartida
  • readme-i18n-sync: cada README.<lang>.md indica el blob de git del README en inglés que traduce; los bloques de código y las URL deben coincidir mientras afirme traducir la versión actual
  • hygiene: rechaza nombres de herramientas, superlativos no verificables y eslóganes retirados en los archivos rastreados y en los commits que se suben, con una lista de permitidos por repositorio
  • Actions fijadas a SHA de commit completos, permisos por job, persist-credentials: false y grupos de concurrencia que cancelan ejecuciones obsoletas de pull request
  • El repositorio se comprueba a sí mismo con actionlint (con shellcheck), hygiene y links

Inicio rápido

yaml
1name: CI
2 
3on:
4 push:
5 branches: [main]
6 pull_request:
7 
8permissions: {}
9 
10jobs:
11 swift:
12 permissions:
13 contents: read
14 uses: muhittincamdali/.github/.github/workflows/swift-ci.yml@<sha> # v1
15 with:
16 platforms: '["iOS", "macOS", "tvOS", "watchOS", "visionOS"]'
17 
18 hygiene:
19 permissions:
20 contents: read
21 uses: muhittincamdali/.github/.github/workflows/hygiene.yml@<sha> # v1

Instalación

Call a workflow from a repository

yaml
1jobs:
2 swift:
3 permissions:
4 contents: read
5 uses: muhittincamdali/.github/.github/workflows/swift-ci.yml@<sha> # v1
6 with:
7 platforms: '["iOS", "macOS", "tvOS", "watchOS", "visionOS"]'

Cronología

  1. Repositorio abierto con los archivos de comunidad compartidos y seis workflows reutilizables (swift-ci, docc-pages, flutter-ci, node-ci, links, hygiene), luego la comprobación de traducción del README; etiquetado v1 y v1.0.0

  2. v1.1.0: docc-pages recibe la entrada opcional skip-synthesized-members, para que un paquete con muchas vistas SwiftUI quepa en GitHub Pages

Enlaces

Artículo relacionado

Leer el artículo