48 lines
1.5 KiB
YAML
48 lines
1.5 KiB
YAML
name: Vendoo UX Platform Contract
|
|
|
|
on:
|
|
push:
|
|
branches: [main, develop, 'feature/**', 'release/**', 'hotfix/**']
|
|
pull_request:
|
|
branches: [main, develop]
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: vendoo-ux-platform-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
ux-platform-contract:
|
|
name: UX Platform (${{ matrix.os }})
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, windows-latest]
|
|
runs-on: ${{ matrix.os }}
|
|
timeout-minutes: 10
|
|
steps:
|
|
- name: Repository auschecken
|
|
uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Runner-Node und Plattform dokumentieren
|
|
run: node -e "const fs=require('fs'); fs.mkdirSync('artifacts',{recursive:true}); const report='Platform: '+process.platform+'\nNode: '+process.version+'\nArchitecture: '+process.arch+'\n'; fs.writeFileSync('artifacts/ux-platform-preflight.log',report); process.stdout.write(report);"
|
|
|
|
- name: Navigation API und Safe Actions prüfen
|
|
run: node tools/run-ux-platform-gates.mjs
|
|
|
|
- name: UX-Plattformdiagnose sichern
|
|
if: always()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: ux-platform-${{ matrix.os }}-${{ github.event.pull_request.head.sha || github.sha }}
|
|
path: |
|
|
artifacts/ux-platform-preflight.log
|
|
artifacts/ux-platform-gates.log
|
|
if-no-files-found: warn
|
|
retention-days: 14
|