mirror of
https://github.com/nextcloud/server.git
synced 2026-10-23 11:15:48 +02:00
86 lines
2.5 KiB
YAML
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}
|