validator: function()

in plugin-azure-server/src/main/resources/buildServerResources/images.vm.js [221:261]


        validator: function (value) {
          if (!value) return true;
          var root;
          try {
            root = JSON.parse(value);
          } catch (error) {
            console.log("Unable to parse template: " + error);
            return false;
          }

          if (!root) {
            console.log("Invalid template object");
            return false;
          }

          if (self.disableTemplateModification() === true) {
            if (!root.parameters) {
              console.log("No parameters defined");
              return false;
            }

            if (!root.resources) {
              console.log("No resources defined");
              return false;
            }
          } else {
            if (!root.parameters || !root.parameters.vmName) {
              console.log("No 'vmName' parameter defined");
              return false;
            }

            if (!root.resources || !ko.utils.arrayFirst(root.resources, function (resource) {
              return resource.name === "[parameters('vmName')]";
            })) {
              console.log("No virtual machine resource with name set to vmName parameter");
              return false;
            }
          }

          return true;
        },