@@ -2,8 +2,10 @@ module Main where
22
33import Prelude
44
5+ import Affjax (printError )
6+ import Affjax as AX
7+ import Affjax.ResponseFormat as RF
58import Control.Monad.Except.Trans (ExceptT (..), mapExceptT , runExceptT )
6- import Data.Argonaut.Parser as Json
79import Data.Bifunctor (lmap )
810import Data.Either (Either (..))
911import Data.Foldable (traverse_ )
@@ -12,22 +14,20 @@ import Effect.Aff (error, launchAff_, runAff_)
1214import Effect.Class (liftEffect )
1315import Effect.Exception (message )
1416import GitHub.Actions.Core as Core
15- import Node.Buffer as Buffer
16- import Node.Encoding (Encoding (..))
17- import Node.FS.Sync (readFile )
1817import Setup.BuildPlan (constructBuildPlan )
1918import Setup.GetTool (getTool )
2019import Setup.UpdateVersions (updateVersions )
2120
2221main :: Effect Unit
2322main = runAff_ go $ runExceptT do
24- versionsString <- liftEffect $ Buffer .toString UTF8 =<< readFile " ./dist/versions.json"
25- versionsJson <- ExceptT $ pure $ lmap error $ Json .jsonParser versionsString
26- tools <- mapExceptT liftEffect $ constructBuildPlan versionsJson
23+ versionsJson <- ExceptT $ map (lmap (error <<< printError)) $ AX .get RF .json versionsFile
24+ tools <- mapExceptT liftEffect $ constructBuildPlan versionsJson.body
2725 liftEffect $ Core .info " Constructed build plan."
2826 traverse_ getTool tools
2927 liftEffect $ Core .info " Fetched tools."
3028 where
29+ versionsFile = " https://raw.githubusercontent.com/purescript-contrib/setup-purescript/main/dist/versions.json"
30+
3131 go res = case join res of
3232 Left err -> Core .setFailed (message err)
3333 Right a -> pure unit
0 commit comments