protected override void CreateChildControls()
        {
            this.ddlSourceServer = new ActionServerPicker
            {
                ID            = "ddlSourceServer",
                ShowGroups    = false,
                EnvironmentId = this.EnvironmentId
            };

            this.ddlTargetServer = new ActionServerPicker
            {
                ID            = "ddlTargetServer",
                EnvironmentId = this.EnvironmentId
            };

            this.ctlSourcePath = new Inedo.Web.FileBrowserTextBox
            {
                IncludeFiles    = false,
                BindToControlId = this.ddlSourceServer.ID,
                DefaultText     = "$CurrentDirectory"
            };

            this.ctlTargetPath = new Inedo.Web.FileBrowserTextBox
            {
                IncludeFiles    = false,
                BindToControlId = this.ddlTargetServer.ID,
                DefaultText     = "$CurrentDirectory"
            };

            this.chkDelete = new CheckBox
            {
                ID      = "chkDelete",
                Checked = true,
                Text    = "Delete files/directories not present in source"
            };

            this.txtIncludeFileMasks = new ValidatingTextBox
            {
                TextMode = TextBoxMode.MultiLine,
                Rows     = 4,
                Text     = "*"
            };

            this.Controls.Add(
                new SlimFormField("From server:", this.ddlSourceServer),
                new SlimFormField("From directory:", this.ctlSourcePath),
                new SlimFormField("To server:", this.ddlTargetServer),
                new SlimFormField("To directory:", this.ctlTargetPath),
                new SlimFormField("File/directory mask:", this.txtIncludeFileMasks)
            {
                HelpText = "Files and folders matching the specified masks (entered one per line) will be transferred. "
                           + "For example, if you want to transfer all files except *.src files, enter the following lines "
                           + "(without quotes): \"*\" and \"!*.src\""
            },
                new SlimFormField("Additional options:", this.chkDelete)
                );
        }
Example #2
0
        protected override void CreateChildControls()
        {
            this.txtFileName = new Inedo.Web.FileBrowserTextBox {
                IncludeFiles = true, Required = true
            };

            this.Controls.Add(
                new SlimFormField("Zip file path:", this.txtFileName)
                );
        }
Example #3
0
 public AzureActionWithConfigBaseEditor()
 {
     this.txtConfigText = new TextBox()
     {
         TextMode = TextBoxMode.MultiLine, Width = 300, Rows = 4
     };
     this.ffpConfigFilePath = new Inedo.Web.FileBrowserTextBox()
     {
         Width = 300, ServerId = 1
     };
 }
        protected override void CreateChildControls()
        {
            this.txtFileName = new Inedo.Web.FileBrowserTextBox
            {
                IncludeFiles = true,
                DefaultText  = "$CurrentDirectory\\archive.zip"
            };

            this.Controls.Add(
                new SlimFormField("To file:", this.txtFileName)
                );
        }
