131 lines
4.9 KiB
YAML
131 lines
4.9 KiB
YAML
name: serverpod_offline_sync_workspace
|
|
publish_to: none
|
|
|
|
environment:
|
|
sdk: '^3.12.2'
|
|
|
|
workspace:
|
|
- benchmark
|
|
- packages/serverpod_offline_sync
|
|
- packages/serverpod_offline_sync_client
|
|
- packages/serverpod_offline_sync_server
|
|
- test/serverpod_offline_sync_test_client
|
|
- test/serverpod_offline_sync_test_server
|
|
- test/serverpod_offline_sync_test_shared
|
|
|
|
dev_dependencies:
|
|
melos: ^7.5.1
|
|
serverpod_cli: 4.0.0
|
|
|
|
# dependency_overrides:
|
|
# serverpod:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_auth_core_client:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: modules/serverpod_auth/serverpod_auth_core/serverpod_auth_core_client
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_auth_core_server:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: modules/serverpod_auth/serverpod_auth_core/serverpod_auth_core_server
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_cli:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: tools/serverpod_cli
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_client:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_client
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_database:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_database
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_embedded_postgres:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_embedded_postgres
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_shared:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_shared
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_serialization:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_serialization
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_service_client:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_service_client
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
# serverpod_test:
|
|
# git:
|
|
# url: https://github.com/serverpod/serverpod.git
|
|
# path: packages/serverpod_test
|
|
# ref: 062691764e38c53b0db05f24a4d07780c11bf0ba
|
|
|
|
melos:
|
|
packages:
|
|
- benchmark
|
|
- packages/*
|
|
- tests/**
|
|
|
|
categories:
|
|
publish:
|
|
- packages/*
|
|
|
|
scripts:
|
|
cleanup: |
|
|
find . -type d \( -name generated -o -name protocol \) -print0 |
|
|
xargs -0 -I@ find @ -mindepth 1 -maxdepth 1 ! -name analysis_options.yaml -print0 |
|
|
xargs -0 rm -rf
|
|
setup:
|
|
run: dart pub get && melos generate && melos create-migration
|
|
lint:
|
|
exec: dart analyze . --fatal-infos --fatal-warnings
|
|
fix:
|
|
exec: dart fix --apply
|
|
generate:
|
|
# Must run the module first, or the test project won't have the tables.
|
|
run: |
|
|
melos exec --scope="serverpod_offline_sync_server" -- dart run serverpod_cli generate --force &&
|
|
melos exec --scope="serverpod_offline_sync_test_server" -- dart run serverpod_cli generate --force
|
|
create-migration:
|
|
# If the module does not run first, the test project will see no module tables.
|
|
run: >-
|
|
melos exec --scope="serverpod_offline_sync_server" -- dart run serverpod_cli create-migration --force &&
|
|
melos exec --scope="serverpod_offline_sync_test_server" -- dart run serverpod_cli create-migration --force
|
|
upgrade:
|
|
exec: dart pub upgrade
|
|
downgrade:
|
|
exec: dart pub downgrade
|
|
test:
|
|
run: >-
|
|
melos exec --scope="serverpod_offline_sync" -- dart test test/ --reporter=failures-only &&
|
|
melos exec --scope="serverpod_offline_sync_server" -- dart test test/ --reporter=failures-only --concurrency=1 &&
|
|
melos exec --scope="serverpod_offline_sync_test_server" -- dart test test/ --reporter=failures-only --concurrency=1
|
|
test-dst:
|
|
# The deterministic simulation suite, which `test` skips: it is slow and
|
|
# seeds from the clock, so it searches fresh schedules on every run and
|
|
# can fail for a defect unrelated to the change that triggered it.
|
|
#
|
|
# Widen the search with DST_SEEDS and DST_ROUNDS; a failure prints the
|
|
# command that replays it. Concurrency is pinned to one so the reported
|
|
# failures cannot interleave, which matters when reading a wide sweep.
|
|
run: >-
|
|
melos exec --scope="serverpod_offline_sync_test_server" --
|
|
dart test -P dst --reporter=failures-only --concurrency=1
|
|
reset:
|
|
exec: rm -f test.db*
|
|
publish-check:
|
|
run: melos exec --category="publish" -- dart pub publish --dry-run
|