M backend/foodro.cabal => backend/foodro.cabal +1 -17
@@ 94,14 94,6 @@ library
, Foodro.Handlers.Donations.Create
, Foodro.Handlers.Donations.Update
-library foodro-create-db-lib
- import: build-deps
- build-depends: foodro
- default-language: Haskell2010
- ghc-options: -Wall -Wno-missing-signatures -Wno-orphans -Wno-unused-imports -fprint-potential-instances
- hs-source-dirs: scripts-src
- exposed-modules: CreateDb
-
library foodro-populate-db-lib
import: build-deps
build-depends: foodro
@@ 120,14 112,6 @@ executable foodro
hs-source-dirs: src
default-language: Haskell2010
-executable foodro-create-db
- import: build-deps
- main-is: CreateDb.hs
- build-depends: foodro
- ghc-options: -Wall -O2 -threaded -rtsopts -with-rtsopts=-N -Wno-missing-signatures -Wno-orphans -Wno-unused-imports -fprint-potential-instances
- hs-source-dirs: scripts-src
- default-language: Haskell2010
-
executable foodro-populate-db
import: build-deps
main-is: PopulateDb.hs
@@ 156,7 140,7 @@ test-suite foodro-tests
, Spec.VolunteerSpam
, Spec.Database.Donations
build-depends: foodro
- , foodro-create-db-lib
+ , foodro-create-db
, foodro-populate-db-lib
, base
, containers
R backend/scripts-src/CreateDb.hs => backend/scripts-src/foodro-create-db/CreateDb.hs +0 -3
@@ 5,9 5,6 @@ module CreateDb where
import Database.SQLite.Simple
import System.Environment
-main :: IO ()
-main = getEnv "BACKEND_DEV_DB" >>= createDb
-
-- | Create all the tables, triggers, etc. Returns a Connection to be passed along to
createDb :: String -> IO ()
createDb dbFile = do
A backend/scripts-src/foodro-create-db/Main.hs => backend/scripts-src/foodro-create-db/Main.hs +7 -0
@@ 0,0 1,7 @@
+module Main where
+
+import CreateDb (createDb)
+import System.Environment
+
+main :: IO ()
+main = getEnv "BACKEND_DEV_DB" >>= createDb<
\ No newline at end of file
A backend/scripts-src/foodro-create-db/foodro-create-db.cabal => backend/scripts-src/foodro-create-db/foodro-create-db.cabal +77 -0
@@ 0,0 1,77 @@
+cabal-version: 2.4
+name: foodro-create-db
+version: 0.1.0.0
+-- synopsis:
+-- description:
+license-file: LICENSE
+author: wunderbrick
+maintainer:
+-- copyright:
+category: Web
+build-type: Simple
+
+common build-deps
+ build-depends: base
+ , safe-exceptions
+ , string-conversions
+ , ghc
+ , text
+ , time
+ , random
+ , bytestring
+ , containers
+ , unordered-containers
+ , transformers
+ , aeson
+ , lens
+ , lifted-async
+ , async
+ , stm
+ , either
+ , servant
+ , servant-server
+ , servant-auth
+ , servant-auth-server
+ , servant-client
+ , servant-lucid
+ , scientific
+ , lucid
+ , cookie
+ , network
+ , http-client
+ , http-api-data
+ , http-client
+ , http-media
+ , http-types
+ , mtl
+ , wai
+ , warp
+ , beam-core
+ , beam-sqlite
+ , sqlite-simple
+ , mime-mail
+ , smtp-mail
+ , jwt
+ , jose
+ , password
+ , Unique
+ , Cabal
+
+library
+ import: build-deps
+ build-depends: foodro
+ default-language: Haskell2010
+ ghc-options: -Wall -Wno-missing-signatures -Wno-orphans -Wno-unused-imports -fprint-potential-instances
+ hs-source-dirs: .
+ exposed-modules: CreateDb
+
+executable foodro-create-db
+ import: build-deps
+ main-is: Main.hs
+ build-depends: foodro
+ , foodro-create-db
+ ghc-options: -Wall -O2 -threaded -rtsopts -with-rtsopts=-N -Wno-missing-signatures -Wno-orphans -Wno-unused-imports -fprint-potential-instances
+ hs-source-dirs: .
+ default-language: Haskell2010
+
+
M cabal.project => cabal.project +3 -1
@@ 1,4 1,6 @@
-packages: backend
+packages:
+ backend/foodro.cabal
+ backend/scripts-src/foodro-create-db/foodro-create-db.cabal
source-repository-package
type: git
M flake.nix => flake.nix +4 -1
@@ 71,7 71,7 @@
};
foodro-create-db = final.haskell-nix.project' rec {
- src = ./backend;
+ src = ./backend/scripts-src/foodro-create-db;
compiler-nix-name = "ghc902";
# This is used by `nix develop .` to open a shell for use with
# `cabal`, `hlint` and `haskell-language-server`
@@ 191,8 191,11 @@
// rec {
# Built by `nix build .`
defaultPackage = flakeFoodro.packages."foodro:exe:foodro";
+
packages.system."foodro-create-db" = flakeFoodroCreateDb.packages."foodro-create-db:exe:foodro-create-db";
+
packages.system."foodro-populate-db" = flakeFoodroPopulateDb.packages."foodro-populate-db:exe:foodro-populate-db";
+
packages.system."foodro-generate-purescript-types" = flakeFoodroGeneratePureScriptTypes.packages."foodro-generate-purescript-types:exe:foodro-generate-purescript-types";
});
M hie.yaml => hie.yaml +3 -3
@@ 1,11 1,11 @@
cradle:
cabal:
- path: "backend"
- component: "lib:foodro" #"foodro:exe:foodro"
- - path: "backend"
+ component: "lib:foodro"
+ - path: "backend/scripts-src/foodro-create-db"
component: "lib:foodro-create-db"
- path: "backend"
- component: "lib:foodro-populate-db"
+ component: "lib:foodro-populate-db-lib"
- path: "backend/tests/Tests.hs"
component: "test:foodro-tests"