Documentation

Index

Constants

View Source
const (

	// ModuleName is the name of the update module
	// and can be used when declaring module dependencies.
	ModuleName = "updates"

	// VersionUpdateEvent is emitted every time a new
	// version of a monitored resource is selected.
	// During module initialization VersionUpdateEvent
	// is also emitted.
	VersionUpdateEvent = "active version update"

	// ResourceUpdateEvent is emitted every time the
	// updater successfully performed a resource update.
	// ResourceUpdateEvent is emitted even if no new
	// versions are available. Subscribers are expected
	// to check if new versions of their resources are
	// available by checking File.UpgradeAvailable().
	ResourceUpdateEvent = "resource update"

	// TriggerUpdateEvent is the event that can be emitted
	// by the updates module to trigger an update.
	TriggerUpdateEvent = "trigger update"
)
View Source
const (
	// RestartExitCode will instruct portmaster-start to restart the process immediately, potentially with a new version.
	RestartExitCode = 23
)

Variables

View Source
var (

	// MandatoryUpdates is a list of full identifiers that
	// should always be kept up to date.
	MandatoryUpdates []string

	// UserAgent is an HTTP User-Agent that is used to add
	// more context to requests made by the registry when
	// fetching resources from the update server.
	UserAgent = "Core"
)

Functions

func CopyFile

func CopyFile(srcPath, dstPath string) (err error)

    CopyFile atomically copies a file using the update registry's tmp dir.

    func DelayedRestart

    func DelayedRestart(delay time.Duration)

      DelayedRestart triggers a restart of the application by shutting down the module system gracefully and returning with RestartExitCode. The restart may be further delayed by up to 10 minutes by the internal task scheduling system. This only works if the process is managed by portmaster-start.

      func DisableUpdateSchedule

      func DisableUpdateSchedule() error

        DisableUpdateSchedule disables the update schedule. If called, updates are only checked when TriggerUpdate() is called.

        func GetFile

        func GetFile(identifier string) (*updater.File, error)

          GetFile returns the latest generic file identified by the given identifier.

          func GetPlatformFile

          func GetPlatformFile(identifier string) (*updater.File, error)

            GetPlatformFile returns the latest platform specific file identified by the given identifier.

            func RestartNow

            func RestartNow()

              RestartNow immediately executes a restart. This only works if the process is managed by portmaster-start.

              func RootPath

              func RootPath() string

                RootPath returns the root path used for storing updates.

                func TriggerRestartIfPending

                func TriggerRestartIfPending()

                  TriggerRestartIfPending triggers an automatic restart, if one is pending. This can be used to prepone a scheduled restart if the conditions are preferable.

                  func TriggerUpdate

                  func TriggerUpdate() error

                    TriggerUpdate queues the update task to execute ASAP.

                    Types

                    This section is empty.