New: Set Branch, Update Mech from PackageInfo

This commit is contained in:
Qstick
2020-04-02 22:25:09 -04:00
parent 16d6fd90a9
commit 0a1eb877e0
8 changed files with 270 additions and 21 deletions

View File

@@ -15,6 +15,8 @@ class About extends Component {
render() {
const {
version,
packageVersion,
packageAuthor,
isNetCore,
isMono,
isDocker,
@@ -36,6 +38,14 @@ class About extends Component {
data={version}
/>
{
packageVersion &&
<DescriptionListItem
title="Package Version"
data={(packageAuthor ? `${packageVersion} by ${packageAuthor}` : packageVersion)}
/>
}
{
isMono &&
<DescriptionListItem
@@ -99,6 +109,8 @@ class About extends Component {
About.propTypes = {
version: PropTypes.string.isRequired,
packageVersion: PropTypes.string,
packageAuthor: PropTypes.string,
isNetCore: PropTypes.bool.isRequired,
isMono: PropTypes.bool.isRequired,
runtimeVersion: PropTypes.string.isRequired,

View File

@@ -1,6 +1,6 @@
import _ from 'lodash';
import PropTypes from 'prop-types';
import React, { Component } from 'react';
import React, { Component, Fragment } from 'react';
import { icons, kinds } from 'Helpers/Props';
import formatDate from 'Utilities/Date/formatDate';
import LoadingIndicator from 'Components/Loading/LoadingIndicator';
@@ -26,6 +26,7 @@ class Updates extends Component {
generalSettingsError,
items,
isInstallingUpdate,
updateMechanism,
isDocker,
shortDateFormat,
onInstallLatestPress
@@ -37,6 +38,12 @@ class Updates extends Component {
const hasUpdateToInstall = hasUpdates && _.some(items, { installable: true, latest: true });
const noUpdateToInstall = hasUpdates && !hasUpdateToInstall;
const externalUpdaterMessages = {
external: 'Unable to update Radarr directly, Radarr is configured to use an external update mechanism',
apt: 'Unable to update Radarr directly, use apt to install the update',
docker: 'Unable to update Radarr directly, update the docker container to receive the update'
};
return (
<PageContent title="Updates">
<PageContentBodyConnector>
@@ -52,9 +59,9 @@ class Updates extends Component {
{
hasUpdateToInstall &&
<div className={styles.updateAvailable}>
<div className={styles.messageContainer}>
{
!isDocker &&
(updateMechanism === 'builtIn' || updateMechanism === 'script') && !isDocker ?
<SpinnerButton
className={styles.updateAvailable}
kind={kinds.PRIMARY}
@@ -62,14 +69,19 @@ class Updates extends Component {
onPress={onInstallLatestPress}
>
Install Latest
</SpinnerButton>
}
</SpinnerButton> :
{
isDocker &&
<div className={styles.upToDateMessage}>
An update is available. Please update your Docker image and re-create the container.
</div>
<Fragment>
<Icon
name={icons.WARNING}
kind={kinds.WARNING}
size={30}
/>
<div className={styles.message}>
{externalUpdaterMessages[updateMechanism] || externalUpdaterMessages.external}
</div>
</Fragment>
}
{