Example #5
0
        public AzureConfigurerEditor()
        {
            this.sdkPath    = new Inedo.Web.FileBrowserTextBox();
            this.sdkPath.ID = "sdkPath";

            this.txtSubscriptionID = new ValidatingTextBox()
            {
                Width = 300
            };
            this.txtCertificateName = new ValidatingTextBox()
            {
                Width = 300
            };
        }
        protected override void CreateChildControls()
        {
            this.txtWorkingDirectory = new Inedo.Web.FileBrowserTextBox {
                IncludeFiles = false, DefaultText = "$CurrentDirectory"
            };
            this.txtExePath = new Inedo.Web.FileBrowserTextBox {
                IncludeFiles = true, Required = true,
            };
            this.txtArguments           = new ValidatingTextBox();
            this.chkFailOnStandardError = new CheckBox {
                Text = "Fail if any text is written to standard error"
            };
            this.chkUseExitCode = new CheckBox {
                Text = "Succeed only when exit code is..."
            };
            this.chkImportBuildMasterVariables = new CheckBox {
                Text = "Import BuildMaster variables to environment"
            };

            this.ddlExitCode = new DropDownList
            {
                Items =
                {
                    new ListItem("0",           CommandLineSuccessExitCode.Zero.ToString()),
                    new ListItem("Positive",    CommandLineSuccessExitCode.Positive.ToString()),
                    new ListItem("Nonnegative", CommandLineSuccessExitCode.NonNegative.ToString()),
                    new ListItem("Nonzero",     CommandLineSuccessExitCode.NonZero.ToString()),
                    new ListItem("Negative",    CommandLineSuccessExitCode.Negative.ToString())
                }
            };

            var ctlExitCode = new Div(this.ddlExitCode);

            this.Controls.Add(
                new SlimFormField("Executable file:", this.txtExePath),
                new SlimFormField("Process working directory:", this.txtWorkingDirectory),
                new SlimFormField("Arguments:", this.txtArguments),
                new SlimFormField(
                    "Error conditions:",
                    new Div(this.chkFailOnStandardError),
                    new Div(this.chkUseExitCode),
                    ctlExitCode
                    ),
                new SlimFormField("Additional options:", this.chkImportBuildMasterVariables)
                );

            this.Controls.BindVisibility(this.chkUseExitCode, ctlExitCode);
        }
Example #7
0
        protected override void CreateChildControls()
        {
            this.txtInstallPath = new Inedo.Web.FileBrowserTextBox
            {
                ServerId     = this.ServerId,
                DefaultText  = "$CurrentDirectory\\packages",
                IncludeFiles = false
            };

            this.Controls.Add(
                new SlimFormField("To:", this.txtInstallPath)
            {
                HelpText = "By default, packages will be installed to the <i>packages</i> folder at the solution level. If you have multiple solutions in the specified path or need to override this behavior, you may set the path explicitly here."
            }
                );
        }
        protected override void CreateChildControls()
        {
            this.txtFileName = new Inedo.Web.FileBrowserTextBox
            {
                IncludeFiles = true,
                Required     = true
            };

            this.txtFileContents = new TextBox
            {
                TextMode = TextBoxMode.MultiLine,
                Wrap     = false,
                Rows     = 20
            };

            this.Controls.Add(
                new SlimFormField("File path:", this.txtFileName),
                new SlimFormField("File Contents:", this.txtFileContents)
                );
        }
Example #9
0
 protected override void CreateChildControls()
 {
     base.CreateChildControls();
     txtLabel = new ValidatingTextBox()
     {
         Width = 300
     };
     chkStartDeployment = new CheckBox()
     {
         Width = 300
     };
     txtStorageAccountName = new ValidatingTextBox()
     {
         Width = 300, Required = true
     };
     txtStorageAccessKey = new ValidatingTextBox()
     {
         Width = 300, Required = true
     };
     ffpPackageFile = new Inedo.Web.FileBrowserTextBox()
     {
         ServerId = 1
     };
     txtPackageFileStorageLocation = new ValidatingTextBox()
     {
         Width = 300
     };
     chkDeleteFromStorage = new CheckBox()
     {
         Width = 300
     };
     this.Controls.Add(
         new SlimFormField("Label:", txtLabel),
         new SlimFormField("Start deployment:", chkStartDeployment),
         new SlimFormField("Blob Storage account name:", txtStorageAccountName),
         new SlimFormField("Blob Storage access key:", txtStorageAccessKey),
         new SlimFormField("Package file disk location:", ffpPackageFile),
         new SlimFormField("Package file blob location:", txtPackageFileStorageLocation),
         new SlimFormField("Delete staged package from Blob Storage when complete", chkDeleteFromStorage)
         );
 }
