-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* ci: update app build workflow * fix reuse linter
- Loading branch information
Showing
2 changed files
with
84 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -16,32 +16,94 @@ jobs: | |
build: | ||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
matrix: | ||
node-version: [16.x] | ||
|
||
steps: | ||
- uses: actions/[email protected] | ||
- name: Use Node.js ${{ matrix.node-version }} | ||
uses: actions/[email protected] | ||
with: | ||
node-version: ${{ matrix.node-version }} | ||
- name: Set up npm7 | ||
run: npm i -g npm@7 | ||
- name: Setup PHP | ||
uses: shivammathur/[email protected] | ||
with: | ||
php-version: '7.4' | ||
tools: composer | ||
- name: install dependencies | ||
- name: Set app env | ||
run: | | ||
# Split and keep last | ||
echo "APP_NAME=${{ vars.APP_ID }}" >> $GITHUB_ENV | ||
echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV | ||
- name: Checkout | ||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | ||
with: | ||
path: ${{ env.APP_NAME }} | ||
|
||
- name: Get appinfo data | ||
id: appinfo | ||
uses: skjnldsv/xpath-action@7e6a7c379d0e9abc8acaef43df403ab4fc4f770c # master | ||
with: | ||
filename: ${{ env.APP_NAME }}/appinfo/info.xml | ||
expression: "//info//dependencies//nextcloud/@min-version" | ||
|
||
- name: Read package.json node and npm engines version | ||
uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1 # v2.2 | ||
id: versions | ||
# Continue if no package.json | ||
continue-on-error: true | ||
with: | ||
path: ${{ env.APP_NAME }} | ||
fallbackNode: "^20" | ||
fallbackNpm: "^9" | ||
|
||
- name: Set up node ${{ steps.versions.outputs.nodeVersion }} | ||
# Skip if no package.json | ||
if: ${{ steps.versions.outputs.nodeVersion }} | ||
uses: actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8 # v3 | ||
with: | ||
node-version: ${{ steps.versions.outputs.nodeVersion }} | ||
|
||
- name: Set up npm ${{ steps.versions.outputs.npmVersion }} | ||
# Skip if no package.json | ||
if: ${{ steps.versions.outputs.npmVersion }} | ||
run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}" | ||
|
||
- name: Set up php ${{ env.PHP_VERSION }} | ||
uses: shivammathur/setup-php@a4e22b60bbb9c1021113f2860347b0759f66fe5d # v2 | ||
with: | ||
php-version: ${{ env.PHP_VERSION }} | ||
coverage: none | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
- name: Check composer.json | ||
id: check_composer | ||
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v2 | ||
with: | ||
files: "${{ env.APP_NAME }}/composer.json" | ||
|
||
- name: Install composer dependencies | ||
if: steps.check_composer.outputs.files_exists == 'true' | ||
run: | | ||
cd ${{ env.APP_NAME }} | ||
composer install --no-dev | ||
- name: Build ${{ env.APP_NAME }} | ||
# Skip if no package.json | ||
if: ${{ steps.versions.outputs.nodeVersion }} | ||
env: | ||
CYPRESS_INSTALL_BINARY: 0 | ||
run: | | ||
cd ${{ env.APP_NAME }} | ||
npm ci | ||
npm run build | ||
- name: Check Krankerl config | ||
id: krankerl | ||
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v2 | ||
with: | ||
files: ${{ env.APP_NAME }}/krankerl.toml | ||
|
||
- name: Install Krankerl | ||
if: steps.krankerl.outputs.files_exists == 'true' | ||
run: | | ||
wget https://github.com/ChristophWurst/krankerl/releases/download/v0.14.0/krankerl_0.14.0_amd64.deb | ||
sudo dpkg -i krankerl_0.14.0_amd64.deb | ||
- name: package | ||
- name: Package ${{ env.APP_NAME }} ${{ env.APP_VERSION }} with krankerl | ||
if: steps.krankerl.outputs.files_exists == 'true' | ||
run: | | ||
uname -a | ||
RUST_BACKTRACE=1 krankerl --version | ||
RUST_BACKTRACE=1 krankerl package | ||
cd ${{ env.APP_NAME }} | ||
krankerl package | ||
- uses: actions/upload-artifact@v4 | ||
with: | ||
name: App tarball | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ Upstream-Name: Template App | |
Upstream-Contact: Sebastian Stöcker <[email protected]> | ||
Source: https://github.com/nextcloud/profiler | ||
|
||
Files: package-lock.json package.json composer.json composer.lock versions.json .github/renovate.json | ||
Files: package-lock.json package.json composer.json composer.lock versions.json .github/renovate.json .vscode/*.json *.csv *.png | ||
Copyright: Sebastian Stöcker <[email protected]> | ||
License: AGPL-3.0-or-later | ||
|
||
|