def main(): badger = connect_badger(badger_config.prod_json) console.print("\n[white]===== 🦡 Sett Status 🦡 =====[white]\n") for key in badger.sett_system.vaults.keys(): snap = SnapshotManager(badger, key) state = snap.snap() snap.printPermissions() snap.printTable(state)
def earn_all(badger: BadgerSystem, skip): keeper = badger.deployer for key, vault in badger.sett_system.vaults.items(): if key in skip: print("Skip ", key) continue console.print("\n[bold red]===== Earn: " + key + " =====[/bold red]\n") strategy = badger.getStrategy(key) controller = Controller.at(vault.controller()) want = interface.IERC20(vault.token()) # Pre safety checks assert want == strategy.want() assert strategy.controller() == controller assert vault.controller() == controller assert controller.strategies(want) == strategy vaultBefore = want.balanceOf(vault) strategyBefore = strategy.balanceOf() toEarn = False if earn_preconditions(vaultBefore, strategyBefore): print("Earn: " + key, vault, strategy) toEarn = True snap = SnapshotManager(badger, key) strategy = badger.getStrategy(key) keeper = accounts.at(strategy.keeper()) before = snap.snap() snap.printTable(before) keeper = accounts.at(vault.keeper()) snap.settEarn( { 'from': keeper, "gas_price": gas_strategy, "gas_limit": 2000000, "allow_revert": True }, confirm=False) after = snap.snap() snap.printTable(after) snap.printCompare(before, after)
def harvest_all(badger: BadgerSystem, skip): for key, vault in badger.sett_system.vaults.items(): if key in skip: continue console.print("\n[bold yellow]===== Harvest: " + str(key) + " =====[/bold yellow]\n") print("Harvest: " + key) snap = SnapshotManager(badger, key) strategy = badger.getStrategy(key) keeper = accounts.at(strategy.keeper()) before = snap.snap() snap.printTable(before) snap.settHarvest({'from': keeper, "gas_price": gas_strategy, "gas_limit": 2000000, "allow_revert": True}, confirm=False) after = snap.snap() snap.printTable(after) snap.printCompare(before, after)