« Previous Next »

Thread: Storing IIS metabase in version control system

Last post 06-08-2009 8:39 PM by protecweb. 8 replies.

Average Rating Rate It (5)

RSS

Page 1 of 1 (9 items)

Sort Posts:

  • 06-02-2009, 5:06 PM

    Storing IIS metabase in version control system

    Is this a right thing to do - storing IIS Metabase in version control system together with website source?

  • 06-02-2009, 7:16 PM In reply to

    • lextm
    • Top 10 Contributor
    • Joined on 10-22-2008, 4:18 AM
    • Shanghai, PRC
    • Posts 1,412

    Re: Storing IIS metabase in version control system

    I think that's not a smart way at least for IIS 6. In IIS 6 the metabase file is machine dependent, so checking it out to another machine is useless.

    Actually you can take a look at MSDeploy, it is a new way to package your web site and deploy that to IIS.

    http://blogs.iis.net/msdeploy/

    Lex Li
    Support Engineer at Microsoft
    ---------------------------
    This posting is provided "AS IS" with no warranties, and confers no rights.
  • 06-03-2009, 11:21 AM In reply to

    • tomkmvp
    • Top 10 Contributor
    • Joined on 03-20-2003, 10:27 AM
    • Central NJ
    • Posts 6,235
    • IIS MVPs

    Re: Storing IIS metabase in version control system

    I don't think he's looking at this as a deployment process.

    It is an interesting idea though - that would allow you to "roll back" config changes and/or keep track of changes.  Why not test it out and report back here how it works?  I have not seen this asked before.

  • 06-03-2009, 11:50 AM In reply to

    Re: Storing IIS metabase in version control system

    tomkmvp:

    I don't think he's looking at this as a deployment process.

    It is an interesting idea though - that would allow you to "roll back" config changes and/or keep track of changes.  Why not test it out and report back here how it works?  I have not seen this asked before.

     

    You are correct, I am not looking at this a deployment process. I am fairly new to web development and inherited existing project. People who placed project in VSS didn't have clear understanding on what kind of files should or should not be checked in. I am just trying to figure it all out now. I was under impression that it should not be checked in b/c it is in a lot of ways machine specific. On the other hand, tracking changes looks like a good idea, however care must be taken NOT to deploy it together with the whole project.

  • 06-03-2009, 11:54 AM In reply to

    • tomkmvp
    • Top 10 Contributor
    • Joined on 03-20-2003, 10:27 AM
    • Central NJ
    • Posts 6,235
    • IIS MVPs

    Re: Storing IIS metabase in version control system

    FWIW - Since the metabase applies to the entire server, it wouldn't make much sense to include it with project files that were for only one site or application when the server hosts multiple sites and or applications.

    So if this application was not the only app or site on this server, I would say do not include the metabase with those source files.

  • 06-03-2009, 12:17 PM In reply to

    Re: Storing IIS metabase in version control system

    Tom,

    I was under impression that there is metabase for entire server that is inherited by each webiste, but there can also be individual metabase for each website. Looks like I was wrong.

    Can you tell me where metbase XML file for the whole server is located? I searched whole c:\intepub folder but only found metabase file in the root folder of my website, and it got there from VSS. I use Windows Server 2003 and IIS 6 on the server (on workstation I use Vista/IIS 7)

  • 06-03-2009, 12:26 PM In reply to

    • tomkmvp
    • Top 10 Contributor
    • Joined on 03-20-2003, 10:27 AM
    • Central NJ
    • Posts 6,235
    • IIS MVPs

    Re: Storing IIS metabase in version control system

    Are you confusing web.config with the metabase?  On IIS 6, the metabase is at C:\windows\system32\inetsrv\metabase.xml ...

  • 06-03-2009, 12:36 PM In reply to

    Re: Storing IIS metabase in version control system

     No, I am not confusing web.config with metabase. I checked and the metabase file is where you said it should be on workstation and server. What somewhat threw me off was that metabase file was called "MyWebsite.xml" and was in website folder. It was probably renamed and copied there, then distributed to this location each time I got latest copy from VSS even though it probably has no meaning in that folder.

    In any case everything seems clear to me now.

  • 06-08-2009, 8:39 PM In reply to

    Re: Storing IIS metabase in version control system

    Yes the metbabase is machine specific as it contains SIDs and machine specific information. However there is a tool to allow you to export metabase keys etc to other machines. Its called iiscnfg. Just google iiscnfg for links to all the info on the MS sites.

    With that tool you can export all IIS/Metabase config for a single site (or more) and import them into a a different server.

    You could even use it to script scheduled backups of a single sites metabase data to a text file. Then use that file to re-import when required. Its very handy for such things.

    Its a great tool and we have used it many times for IIS server migrations and even server merges.
    Only things to watch out for are complex things like SSL certificates (manual pfx export/import required, Frontpage Extensions etc.)

    There are a few issues with iiscnfg concerning security. But there is a great link below with modified versions that overcome those issues:
    http://aspalliance.com/1038_IISCnfgvbs__IIS_Settings_Replication

    Hope that helps with your sites config backup plans.

Page 1 of 1 (9 items)
Microsoft Communities