I am looking for a way to import BRE generated policy with its vocabularies into BizTalk application from a command line (in order to script it) leveraging BtsTask command line tool.
I've searched around, and couldn't find a firm answer.
If the msi for your application includes the BRE rules for that app, then the ImportApp command of BTSTask will publish them to the BRE for that environment. There isn't a separate BTSTask command for importing policies by themselves. If for some reason you want to import just the policy with no other artifacts, you can do so by exporting just the rules into an msi by themselves, then use BTSTask ImportApp to import the msi.
Check out this link for more info:
http://msdn.microsoft.com/en-us/library/aa577374.aspx
You can use the PowerShell provider for BizTalk.
This allows you to script, amont other things, policy and vocabulary deployment.
This can provide an alternative to MSBuild which is more geared, in my opinion, to the development than to be used to support operations management.
The provider is available on CodePlex:
http://psbiztalk.codeplex.com
Related
I've noted from the MSDN page that policy isn't exportable to a bindings file.
Is there another way to import/export the tracking setting?
Try looking at the following MSDN page which describes the method by first exporting only the policy using BTSTask into an MSI and afterwards using BTSTask to import them again.
BTSTask does not provide a specific command for importing policies;
however you can use the ExportApp command of BTSTask to selectively
export only the policies in an application that you want, including no
other application artifacts. Then you can use the ImportApp command to
import the .msi file into an application in a different BizTalk group.
This is the approach described in this topic. When you do this, the
policy is automatically imported and published in the BizTalk group
and added to the specified application.
Hope this helps!
How can you programatically export a BizTalk receive location?
And extending the question ... receive ports and send ports
There's a few ways to approach this, each with benefits and drawbacks.
WMI: http://msdn.microsoft.com/en-us/library/aa547992.aspx
The drawback is this is by Assembly, so you'd have to enumerate them first.
BTSTask.exe: http://msdn.microsoft.com/en-us/library/aa559686.aspx Better, since it allows you to specify an Assembler or an Application. There's no object model, but executing from another program or script works fine.
PowerShell Provider for BizTalk: http://psbiztalk.codeplex.com/
The way to go if you're scripting in PowerShell already.
You should just be able to export the bindings to an xml file and import them in your target environment. This article outlines the steps...
http://msdn.microsoft.com/en-us/library/aa560753.aspx
Further if you are going to be doing deployments to multiple environments you should look at the BizTalk Deployment Framework...
http://biztalkdeployment.codeplex.com/
I've seen api-paste.ini as a conf file after installing openstack.
It looks like substituting some prefixes for python implementation but have no clue about this.
Here, my questions are:
What script is it?
it looks like very bizarre grammar like the following:
[composite:metadata]
use = egg:Paste#urlmap
/: meta
How does it work within python script?
See documentation for Paste Deploy.
The api-paste.ini is the configuration for the above web-services framework. Paste.deploy allows you to separate concerns between writing your application and middleware/filters from the composition of them into a web service. You define you WSGI applications and any middleware filters in the configuration file then you can compose pipelines which include the middleware/filters you want into your web-service, e.g. authentication, rate-limiting, etc.
You want to temporarily remove authentication, take it out of your pipeline and restart your web service.
The declaration above is declaring a composite application, but with only one application binding (a bit unnecessary - normally you would expect to see more than one binding, e.g. for different versions of the application). The WSGI application app:meta will be bound to / and you should have a declaration of app:meta later in the file. The implementation of the composite app is declared via the use and the egg:Paste#urlmap is a simple reference implementation.
You load this in your program with paste.deploy.loadwsgi.loadapp().
There is a proposal/recommendation(?) to move away from Paste Deploy/WebOb to WSME/Pecan see OpenStack Common WSGI
I was trying to consume an already written WCF service into my BizTalk orchestration. But while configuring the ports and port types for the consumption, found that the 'WCF service consumption wizard' in Visual Studio offers HTTP transport-type as the only option and no WCF-BasicHttp/WCF-WSHttp transport-type options are available.
However, we can always do the required WCF-BasicHttp/WCF-WSHttp settings by importing the required bindings file from the BizTalk Admin Console, Is there a programmatic way for the developers to do the same from inside the Visual Studio (instead of specifying those bindings later from the Admin Console)?
The binding files are just XML, so you can create those programmatically. Modify the XML as you see fit, either by hand (e.g., in the built-in XML editor) or by using some sort of custom code.
Typically we use multiple binding files per environment, including one that just works with everything on localhost for developers. You just pick the one that you want and import it into BizTalk or write a script automatically import it for you (such as after build).
You can also take a look BizTalk Deployment Framework. For more of that.
Michael Stephenson has a great post on using MSBuild to automate your deployments, including the BizTalk binding files, here.
I'd like to user c.transmogrifier outside plone. How far is it from being plone-independent?
Actually I see very few plone-related imports and plone-only-specific code inside the trunk so that it seems feasible.
Is there any roadmap or any todo/advice list for getting this?
I've created a runner for executing transmogrifier outside of plone via a commandline tool. At the moment that runner is part of funnelbweb. You can use the funnelweb script to run your own pipelines via "funnelweb --pipeline=mypipeline.cfg"
However we are in the process of migrating that code into a general module called mr.migrator. Mr.migrator will be both a commandline runner for transmogrifier pipelines and also a Plone UI to do the same.
collective.transmogrifier only depends on CMFCore, not Plone. I do have plans to make that dependency optional though, I simply haven't had the time to do so yet.