Files
nextcloud-server-mirror/.github/workflows/update-node-dist.yml
2026-09-16 20:03:26 +02:00

86 lines
2.5 KiB
YAML

# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-License-Identifier: AGPL-3.0-or-later
name: Update Node dist
on:
workflow_dispatch:
push:
branches:
# implemented since 35, once branched off, add your stable branch here
- master
- stable35
permissions:
contents: write
concurrency:
group: update-node-dist-${{ github.head_ref || github.ref || github.run_id }}
jobs:
update-node-dist:
runs-on: ubuntu-latest-assets
environment: update-node-dist
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
# Needed to allow force push later
persist-credentials: true
token: ${{ secrets.BOT_GITHUB_TOKEN }}
- name: Read package.json node and npm engines version
uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v2.1
id: versions
with:
fallbackNode: '^20'
fallbackNpm: '^9'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
- name: Set up npm ${{ steps.versions.outputs.npmVersion }}
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}"
- name: Setup git
run: |
git config --local user.email "nextcloud-command@users.noreply.github.com"
git config --local user.name "nextcloud-command"
- name: Get last commit message if it was not a recompile
id: last_commit
run: |
{
echo 'MESSAGE<<EOF'
git log -1 --pretty=%s | grep -v '^chore(assets): recompile assets$' || test $? -eq 1
echo 'EOF'
} >> $GITHUB_OUTPUT
- name: Install dependencies & build
if: steps.last_commit.outputs.MESSAGE != ''
env:
CYPRESS_INSTALL_BINARY: 0
run: |
npm ci
npm run build --if-present
- name: Check webpack build changes
id: changes
continue-on-error: true
run: |
{
echo 'CHANGED<<EOF'
git status --porcelain
echo 'EOF'
} >> "$GITHUB_OUTPUT"
- name: Add and commit
if: steps.changes.outputs.CHANGED != ''
run: |
git add --force dist/ core/css/
git commit --signoff -m 'chore(assets): recompile assets'
git push origin ${GITHUB_HEAD_REF}