lotus/itests/kit/init.go

58 lines
2.0 KiB
Go
Raw Normal View History

2021-06-18 18:45:29 +00:00
package kit
import (
"fmt"
"os"
"time"
2022-06-14 15:00:51 +00:00
logging "github.com/ipfs/go-log/v2"
"github.com/filecoin-project/go-state-types/abi"
"github.com/filecoin-project/go-state-types/big"
"github.com/filecoin-project/lotus/build"
"github.com/filecoin-project/lotus/chain/actors/policy"
)
func init() {
_ = logging.SetLogLevel("*", "INFO")
// These values mimic the values set in the builtin-actors when configured to use the "testing" network. Specifically:
// - All proof types.
// - 2k minimum power.
// - "small" verified deals.
// - short precommit
//
// See:
// - https://github.com/filecoin-project/builtin-actors/blob/0502c0722225ee58d1e6641431b4f9356cb2d18e/actors/runtime/src/runtime/policy.rs#L235
// - https://github.com/filecoin-project/builtin-actors/blob/0502c0722225ee58d1e6641431b4f9356cb2d18e/actors/runtime/build.rs#L17-L45
policy.SetProviderCollateralSupplyTarget(big.Zero(), big.NewInt(1))
policy.SetConsensusMinerMinPower(abi.NewStoragePower(2048))
policy.SetMinVerifiedDealSize(abi.NewStoragePower(256))
policy.SetPreCommitChallengeDelay(10)
policy.SetSupportedProofTypes(
abi.RegisteredSealProof_StackedDrg2KiBV1,
abi.RegisteredSealProof_StackedDrg8MiBV1,
abi.RegisteredSealProof_StackedDrg512MiBV1,
abi.RegisteredSealProof_StackedDrg32GiBV1,
abi.RegisteredSealProof_StackedDrg64GiBV1,
)
policy.SetProviderCollateralSupplyTarget(big.NewInt(0), big.NewInt(100))
build.InsecurePoStValidation = true
// NOTE: If we want the payment channel itests to pass that use a
// block time of 5*millisecond, we need to set the consistent broadcast
// delay to something lower than that block time.
// todo: configure such a low delay only for paych tests.
build.CBDeliveryDelay = 2 * time.Millisecond
if err := os.Setenv("BELLMAN_NO_GPU", "1"); err != nil {
panic(fmt.Sprintf("failed to set BELLMAN_NO_GPU env variable: %s", err))
}
if err := os.Setenv("LOTUS_DISABLE_WATCHDOG", "1"); err != nil {
panic(fmt.Sprintf("failed to set LOTUS_DISABLE_WATCHDOG env variable: %s", err))
}
}