Documentation ¶
Overview ¶
Package statetracker enables the tracking of a limited amount of snap states during long running snap operations: - installation/removal (current download progress during install, ...) - enabling/disabling of snaps,
Note: Once a snap has been marked as "installing" it will remain in that state until it's status as provided by snapd indicates that it is installed on the system. Similarly for removing snaps. Status lifecycle is thus:
"uninstalled" -> "installing" -> "installed" -> "uninstalling" and repeat
Index ¶
- Constants
- type SnapState
- type StateTracker
- func (s *StateTracker) AllTrackedSnaps() []string
- func (s *StateTracker) CancelTrackingFor(snapName string)
- func (s *StateTracker) IsTrackedForRunningOperation(snap *client.Snap) (bool, string)
- func (s *StateTracker) State(c snapdclient.SnapdClient, snap *client.Snap) *SnapState
- func (s *StateTracker) TrackDisable(changeID string, snap *client.Snap)
- func (s *StateTracker) TrackEnable(changeID string, snap *client.Snap)
- func (s *StateTracker) TrackInstall(changeID string, snap *client.Snap)
- func (s *StateTracker) TrackUninstall(changeID string, snap *client.Snap)
Constants ¶
const ( // StatusPriced indicates the package is priced and has not been bought. StatusPriced = "priced" // StatusInstalled indicates the package is in an installed state but disabled. StatusInstalled = "installed" // StatusActive indicates the package is in an installed and enabled state. StatusActive = "active" // StatusUninstalled indicates the package is in an uninstalled state. StatusUninstalled = "uninstalled" // StatusInstalling indicates the package is in an installing state. StatusInstalling = "installing" // StatusUninstalling indicates the package is in an uninstalling state. StatusUninstalling = "uninstalling" // StatusEnabling indicates the package is in an enabling state. StatusEnabling = "enabling" // StatusDisabling indicates the package is in an disabling state. StatusDisabling = "disabling" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type StateTracker ¶
StateTracker tracks snap states
func (*StateTracker) AllTrackedSnaps ¶
func (s *StateTracker) AllTrackedSnaps() []string
AllTrackedSnaps returns the list of snap names that are currently being tracked
func (*StateTracker) CancelTrackingFor ¶
func (s *StateTracker) CancelTrackingFor(snapName string)
CancelTrackingFor tracks the installation of the given snap
func (*StateTracker) IsTrackedForRunningOperation ¶
func (s *StateTracker) IsTrackedForRunningOperation(snap *client.Snap) (bool, string)
IsTrackedForRunningOperation checks if a given snap is currently concerned by by a running operation
func (*StateTracker) State ¶
func (s *StateTracker) State(c snapdclient.SnapdClient, snap *client.Snap) *SnapState
State returns the state of the given snap
func (*StateTracker) TrackDisable ¶
func (s *StateTracker) TrackDisable(changeID string, snap *client.Snap)
TrackDisable tracks the disabling of the given snap
func (*StateTracker) TrackEnable ¶
func (s *StateTracker) TrackEnable(changeID string, snap *client.Snap)
TrackEnable tracks the installation of the given snap
func (*StateTracker) TrackInstall ¶
func (s *StateTracker) TrackInstall(changeID string, snap *client.Snap)
TrackInstall tracks the installation of the given snap
func (*StateTracker) TrackUninstall ¶
func (s *StateTracker) TrackUninstall(changeID string, snap *client.Snap)
TrackUninstall tracks the removal of the given snap