Giter VIP home page Giter VIP logo

iis-ci's Introduction

IIS-CI

IIS Continuous Integration/Deployment from Git, TFS & Visual Studio Online Source Control.

Features

  1. TFS/Git Integration (without TFS/Git installation on server, You still need to purchase TFS CAL from Microsoft)
  2. Downloads only modified source
  3. XDT Support for web.config at root folder
  4. Web Hook to automatically fetch-build-deploy
  5. Email notification after fetch-build-deploy (smtp delivery should be configured in web.config)

Current Status

Ready to use as basic deployment controller.

Why not use Kudu?

  1. Project Kudu has dependency on Git and Node, both are typically not part of .NET development workflow.
  2. Besides Kudu creates kudu services website for each hosted website, IIS with 100s of sites are difficult to recreate and redeploy using kudu.
  3. Kudu does not work with TFS.
  4. IIS-CI needs to be installed only once per server, and config file can manage access rights.

Building

You can use Visual Studio 2012/2013/2015 to build from source code and deploy generated files in IIS.

Installation

  1. Create a website in IIS, make sure Windows Authentication is enabled with NTLM being first provider.
  2. Enable Anonymous Authentication for Triggers to work.
  3. Set LocalSystem as Application Pool Identity.
  4. Download and Install MSBuild 2015
  5. Open the website, you will see list of IIS sites with config and build options.
  6. You can configure the source type as Git or TFS, Git should use https transport only.
  7. Enter username/passwords for remote Git or TFS
  8. Specify Solution Path as relative path of .sln file within the source code without front slash.
  9. Specify Web Project Path as relative path of .sln file within the source code without front slash.
  10. Add AppSettings you would want to overwrite after deployment.
  11. Add ConnectionStrings you would want to overwrite after deployment.
  12. Add custom XDT to transform Web.config before deploy
  13. After config is saved correctly, click on Build link.

iis-ci's People

Contributors

ackava avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

iis-ci's Issues

Submodules from git

Hey,

So I was trying to start using this IIS-CI however I had an issue because my git uses submodules. Problem is submodules are not being downloaded even tought i changed the GitSourceController like this:

`if (!Directory.Exists(gitFolder))
{
Directory.CreateDirectory(gitFolder);

            Console.WriteLine("Cloning repository " + config.SourceUrl);

            CloneOptions clone = new CloneOptions();
            clone.CredentialsProvider = CredentialsHandler;
            clone.RecurseSubmodules = true;
            
            Repository.Clone(config.SourceUrl, gitFolder, clone);

            Console.WriteLine("Repository clone successful");
        }`

Do you know how I can get IIS-CI to get git to recurse submodules? the git command would be --recurse-submodules=no origin
Notice that above I added a line to clone, so now it also has clone.RecurseSubmodules
Edit: For pulling before building

Could this be a limitation on libgit2sharp

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.