예제 #1
0
    protected void buttonAddDp_OnClick(object sender, EventArgs e)
    {
        RequiresAuthorization(Authorizations.UpdateAdmin);
        var distributionPoint = new DistributionPoint
        {
            DisplayName = txtDisplayName.Text,
            Server = txtServer.Text,
            Protocol = ddlProtocol.Text,
            ShareName = txtShareName.Text,
            Domain = txtDomain.Text,
            RwUsername = txtRwUsername.Text,
            RwPassword = new Helpers.Encryption().EncryptText(txtRwPassword.Text),
            RoUsername = txtRoUsername.Text,
            RoPassword = new Helpers.Encryption().EncryptText(txtRoPassword.Text),
            IsPrimary = Convert.ToInt16(chkPrimary.Checked),
            PhysicalPath = chkPrimary.Checked ? txtPhysicalPath.Text : "",           
            IsBackend = Convert.ToInt16(chkBackend.Checked),
            BackendServer = chkBackend.Checked ? txtBackendServer.Text : ""
        };

        var result = BLL.DistributionPoint.AddDistributionPoint(distributionPoint);
        if (result.IsValid)
        {
            EndUserMessage = "Successfully Created Distribution Point";
            Response.Redirect("~/views/admin/dp/edit.aspx?level=2&dpid=" + distributionPoint.Id);
            
        }
        else
        {
            EndUserMessage = result.Message;
        }

    }
예제 #2
0
    protected void btnSubmit_OnClick(object sender, EventArgs e)
    {
        if (ValidateForm())
        {
            var adminUser = BLL.User.GetUser("clonedeploy");
            adminUser.Salt = Helpers.Utility.CreateSalt(64);
            adminUser.Password = Helpers.Utility.CreatePasswordHash(txtUserPwd.Text, adminUser.Salt);
            adminUser.Token = Utility.GenerateKey();
            BLL.User.UpdateUser(adminUser);

            string tftpPath = null;
            if (Environment.OSVersion.ToString().Contains("Unix"))
            {
                tftpPath = "/tftpboot/";
            }
            else
            {
                tftpPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
                Path.DirectorySeparatorChar + "clonedeploy" +
                Path.DirectorySeparatorChar + "tftpboot" + Path.DirectorySeparatorChar;
            }
            var listSettings = new List<Models.Setting>
            {
                new Models.Setting
                {
                    Name = "Server IP",
                    Value = txtServerIP.Text,
                    Id = Setting.GetSetting("Server IP").Id
                },
                new Models.Setting
                {
                    Name = "Tftp Path",
                    Value = tftpPath,
                    Id = Setting.GetSetting("Tftp Path").Id
                }

            };
            Setting.UpdateSetting(listSettings);

            var distributionPoint = new Models.DistributionPoint();
            distributionPoint.DisplayName = "Default";
            distributionPoint.Server = "[server-ip]";
            distributionPoint.Protocol = "SMB";
            distributionPoint.ShareName = "cd_share";
            distributionPoint.Domain = "Workgroup";
            distributionPoint.RwUsername = "******";
            distributionPoint.RwPassword = new Helpers.Encryption().EncryptText(txtReadWrite.Text);
            distributionPoint.RoUsername = "******";
            distributionPoint.RoPassword = new Helpers.Encryption().EncryptText(txtReadOnly.Text);
            distributionPoint.IsPrimary = 1;
            if (Environment.OSVersion.ToString().Contains("Unix"))
                distributionPoint.PhysicalPath = "/cd_dp";
            else
            {
                distributionPoint.PhysicalPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
                                                 Path.DirectorySeparatorChar + "clonedeploy" +
                                                 Path.DirectorySeparatorChar + "cd_dp";
            }
            BLL.DistributionPoint.AddDistributionPoint(distributionPoint);

            var defaultBootMenu = new BLL.Workflows.DefaultBootMenu();
            defaultBootMenu.Kernel = Settings.DefaultKernel32;
            defaultBootMenu.BootImage = "initrd.xz";
            defaultBootMenu.CreateGlobalDefaultBootMenu();

            var cdVersion = BLL.CdVersion.Get(1);
            cdVersion.FirstRunCompleted = 1;

            if (BLL.CdVersion.Update(cdVersion))
            {
                EndUserMessage = "Setup Complete";
                Response.Redirect("~/views/dashboard/dash.aspx");
            }
        }
    }
