can you deploy cruise control .net as a web service/web app? - cruisecontrol.net

I'm investigating the possibility of utilizing my web host as a cruise control.net build server. If I have access to MsBuild or can deploy msBuild and run it, it would be great. I can not however find any resources that would tell me if cruise control supports being run as a web service or web app.
Is this type of deployment possible? If not could the UI (it's web-based I believe) control section sit on the web server and send requests to the actual build server?

CruiseControl requires it's own Windows service running in the background. Unless you can install services (not web services, but actual Windows services) on your host (which is unlikely unless you have a dedicated server), or just keep the EXE running until the end of time in debug mode, you won't be able to use CC.Net in this way.
It's better to keep this as part of your dev environment, anyway. You don't want the security risk involved with having that level of control available to anyone that manages to log in to the server.

I figured it out. This was very doable, just copying the web directory from Cc.net's install and editing a few config files.

Related

How to deploy command-line program (exe) on IIS server?

I have a classical command-line program (exe), taking some parameters and doing some stuff.
I would like to make it accessible via internet, i.e. via web browser.
I have a Windows server with IIS web server and a running web site.
Is there a way to deploy this exe command-line program directly? Can it be embedded into existing web site? If not, what is the way to proceed?
If yes, how do I pass parameters to the exe program?
As far as I know, .exe cannot be deployed on iis server, because the web applicaion on IIS has to be configured to be able to run executables. if you want to run .exe through IIS, you can try it this way:
Make your web site write a file that indicates the process needs to
be run.
Write a Windows ervice that runs on the web server that watches for the file that your web site creates.

deploy single file on node.js production server without restarting server and down time

We are planning to start our new project in node.js but I want to be clear on the deployment side. Previously we have some applications written in asp.net. We deploy our applications as websites so when some page changes we deploy only that page on the web server and we don't need to restart the website or server. This type of deployment where we can deploy a particular page reduces our risk of letting those changes go on the production which we don't want to release as opposed to the mvc where you have to deploy the dll.
So my question is that can we do that kind of deployment on our node.js production site where I can deploy only one changed file lets say 'abc.js' and I don't need to restart the server and the connected users to my site shouldn't experience any issue or disconnection as in the case with .net mvc where user's session is ended.
Sorry if this seems too basic but I need to know.
Thanks

How do I host a long-running task on a Windows web hosting?

I'm having a smarterasp.net windows web hosting. I need to have a service that runs permanently and periodically parses a specific remote website, writing results to a log file. I have created a windows servcice, but how do I host it on my web hosting? Running exe files is forbidden, as well as SSH.
Any help? Thanks.
As far as I have found out, it's often impossible to run a windows service on a web hosting, like in my case. One of the possible workarounds in hosting a background process in the website process, specifically by utilizing things like hangfire.io

Options for Visual Studio web performance and load test against a remote server

I am new to Visual Studio Web Performance Testing and Load Testing. I am wondering what my options are for testing a remote server? For example, I am planning to deploy a ASP.NET site to Amazon Cloud. Configuration is 2 web front ends, 1 database server behind a load balancer. Can I run a web test/load test connecting to Amazon simply by configuring Visual Studio accordingly? Or do I have to set up a test agent on the web servers and configure that accordingly? I have tested the site locally (my development environment). Can I, instead of pointing locally, point to the url running on Amazon?
I know I can add a computer through LoadTest "Run Settings". Though, I do not think it is as simple as adding the remote server name here.
Yes, you can test against any URL that you can reach from your computer that is running Visual Studio. You simply need to parameterize the host url(s) in your webtest(s). Click the Parameterize Web Servers button in the web test editor toolbar to achieve this. Once parameterized, you can substitute different values by creating the same context parameters in your LoadTest RunSetting. LoadTest context parameters override WebTest context parameters.
Of course, you are still subject to whatever network obstacles and firewall rules that are in your way. For example, you won't be able to hook up to capture Performance Monitor data from the Amazon Cloud servers (or at least I presume that the relevant ports would be blocked).

Windows Azure local development environment speed

I've started porting an existing ASP.NET web app to Windows Azure and have noticed that the development process is really slow. Each time I make a change to my code and want to view it, I have to effectively redeploy it to the local dev cloud (using Start debugging (F5) or Start without debugging (Ctrl-F5). The process itself takes over a minute, during which time Visual Studio is completely unresponsive.
Am I doing something wrong or is that simply how things are developing for Azure?
My specs:
Visual Studio 2008 9.0.30729.1 SP
5 projects running on .NET 3.5 SP1
Azure SDK 1.1 (February 2010)
Single instance of a single web role
Dual-core AMD 64 machine with 8GB RAM, 64-bit Windows 7, fully patched
The main project itself is quite large (3k files, ~200k lines) but compiles normally in 10-15 seconds
If your web role has limited functionality, you might be able to just set the Web project as the Active Project in your VS solution and run from there.
For example, my web role doesn't call into table storage, blob storage, etc... it just makes some Azure logging calls and interacts with SQL Azure. So sometimes I just set the web project to be the startup project in the VS debugger, not Azure, and run from there. I've properly written my logging calls to check if Azure is available before they write, so they don't execute in this situation.
Of course, if you're doing lots with table storage, queues, blobs, etc. then this is not for you.
Normally in a development machine we just compile and run the solution. In case of Azure development there is a additional step where the specific project is deployed in the Dev fabric which involves copying the complete web site content to the dynamically created deployment folder. Since you have a large number of files this would require all those files to be copied into a new folder every time you press F5 or Ctrl-F5. This may cause the delay you are noticing.
This scenario also highlights the inflexibility in deploying the solution over the App fabric. Any time you change any content (static or dynamic) in the website the complete site has to be packaged and re uploaded on your production server.
In my case when I changed the port from 80 to something else (under end points) the speed returned to normal.
Microsoft's Steve Marx has a blog post about running a website from a mounted VM in Azure. This may be a good development pattern since you simply update the contents of a VM stored in blob storage instead of having to redeploy to the fabric each time.

Resources