Navigation

    Inedo Community Forums

    Forums

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. jstarbird_7831
    3. Posts
    J
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    Posts made by jstarbird_7831

    • RE: Powershell script works outside BuildMaster but not from BuildMaster

      I believe we finally figured out the issue.
      The Invoke-Sqlcmd does not pass thru plain return values and when run via BuildMaster this was causing the execution to fail. I say while in BuildMaster as I can execute the exact same script outside BuildMaster and not have an error. Even though the try/catch is in the powershelll script.
      I know it shouldn't matter about BuildMaster, just explaining what is occurring.

      In any event if we change the Stored Procedure to do a Return Select 0 rather than Return 0 I can then remove the try/catch and use an IF on the returned row value in the Powershell script.

      Once I did that it is working.

      posted in Support
      J
      jstarbird_7831
    • Powershell script works outside BuildMaster but not from BuildMaster

      I have a Powershell script the executes a stored procedure and the output to BuildMaster shows all the params it is passing and all the values are correct. However, it will fail complaining about a param of S and a Null value. There is no Null value being passed nor is the any param of S.
      I can take the exact output that is shown in the BuildMaster log and execute that SP in the db and it works without issue.

      I can even take the Powershell script and run it with the same values and it will run.

      Does BuildMaster parse the scripts before running them? This is a script saved in the Script Assets area of BuildMaster.
      Does it run Powershell in some different way? Just trying to figure out why this is happening when I can run it outside BuildMaster just fine.
      This particular SP uses a combination of Strings and Ints for params.

      I know it's not a permissions issue or an SP execution permission as there are some simpler ones that do work.

      Here is what I am doing:

      param([string]$dbServer,[string]$dbName,[string]$SerCustId,[string]$CurVersion,[string]$SerEventLogName,
      			[string]$SerInboundIp,$SerInboundPort,$SerMarketId,[string]$SerOrderImageUrl,[string]$SerOutboundIp,
      			$SerOutboundPort,[string]$SerRuntimeUser,[string]$SerRuntimeUserPwd,[string]$SerSMPatientId,[string]$InstallPath,
      			[string]$SerLogsPath,[string]$SerInboundLogsPath,[string]$SerOutboundLogsPath)
      
      import-module SQLCmd
      
      try {
          $sqlQuery = "exec usp_SerCustomer_Search '"+ $SerCustId +"', NULL, NULL" 
          $dbChk = Invoke-SqlCmd2 -ServerInstance $dbServer -Database $dbName -Query $sqlQuery -ErrorAction Stop
      } Catch {
          write-error "Error: Failed to execute usp_SerCustomer_Search stored procedure. Error Info: $_ "
      }
      
      if ($dbChk.Table.Rows.Count -gt 0)
      {
          $conCurRec = $dbChk.ConcurrencyRecord
      	$sqlQuery = @"
      	exec usp_SerCustomer_Update 
              '$SerCustId',
      		'$InstallPath',
      		'$CurVersion',
      		$conCurRec,
      		'$SerRuntimeUser',
      		'$SerRuntimeUserPwd',
      		'$SerLogsPath',
      		'$SerEventLogName',
      		'$SerInboundIp',
      		$SerInboundPort,
      		'$SerInboundLogsPath',
      		'$SerOutboundIp',
      		$SerOutboundPort,
      		'$SerOutboundLogsPath',
      		'$SerOrderImageURL',
      		'$SerSMPatientId'
      "@
      } elseif ($dbChk.Table.Rows.Count -eq 0)
      {
          $sqlQuery = @"
      	exec usp_SerCustomer_Insert 
      		'$SerCustId',
      		'$InstallPath',
      		'$CurVersion',
      		'$SerRuntimeUser',
      		'$SerRuntimeUserPwd',
      		'$SerLogsPath',
      		'$SerEventLogName',
      		'$SerInboundIp',
      		$SerInboundPort,
      		'$SerInboundLogsPath',
      		'$SerOutboundIp',
      		$SerOutboundPort,
      		'$SerOutboundLogsPath',
      		'$SerSMPatientId',
      		$SerMarketId,
      		'$SerOrderImageURL'
      "@
      }
      
      try {
          Invoke-SqlCmd2 -ServerInstance $dbServer -Database $dbName -Query $sqlQuery -ErrorAction Stop
      } Catch {
          write-error "Error: Failed to execute stored procedure to Update or Insert Customer settings. Error Info: $_ "
      }
      

      Product: BuildMaster
      Version: 5.7.3

      posted in Support
      J
      jstarbird_7831
    • Artifact Extraction is locking up

      I am having an issue with the Inedo agent locking up when extracting an artifact on a server.
      We've disabled AV, the agent is running as LocalSystem. The App Pools using the destination are stopped.
      This also causes the BuildMaster server to continue to keep the Executer as running even after doing a Cancel Execution.
      I've checked that no files are being accessed in the destination folder.

      Any ideas?

      Product: BuildMaster
      Version: 5.7.3

      posted in Support
      J
      jstarbird_7831
    • Ensure Virtual Directory with UNC path not working

      I am trying to use Ensure Virtual Directory that is using a path to a network location with a UNC path. This works fine from IIS directly but when I try to use Ensure Virtual Directory it complains about the 's in the path.
      I've tried escaping them with extra slashes without success is there some way to make this work?

      Product: BuildMaster
      Version: 5.7.3

      posted in Support
      J
      jstarbird_7831
    • Problem using PSEval

      I'm sure I'm just doing something wrong here but I haven't been able to figure it out.
      I'm trying to use PSEval in the following:

      set $regExists = $PSEval(Test-Path $regPath);

      The reg path being used is like this:

      HKLM:\SOFTWARE\Wow6432Node\Solutions\Interface (node)

      When it is run via Powershell directly I get true or false. When I run it via a plan in BM i get the Cannot assign a Vector value to a Scalar variable error.

      I've tried variations as well, such as forcing it to string like so:

      set $regExists = $PSEval((Test-Path $regPath).ToString());

      But that ends up giving an error about Missing closing ')' in expression.
      which there isn't one missing.

      Product: BuildMaster
      Version: 5.7.3

      posted in Support
      J
      jstarbird_7831
    • Artifact Comparison report not reporting changes

      The Artifact Comparison report never shows any changes. This is even when there have been changes.
      The action does run successfully but just never shows any differences.
      Should it show differences if files have changed or only if new files are added?

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • Deployed files have incorrect time stamp

      I'm not sure how long this is going on as I had not noticed it and someone else brought it my attention.
      First let me say that the all of the machines involved are on the same time zone.

      I grab an artifact from Jenkins, create a BM artifact and then it gets deployed.
      The BM artifact, if I download it and examine it, has the correct time stamps.
      When the files are deployed to the server they end up with a different timestamp, same date but way off on the time. For example I did on that the time stamp for the files should be 325pm but on the machine it is deployed to it is 825am.
      The files are the correct versions so it's just a confusing thing to people.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • Question on Pipeline variables

      If I have a set of pipeline variables set for a stage and then change those values in the plan during a certain task shouldn't the variable now be that value for the rest of that plan?

      The value is changed in one section and then later it is used in another section. At the later point it's back to what the value is set to in the pipeline.

      It is all run on the same server and same for the same deployable.
      Sample code of what I'm talking about:

      #general
      {
          set $pipelinevar1 = somevalue;
      
          Log-Information value is as set here: $pipelinevar1;
      }
      
      #general
      {
          Log-Information value is as set in pipeline here: $pipelinevar1;
      }
      

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • Intermittent error with Ensure Application Pool

      I am getting an intermittent Unhandled Exception error for Ensure Application Pool when it gets to it's step of Applying Configuration. This is using all of the same property values, same server, same time of day it's run nightly but it will fail with this error intermittently. It will also occur intermittently when run it manually.

      This app pool does previously exist in the environment this error occurs in. At this time I cannot move to a new environment to see if it occurs there.

      I've been unable to find any other reason for this error, the server is not down - several steps prior to this one succeed on the same server, no event log errors on the server of any kind.

      Here is the error info:

      Applying configuration...
          Unhandled exception: System.Runtime.InteropServices.COMException (0x800710D8): The object identifier does not represent a valid object. (Exception from HRESULT: 0x800710D8)
             at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
             at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
             at Inedo.Agents.InedoAgentClientBase.<SendMessageAsync>d__28.MoveNext()
          --- End of stack trace from previous location where exception was thrown ---
             at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
             at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
             at Inedo.Agents.InedoAgentClientBase.<ExecuteCommandAsync>d__26`1.MoveNext()
          --- End of stack trace from previous location where exception was thrown ---
             at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
             at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
             at Inedo.BuildMaster.Extensibility.Agents.TcpAgent.<Inedo-Agents-IRemoteJobExecuter-ExecuteJobAsync>d__34.MoveNext()
          --- End of stack trace from previous location where exception was thrown ---
             at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
             at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
             at Inedo.BuildMaster.Extensibility.Operations.RemoteExecuteOperation.<ExecuteAsync>d__5.MoveNext()
          --- End of stack trace from previous location where exception was thrown ---
             at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
             at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
             at Inedo.BuildMaster.Windows.ServiceApplication.Executions.PlanExecuter.DeploymentPlanExecuter.<Inedo-ExecutionEngine-Executer-IExecutionHostEnvironment-ExecuteActionAsync>d__25.MoveNext()
      

      Thanks.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • RE: Question regarding Imported Deployables

      Follow up question, would the file that is in the artifact already have had the key pairs replaced when the artifact was made? And do I need to deploy the config file first and then make the artifact or will it just automatically be part of it?

      What I'm needing to accomplish is deploy it using the same way if possible without having to replicate storage of the config in different apps. So replacing the key pairs under the new app if possible.

      I know it would make more sense to make it part of the original apps but I cannot here because this is strictly on-demand deployments and we want to keep the restrictions on the pipelines requiring deployment to stages in order for the real apps.

      posted in Support
      J
      jstarbird_7831
    • Question re Ensure App

      Not sure if this is actually supposed to be live yet as I could not find any documentation on it but I was trying to use Ensure Application and while it did work there doesn't seem to be a way to tie it to a specific App Pool.
      Just wanted to check if there was some way of doing so or not.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • Question regarding Imported Deployables

      Before I go and script this out using the API I wanted to check if there was a way to already do this.
      I need to use deployables from two different applications so I have imported them into this new app.
      What I am wondering about is that one of the imported ones has Config files that need to be deployed as well, can I just call Deploy Config from this new app and get that deployables configs or do I need to script that out using the API?

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • How do I a Package Variable value via API

      I was looking to get the value of a Package Variable with the API but I can't seem to find how to do it.
      I've tried using the GetVariableValues passing variations of some/all of the following: Environment_id, Application_Id, Release_Number, Build_Number, and Execution_Id but I always just get no values back.

      I can use the GetPackageVariables but that does not give me their values only their names, at least it doesn't appear to. There are fields in the response that say Variable Value but it is not what the real value is and is instead a string of characters that do not make any sense. The fields are not set as sensitive either.

      The response to GetPackageVariables looks like this:

       [{"Build_Id":723,
       "Variable_Name":"buildVersion","ValueType_Code":"S","Variable_Value":"MTQuMS4wLjI1", "Sensitive_Indicator":false,"EvaluateVariables_Indicator":false},
       {"Build_Id":723,"Variable_Name":"JenkinsBuildNumber","ValueType_Code":"S","Variable_Value":"ODQ3","Sensitive_Indicator":false, "EvaluateVariables_Indicator":false}]
      

      Thanks.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • Question on Importing Deployables

      We want to add the ability to allow our QA dept to deploy to automation servers on demand. This will not be a stage of an app as our automated testing for several apps take to long to complete and so they are usually a build or two behind.
      So I was planning on creating a Fake app and Importing the needed Deployables.
      However, it's the approach from there I'm not sure about.

      How would I allow them to select a version of a that associated app to use without having to go look for it manually in BuildMaster?

      Is this the best approach to cover this?

      Thanks.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • DeployableName variable not being set

      I have an app I am working with right now and the DeployableName is no longer being set unless I specify in the top of plan. I was told before that I did not need to set a plan to a specific deployable.
      Is that the case? Is this a bug?

      This app only has 1 Deployable set and it is set to the release.
      The Release Template also has it set to this deployable as the default.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • Any word on adding Proget Promotion functionality to BuildMaster

      I am unable to use Proget promotion from HTTP post, see other posting from me on that
      http://inedo.com/support/questions/5569 , and I would really like to automate promoting a package.
      I was told back in November that this was a coming feature in the Proget extension but have yet to see it added.
      Will this be coming anytime soon? This would be very valuable considering it doesn't want to work via HTTP posts from BuildMaster.

      Product: BuildMaster
      Version: 5.6.11

      posted in Support
      J
      jstarbird_7831
    • RE: Returning a list from a PSEval execution

      Still not working for me. Still getting the Cannot assign a scalar value to a map variable.
      This is on 5.6.9 and with the latest update to the Windows extension.

      Here is what I have done.

      I have a test Powershell script saved into Script Assests:

      $var1 = 'serviceName'
      $var2 = 'type'
      $hashlist = @{}
      for ($i=1;$i -le 5; $i++) {
          $hashlist.Add($var1+$i,$var2+$i)
      }
      

      and then in the Plan I'm calling it like this:

      PSCall TestApp::TestToWriteOutMappedValues
      (
      items => %hashlist
      );

      # Loop
      foreach $key in @MapKeys(%items)
      {
          set $value = $MapItem(%items,$key);
      
          Log-Information Begin $key    ----    $value;
      }
      posted in Support
      J
      jstarbird_7831
    • RE: Returning a list from a PSEval execution

      When will this fix be pushed out? I've upgraded to 5.6.9 and all the extensions are showing they are up-to-date. I'm following the example given above but I still get the cannot assign a Scalar value to a Map Variable.

      posted in Support
      J
      jstarbird_7831
    • When can we expect next BuildMaster update

      There are a few fixes I'm expecting in the next update so I was wondering if there is an ETA on that being released?

      Thanks.

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • Question re Pipeline Servers or Roles setting

      Is it possible from within a plan to use the Role or Server set in the Servers or Roles setting on a Stage in the Pipeline?
      I tried using ServersInRole without giving it a role but it doesn't seem to use the setting from the Pipeline.

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • Returning a list from a PSEval execution

      I'd like to return a list of values back from a short Powershell script. I can get the PSEval to work but once the value is back in BM I can't get it to let loop through it.

      I can only get the PSEval to run if I do this:
      set $var = @PSEval($PsScript);
      I cannot tell if it's actually returning the values yet though. If I output it to the log it just says System.Collections.Hashtable.

      If I tried to do set @var it would fail saying I could not assign a scalar to a vector.

      But when I try to use the $var it is seen as a scalar so I cannot use it in a loop. Is there someway I could convert it?

      What I'm trying to accomplish is I'll be looking up some things in a database to use during deployments so I need to be able to do that and feed those values into the deployment where they will be looped thru and applied. Ideally this would be in the form of a list of mapped values.

      Here is the short Otterscript I have to test this:

      set $PsScript = >>
      `$var1 = 'serviceName'
      `$var2 = 'type'
      `$serviceList = @{}
      for (`$i=1;`$i -le 5; `$i++) {
          `$serviceList.Add(`$var1+`$i,`$var2+`$i)
      }
      return `$serviceList
      >>;
          
      set $testmap = @PSEval($PsScript);
      

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • Proper script to create Map variable

      First off, can I create a map variable in the pipeline variables?

      If so what would be the format to create one that has a content something like the Deployment Variables, multiple sets of values.

      I've tried searching online but I couldn't find any examples like this.

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • RE: Access to log during plan execution

      For some reason this isn't working for me when it is executed from BuildMaster.
      I can manually put the URL into a browser and it works fine but within BuildMaster it fails with a 400 request. It says the Execution Id is bad but the URL shown in the log has the correct one and I can even use that same URL, copy and paste, in a browser and it works.

      I also tried using PowerShell and with that I keep getting a access denied. The user BuildMaster runs as is full admin on the server and I'm having it run on the BuildMaster server.
      I also tried adding credentials via PowerShell but I'm not sure what type BuildMaster would be expecting.

      Any ideas?

      posted in Support
      J
      jstarbird_7831
    • Access to log during plan execution

      Is there a way from within the a execution to get the info logged so far?
      What I am trying to do is loop thru installing multiple instances(customers) of a service and I want to email out a failure email should one fail while continuing to do the rest of them.
      In that email I'd like be able to include the log up to that point or even have Powershell script that parses out the chunk for that failed customers instance.

      I guess another way, is there a way to redirect the output to a variable as well as to the screen and log. Then I could just access the variable at the point I need to.

      I know the API can get the log after the fact but I'm needing to do this while the overall plan is still executing.

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • RE: Using Powershell documentation header

      thanks, yes I saw that and that is what I am using. I guess the expectation I had was to see the description or synopsis in the dialog when I am adding it a plan.
      Once it's in the plan is useful, the way it displays now, but it's when it's being added that the person adding it needs the info.

      I'll just submit a feature request, it's not a major thing just be nice for people who use them later and may not know exactly what they do without opening the full script itself or reading some other doc outside BM

      posted in Support
      J
      jstarbird_7831
    • Using Powershell documentation header

      I have been putting in the document header info into some scripts but in the UI nothing of it is shown. Is there only certain parts that are shown? If so which parts?
      I'm using the standard format and have tried several different parts but none of the info shows up in the UI.

      Not critical for myself but would be nice to be able to have this for when others begin using BuildMaster.

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • Question about Deploy Artifact operation

      For Deploy Artifact it has the option of the Package to deploy and I was wondering if you have your pipeline set to run stages in order then do you even need to set the value here and can instead just utilize the default value, current package($PackageNumber)?
      Just wondering if it really matters to set it to latest or furthest in that kind of setup.

      Product: BuildMaster
      Version: 5.6.8

      posted in Support
      J
      jstarbird_7831
    • RE: Variables questions

      I looked at the Configuration Variables area but it doesn't mention Pipeline variables and Release templates are not listed directly.
      So in the situation of a Pipeline stage having a variable with a value and then a release template variable set for the same stage with the same name and I'm running it manually so I get the prompt for the release template variables, fill it in and then shouldn't that value override the pipeline stage variable?
      If not then what is the suggested method of allowing a manual run and an automated run with the same plan/pipeline and wanting to be able to supply different values if it is run manually?

      posted in Support
      J
      jstarbird_7831
    • RE: Variables questions

      Thanks. Are those Declarations documented anywhere?
      I had looked for something like that but couldn't find anything and tried several variations but not that one.

      posted in Support
      J
      jstarbird_7831
    • Variables questions

      First question, is there a link to a overview of the Variable hierarchy?
      I have a situation where I'd like to setup variables in a pipeline for a stage but also have those same variables available for setting at run time so I put them in a release template.
      However at run time I can fill in the variable but then it is not used during execution, instead the one in the pipeline is being used.

      Second question, I am also trying to possibly handle a situation where I will be reading in some values from a database which then determines the values for a loop. However, we also want to allow for the thing to be run manually with the person entering one value.
      So I was trying to use multiple variables and create a List in script but in my testing I can't seem to create a list.

      Here is what I've tried:

      set @custId = @ListInsert(@custId, $clientId,0);

      but when run I just keep getting an error: Could not Resolve Variable @custId

      Product: BuildMaster
      Version: 5.6.7

      posted in Support
      J
      jstarbird_7831
    • Issue with Jenkins Extension

      The Jenkins extension doesn't seem to work in conjunction with the Folder's add-on for Jenkins. This allows nesting Jobs within a folder.
      In the Jenkins URL it ends up in something like \job\folder\job\jobname

      Would there be a way for me to enter the Job name to work with this from the BuildMaster side?
      I understand it's an add-on for Jenkins but this is historical for us and to change it would be a big task at this point.

      Product: BuildMaster
      Version: 5.6.6

      posted in Support
      J
      jstarbird_7831
    • Auto deploy next stage not working

      I have a test setup where I have several release template variables for Deployment that have initial values and are not required. Then I've set the Build stage to Auto Deploy the next stage.
      When I try to run this I get a warning in the Create Package dialog saying I cannot deploy because Deployment Variables must be entered and then it does not auto deploy the next stage.
      Is this expected? I would have thought if none of the Variables are required that it would just run the next stage.
      I even went in and created the same variables in the Pipeline and it still will not auto deploy.

      Here is the excerpt from the Pipeline:

      {
        "Name": "TestWorkFlow",
        "Color": null,
        "Description": "",
        "EnforceStageSequence": true,
        "Stages": [
          {
            "Name": "Build",
            "Description": null,
            "TargetExecutionMode": "Sequential",
            "Targets": [
              {
                "PlanName": "TestImport",
                "EnvironmentName": "Build",
                "BuildImporterTemplate": null,
                "ServerNames": [
                  "BUILD2"
                ],
                "ServerRoleNames": [],
                "DefaultServerContext": 1
              }
            ],
            "Gate": {
              "UserApprovals": [],
              "GroupApprovals": [],
              "AutomaticApprovals": []
            },
            "PostDeploymentPlan": null,
            "PostDeploymentEventListeners": [],
            "AutoPromote": true,
            "Variables": {}
          },
          {
            "Name": "Development",
            "Description": null,
            "TargetExecutionMode": "Parallel",
            "Targets": [
              {
                "PlanName": "TestApp Test Plan",
                "EnvironmentName": "Development",
                "BuildImporterTemplate": null,
                "ServerNames": [],
                "ServerRoleNames": [],
                "DefaultServerContext": 0
              }
            ],
            "Gate": {
              "UserApprovals": [],
              "GroupApprovals": [],
              "AutomaticApprovals": []
            },
            "PostDeploymentPlan": null,
            "PostDeploymentEventListeners": [],
            "AutoPromote": false,
            "Variables": {
              "ClientId": "TestCustomerId",
              "AppPoolName": "blah_pipeline",
              "test1": "blah_pipeline_blah",
              "ManualDeployment": "False"
            }
          },
      

      And the Release Template used:

      {
        "Name": "testtemplate",
        "Pipeline": "TestWorkFlow",
        "ReleaseVariables": [
          {
            "Name": "JenkinsProject",
            "Description": "",
            "InitialValue": "MainBuild",
            "Required": false,
            "Sensitive": false,
            "Type": "Text",
            "PipelineStageName": "",
            "ListValues": [],
            "ListMultiple": false,
            "ListRestrict": false,
            "ListSourceDescription": null,
            "ListSourceXml": null,
            "ListVariableSource": null
          }
        ],
        "PackageVariables": [
          {
            "Name": "JenkinsBuildNumber",
            "Description": "",
            "InitialValue": "",
            "Required": true,
            "Sensitive": false,
            "Type": "DynamicList",
            "PipelineStageName": "",
            "ListValues": [],
            "ListMultiple": false,
            "ListRestrict": true,
            "ListSourceDescription": "Jenkins (<span class=\"hilite\">OF_BuildTasker</span>)  builds for <span class=\"hilite\"><span class=\"variable\">$JenkinsProject</span></span>.",
            "ListSourceXml": "<Inedo.Extensions.Jenkins.ListVariableSources.JenkinsBuildNumberVariableSource Assembly=\"Jenkins\"><Properties CredentialName=\"Tasker\" JobName=\"$JenkinsProject\" /></Inedo.Extensions.Jenkins.ListVariableSources.JenkinsBuildNumberVariableSource>",
            "ListVariableSource": {
              "CredentialName": "Tasker",
              "JobName": "$JenkinsProject"
            }
          },
          {
            "Name": "ServerList",
            "Description": "",
            "InitialValue": "build2",
            "Required": true,
            "Sensitive": false,
            "Type": "DynamicList",
            "PipelineStageName": "",
            "ListValues": [],
            "ListMultiple": false,
            "ListRestrict": true,
            "ListSourceDescription": "Servers in Development environments.",
            "ListSourceXml": "<Inedo.BuildMaster.Extensibility.ListVariableSources.ServerListVariableSource Assembly=\"BuildMasterExtensions\"><Properties EnvironmentsFilter=\"Development\" /></Inedo.BuildMaster.Extensibility.ListVariableSources.ServerListVariableSource>",
            "ListVariableSource": {
              "EnvironmentsFilter": "Development"
            }
          }
        ],
        "DeploymentVariables": [
          {
            "Name": "AppPoolName",
            "Description": "",
            "InitialValue": "blah",
            "Required": false,
            "Sensitive": false,
            "Type": "Text",
            "PipelineStageName": "",
            "ListValues": [],
            "ListMultiple": false,
            "ListRestrict": false,
            "ListSourceDescription": null,
            "ListSourceXml": null,
            "ListVariableSource": null
          },
          {
            "Name": "test1",
            "Description": "",
            "InitialValue": "blahblah",
            "Required": false,
            "Sensitive": false,
            "Type": "Text",
            "PipelineStageName": "",
            "ListValues": [],
            "ListMultiple": false,
            "ListRestrict": false,
            "ListSourceDescription": null,
            "ListSourceXml": null,
            "ListVariableSource": null
          },
          {
            "Name": "ManualDeployment",
            "Description": "Do not change this value. Used internally for scripts.",
            "InitialValue": "true",
            "Required": false,
            "Sensitive": false,
            "Type": "Checkbox",
            "PipelineStageName": "",
            "ListValues": [],
            "ListMultiple": false,
            "ListRestrict": false,
            "ListSourceDescription": null,
            "ListSourceXml": null,
            "ListVariableSource": null
          }
        ],
        "DefaultDeployableOption": "PreviousRelease",
        "Deployables": [
          {
            "Name": "TestDeploy"
          }
        ]
      }
      

      Thanks.

      Product: BuildMaster
      Version: 5.6.6

      posted in Support
      J
      jstarbird_7831
    • Way to tell if a Stage is being auto deployed or not

      Is there a way to tell if a Stage is being auto deployed by a previous stage or manually executed?
      I'm trying to handle a situation where the script will act a bit differently based on if it is auto deployed or not.

      Product: BuildMaster
      Version: 5.6.6

      posted in Support
      J
      jstarbird_7831
    • Does the Ensure or Get Proget Package work with non-universal feeds

      I am trying to use the Ensure or Get Proget Package, feed is correct, credentials correct, but when it runs i'm getting an odd error:
      The server returned an error (404): OData method is not implemented.

      This is for a Nuget feed so is that supposed to work via these functions?

      Product: BuildMaster
      Version: 5.6.4

      posted in Support
      J
      jstarbird_7831
    • Can you use Credentials with Powershell scripts

      Is there a way for me to use BuildMasters resource credentials when calling a Powershell script stored in BuildMaster?

      Thanks.

      Product: BuildMaster
      Version: 5.6.4

      posted in Support
      J
      jstarbird_7831
    • RE: Jira integration failing

      Sorry for so many quick posts. I just ran it again using the Manual Refresh and I get the First error I sent. You said this is the Legacy Issue stuff but I'm doing it all from that one spot so how do I get it to NOT use the Legacy?
      There is only 1 Source setup for it.

      posted in Support
      J
      jstarbird_7831
    • RE: Jira integration failing

      Is there a way to make BuildMaster log the JQL statement it is trying to use?

      posted in Support
      J
      jstarbird_7831
    • RE: Jira integration failing

      What I sent you above is the only error info I get. The Execution log just says it Completes successfully yet I get no data back that I know is there.
      I can take the exact same JQL into Jira, fill in the numbers correctly, and it works.
      It also works for one Release version in BuildMaster it's just not working for another.

      posted in Support
      J
      jstarbird_7831
    • RE: Jira integration failing

      Well I found a way to get farther. I had to go into the Configure External Source after I configured it and use the Manually Refresh button. Once I did that it would work if I didn't use a JQL statement.
      Now if I put in a JQL statement it partially works. I get one issue from one release but it errors trying to get others.

      Here is the JQL I am using:
      project = "Schedule Maximizer" and fixVersion = $ReleaseNumberPart(major).0$ReleaseNumberPart(minor) and Component = API and Sub-Components = "Scheduling Module"

      If I use the $ReleaseNumberPart(major).0$ReleaseNumberPart(minor) by itself in your Fix Version field I get everything from all the releases. However I'm trying to limit to certain components/subcomponents. The one that works does have them set it just doesn't seem to want to pick up any other versions.

      And the error info:

      Message - 
       An error occurred in the web application: Value cannot be null. Parameter name: attribute
       
      Details -
      URL: http://servername/0x44/BuildMaster.Web.WebApplication/Inedo.BuildMaster.Web.WebApplication.Controls.NotificationBar/GetNotifications
      Referrer: http://servername/reference
      User: username
      User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
      Stack trace: at System.Xml.Linq.XAttribute.op_Explicit(XAttribute attribute)
      at Inedo.BuildMaster.Web.WebApplication.Controls.NotificationBar.<>c.<GetNotificationAsync>b__6_5(XElement e)
      at System.Linq.Enumerable.WhereSelectEnumerableIterator`2.MoveNext()
      at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
      at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
      at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
      at Inedo.BuildMaster.Web.WebApplication.Controls.NotificationBar.<GetNotificationAsync>d__6.MoveNext()
      --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
      at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
      at Inedo.BuildMaster.Web.WebApplication.Controls.NotificationBar.<GetNotifications>d__3.MoveNext()
      --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
      at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
      at System.Web.TaskAsyncHelper.EndTask(IAsyncResult ar)
      at System.Web.HttpApplication.CallHandlerExecutionStep.OnAsyncHandlerCompletion(IAsyncResult ar)
      
      
      posted in Support
      J
      jstarbird_7831
    • Jira integration failing

      Hello,
      I've got Jira integration setup but it keeps failing with a 503 error.
      The credentials used are the same I use with another program and it works fine with Jira so I know that part is correct.
      Here is the error I'm getting:

      Code
      

      System.Net.WebException: The request failed with HTTP status 503: Service Unavailable.
      at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
      at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
      at Inedo.BuildMasterExtensions.Jira.JiraApi.JiraSoapServiceService.login(String in0, String in1)
      at System.Lazy1.CreateValue() at System.Lazy1.LazyInitValue()
      at Inedo.BuildMasterExtensions.Jira.Clients.JiraSoapClient.EnumerateIssues(JiraContext context)
      at Inedo.BuildMaster.IssueTracking.LegacyIssueTrackerIssueSynchronizer.SyncIssuesInRelease(Applications_Extended application, Releases_Slim release, String[] categoryFilter)

      Code
      
      Thanks.
      

      Product: BuildMaster
      Version: 5.6.4

      posted in Support
      J
      jstarbird_7831
    • RE: How to handle non-semver versions with packages

      Thanks for clarifying that about the Nuget feeds. Awhile back I understood the behavior had been changed so new Nuget feeds did not function the same way.
      It was a discussion related to Jenkins so I may have misunderstood where the change was.

      posted in Support
      J
      jstarbird_7831
    • RE: How to handle non-semver versions with packages

      that's a good suggestion I might be able to use that with some other adjustments.

      Is there someway to make a copy of my previous Deployment feeds? The configuration of those feeds fit my needs perfectly.

      Another question, sort of related, there is the concept of Groups when I'm uploading to Proget but I can find no use for it on the Proget server, is there someway within the Web UI to sort or show the groupings?
      I see Tags in the feeds which seems to correlate but I cannot filter to only see the packages for a particular tag either.

      posted in Support
      J
      jstarbird_7831
    • RE: How to handle non-semver versions with packages

      I'm going to submit a bug on this as there is also an issue with Deleting a package from a Universal feed when there are multiple versions of the package.

      posted in Support
      J
      jstarbird_7831
    • RE: How to handle non-semver versions with packages

      I found a possible solution, looks like the Jenkins add-on for BuildMaster is now handling the metatdata in the version string. However, when I upload a package to the universal feed as 1.0.0+29 and then upload another as 1.0.0+30 the feed shows 1.0.0+29 as the current package and I have to go into the Full Versions list to see the newer packages, but even then I cannot select any of the other versions listed like I can in other feeds.

      Is this a bug?

      posted in Support
      J
      jstarbird_7831
    • How to handle non-semver versions with packages

      We have a couple of products that are 10+ year established code base and a very large code base on top of that. So changing the versioning of these products is not going to happen anytime soon.
      Just prior to 5.x you had introduced the Deployment feeds which allowed, still widely used, 4 placed versioning like 1.0.0.4. This allows me to store multiple versions of packages in the feed.
      I still have two of these Deployment feeds but I cannot create anymore, so my question is how can I handle the need to keep multiple build packages around in a ProGet feed, say a Universal one? So if I upload today 1.0.0.4 and tomorrow need to upload 1.0.0.5 and keep both around for a few weeks how can I do that without creating entriely separate packages? Right now if I upload a package using our versioning but following your feed requirements I cannot do this since they get pushed as 1.0.0 in both cases.

      Why make a Universal feed so restrictive? It's supposed to be Universal isn't it?

      Product: ProGet
      Version: 4.6.3

      posted in Support
      J
      jstarbird_7831
    • Via HTTP Post, unable to promote ProGet package

      Not sure if this is a Buildmaster HTTP Post issue or a ProGet API issue.
      I've tried several iterations of the HTTP Post to try and promote a package on ProGet.
      I've followed everything I can find on both subjects but have been unable to get it to work.

      What I'm not sure about is how to enter JSON in the BuildMaster HTTP post function. I've tried TextData and FormData.

      The issue I'm having is that I keep getting a 401 unauthorized however I am putting in an API Key that is configured for Promotion API on ProGet.

      Here is what I have been trying:

          Post-Http http://progetserver/api/promotions/promote
          (
              ContentType: application/json,
              TextData: key: "API Key entered here", 
                  packageName: "Package Name",
                  user: "Admin username",
                  version: "54.0.0",
                  fromFeed: "src feed",
                  toFeed: "dest feed",
                  comments: "This package promoted by BuildMaster",
              LogRequestData: true,
              LogResponseBody: true
          );
      

      I've also tried it with FormData but that didn't work, which I would expect in this case.

      Product: BuildMaster
      Version: 5.5.3

      posted in Support
      J
      jstarbird_7831
    • Is there a way to use legacy functions in new plans?

      I would like to use some of the functions under the Windows SDK that pre-5 BuildMaster did have. I know BM doesn't have these actions directly being used but I was wondering if there is someway to call them?
      For example I need to use the Install to GAC function but now in 5.x I cannot seem to call it.

      Thanks,
      Jon

      Product: BuildMaster
      Version: 5.4.2

      posted in Support
      J
      jstarbird_7831
    • RE: Jenkins plugin launching BuildMaster specific jobs

      Oh ok, I thought it was done by you. I'll pester him about that then.
      Sorry about that.

      Thanks,
      Jon

      posted in Support
      J
      jstarbird_7831
    • RE: Jenkins plugin launching BuildMaster specific jobs

      I realize the API can do it but since there is a plugin for Jenkins and this seems like a very useful option could we add a feature request for that?

      What is the eta on the API update?

      Thanks,
      Jon

      posted in Support
      J
      jstarbird_7831
    • Jenkins plugin launching BuildMaster specific jobs

      Using the Jenkins BuildMaster plugin I know I can launch a BuildMaster job but what it doesn't seem to be capable of is specifying which stage of the pipeline you want to execute.
      If I have a Jenkins job builds the app, then I want it to have BuildMaster import the files, then setup an Integration test area, then go back to Jenkins to run the integration tests, then assuming success have BuildMaster execute the next step by calling it again, will that work? It seems that the BuildMaster plugin only supports just doing the "Create Package" call so if I call it again will just re-import the files again rather than do the next stage?
      I know I can put the Execute Next Stage flag on in BuildMaster but I don't want it to do that in place of calling it the second time.

      Thanks.

      Product: BuildMaster
      Version: 5.3.7

      posted in Support
      J
      jstarbird_7831
    • 1
    • 2
    • 3
    • 2 / 3