File tree 3 files changed +19
-2
lines changed
3 files changed +19
-2
lines changed Original file line number Diff line number Diff line change 33
33
( pkgs . lib . hasSuffix "\. css" path ) ||
34
34
( pkgs . lib . hasSuffix "\. js" path ) ||
35
35
( pkgs . lib . hasSuffix "\. svg" path ) ||
36
+ ( pkgs . lib . hasSuffix "\. sqlite3" path ) ||
36
37
( craneLib . filterCargoSources path type )
37
38
;
38
39
} ;
55
56
cp -pr --reflink=auto -- ${ ui } ui/dist
56
57
'' ;
57
58
} ) ;
59
+
60
+ docker = pkgs . dockerTools . buildLayeredImage {
61
+ name = "sqlite-studio" ;
62
+ tag = "latest" ;
63
+ created = "now" ;
64
+ config . Cmd = [ "${ bin } /bin/sqlite-studio" "preview" "--address=0.0.0.0:3030" ] ;
65
+ config . Expose = "3030" ;
66
+ } ;
58
67
in
59
68
{
60
69
packages = {
61
70
default = bin ;
71
+ docker = docker ;
62
72
} ;
63
73
64
74
devShells . default = pkgs . mkShell {
Original file line number Diff line number Diff line change @@ -6,11 +6,13 @@ use tokio_rusqlite::{Connection, OpenFlags};
6
6
use warp:: Filter ;
7
7
8
8
const ROWS_PER_PAGE : i32 = 50 ;
9
+ const SAMPLE_DB : & [ u8 ] = include_bytes ! ( "../sample.sqlite3" ) ;
9
10
10
11
/// Web based SQLite database browser.
11
12
#[ derive( Parser , Debug ) ]
12
13
struct Args {
13
- /// Path to the sqlite database file.
14
+ /// Path to the sqlite database file. [use the path "preview" if you don't have an sqlite db at
15
+ /// hand, a sample db will be created for you]
14
16
database : String ,
15
17
16
18
/// The address to bind to.
@@ -30,7 +32,12 @@ async fn main() -> color_eyre::Result<()> {
30
32
. init ( ) ;
31
33
32
34
let args = Args :: parse ( ) ;
33
- let db = TheDB :: open ( args. database ) . await ?;
35
+ let db = if args. database == "preview" {
36
+ tokio:: fs:: write ( "sample.db" , SAMPLE_DB ) . await ?;
37
+ TheDB :: open ( "sample.db" . to_string ( ) ) . await ?
38
+ } else {
39
+ TheDB :: open ( args. database ) . await ?
40
+ } ;
34
41
35
42
let cors = warp:: cors ( )
36
43
. allow_any_origin ( )
You can’t perform that action at this time.
0 commit comments