fix open password removing

This commit is contained in:
Alexander Zobnin
2020-06-02 09:25:32 +03:00
parent 3e379b01df
commit a9c96c2634
2 changed files with 12 additions and 6 deletions

View File

@@ -212,7 +212,6 @@ func (ds *ZabbixDatasource) GetDatasource(pluginContext backend.PluginContext) (
ds.logger.Debug(fmt.Sprintf("Datasource cache miss (Org %d Id %d '%s' %s)", pluginContext.OrgID, dsSettings.ID, dsSettings.Name, dsInfoHash)) ds.logger.Debug(fmt.Sprintf("Datasource cache miss (Org %d Id %d '%s' %s)", pluginContext.OrgID, dsSettings.ID, dsSettings.Name, dsInfoHash))
ds.logger.Debug("DS config", "settings", pluginContext.DataSourceInstanceSettings)
dsInstance, err := ds.NewZabbixDatasource(pluginContext.DataSourceInstanceSettings) dsInstance, err := ds.NewZabbixDatasource(pluginContext.DataSourceInstanceSettings)
if err != nil { if err != nil {
ds.logger.Error("Error initializing datasource", "error", err) ds.logger.Error("Error initializing datasource", "error", err)

View File

@@ -16,6 +16,17 @@ export const ConfigEditor = (props: Props) => {
// Apply some defaults on initial render // Apply some defaults on initial render
useEffect(() => { useEffect(() => {
const { jsonData, secureJsonFields } = options;
// Set secureJsonFields.password to password and then remove it from config
const { password, ...restJsonData } = jsonData;
if (!secureJsonFields?.password) {
if (!options.secureJsonData) {
options.secureJsonData = {};
}
options.secureJsonData.password = password;
}
onOptionsChange({ onOptionsChange({
...options, ...options,
jsonData: { jsonData: {
@@ -23,7 +34,7 @@ export const ConfigEditor = (props: Props) => {
trendsFrom: '', trendsFrom: '',
trendsRange: '', trendsRange: '',
cacheTTL: '', cacheTTL: '',
...options.jsonData, ...restJsonData,
}, },
}); });
@@ -231,10 +242,6 @@ const secureJsonDataChangeHandler = (
) => { ) => {
onChange({ onChange({
...value, ...value,
jsonData: {
...value.jsonData,
password: '',
},
secureJsonData: { secureJsonData: {
...value.secureJsonData, ...value.secureJsonData,
[key]: event.currentTarget.value, [key]: event.currentTarget.value,