Skip to content

Commit 822ab37

Browse files
authored
Issue 84: docs + packaging (#85)
* [docs/packaging] add watcher crate, release artifacts, and smoke test * chore(docs): move sqlite docs under sqlite-watcher-docs * fix(ci): replace unmaintained deps for security audit
1 parent f8db3d5 commit 822ab37

File tree

18 files changed

+956
-489
lines changed

18 files changed

+956
-489
lines changed

.github/workflows/release.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,18 +23,26 @@ jobs:
2323
target: x86_64-unknown-linux-gnu
2424
artifact_name: database-replicator
2525
asset_name: database-replicator-linux-x64-binary
26+
watcher_artifact: sqlite-watcher
27+
watcher_asset: sqlite-watcher-linux-x64
2628
- os: macos-latest
2729
target: x86_64-apple-darwin
2830
artifact_name: database-replicator
2931
asset_name: database-replicator-macos-x64-binary
32+
watcher_artifact: sqlite-watcher
33+
watcher_asset: sqlite-watcher-macos-x64
3034
- os: macos-latest
3135
target: aarch64-apple-darwin
3236
artifact_name: database-replicator
3337
asset_name: database-replicator-macos-arm64-binary
38+
watcher_artifact: sqlite-watcher
39+
watcher_asset: sqlite-watcher-macos-arm64
3440
- os: windows-latest
3541
target: x86_64-pc-windows-msvc
3642
artifact_name: database-replicator.exe
3743
asset_name: database-replicator-windows-x64.exe
44+
watcher_artifact: sqlite-watcher.exe
45+
watcher_asset: sqlite-watcher-windows-x64.exe
3846
steps:
3947
- name: Checkout code
4048
uses: actions/checkout@v4
@@ -75,6 +83,9 @@ jobs:
7583
- name: Build release binary
7684
run: cargo build --release --target ${{ matrix.target }} --verbose
7785

86+
- name: Build sqlite-watcher binary
87+
run: cargo build --release --target ${{ matrix.target }} -p sqlite-watcher --verbose
88+
7889
- name: Strip binary (Linux)
7990
if: matrix.os == 'ubuntu-latest'
8091
run: strip target/${{ matrix.target }}/release/${{ matrix.artifact_name }}
@@ -89,19 +100,38 @@ jobs:
89100
cp target/${{ matrix.target }}/release/${{ matrix.artifact_name }} ${{ matrix.asset_name }}
90101
chmod +x ${{ matrix.asset_name }}
91102
103+
- name: Rename sqlite-watcher (Unix)
104+
if: matrix.os != 'windows-latest'
105+
run: |
106+
cp target/${{ matrix.target }}/release/${{ matrix.watcher_artifact }} ${{ matrix.watcher_asset }}
107+
chmod +x ${{ matrix.watcher_asset }}
108+
92109
- name: Rename binary (Windows)
93110
if: matrix.os == 'windows-latest'
94111
run: |
95112
copy target\${{ matrix.target }}\release\${{ matrix.artifact_name }} ${{ matrix.asset_name }}
96113
shell: cmd
97114

115+
- name: Rename sqlite-watcher (Windows)
116+
if: matrix.os == 'windows-latest'
117+
run: |
118+
copy target\${{ matrix.target }}\release\${{ matrix.watcher_artifact }} ${{ matrix.watcher_asset }}
119+
shell: cmd
120+
98121
- name: Upload artifact
99122
uses: actions/upload-artifact@v4
100123
with:
101124
name: ${{ matrix.asset_name }}
102125
path: ${{ matrix.asset_name }}
103126
if-no-files-found: error
104127

128+
- name: Upload sqlite-watcher artifact
129+
uses: actions/upload-artifact@v4
130+
with:
131+
name: ${{ matrix.watcher_asset }}
132+
path: ${{ matrix.watcher_asset }}
133+
if-no-files-found: error
134+
105135
create-release:
106136
name: Create GitHub Release
107137
needs: build-release

CHANGELOG.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ All notable changes to this project will be documented in this file.
9797

9898
### Changed
9999

100-
- **README-SQLite.md**: Updated all examples to include `-y` flag and added notes explaining that interactive mode only works with PostgreSQL sources.
100+
- **sqlite-watcher-docs/README-SQLite.md**: Updated all examples to include `-y` flag and added notes explaining that interactive mode only works with PostgreSQL sources.
101101

102102
## [7.0.4] - 2025-12-09
103103

@@ -408,7 +408,7 @@ All notable changes to this project will be documented in this file.
408408
- **File-based migration** (local execution only, no remote support)
409409
- **Path validation** with directory traversal prevention
410410
- **Comprehensive security testing**: 14 SQLite-specific tests
411-
- **Documentation**: [README-SQLite.md](README-SQLite.md) with usage examples
411+
- **Documentation**: [sqlite-watcher-docs/README-SQLite.md](sqlite-watcher-docs/README-SQLite.md) with usage examples
412412
- **Integration tests**: Full workflow testing with real SQLite files
413413

414414
#### MongoDB Support (Phase 2)
@@ -491,7 +491,7 @@ All notable changes to this project will be documented in this file.
491491

492492
- **[README.md](README.md)** - Universal landing page with multi-database support
493493
- **[README-PostgreSQL.md](README-PostgreSQL.md)** - Comprehensive PostgreSQL replication guide (1,000+ lines)
494-
- **[README-SQLite.md](README-SQLite.md)** - Complete SQLite migration guide
494+
- **[sqlite-watcher-docs/README-SQLite.md](sqlite-watcher-docs/README-SQLite.md)** - Complete SQLite migration guide
495495
- **[README-MongoDB.md](README-MongoDB.md)** - Complete MongoDB migration guide with periodic refresh
496496
- **[README-MySQL.md](README-MySQL.md)** - Complete MySQL/MariaDB migration guide
497497
- **[docs/plans/multi-database-support.md](docs/plans/multi-database-support.md)** - Implementation plan and architecture

0 commit comments

Comments
 (0)