Compare commits

..

4 Commits

Author SHA1 Message Date
29039f1c20 Proper Main 2023-08-15 12:24:19 +02:00
c359cdf84a Fix module in ICAFocus.Get 2023-08-15 12:24:10 +02:00
c91c80c63f run command, cd in build and clean 2023-08-15 12:23:55 +02:00
1201987364 Add -t to xargs, add bash 2023-08-15 12:23:23 +02:00
4 changed files with 30 additions and 19 deletions

View File

@ -3,7 +3,7 @@
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE LambdaCase #-}
module Get where
module ICAFocus.Get where
import qualified Network.HTTP.Client as H
import qualified Network.HTTP.Client.TLS as H

View File

@ -1,24 +1,20 @@
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE LambdaCase #-}
import Control.Exception (bracket)
import Control.Monad (void, unless)
import Data.Int (Int32)
import Data.Maybe (listToMaybe)
import Control.Monad.Except
import qualified Database.PostgreSQL.Typed as PG
import ICAFocus
import ICAFocus.Get
import DBConfig
PG.useTPGDatabase myPGDatabase
data Ingredient = Ingredient Int32
deriving (Eq)
createThing :: PG.PGConnection -> Ingredient -> IO ()
createThing pg (Ingredient product_id) =
void $ PG.pgExecute pg [PG.pgSQL|INSERT INTO ingredient (product_id) VALUES (${product_id})|]
main = bracket (PG.pgConnect myPGDatabase) PG.pgDisconnect $ \pg -> do
let ing = Ingredient 10
createThing pg ing
let lök_id = 1282116
(runExceptT $ getProduct pg lök_id) >>= \case
Right lök -> putStrLn $ "Lökat " ++ show lök
Left löklös -> putStrLn $ "Löklös? " ++ show löklös

View File

@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
mkdir -p artifacts
log "Kompilerar backend..."
find backend -type f -and -name '*.hs' -print0 \
| xargs -0 ghc -o artifacts/Main \
| xargs -t0 ghc -o artifacts/Main \
-odir artifacts \
-hidir artifacts \
-tmpdir artifacts

View File

@ -50,12 +50,26 @@ setupDb() {
P="$PWD"
clean() {
cd "$(git rev-parse --show-toplevel)"
log "Rensar byggnad"
rm -rf artifacts
cd - >/dev/null
}
build() {
source "$P/buildScripts/build.sh"
cd "$(git rev-parse --show-toplevel)"
( source "buildScripts/build.sh" )
RES=$?
cd - >/dev/null
return $RES
}
run() {
build && {
cd "$(git rev-parse --show-toplevel)"
./artifacts/Main
cd - >/dev/null
}
}
if [ "$IS_OWNER" -ne 0 ] ; then
@ -68,4 +82,4 @@ log "Redo" "!"
set +e
cd - >/dev/null 2>&1
cd - >/dev/null