Example #10
0
        protected override void CreateChildControls()
        {
            this.txtNuspecFile = new Inedo.Web.FileBrowserTextBox
            {
                ServerId     = this.ServerId,
                IncludeFiles = true,
                Required     = true
            };

            this.txtVersions = new ValidatingTextBox
            {
                TextMode = TextBoxMode.MultiLine,
                Required = true,
                Rows     = 3
            };

            this.Controls.Add(
                new SlimFormField("Nuspec file:", this.txtNuspecFile),
                new SlimFormField("Dependencies:", this.txtVersions)
            {
                HelpText = "Provide a list of dependency versions to write to the .nuspec file in the format <i>Id=Version</i> (one per line). For example:<br/><i>jQuery=[1.9.1]<br/>Internal.Library=[$ReleaseName]</i>"
            }
                );
        }
Example #11
0
        protected override void CreateChildControls()
        {
            this.txtTo = new ValidatingTextBox
            {
                Required = true,
                TextMode = TextBoxMode.MultiLine,
                Rows     = 5
            };

            this.txtSubject = new ValidatingTextBox
            {
                MaxLength = 255,
                Required  = true
            };

            this.txtBody = new TextBox
            {
                TextMode = TextBoxMode.MultiLine,
                Rows     = 10
            };

            this.txtAttachment = new Inedo.Web.FileBrowserTextBox
            {
                IncludeFiles = true,
                DefaultText  = "no attachment"
            };

            this.ddlServer = new ActionServerPicker
            {
                ID            = "bm-action-server-id",
                ClientIDMode  = ClientIDMode.Static,
                EnvironmentId = this.EnvironmentId,
                ServerId      = this.ServerId
            };

            this.chkAttachFile = new CheckBox {
                Text = "Attach file..."
            };

            this.chkIsBodyHtml = new CheckBox {
                Text = "Send as HTML"
            };

            var ctlAttachmentContainer = new Div(
                new Div("From server:"),
                this.ddlServer,
                new Div("From file:"),
                this.txtAttachment
                );

            this.Controls.Add(
                new SlimFormField("To address(es):", this.txtTo)
            {
                HelpText = "Multiple recipients should be separated with a semicolon or newline."
            },
                new SlimFormField("Subject:", this.txtSubject),
                new SlimFormField("Body text:", new Div(this.txtBody), new Div(this.chkIsBodyHtml)),
                new SlimFormField("Attachment:", chkAttachFile, ctlAttachmentContainer)
                );

            this.Controls.BindVisibility(chkAttachFile, ctlAttachmentContainer);
        }
Example #12
0
        // this is all non-canonical