예제 #3
0
    protected void btnSubmit_OnClick(object sender, EventArgs e)
    {
        string unixDist = null;

        if (ValidateForm())
        {
            var adminUser = BLL.User.GetUser("clonedeploy");
            adminUser.Salt     = Helpers.Utility.CreateSalt(64);
            adminUser.Password = Helpers.Utility.CreatePasswordHash(txtUserPwd.Text, adminUser.Salt);
            adminUser.Token    = Utility.GenerateKey();
            BLL.User.UpdateUser(adminUser);

            string tftpPath = null;
            if (Environment.OSVersion.ToString().Contains("Unix"))
            {
                string dist     = null;
                var    distInfo = new ProcessStartInfo
                {
                    UseShellExecute        = false,
                    FileName               = "uname",
                    RedirectStandardOutput = true,
                    RedirectStandardError  = true
                };

                using (var process = Process.Start(distInfo))
                    if (process != null)
                    {
                        dist = process.StandardOutput.ReadToEnd();
                    }

                unixDist = dist != null && dist.ToLower().Contains("bsd") ? "bsd" : "linux";
                tftpPath = unixDist == "bsd" ? "/usr/pbi/clonedeploy-amd64/tftpboot/" : "/tftpboot/";
            }
            else
            {
                tftpPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
                           Path.DirectorySeparatorChar + "clonedeploy" +
                           Path.DirectorySeparatorChar + "tftpboot" + Path.DirectorySeparatorChar;
            }
            var listSettings = new List <Models.Setting>
            {
                new Models.Setting
                {
                    Name  = "Server IP",
                    Value = txtServerIP.Text,
                    Id    = Setting.GetSetting("Server IP").Id
                },
                new Models.Setting
                {
                    Name  = "Tftp Path",
                    Value = tftpPath,
                    Id    = Setting.GetSetting("Tftp Path").Id
                }
            };

            if (unixDist == "bsd")
            {
                listSettings.Add(new Models.Setting
                {
                    Name  = "Sender Args",
                    Value = "--interface " + txtServerIP.Text,
                    Id    = BLL.Setting.GetSetting("Sender Args").Id
                });
            }
            Setting.UpdateSetting(listSettings);

            var distributionPoint = new Models.DistributionPoint();
            distributionPoint.DisplayName = "Default";
            distributionPoint.Server      = "[server-ip]";
            distributionPoint.Protocol    = "SMB";
            distributionPoint.ShareName   = "cd_share";
            distributionPoint.Domain      = "Workgroup";
            distributionPoint.RwUsername  = "******";
            distributionPoint.RwPassword  = new Helpers.Encryption().EncryptText(txtReadWrite.Text);
            distributionPoint.RoUsername  = "******";
            distributionPoint.RoPassword  = new Helpers.Encryption().EncryptText(txtReadOnly.Text);
            distributionPoint.IsPrimary   = 1;
            if (Environment.OSVersion.ToString().Contains("Unix"))
            {
                distributionPoint.PhysicalPath = unixDist == "bsd" ? "/usr/pbi/clonedeploy-amd64/cd_dp" : "/cd_dp";
            }
            else
            {
                distributionPoint.PhysicalPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
                                                 Path.DirectorySeparatorChar + "clonedeploy" +
                                                 Path.DirectorySeparatorChar + "cd_dp";
            }
            BLL.DistributionPoint.AddDistributionPoint(distributionPoint);

            var defaultBootMenu = new BLL.Workflows.DefaultBootMenu();
            defaultBootMenu.Kernel    = Settings.DefaultKernel32;
            defaultBootMenu.BootImage = "initrd.xz";
            defaultBootMenu.Type      = "standard";
            defaultBootMenu.CreateGlobalDefaultBootMenu();

            var cdVersion = BLL.CdVersion.Get(1);
            cdVersion.FirstRunCompleted = 1;

            if (BLL.CdVersion.Update(cdVersion))
            {
                EndUserMessage = "Setup Complete";
                Response.Redirect("~/views/dashboard/dash.aspx");
            }
        }
    }
