Merge pull request #253 from TriliumNext/feature/update_ci

CI improvements
This commit is contained in:
Elian Doran 2024-07-20 22:28:26 +03:00 committed by GitHub
commit f9a4f9b538
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 42 additions and 13 deletions

3
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,3 @@
on:
workflow_call:

View File

@ -4,6 +4,11 @@ on:
branches: branches:
- '!develop' - '!develop'
- '!feature/update*' - '!feature/update*'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs: jobs:
build_docker: build_docker:
name: Build Docker image name: Build Docker image

View File

@ -4,9 +4,15 @@ on:
branches: branches:
- 'develop' - 'develop'
- 'feature/update*' - 'feature/update*'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env: env:
REGISTRY: ghcr.io REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }} IMAGE_NAME: ${{ github.repository }}
jobs: jobs:
build_darwin-x64: build_darwin-x64:
name: Build macOS x86_64 name: Build macOS x86_64
@ -19,7 +25,9 @@ jobs:
node-version: 20 node-version: 20
cache: "npm" cache: "npm"
- run: npm ci - run: npm ci
- run: ./bin/build-mac-x64.sh - run: |
./bin/update-build-info.sh
./bin/build-mac-x64.sh
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
with: with:
name: trilium-mac-x64.zip name: trilium-mac-x64.zip
@ -35,7 +43,9 @@ jobs:
node-version: 20 node-version: 20
cache: "npm" cache: "npm"
- run: npm ci - run: npm ci
- run: ./bin/build-mac-arm64.sh - run: |
./bin/update-build-info.sh
./bin/build-mac-arm64.sh
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
with: with:
name: trilium-mac-arm64.zip name: trilium-mac-arm64.zip
@ -51,7 +61,9 @@ jobs:
node-version: 20 node-version: 20
cache: "npm" cache: "npm"
- run: npm ci - run: npm ci
- run: ./bin/build-linux-x64.sh - run: |
./bin/update-build-info.sh
./bin/build-linux-x64.sh
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
with: with:
name: trilium-linux-x64.tar.xz name: trilium-linux-x64.tar.xz
@ -71,7 +83,9 @@ jobs:
node-version: 20 node-version: 20
cache: "npm" cache: "npm"
- run: npm ci - run: npm ci
- run: ./bin/build-server.sh - run: |
./bin/update-build-info.sh
./bin/build-server.sh
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
with: with:
name: trilium-linux-x64-server.tar.xz name: trilium-linux-x64-server.tar.xz
@ -94,11 +108,13 @@ jobs:
node-version: 20 node-version: 20
cache: "npm" cache: "npm"
- run: npm ci - run: npm ci
- run: ./bin/build-win-x64.sh - run: |
./bin/update-build-info.sh
./bin/build-win-x64.sh DONTPACK
- uses: actions/upload-artifact@v4 - uses: actions/upload-artifact@v4
with: with:
name: trilium-windows-x64.zip name: trilium-windows-x64
path: dist/trilium-windows-x64-*.zip path: dist/trilium-windows-x64
build_docker: build_docker:
name: Build Docker image name: Build Docker image
runs-on: ubuntu-latest runs-on: ubuntu-latest

View File

@ -34,9 +34,11 @@ rm -rf $BUILD_DIR/dump-db/node_modules
cp bin/tpl/trilium-{portable,no-cert-check,safe-mode}.bat $BUILD_DIR/ cp bin/tpl/trilium-{portable,no-cert-check,safe-mode}.bat $BUILD_DIR/
echo "Zipping windows x64 electron distribution..." if [ "$1" != "DONTPACK" ]
VERSION=`jq -r ".version" package.json` then
echo "Zipping windows x64 electron distribution..."
VERSION=`jq -r ".version" package.json`
cd dist cd dist
zip -r9 trilium-windows-x64-${VERSION}.zip trilium-windows-x64
zip -r9 trilium-windows-x64-${VERSION}.zip trilium-windows-x64 fi

View File

@ -32,7 +32,7 @@ mv package.json.tmp package.json
git add package.json git add package.json
echo 'export = { buildDate:"'`date --iso-8601=seconds`'", buildRevision: "'`git log -1 --format="%H"`'" };' > src/services/build.ts ./update-build-info.sh
git add src/services/build.ts git add src/services/build.ts

3
bin/update-build-info.sh Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
echo 'export = { buildDate:"'`date --iso-8601=seconds`'", buildRevision: "'`git log -1 --format="%H"`'" };' > src/services/build.ts