Hi Alana,
Proxy support has fixed the list of templates now being available;
But the deployment fails, I guess this request is not hitting the proxy;
Thanks,
Paul
Hi Alana,
Proxy support has fixed the list of templates now being available;
But the deployment fails, I guess this request is not hitting the proxy;
Thanks,
Paul
@rhessinger said in BuildMaster v2023 PSCall:
Hi @paul_6112,
What version of the Scripting extension do you have installed? This bug should be fixed in v2.4.0 of the Scripting extension. If it is not currently version 2.4.0, can you try updating that extension and see if that fixes the issue?
Thanks,
Rich
Thanks Rich,
This does appear to work okay on BuildMaster 2023.5 and Scripting 2.4.0
Hi Rich,
Tested this on 2023.5;
The extension page does now load and can see the extensions, and appears to work okay to update an extension.
However, the Icon list appears to be broken as these are not proxied via BuildMaster, but its direct Browser access.
You did fix this on a previous ticket on BM 7 ; so don't know if the same fix can be applied to BM 2023 please?
Thanks,
Paul
Hi Alana,
Using IIS was the simplest repro I could come up with for you to easily replicate, sorry..
I can confirm that something as basic as Get-Date does work;
$PSEval(Get-Date)
This is a 'raw' powershell example output;
We did try adding ' | out-string' to force any formatting for PSEval but this didn't make a difference.
I've tried your example and tried to come up with something else you should have by default (although you will have to change the InterfaceAlias to whatever yours is called..
Raw PowerShell Output;
BuildMaster 2023 Script;
Build Output;
So why does your example want to return a String (?) and my example want to return a List (?)
Thanks,
Paul
Hi Rich,
Ah, its 2.0.3 ; and due to the Proxy issue doesn't report that there was a newer version..
I note v2023.5 is now released, will see if can upgrade and get a newer version of the extension;
Thanks,
Paul
Hi Support,
When adding a PSCall in the editor, it appears there is an unexpected error;
Thanks,
Paul
Hi Support,
Given this Otterscript;
Set-BuildVariable Web
(
Value: $PSEval("(Get-Website -Name MyWebSite).PhysicalPath")
);
This correctly sets the Variable;
After upgrading to BuildMaster v2023; it seems this is broken with the Variable output being;
Also the engine syntax highlighting is not happy with the brackets;
BuildMaster 7, the text in quotes is picked including the brackets is highlighted in green;
Vs BuildMaster 2023, the syntax highlight is not correctly following the brackets within the quotes, i.e. the middle bracket is white..
Thanks,
Paul
Hi Alana,
Well.... technically none of your software is supported since you are a free user
https://inedo.com/buildmaster/pricing
I'm currently getting my money's worth on this forum after an upgrade to v2023
Thanks,
Paul
Hi Rich,
Brilliant, thank you for the update.
Regards,
Paul
Hi Rich,
Excellent, thank you very much for the fix and update.
Regards,
Paul
Hi Alana,
Thanks for the confirmation about v49;
However, and sorry for flogging a dead horse if you will forgive the expression, back to Security teams in a similar position to the jQuery issue..
On this page;
https://docs.inedo.com/docs/inedoagent-versions
Its clearly stated that v51 is a supported version, and v49 is an unsupported version.
The language used is "you should install the latest version"
And a clear upgrade statement around unsupported versions;
How can I justify to the security teams that I am running unsupported software version, as its black and white at that level..
2nd question, so I can actually test that the automatic upgrade does work, which version of the Agent should be installed to prove it would take place ?
Thanks,
Paul
Hi Support,
Minor GUI niggle, noticed that the Colour Picker selection is always expanded by default when opening a dialog, for example the 'Edit Pipeline Details';
Thanks,
Paul
Sorry to drag this older topic back up, however we do have to appease security teams.
This same JQuery vulnerability was also previously reported on BuildMaster v7.
http://buildmaster:8622/resources/InedoLib/jquery-1.11.3.min.js
And I note that the same library is still in use in v2023, its just been renamed;
http://buildmaster:8622/resources/InedoLib/jquery.min.js
This was picked up by nessus on BuildMaster v7;
Thanks,
Paul
Hi Alana,
Thanks for the help, I'll be honest I was after one of your samples again..
How would you see this to clone it ?
And if we have our own Template, we now need to maintain this as an application to be able to Clone it ?
I've added the feed with success on an Internet connected machine, but by real environment is via Proxy and this seems to have the same issue as I have reported for Extension Updates in that the Proxy is not apparently being used for the connection;
Thanks,
Paul
Hi Alana,
Hhhmm, as per the release notes;
https://docs.inedo.com/docs/inedoagent-versions
v49 is listed as an unsupported version with a critical bug..
My expectation was v49 agents would therefore be upgraded to v51..
I admit I did install a v46 agent as an older supported version to see if it would be upgraded.
Thanks,
Paul
Hi Alana,
I've restarted both the BuildMaster Web Service and BuildMaster Service and the error is still present on running the update task, and the Extensions Page has not updated.
Thanks,
Paul
Hi @atripp ,
Opps, how embarrassing, yes that is a typo error in my post..
I can confirm the Proxy Settings are correct, and the test does report success;
And just to prove a failure for a different URI;
The BuildMaster Update page does report the current version..so if this is connected via the Proxy then this is working;
Thanks,
Paul
Hi Support,
The Reference Documentation links for Operations and Functions both appear to return HTTP 500 errors;
Message
An error occurred in the web application: Multiple custom attributes of the same type found.
Details
URL: http://otter:8626/reference/operations
Referrer: http://otter:8626/reference/operations
User: Admin
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134 Safari/537.36 Edg/103.0.1264.77
Stack trace: at System.Attribute.GetCustomAttribute(MemberInfo element, Type attributeType, Boolean inherit)
at Inedo.Otter.WebApplication.Pages.Reference.ExtensibleReferencePageBase.ExtensibleItem..ctor(Type type)
at Inedo.Otter.WebApplication.Pages.Reference.OperationsListingPage.DocItem.Create(Type type)
at System.Linq.Enumerable.SelectEnumerableIterator`2.MoveNext()
at System.Linq.Enumerable.WhereEnumerableIterator`1.ToArray()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.OrderedEnumerable`1.GetEnumerator()+MoveNext()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at Inedo.Otter.WebApplication.Pages.Reference.ExtensibleReferencePageBase.GetAllExtensibleItems()
at Inedo.Otter.WebApplication.Pages.Reference.ExtensibleReferencePageBase.CreateChildControls()
at Inedo.Otter.WebApplication.Pages.OtterSimplePageBase.InitializeAsync()
at Inedo.Web.PageFree.SimplePageBase.ExecutePageLifeCycleAsync()
at Inedo.Web.PageFree.SimplePageBase.ProcessRequestAsync(AhHttpContext context)
at Inedo.Otter.WebApplication.Pages.Reference.ExtensibleReferencePageBase.ProcessRequestAsync(AhHttpContext context)
at Inedo.Web.AhWebMiddleware.InvokeAsync(HttpContext context)
Thanks,
Paul
Hi Support,
When logged into Otter and using the User Context Menu; Change Password;
An error message is displayed;
However, its the Built-in Directory that is enabled;
Thanks,
Paul
Hi Support,
Sorry, I know change moves things on, and this is just personal comment, but the use of the word 'Deploys' should it not be 'Deployments' ?
Menu Bar ;
Application Menu Bar ;
Given the submenu, is actually 'View Deployments'
Thanks,
Paul
Hi Support,
How do I get the Inedo Agent to automatically update please?
From the support article;
https://docs.inedo.com/docs/inedoagent-installation-upgrading
There is specifically the link to automatic updates;
https://docs.inedo.com/docs/buildmaster/administration/agents#automatic-updates
However, despite having an older v46 and v49 agents (which desperately need upgrading) I'm not obviously seeing or being offered any way to upgrade to the latest agent automatically...
I've tried on both a Proxy connected system and directly on the internet to attempt to rule out any kind of connection problem.
Thanks,
Paul
Hi Support,
When attempting to create a new application from a Template, the process just freezes showing 'Loading' ;
This does need to support a request via Proxy for the Online Templates, but I have tested this with a directly connected Internet machine and this error is also present.
In the error log, a message can be seen;
An error occurred in the web application: Value cannot be null. (Parameter 'sourceInfo')
Details;
URL: http://buildmaster:8622/0x44/BuildMaster.WebApplication/Inedo.BuildMaster.Web.WebApplication.Pages.Applications.CreateApplicationFromTemplatePage/GetTemplates
Referrer: http://buildmaster:8622/administration/applications/new/from-template
User: Admin
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134 Safari/537.36 Edg/103.0.1264.77
Stack trace: at Inedo.BuildMaster.Packages.DecrepitProGetClient..ctor(SecureResources sourceInfo, ICredentialResolutionContext context)
at Inedo.BuildMaster.Packages.DecrepitProGetClient.GetTemplatesSource()
at Inedo.BuildMaster.Web.WebApplication.Pages.Applications.CreateApplicationFromTemplatePage.GetTemplates(AhHttpContext context)
at Inedo.Web.AhWebMiddleware.InvokeAsync(HttpContext context)
Thanks,
Paul
Hi Support,
We have been working away on v7, but overdue time for an upgrade !
With a Proxy configured and allowing;
my.indeo.com
proget.indeo.com
I've noticed that the Administration Extensions Page does not appear to actually connect to be able to see the latest Extension Versions, nor does the Available Extensions list populate.
Here is the Scripting Extension;
Which on a Internet connected version shows a warning for v2.0.3 as v2.4.0 is listed in the missing column.
Likewise the Available Extensions is empty;
When running the 'Update Checker' from the service status a warning is shown, leading me to believe this may not be attempting the connection via the proxy;
Thanks,
Paul
Hi @stevedennis ,
Perfect, thank you.
Regards,
Paul
Hi Support,
Accepting I could attempt to test this; but I'm looking for a 'formal' answer for clarity.
If I have servers with the Inedo Agent installed, can they cope with multiple jobs at the same time ?
e.g. If I have a target Server1 that has App1 and App2 on and these are seperate applications defined on BuildMaster, if I create a new release for both App1 and App2 can these both be deployed at the same time to Server1 or is there any blocking that would occur ?
Thanks,
Paul
Hi Support,
Could you give me some guidance on using Releases and Builds please?
I think I have a request to be able to be able to manually set the Release Status to anything, like I can with a Build Status, however I'm not sure if I have confused myself into a corner here !
Sorry for the ramble and wall of text..
I'm learning BuildMaster to deploy software releases and I have a software release for example that has a version of 1.1 and a build of 1234.
This gives a result that looks something like this:
This gives a result that looks something like this:
Where am tying myself in a knots; if I then have a subsequent release of 1.1 and build 5678, with option (1) this is easy, I simply create this as release 1.1.5678 and Bld 1.
However with option (2) as Release 1.1 was marked as Deployed I cannot add another build as there is no active release.
There is an option to Restore the Release to Active Status
But if I want to cancel this action, and not proceed with a build, I cannot then mark the Release back to Deployed..
It looks as though I can set the last Build to Active, and then back to Deployed to get the Release back into a deployed state, but this feels like I am 'cheating' the system however !
Could the Release status be set to any status like the Build status ?
I have another scenario with different spin, we sometimes produce 'dev' builds that break the numbering, they have a release of 0.0 and a build of 9998 for example.
Option (1) is again easy as the release is 0.0.9998 but I end up with the spurious Bld 1
Option (2) means I have a release of 0.0 that will end up with various builds in..
Is my approach reasonable overall ?
Thanks,
Paul
Hi @atripp,
Thank you for the update, the refresh trick to be able to filter by a release is handy until you can get to this.
Thanks,
Paul
Hi Support,
Could someone take a look into the filtering on the BuildMaster Hosted Artifacts please?
My expected behaviour is to be able to select a Specific Application, and then a release; but the release and build only ever show 'any' so I cannot filter the list beyond Application level.
Thanks,
Paul
Hi @gdivis,
I've just installed v7.0.14 and the behaviour seems improved.
On the original thread track;
Using hub v1.3.7 the upgrade from v7.0.13 to v7.0.14 went through without getting stuck.
After upgrade, both Test and Production web pages were able to load in less than 2 minutes.
There is CPU spiking; but seems more spread out and the max memory is now two thirds of what it was; however within 6 minutes of startup its back around the 160MB - 350MB (it was idling at 160MB before upgrade) which is a definite improvement.
Thanks,
Paul
Hi @rhessinger,
Thanks for the fix in 7.0.14
Loving your work once again !!
Regards,
Paul
Hi Rich,
Just installed 7.0.14; thanks for the fix
Regards,
Paul
Hi @Dan_Woolf,
Virtual 2vCPU and 4GB Ram.
SQL Express 2019 is also installed.
The two build master services are currently now idling at ~160mb ram and ~60mb ram.
After the upgrade startup, it easily hits over 1gb ram; however during that 10 minutes there was no obvious CPU contention.
I've got 45 Indeo Agent Servers on Test and 76 Inedo Agent Servers on Production so after startup its got to confirm the ready status; but limited 'manual' application jobs which I'm experimenting pushing software updates so its not got loads to catch up on...
Thanks,
Paul
Hi @gdivis ,
I've upgraded both servers from v7.0.12 to v7.013 using Hub v1.3.7.
Neither installer got stuck; but there was the initial CPU and memory spike after install.
The slight concern is it took over 10 minutes for the web page to become available.
Thanks,
Paul
Hi Support,
Sorry, another minor niggle, but I think its an interesting one :-)
On the Servers page, the Agent type in the servers list for Inedo agents is displayed as 'Unknown'
Versus the Local being correctly listed
Thanks,
Paul
Hi @gdivis,
Each version used its own hub version that it downloaded so no..
My process is to use InedoHub on an internet connection workstation to create an offline installer.
These are then run on the servers, so its a self contained Hub and Installers, therefore bit puzzled on the versioning here...
v7.0.9 upgrade used hub v1.3.1
v7.0.10 upgrade used hub v1.3.7
v.7.0.11 upgrade used hub v1.3.6
v7.0.12 upgrade used hub v1.3.7
I'll update this on the next installs that are done on v1.3.7 +
Thanks,
Paul
Hi Support,
Could someone take a look at the Dark Theme on the Administration / Security / Test Privileges please?
It doesn't quite work out..
Thanks,
Paul
Hi @atripp,
Sorry for slow response got a bit buried in work..
I've just down 8 upgrades for you as a test...and 1 got stuck, but it was not consistent between the two servers.
Test Server
Production Server
This is the same as the original post where it gets stuck :
Thanks,
Paul
Hi @atripp,
If there is any additional logging I can provide or you can increase debug log level in any places to help narrow this down, happy to take a look.
This could be coincidence as I expect the operations don't change between builds - but perhaps there is some subtle difference here and this gives you anything to think about.
Thanks,
Paul
Hi Support,
I'm noticing some strange behaviour with the newer Hub versions if you could assist please?
I use the Hub on an internet connected machine to create an offline installer.
I then copy this to a Windows Server 2019 Core server, and run the Hub to upgrade my version fully offline.
I've been working my way through the various v7.0.0 builds recently with the associated InedoHub.exe versions, and I'm seeing some of them them get 'stuck'
For example :
The install appears to have actually finished however, the services started back up and the version is showing as upgraded.
However the hub is sat doing something ?
Process Monitor shows it creating 100's of Threads..
Thanks,
Paul
Hi @rhessinger ,
Confirmed on v7.0.7; thank you for saving my sanity on was it previously checked or not !!
Regards,
Paul
Hi @rhessinger ,
Sorry I didn't get to the pre-release; but I have test 1.12.3 and this is now working as expected, thank you.
Regards,
Paul
Hi @rhessinger
Loving your work, thank you !
Regards,
Paul
Hi Support,
Could you take a look at editing Release Template Variables please?
It doesn't appear that the current Initial Values (at least) are read when editing an existing variable which is an easy way to get tripped up if not paying attention !
i.e. creating this Variable, the Initial value = false
This is confirmed :
But if I now edit the Variable, its set to True :
Thanks,
Paul
Hi @stevedennis ,
Sorry, but I don't think I will be able to share the configuration files; but let me see if I can provide some examples to see if you can guide me on this.
I've also now had a play with Text Templates and there seems to be positives and negatives.
I run a distributed architecture application made up of many components across multiple servers.
We already combine the configuration to a suitable template as the various component applications by making use of the appSettings File attribute to point to a common file so for example myapp.exe.config and web.config will both use :
<appSettings file="C:\ProgramData\application.config">
This common application.config file is what I'm trying to template for the version control feature.
The predominant reason being if a new setting is added, it simply means I can update the template to push the new setting out.
application.config might look something like this as an example :
<?xml version="1.0" encoding="utf-8"?>
<appSettings>
<add key="Database" value="Server=1.1.1.1;User Id=user;Password=password;Initial Catalog=mydb;" />
<add key="InstanceId" value="1" />
<add key="Trigger" value="manual" />
</appSettings>
As I have a Test and Production environment which will have different settings in this common appplication.config file, I can use the Key/Value Pair template to cover this requirement.
<?xml version="1.0" encoding="utf-8"?>
<appSettings>
<add key="Database" value="Server=1.1.1.1;User Id=user;Password=password;Initial Catalog=$Database;" />
<add key="InstanceId" value="$InstanceId" />
<add key="Trigger" value="$Trigger" />
</appSettings>
Testing Key/Value Pair
Database = Test
InstanceID = $InstanceID
Trigger = Auto
Production Key/Value Pair
$Database = Prod
InstanceID = $InstanceID
$Trigger = Manual
InstanceId is bit more tricky, this is used if I have more than once instance of the same component installed in the same system; based on the Variable order of precedence I have been testing using a default Global Configuration Variable of
$InstanceID = 1
Then on specific servers introducing the Variable as required i.e.
$InstanceID = 2
So far I believe this fits in with Configuration File Templates, and seems to work as I can deploy the right Configuration File Instance to the right environment.
Based on my use (abuse?) of the variables, it seems I cannot manually deploy a configuration file however.
The reason for this request on the forum, is that a single Configuration File supports adding multiple templates within the single configuration file; but you cannot select which template is deployed from the Configuration File.
My particular use case to have multiple templates for the same configuration file is whilst application.config is common depending on the particular deployment and particular server role there can be a number of additional settings; i.e. conceptually the configuration file is deployed where
Instance = Environment
Template = Role
But Templates with Key/Value pairs lets me keep all this together in one interface.
Therefore whilst my 'default' template might be as first shown, I might have a second template version
<?xml version="1.0" encoding="utf-8"?>
<appSettings>
<add key="Database" value="Server=1.1.1.1;User Id=user;Password=password;Initial Catalog=$Database;" />
<add key="InstanceId" value="$InstanceId" />
<add key="Trigger" value="$Trigger" />
<add key="WebKey" value="$WebKey" />
</appSettings>
The reason this is separate is not all deployments will require the WebKey , and only the web server roles actually require this key.
Therefore based on a If block, I could select Deploy the configuration file version I want by selecting both the environment and template.
I believe I can accomplish something similar using Text Template
<?xml version="1.0" encoding="utf-8"?>
<appSettings>
<add key="Database" value="Server=1.1.1.1;User Id=user;Password=password;Initial Catalog=$Database;" />
<add key="InstanceId" value="$InstanceId" />
<add key="Trigger" value="$Trigger" />
<% if $RoleName == Web { %>
<add key="WebKey" value="$WebKey" />
<% } %>
</appSettings>
However I would need to introduce another level of complexity that WebKey would be different between Testing and Production.
Text Templates also come with the disadvantage that they don't support versioning, and I would need to specify all the Variables between Test and Production environments within each environment.
Typing this up I think has actually helped solidify some thoughts:-
I feel like I'm potentially heading to a precarious configuration with Variables assigned in several different places, global, environment, roles, and application?
Thanks,
Paul
Hi @atripp ,
I've tested v7.0.6 and I'm sorry to report this isn't quite right still..
Whilst the Apply Template Operation now finds and allows you to select the Local Application text template
It now no longer finds the global template(s) and I'm assuming the expected behaviour should be both the local application and global templates are listed in the Asset drop down ?
Thanks,
Paul
Hi @rhessinger ,
Thank you, 7.0.6 looks much better !
Accepting this is an edge case; but the top of the line into the 2nd row does not stay centred on the stage box as you resize the width :
Also OCD coming up..now this is fixed I've noticed the cross row link line is 'solid white' {the same as the box edge} versus the one within the row which appears more 'grey' .. can the styling be updated to match ?
Thanks,
Paul
Hi @rhessinger ,
Thank you 7.0.6 is much clearer for the log lines :-)
Regards,
Paul
Hi @stevedennis ,
Now tested as working iv 7.0.6 thank you !
Regards,
Paul
Hi @atripp ,
Super, thank you.
Maybe I'm abusing this function at the moment, but my for use case I've been looking at setting files to be ReadOnly before using a Deploy Artifact Operation which has 'Overwrite read-only files' set as false.
If the Artifact has a default configuration file; but I'm upgrading a system where this configuration file already exists what is the best approach to keep the current file ?
Is there a better method you can suggest ?
Thanks,
Paul