Browse Source

SONAR-10696 Move set license form to core-extension-license

tags/7.5
Grégoire Aubert 6 years ago
parent
commit
32f2ea7b9d

+ 1
- 22
server/sonar-web/src/main/js/api/marketplace.ts View File

@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import { getJSON, postJSON } from '../helpers/request';
import { getJSON } from '../helpers/request';
import throwGlobalError from '../app/utils/throwGlobalError';

export interface License {
@@ -37,14 +37,6 @@ export interface License {
type: string;
}

export interface EditionStatus {
currentEditionKey?: string;
}

export function getEditionStatus(): Promise<EditionStatus> {
return getJSON('/api/editions/status');
}

export function showLicense(): Promise<License> {
return getJSON('/api/editions/show_license').catch((e: { response: Response }) => {
if (e.response && e.response.status === 404) {
@@ -54,19 +46,6 @@ export function showLicense(): Promise<License> {
});
}

export function getLicensePreview(data: {
license: string;
}): Promise<{
nextEditionKey: string;
previewStatus: 'NO_INSTALL' | 'AUTOMATIC_INSTALL' | 'MANUAL_INSTALL';
}> {
return postJSON('/api/editions/preview', data).catch(throwGlobalError);
}

export function getFormData(): Promise<{ serverId: string; ncloc: number }> {
return getJSON('/api/editions/form_data').catch(throwGlobalError);
}

export function applyLicense(data: { license: string }): Promise<EditionStatus> {
return postJSON('/api/editions/apply_license', data).catch(throwGlobalError);
}

+ 2
- 4
server/sonar-web/src/main/js/app/components/AdminContainer.tsx View File

@@ -25,7 +25,7 @@ import SettingsNav from './nav/settings/SettingsNav';
import { getAppState, getMarketplacePendingPlugins } from '../../store/rootReducer';
import { getSettingsNavigation } from '../../api/nav';
import { setAdminPages } from '../../store/appState/duck';
import { fetchCurrentEdition, fetchPendingPlugins } from '../../store/marketplace/actions';
import { fetchPendingPlugins } from '../../store/marketplace/actions';
import { translate } from '../../helpers/l10n';
import { Extension } from '../types';
import { PluginPendingResult } from '../../api/plugins';
@@ -34,6 +34,7 @@ import handleRequiredAuthorization from '../utils/handleRequiredAuthorization';
interface StateProps {
appState: {
adminPages: Extension[];
edition: string;
organizationsEnabled: boolean;
version: string;
};
@@ -42,7 +43,6 @@ interface StateProps {

interface DispatchToProps {
fetchPendingPlugins: () => void;
fetchCurrentEdition: () => void;
setAdminPages: (adminPages: Extension[]) => void;
}

@@ -62,7 +62,6 @@ class AdminContainer extends React.PureComponent<Props> {
handleRequiredAuthorization();
} else {
this.fetchNavigationSettings();
this.props.fetchCurrentEdition();
}
}

@@ -101,7 +100,6 @@ const mapStateToProps = (state: any): StateProps => ({
});

const mapDispatchToProps: DispatchToProps = {
fetchCurrentEdition,
fetchPendingPlugins,
setAdminPages
};

+ 2
- 0
server/sonar-web/src/main/js/app/utils/exposeLibraries.ts View File

@@ -39,6 +39,7 @@ import CoverageRating from '../../components/ui/CoverageRating';
import DuplicationsRating from '../../components/ui/DuplicationsRating';
import Level from '../../components/ui/Level';
import { EditButton, Button, SubmitButton, ResetButtonLink } from '../../components/ui/buttons';
import Checkbox from '../../components/controls/Checkbox';
import DeferredSpinner from '../../components/common/DeferredSpinner';
import Dropdown from '../../components/controls/Dropdown';
import ReloadButton from '../../components/controls/ReloadButton';
@@ -65,6 +66,7 @@ const exposeLibraries = () => {
AlertSuccessIcon,
AlertWarnIcon,
Button,
Checkbox,
CheckIcon,
ClearIcon,
CoverageRating,

+ 1
- 2
server/sonar-web/src/main/js/apps/marketplace/AppContainer.tsx View File

@@ -22,7 +22,6 @@ import App from './App';
import {
getAppState,
getGlobalSettingValue,
getMarketplaceCurrentEdition,
getMarketplacePendingPlugins
} from '../../store/rootReducer';
import { fetchPendingPlugins } from '../../store/marketplace/actions';
@@ -46,7 +45,7 @@ interface DispatchToProps {

const mapStateToProps = (state: any) => {
return {
currentEdition: getMarketplaceCurrentEdition(state),
currentEdition: getAppState(state).edition,
pendingPlugins: getMarketplacePendingPlugins(state),
standaloneMode: getAppState(state).standalone,
updateCenterActive:

+ 1
- 18
server/sonar-web/src/main/js/store/marketplace/actions.ts View File

@@ -18,7 +18,6 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import { Dispatch } from 'react-redux';
import { getEditionStatus } from '../../api/marketplace';
import { getPendingPlugins, PluginPendingResult } from '../../api/plugins';

interface SetPendingPluginsAction {
@@ -26,28 +25,12 @@ interface SetPendingPluginsAction {
pending: PluginPendingResult;
}

interface SetCurrentEditionAction {
type: 'SET_CURRENT_EDITION';
currentEdition?: string;
}

export type Action = SetCurrentEditionAction | SetPendingPluginsAction;
export type Action = SetPendingPluginsAction;

export function setPendingPlugins(pending: PluginPendingResult): SetPendingPluginsAction {
return { type: 'SET_PENDING_PLUGINS', pending };
}

export const setCurrentEdition = (currentEdition?: string) => (dispatch: Dispatch<Action>) => {
dispatch({ type: 'SET_CURRENT_EDITION', currentEdition });
};

export const fetchCurrentEdition = () => (dispatch: Dispatch<Action>) => {
getEditionStatus().then(
editionStatus => dispatch(setCurrentEdition(editionStatus.currentEditionKey)),
() => {}
);
};

export const fetchPendingPlugins = () => (dispatch: Dispatch<Action>) => {
getPendingPlugins().then(
pending => {

+ 0
- 8
server/sonar-web/src/main/js/store/marketplace/reducer.ts View File

@@ -21,7 +21,6 @@ import { Action } from './actions';
import { PluginPendingResult } from '../../api/plugins';

interface State {
currentEdition?: string;
pending: PluginPendingResult;
}

@@ -34,14 +33,7 @@ export default function(state: State = defaultState, action: Action): State {
pending: action.pending
};
}
if (action.type === 'SET_CURRENT_EDITION') {
return {
...state,
currentEdition: action.currentEdition
};
}
return state;
}

export const getCurrentEdition = (state: State) => state.currentEdition;
export const getPendingPlugins = (state: State) => state.pending;

+ 0
- 3
server/sonar-web/src/main/js/store/rootReducer.js View File

@@ -73,9 +73,6 @@ export const isFavorite = (state, componentKey) =>

export const getMarketplaceState = state => state.marketplace;

export const getMarketplaceCurrentEdition = state =>
fromMarketplace.getCurrentEdition(state.marketplace);

export const getMarketplacePendingPlugins = state =>
fromMarketplace.getPendingPlugins(state.marketplace);


+ 0
- 8
sonar-core/src/main/resources/org/sonar/l10n/core.properties View File

@@ -2166,21 +2166,13 @@ marketplace.update_status.COMPATIBLE=Compatible
marketplace.update_status.INCOMPATIBLE=Incompatible
marketplace.update_status.REQUIRES_SYSTEM_UPGRADE=Requires system update
marketplace.update_status.DEPS_REQUIRE_SYSTEM_UPGRADE=Some of dependencies requires system update
marketplace.license_preview_status.NO_INSTALL=No installation needed, your license will be updated directly.
marketplace.license_preview_status.AUTOMATIC_INSTALL=After clicking on "Install", your {0} will be automatically downloaded and installed, and you'll need to restart your server once it's completed.
marketplace.license_preview_status.MANUAL_INSTALL={0} can't automatically be installed because of internet access issues. A manual installation is required.
marketplace.installing_this_plugin_will_also_install_x=Installing this plugin will also install: {0}
marketplace.update_to_x=Update to {0}
marketplace.uninstall=Uninstall
marketplace.i_accept_the=I accept the
marketplace.commercial_edition=Commercial Edition
marketplace.terms_and_conditions=Terms and Conditions
marketplace.release_notes=Release Notes
marketplace.how_to_setup_cluster_url=Further configuration is required to set up a cluster. See {url} documentation.
marketplace.enter_license_for_x=Enter your license key for {0}
marketplace.wrong_license_type=Your license is not compatible with any existing editions. Please provide a valid license.
marketplace.wrong_license_type_x=Your license is not compatible with the selected edition. Please provide a valid license for {0}.
marketplace.i_need_a_license=I need a license key
marketplace.search=Search by features, tags, or categories...



Loading…
Cancel
Save