예제 #1
0
        public ExecutableResult Execute(string keyValue)
        {
            var network = _xenNetworkInformation.Get();

            _setNetworkInterface.Execute(network.Interfaces.Values.ToList());
            _setNetworkRoutes.Execute(network);

            var providerData = _xenProviderDataInformation.Get();
            var userMetadata = _xenUserMetadata.GetKeys();

            _setProviderData.Execute(providerData, userMetadata);

            if (string.IsNullOrEmpty(keyValue) || !keyValue.StartsWith("nohostname"))
            {
                var hostname       = _xenStore.ReadVmData("hostname");
                var hostnameResult = _setHostname.SetHostname(hostname);
                return(new ExecutableResult()
                {
                    ExitCode = hostnameResult
                });
            }

            return(new ExecutableResult()
            {
                ExitCode = "0"
            });
        }
        public ExecutableResult Execute(string keyValue)
        {
            var network = _xenNetworkInformation.Get();

            _setNetworkInterface.Execute(network.Interfaces.Values.ToList());
            _setNetworkRoutes.Execute(network);

            var providerData = _xenProviderDataInformation.Get();

            _setProviderData.Execute(providerData);

            var hostname = _xenStore.ReadVmData("hostname");

            _setHostname.SetHostname(hostname);

            return(new ExecutableResult());
        }
예제 #3
0
 public ExecutableResult Execute(string value)
 {
     _logger.Log("Setting hostname to: " + value);
     try
     {
         var returnValue = _setHostnameAction.SetHostname(value);
         return(new ExecutableResult {
             ExitCode = returnValue
         });
     }
     catch (Exception ex)
     {
         _logger.Log("Exception was : " + ex.Message + "\nStackTrace Was: " + ex.StackTrace);
         return(new ExecutableResult {
             Error = new List <string> {
                 "SetHostname failed"
             }, ExitCode = "1"
         });
     }
 }