misc.python.materialize.zippy.all_actions
1# Copyright Materialize, Inc. and contributors. All rights reserved. 2# 3# Use of this software is governed by the Business Source License 4# included in the LICENSE file at the root of this repository. 5# 6# As of the Change Date specified in that file, in accordance with 7# the Business Source License, use of this software will be governed 8# by the Apache License, Version 2.0. 9 10 11from materialize.zippy.balancerd_actions import BalancerdIsRunning 12from materialize.zippy.framework import ( 13 Action, 14 ActionFactory, 15 Capabilities, 16 Capability, 17) 18from materialize.zippy.mz_actions import MzIsRunning 19from materialize.zippy.table_actions import ValidateTable 20from materialize.zippy.table_capabilities import TableExists 21from materialize.zippy.view_actions import ValidateView 22from materialize.zippy.view_capabilities import ViewExists 23 24 25class ValidateAll(ActionFactory): 26 """Emits ValidateView and ValidateTable for all eligible objects.""" 27 28 @classmethod 29 def requires(cls) -> list[set[type[Capability]]]: 30 return [ 31 {BalancerdIsRunning, MzIsRunning, TableExists}, 32 {BalancerdIsRunning, MzIsRunning, ViewExists}, 33 ] 34 35 def new(self, capabilities: Capabilities) -> list[Action]: 36 validations = [] 37 for view in capabilities.get(ViewExists): 38 validations.append(ValidateView(capabilities=capabilities, view=view)) 39 40 for table in capabilities.get(TableExists): 41 validations.append(ValidateTable(capabilities=capabilities, table=table)) 42 43 return validations
class
ValidateAll(materialize.zippy.framework.ActionFactory):
26class ValidateAll(ActionFactory): 27 """Emits ValidateView and ValidateTable for all eligible objects.""" 28 29 @classmethod 30 def requires(cls) -> list[set[type[Capability]]]: 31 return [ 32 {BalancerdIsRunning, MzIsRunning, TableExists}, 33 {BalancerdIsRunning, MzIsRunning, ViewExists}, 34 ] 35 36 def new(self, capabilities: Capabilities) -> list[Action]: 37 validations = [] 38 for view in capabilities.get(ViewExists): 39 validations.append(ValidateView(capabilities=capabilities, view=view)) 40 41 for table in capabilities.get(TableExists): 42 validations.append(ValidateTable(capabilities=capabilities, table=table)) 43 44 return validations
Emits ValidateView and ValidateTable for all eligible objects.
@classmethod
def
requires(cls) -> list[set[type[materialize.zippy.framework.Capability]]]:
29 @classmethod 30 def requires(cls) -> list[set[type[Capability]]]: 31 return [ 32 {BalancerdIsRunning, MzIsRunning, TableExists}, 33 {BalancerdIsRunning, MzIsRunning, ViewExists}, 34 ]
Compute the capability classes that this Action Factory requires.
def
new( self, capabilities: materialize.zippy.framework.Capabilities) -> list[materialize.zippy.framework.Action]:
36 def new(self, capabilities: Capabilities) -> list[Action]: 37 validations = [] 38 for view in capabilities.get(ViewExists): 39 validations.append(ValidateView(capabilities=capabilities, view=view)) 40 41 for table in capabilities.get(TableExists): 42 validations.append(ValidateTable(capabilities=capabilities, table=table)) 43 44 return validations