bmc-tpl-code-all-around/.gitea/workflows/nightly.yml

47 lines
1.5 KiB
YAML

name: Nightly Build
on:
schedule:
# Läuft jeden Tag um 02:00 Uhr nachts
- cron: '0 2 * * *'
# Erlaubt es dir, den Build im Gitea-Webinterface auch manuell per Button zu starten
workflow_dispatch:
jobs:
build-nightly:
runs-on: ubuntu-latest # Pass das an das Label deines Gitea-Runners an
steps:
- name: Checkout Code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '24' # Passend zu deiner package.json Umgebung
- name: Install System Dependencies for Headless Tests
run: |
sudo apt-get update
sudo apt-get install -y xvfb libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxi6 libxtst6 libnss3 libcups2 libxss1 libxrandr2 libasound2 libatk1.0-0 libatk-bridge2.0-0 libgtk-3-0
- name: Install NPM Packages
run: npm ci
- name: Inject Nightly Version
run: |
NIGHTLY_DATE=$(date +%Y%m%d)
sed -i "s/\"version\": \"\(.*\)\"/\"version\": \"\1-nightly-$NIGHTLY_DATE\"/" package.json
echo "Building Nightly Version for $NIGHTLY_DATE..."
- name: Package & Test (with xvfb)
# xvfb-run fängt die GUI-Aufrufe der VS Code Test-Engine ab
run: xvfb-run -a npm run package
- name: Upload VSIX Artifact
uses: actions/upload-artifact@v4
with:
name: bmc-tpl-code-all-around-nightly
path: '*.vsix'
retention-days: 14