Skip to content

Commit c8387d5

Browse files
committed
feat: add support of yaml swagger file
1 parent 7187ae8 commit c8387d5

File tree

3 files changed

+543
-0
lines changed

3 files changed

+543
-0
lines changed

geniusyield-server-lib/geniusyield-server-lib.cabal

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ library
111111
, wai
112112
, wai-extra
113113
, warp
114+
, yaml
114115

115116
-- Dependencies whose version is fixed by @cabal.project@ file.
116117
build-depends:

geniusyield-server-lib/src/GeniusYield/Server/Options.hs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@ module GeniusYield.Server.Options where
66
import Control.Exception (SomeException (..), displayException, try)
77
import Control.Monad.Trans.Except
88
import Data.Aeson.Encode.Pretty (encodePretty)
9+
import Data.ByteString qualified as B
910
import Data.ByteString.Lazy.Char8 qualified as BL8
1011
import Data.Text.Lazy qualified as LT
1112
import Data.Version (showVersion)
13+
import Data.Yaml.Pretty qualified as Yaml
1214
import Fmt
1315
import GeniusYield.GYConfig
1416
import GeniusYield.HTTP.Errors
@@ -81,6 +83,7 @@ runServeCommand (ServeCommand cfp mt) = do
8183
logInfoS $ "GeniusYield server version: " +| showVersion PackageInfo.version |+ "\nCommit used: " +| gitHash |+ ""
8284
-- TODO: Are the directories where these files are written fine?
8385
BL8.writeFile "web/swagger/api.json" (encodePretty geniusYieldAPISwagger)
86+
B.writeFile "web/swagger/api.yaml" (Yaml.encodePretty Yaml.defConfig geniusYieldAPISwagger)
8487
writeJSForAPI geniusYieldAPI vanillaJS "web/dist/api.js"
8588
reqLoggerMiddleware gcpReqLogger
8689
let

0 commit comments

Comments
 (0)