#pragma warning disable CS0618 // Type or member is obsolete

        protected override void CreateChildControls()
        {
            this.ffpServiceDefinition = new Inedo.Web.FileBrowserTextBox() { ID = "serviceDefinition", IncludeFiles = true, ServerId = 1 };
            this.txtWebRoleName = new ValidatingTextBox() { Width = 300 };
            this.ffpWebRoleBinDir = new Inedo.Web.FileBrowserTextBox() { ID = "ffpWebRoleBinDir", ServerId = 1 };
            this.txtWebRoleAssemblyName = new ValidatingTextBox() { Width = 300 };
            this.txtWebRoleSiteRoleName = new ValidatingTextBox() { Width = 300 };
            this.txtWebRoleSiteVirtualPath = new ValidatingTextBox() { Width = 300 };
            this.txtWebRoleSitePhysicaPath = new ValidatingTextBox() { Width = 300 };
            this.txtWorkerRoleName = new ValidatingTextBox() { Width = 300 };
            this.ffpWorkerRoleBinDir = new Inedo.Web.FileBrowserTextBox() { ID = "ffpWorkerRoleBinDir", ServerId = 1 };
            this.txtWorkerRoleAssemblyName = new ValidatingTextBox() { Width = 300 };
            this.txtRolePropertiesFileRoleName = new ValidatingTextBox() { Width = 300 };
            this.ffpPropertiesFile = new Inedo.Web.FileBrowserTextBox() { ID = "ffpPropertiesFile", IncludeFiles = true, ServerId = 1 };
            this.chkUseCTPPackageFormat = new CheckBox() { Width = 300, Text = "Use CTP Package Format", Checked = true };
            this.ffpOutput = new Inedo.Web.FileBrowserTextBox() { ID = "ffpOutput", IncludeFiles = true, ServerId = 1 };
            this.chkCopyOnly = new CheckBox() { Width = 300, Text = "Copy Only" };
            this.txtAdditionalArguments = new ValidatingTextBox() { Width = 300 };
            this.Controls.Add(
                new FormFieldGroup("Service Definition",
                    "Provide the path to the default service definition file (ServiceDefinition.csdef) or the explicit file name.",
                    false,
                    new StandardFormField("Path:", this.ffpServiceDefinition)
                ),
                new FormFieldGroup("Web Role",
                    "Specify the name of the web role, the path to the \\bin directory of the web application output, and optionally, the " +
                    "file name of the assembly that contains the web role. If there is no web role for this project, leave these " +
                    "fields blank. If more than 1 web role exists, use the additional arguments section with the format: <br /><br />" +
                    HttpUtility.HtmlEncode("/role:<rolename>;[<role-directory>];[<role-entrypoint-DLL>]"),
                    false,
                    new StandardFormField("Role Name:", this.txtWebRoleName),
                    new StandardFormField("Bin Directory:", this.ffpWebRoleBinDir),
                    new StandardFormField("Assembly Name:",this.txtWebRoleAssemblyName)
                ),
                new FormFieldGroup("Site",
                    "Specify a site name for the web role, and a virtual to physical path mapping. If more than 1 mapping is required, " +
                    "use the additional arguments section with the format: <br /><br />" +
                    HttpUtility.HtmlEncode("/sites:<rolename>;<virtual-path1>;<physical-path1>;..."),
                    false,
                    new StandardFormField("Role Name:", this.txtWebRoleSiteRoleName),
                    new StandardFormField("Virtual Path:", this.txtWebRoleSiteVirtualPath),
                    new StandardFormField("Physical Path:",this.txtWebRoleSitePhysicaPath)
                ),
                new FormFieldGroup("Worker Role",
                    "Specify the name of the worker role, the path to the \\bin directory of the project output, and the assembly " +
                    "that contains the entry point for the worker role. If there is no worker role for this project, leave these " + 
                    "fields blank. If more than 1 worker role exists, use the additional arguments section with the format: <br /><br />" +
                    HttpUtility.HtmlEncode("/role:<rolename>;[<role-directory>];[<role-entrypoint-DLL>]"),
                    false,
                    new StandardFormField("Role Name:", this.txtWorkerRoleName),
                    new StandardFormField("Bin Directory:",this.ffpWorkerRoleBinDir),
                    new StandardFormField("Assembly Name:",this.txtWorkerRoleAssemblyName)
                ),
                new FormFieldGroup("Role Properties",
                    "Role properties file information.",
                    false,
                    new StandardFormField("Role Name:",this.txtRolePropertiesFileRoleName),
                    new StandardFormField("Path:",ffpPropertiesFile)
                ),
                new FormFieldGroup("Options",
                    "Specify whether the new package format should be used, and whether to create a directory layout for the role " +
                    "binaries in order to run the service locally. To create a .cspkg, leave Copy Only unchecked.",
                    false,
                    new StandardFormField("",this.chkUseCTPPackageFormat),
                    new StandardFormField("",this.chkCopyOnly)
                ),
                new FormFieldGroup("Additional Arguments",
                    "Specify any additional arguments to pass to cspack.exe.",
                    false,
                    new StandardFormField("Additional Arguments:", this.txtAdditionalArguments)
                ),
                new FormFieldGroup("Output",
                    "Specify the file name of the package output (if Copy Only is unchecked), or the output directory for the role binaries.",
                    true,
                    new StandardFormField("Path:",this.ffpOutput)
                )
            );
        }