예제 #4
0
    protected void btnSubmit_OnClick(object sender, EventArgs e)
    {
        string unixDist = null;
        if (ValidateForm())
        {
            var adminUser = BLL.User.GetUser("clonedeploy");
            adminUser.Salt = Helpers.Utility.CreateSalt(64);
            adminUser.Password = Helpers.Utility.CreatePasswordHash(txtUserPwd.Text, adminUser.Salt);
            adminUser.Token = Utility.GenerateKey();
            BLL.User.UpdateUser(adminUser);

            string tftpPath = null;
            if (Environment.OSVersion.ToString().Contains("Unix"))
            {
                string dist = null;
                var distInfo = new ProcessStartInfo
                {
                    UseShellExecute = false,
                    FileName = "uname",
                    RedirectStandardOutput = true,
                    RedirectStandardError = true
                };

                using (var process = Process.Start(distInfo))
                    if (process != null) dist = process.StandardOutput.ReadToEnd();

                unixDist = dist != null && dist.ToLower().Contains("bsd") ? "bsd" : "linux";
                tftpPath = unixDist == "bsd" ? "/usr/pbi/clonedeploy-amd64/tftpboot/" : "/tftpboot/";

            }
            else
            {
                tftpPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
                Path.DirectorySeparatorChar + "clonedeploy" +
                Path.DirectorySeparatorChar + "tftpboot" + Path.DirectorySeparatorChar;
            }
            var listSettings = new List<Models.Setting>
            {
                new Models.Setting
                {
                    Name = "Server IP",
                    Value = txtServerIP.Text,
                    Id = Setting.GetSetting("Server IP").Id
                },
                new Models.Setting
                {
                    Name = "Tftp Path",
                    Value = tftpPath,
                    Id = Setting.GetSetting("Tftp Path").Id
                }
            };

            if (unixDist == "bsd")
            {
                listSettings.Add(new Models.Setting
                {
                    Name = "Sender Args",
                    Value = "--interface " + txtServerIP.Text,
                    Id = BLL.Setting.GetSetting("Sender Args").Id
                });
            }
            Setting.UpdateSetting(listSettings);

            var distributionPoint = new Models.DistributionPoint();
            distributionPoint.DisplayName = "Default";
            distributionPoint.Server = "[server-ip]";
            distributionPoint.Protocol = "SMB";
            distributionPoint.ShareName = "cd_share";
            distributionPoint.Domain = "Workgroup";
            distributionPoint.RwUsername = "******";
            distributionPoint.RwPassword = new Helpers.Encryption().EncryptText(txtReadWrite.Text);
            distributionPoint.RoUsername = "******";
            distributionPoint.RoPassword = new Helpers.Encryption().EncryptText(txtReadOnly.Text);
            distributionPoint.IsPrimary = 1;
            if (Environment.OSVersion.ToString().Contains("Unix"))
                distributionPoint.PhysicalPath = unixDist == "bsd" ? "/usr/pbi/clonedeploy-amd64/cd_dp" : "/cd_dp";
            else
            {
                distributionPoint.PhysicalPath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86) +
                                                 Path.DirectorySeparatorChar + "clonedeploy" +
                                                 Path.DirectorySeparatorChar + "cd_dp";
            }
            BLL.DistributionPoint.AddDistributionPoint(distributionPoint);

            var defaultBootMenu = new BLL.Workflows.DefaultBootMenu();
            defaultBootMenu.Kernel = Settings.DefaultKernel32;
            defaultBootMenu.BootImage = "initrd.xz";
            defaultBootMenu.Type = "standard";
            defaultBootMenu.CreateGlobalDefaultBootMenu();

            var cdVersion = BLL.CdVersion.Get(1);
            cdVersion.FirstRunCompleted = 1;

            if (BLL.CdVersion.Update(cdVersion))
            {
                EndUserMessage = "Setup Complete";
                Response.Redirect("~/views/dashboard/dash.aspx");
            }
        }
    }