agent: adds restore alerts

This commit is contained in:
Aaron Greenspan
2021-01-19 18:29:29 -07:00
committed by Aiden McClelland
parent 18f18e3b95
commit db8a26c84c
3 changed files with 7 additions and 1 deletions

View File

@@ -288,6 +288,7 @@ getInstalledAppByIdLogic appId = do
, appInstalledFullTorAddress = Nothing
, appInstalledFullConfiguredRequirements = []
, appInstalledFullUninstallAlert = Nothing
, appInstalledFullRestoreAlert = Nothing
}
serverApps <- AppMgr2.list [AppMgr2.flags|-s -d|]
let remapped = remapAppMgrInfo jobCache serverApps
@@ -325,7 +326,8 @@ getInstalledAppByIdLogic appId = do
, appInstalledFullLastBackup = backupTime
, appInstalledFullTorAddress = infoResTorAddress
, appInstalledFullConfiguredRequirements = HM.elems requirements
, appInstalledFullUninstallAlert = manifest >>= AppManifest.appManifestUninstallAlert
, appInstalledFullUninstallAlert = manifest >>= AppManifest.appManifestUninstallAlert
, appInstalledFullRestoreAlert = manifest >>= AppManifest.appManifestRestoreAlert
}
runMaybeT (installing <|> installed) `orThrowM` NotFoundE "appId" (show appId)

View File

@@ -132,6 +132,7 @@ data AppInstalledFull = AppInstalledFull
, appInstalledFullLastBackup :: Maybe UTCTime
, appInstalledFullConfiguredRequirements :: [Stripped AppDependencyRequirement]
, appInstalledFullUninstallAlert :: Maybe Text
, appInstalledFullRestoreAlert :: Maybe Text
}
instance ToJSON AppInstalledFull where
toJSON AppInstalledFull {..} = object
@@ -145,6 +146,7 @@ instance ToJSON AppInstalledFull where
, "versionInstalled" .= appInstalledFullVersionInstalled
, "status" .= appInstalledFullStatus
, "uninstallAlert" .= appInstalledFullUninstallAlert
, "restoreAlert" .= appInstalledFullRestoreAlert
]
data AppVersionInfo = AppVersionInfo

View File

@@ -61,6 +61,7 @@ data AppManifest where
, appManifestOnionVersion :: OnionVersion
, appManifestDependencies :: HM.HashMap AppId VersionRange
, appManifestUninstallAlert :: Maybe Text
, appManifestRestoreAlert :: Maybe Text
} -> AppManifest
uiAvailable :: AppManifest -> Bool
@@ -81,6 +82,7 @@ instance FromJSON AppManifest where
appManifestOnionVersion <- o .: "hidden-service-version"
appManifestDependencies <- o .:? "dependencies" .!= HM.empty >>= traverse parseDepInfo
appManifestUninstallAlert <- o .:? "uninstall-alert"
appManifestRestoreAlert <- o .:? "restore-alert"
pure $ AppManifest { .. }
where
parsePortMapping = withObject "Port Mapping" $ \o -> liftA2 (,) (o .: "tor") (o .: "internal")