@@ -40,6 +40,7 @@ import qualified Cardano.CLI.Byron.Key as Byron
4040import qualified Cardano.CLI.Commands.Node as Cmd
4141import Cardano.CLI.EraBased.Commands.Genesis as Cmd
4242import Cardano.CLI.EraBased.Run.Genesis.Common
43+ import Cardano.CLI.EraBased.Run.Genesis.CreateTestnetData (WriteFileGenesis (.. ))
4344import qualified Cardano.CLI.EraBased.Run.Genesis.CreateTestnetData as TN
4445import Cardano.CLI.EraBased.Run.StakeAddress (runStakeAddressKeyGenCmd )
4546import qualified Cardano.CLI.IO.Lazy as Lazy
@@ -53,7 +54,6 @@ import Cardano.CLI.Types.Key
5354import qualified Cardano.Crypto as CC
5455import qualified Cardano.Crypto.Hash as Crypto
5556import qualified Cardano.Crypto.Signing as Byron
56- import Cardano.Prelude (canonicalEncodePretty )
5757import Cardano.Slotting.Slot (EpochSize (EpochSize ))
5858import Ouroboros.Consensus.Shelley.Node (ShelleyGenesisStaking (.. ))
5959
@@ -72,7 +72,6 @@ import Data.Char (isDigit)
7272import Data.Fixed (Fixed (MkFixed ))
7373import Data.Function (on )
7474import Data.Functor (void )
75- import Data.Functor.Identity (Identity )
7675import qualified Data.List as List
7776import qualified Data.List.Split as List
7877import Data.ListMap (ListMap (.. ))
@@ -95,8 +94,6 @@ import qualified System.IO as IO
9594import System.IO.Error (isDoesNotExistError )
9695import qualified System.Random as Random
9796import System.Random (StdGen )
98- import qualified Text.JSON.Canonical (ToJSON )
99- import Text.JSON.Canonical (parseCanonicalJSON , renderCanonicalJSON )
10097import Text.Read (readMaybe )
10198
10299runGenesisCmds :: GenesisCmds era -> ExceptT GenesisCmdError IO ()
@@ -278,9 +275,9 @@ runGenesisCreateCmd
278275 []
279276 template
280277
281- void $ writeFileGenesis (rootdir </> " genesis.json" ) $ WritePretty shelleyGenesis
282- void $ writeFileGenesis (rootdir </> " genesis.alonzo.json" ) $ WritePretty alonzoGenesis
283- void $ writeFileGenesis (rootdir </> " genesis.conway.json" ) $ WritePretty conwayGenesis
278+ void $ TN. writeFileGenesis (rootdir </> " genesis.json" ) $ WritePretty shelleyGenesis
279+ void $ TN. writeFileGenesis (rootdir </> " genesis.alonzo.json" ) $ WritePretty alonzoGenesis
280+ void $ TN. writeFileGenesis (rootdir </> " genesis.conway.json" ) $ WritePretty conwayGenesis
284281 where
285282 -- TODO: rationalise the naming convention on these genesis json files.
286283
@@ -478,13 +475,13 @@ runGenesisCreateCardanoCmd
478475 writeSecrets deldir " shelley" " counter.json" toCounter opCerts
479476
480477 byronGenesisHash <-
481- writeFileGenesis (rootdir </> " byron-genesis.json" ) $ WriteCanonical byronGenesis
478+ TN. writeFileGenesis (rootdir </> " byron-genesis.json" ) $ WriteCanonical byronGenesis
482479 shelleyGenesisHash <-
483- writeFileGenesis (rootdir </> " shelley-genesis.json" ) $ WritePretty shelleyGenesis
480+ TN. writeFileGenesis (rootdir </> " shelley-genesis.json" ) $ WritePretty shelleyGenesis
484481 alonzoGenesisHash <-
485- writeFileGenesis (rootdir </> " alonzo-genesis.json" ) $ WritePretty alonzoGenesis
482+ TN. writeFileGenesis (rootdir </> " alonzo-genesis.json" ) $ WritePretty alonzoGenesis
486483 conwayGenesisHash <-
487- writeFileGenesis (rootdir </> " conway-genesis.json" ) $ WritePretty conwayGenesis
484+ TN. writeFileGenesis (rootdir </> " conway-genesis.json" ) $ WritePretty conwayGenesis
488485
489486 liftIO $ do
490487 case mNodeConfigTemplate of
@@ -690,8 +687,8 @@ runGenesisCreateStakedCmd
690687
691688 liftIO $ LBS. writeFile (rootdir </> " genesis.json" ) $ encodePretty shelleyGenesis
692689
693- void $ writeFileGenesis (rootdir </> " genesis.alonzo.json" ) $ WritePretty alonzoGenesis
694- void $ writeFileGenesis (rootdir </> " genesis.conway.json" ) $ WritePretty conwayGenesis
690+ void $ TN. writeFileGenesis (rootdir </> " genesis.alonzo.json" ) $ WritePretty alonzoGenesis
691+ void $ TN. writeFileGenesis (rootdir </> " genesis.conway.json" ) $ WritePretty conwayGenesis
695692 -- TODO: rationalise the naming convention on these genesis json files.
696693
697694 liftIO $
@@ -1151,29 +1148,6 @@ updateTemplate
11511148 unLovelace :: Integral a => Lovelace -> a
11521149 unLovelace (L. Coin coin) = fromIntegral coin
11531150
1154- writeFileGenesis
1155- :: FilePath
1156- -> WriteFileGenesis
1157- -> ExceptT GenesisCmdError IO (Crypto. Hash Crypto. Blake2b_256 ByteString )
1158- writeFileGenesis fpath genesis = do
1159- handleIOExceptT (GenesisCmdGenesisFileError . FileIOError fpath) $
1160- BS. writeFile fpath content
1161- return $ Crypto. hashWith id content
1162- where
1163- content = case genesis of
1164- WritePretty a -> LBS. toStrict $ encodePretty a
1165- WriteCanonical a ->
1166- LBS. toStrict
1167- . renderCanonicalJSON
1168- . either (error . (" error parsing json that was just encoded!? " ++ ) . show ) id
1169- . parseCanonicalJSON
1170- . canonicalEncodePretty
1171- $ a
1172-
1173- data WriteFileGenesis where
1174- WriteCanonical :: Text.JSON.Canonical. ToJSON Identity genesis => genesis -> WriteFileGenesis
1175- WritePretty :: ToJSON genesis => genesis -> WriteFileGenesis
1176-
11771151-- ----------------------------------------------------------------------------
11781152
11791153readGenDelegsMap
0 commit comments