Commit d013025c authored by Leonardo Menezes's avatar Leonardo Menezes
Browse files

load default cluster settings

parent 1274bafe
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -186,7 +186,7 @@ trait ElasticClient {
  }

  def getClusterSettings(target: ElasticServer) = {
    val path = s"/_cluster/settings?flat_settings=true"
    val path = s"/_cluster/settings?flat_settings=true&include_defaults=true"
    execute(s"${target.host}$path", "GET", None, target.authentication)
  }

+5 −8
Original line number Diff line number Diff line
@@ -321,14 +321,11 @@ angular.module('cerebro').controller('ClusterSettingsController', ['$scope',
      $scope.pendingChanges = 0;
      ClusterSettingsDataService.getClusterSettings(
        function(response) {
          angular.forEach(response.persistent, function(value, property) {
          ['persistent', 'transient', 'defaults'].forEach(function(group) {
            angular.forEach(response[group], function(value, property) {
              $scope.settings[property] = value;
              $scope.originalSettings[property] = value;
            });
          // transient settings have priority over persistent settings
          angular.forEach(response.transient, function(value, property) {
            $scope.settings[property] = value;
            $scope.originalSettings[property] = value;
          });
        },
        function(error) {
+5 −8
Original line number Diff line number Diff line
@@ -59,14 +59,11 @@ angular.module('cerebro').controller('ClusterSettingsController', ['$scope',
      $scope.pendingChanges = 0;
      ClusterSettingsDataService.getClusterSettings(
        function(response) {
          angular.forEach(response.persistent, function(value, property) {
          ['persistent', 'transient', 'defaults'].forEach(function(group) {
            angular.forEach(response[group], function(value, property) {
              $scope.settings[property] = value;
              $scope.originalSettings[property] = value;
            });
          // transient settings have priority over persistent settings
          angular.forEach(response.transient, function(value, property) {
            $scope.settings[property] = value;
            $scope.originalSettings[property] = value;
          });
        },
        function(error) {
+4 −3
Original line number Diff line number Diff line
@@ -24,7 +24,8 @@ describe('ClusterSettingsController', function() {
    it('loads cluster settings', function () {
      var settings = {
        persistent: {setting: 'some value', setting_2: 'other value'},
        transient: {setting: 'some other value'}
        transient: {setting: 'some other value'},
        defaults: { setting_3: 'still another'}
      };
      this.ClusterSettingsDataService.getClusterSettings = function(success, error) {
        success(settings);
@@ -32,8 +33,8 @@ describe('ClusterSettingsController', function() {
      spyOn(this.ClusterSettingsDataService, "getClusterSettings").andCallThrough();
      this.scope.setup();
      expect(this.ClusterSettingsDataService.getClusterSettings).toHaveBeenCalledWith(jasmine.any(Function), jasmine.any(Function));
      expect(this.scope.settings).toEqual({setting: 'some other value', setting_2: 'other value'});
      expect(this.scope.originalSettings).toEqual({setting: 'some other value', setting_2: 'other value'});
      expect(this.scope.settings).toEqual({setting: 'some other value', setting_2: 'other value', setting_3: 'still another'});
      expect(this.scope.originalSettings).toEqual({setting: 'some other value', setting_2: 'other value', setting_3: 'still another'});
      expect(this.scope.changes).toEqual({});
      expect(this.scope.pendingChanges).toEqual(0);
    });