Update Docker build and GitHub actions to always build core libs (#1404)

This commit is contained in:
Leendert de Borst
2025-12-11 14:46:31 +01:00
parent 4fc2ce20cf
commit b154d08c24
11 changed files with 285 additions and 46 deletions

View File

@@ -12,49 +12,16 @@ concurrency:
cancel-in-progress: true
jobs:
build-shared-libraries:
build-core-libraries:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Build and distribute core libraries
run: |
cd ./core
chmod +x build-and-distribute.sh
./build-and-distribute.sh
- name: Verify core library distribution
run: |
# Check if files exist and were recently modified
TARGET_DIRS=(
"apps/browser-extension/src/utils/dist/core/identity-generator"
"apps/browser-extension/src/utils/dist/core/password-generator"
"apps/browser-extension/src/utils/dist/core/models"
"apps/browser-extension/src/utils/dist/core/vault"
)
for dir in "${TARGET_DIRS[@]}"; do
if [ ! -d "$dir" ]; then
echo "❌ Directory $dir does not exist"
exit 1
fi
# Check if files were modified in the last 5 minutes
find "$dir" -type f -mmin -5 | grep -q . || {
echo "❌ Files in $dir were not recently modified"
exit 1
}
done
echo "✅ Shared library distribution verified"
- name: Build Core Libraries
uses: ./.github/actions/build-core-libraries
build-chrome-extension:
needs: build-shared-libraries
needs: build-core-libraries
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
@@ -65,7 +32,7 @@ jobs:
browser: chrome
build-firefox-extension:
needs: build-shared-libraries
needs: build-core-libraries
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
@@ -76,7 +43,7 @@ jobs:
browser: firefox
build-edge-extension:
needs: build-shared-libraries
needs: build-core-libraries
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

View File

@@ -105,7 +105,26 @@ jobs:
with:
node-version: '20'
- name: Install dependencies
- name: Setup Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
targets: wasm32-unknown-unknown
- name: Cache Rust dependencies
uses: Swatinem/rust-cache@v2
with:
workspaces: core/rust
- name: Install wasm-pack
run: cargo install wasm-pack --locked
- name: Build core libraries
run: |
cd ./core
chmod +x build-and-distribute.sh
./build-and-distribute.sh
- name: Install .NET dependencies
working-directory: apps/server
run: dotnet workload install wasm-tools
@@ -158,6 +177,25 @@ jobs:
cache: 'npm'
cache-dependency-path: apps/browser-extension/package-lock.json
- name: Setup Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
targets: wasm32-unknown-unknown
- name: Cache Rust dependencies
uses: Swatinem/rust-cache@v2
with:
workspaces: core/rust
- name: Install wasm-pack
run: cargo install wasm-pack --locked
- name: Build core libraries
run: |
cd ./core
chmod +x build-and-distribute.sh
./build-and-distribute.sh
- name: Install .NET dependencies
working-directory: apps/server
run: dotnet workload install wasm-tools

View File

@@ -99,6 +99,12 @@ jobs:
cache: 'npm'
cache-dependency-path: apps/mobile-app/package-lock.json
- name: Build core libraries
run: |
cd ../../core
chmod +x build-and-distribute.sh
./build-and-distribute.sh
- name: Install dependencies
run: npm ci