Deploying authored site element customizations
Applies To: Office SharePoint Server 2007
This Office product will reach end of support on October 10, 2017. To stay supported, you will need to upgrade. For more information, see , Resources to help you upgrade your Office 2007 servers and clients.
Topic Last Modified: 2016-11-14
In this article:
Deploying content by using the content deployment feature
Deploying content by using content deployment packages
Deploying content by using solution packages
This article provides guidance on the deployment of authored site element customizations using Microsoft Office SharePoint Server 2007, including deployment procedures, general considerations, and best practices related to deploying custom content.
Authored site elements are the Web pages, images, layout pages, cascading style sheets, and other resources that compose your Web site based on Office SharePoint Server 2007. Authored site elements include:
**Artifacts **These are site elements — typically authored by using a design tool such as Microsoft Office SharePoint Designer 2007 — that compose the framework in which your site's content appears. Examples of artifacts include master pages and layouts.
**Web content **These are site elements — typically authored directly in the Web browser or in a client authoring program such as Office Word 2007 — that supply the content of your site. Examples of Web content include Web pages and images.
This article does not discuss deployment of developed site elements such as Web Parts and other code. For information, see Deploying developed site element customizations. For information about the differences between authored and developed site elements, see Review of site elements.
Before reading this article, familiarize yourself with the concepts related to the deployment of site element customizations. For more information, see About designing and building sites.
Note
The procedures in this article are based on the topologies described in the article Customization scenarios and may not exactly conform to your environment.
Procedures in this article may require a cooperative effort between several different roles. Additionally, this article assumes that scheduled deployment jobs will be used to migrate content between certain layers of the topology. For more information, see About development team roles.
Note
To eliminate potential synchronization issues, you must often deploy developed site elements before you deploy authored site elements. For more information about authored and developed site elements, see Review of site elements. Also note that you must install on the destination server any language packs that are in use on the source server, or content deployment will fail.
The following table summarizes the deployment methods that this article describes.
Method | Notes |
---|---|
Content deployment |
Content deployment is a built-in system that enables you to create content deployment jobs in the Central Administration Web site. By using the content deployment feature, you can:
You cannot use content deployment to:
|
Content deployment packages |
Content deployment packages are CAB files that can contain part or all of the authored site elements in a Web site. By using content deployment packages, you can deploy authored site elements in a disconnected environment. You cannot use content deployment packages to deploy developed site elements. |
Solution packages |
Solution packages are distribution packages that deliver your custom Office SharePoint Server 2007 and Windows SharePoint Services 3.0 development work to the Web servers or the application servers in your server farm. By using solution packages, you can:
You cannot use solution packages to deploy authored site elements that are not artifacts. |
The following sections describe each listed deployment method in detail.
Deploying content by using the content deployment feature
What is the content deployment feature?
Content deployment copies content from a source Office SharePoint Server 2007 site collection to a destination site collection by using paths and jobs.
A content deployment path defines:
Content source and destination.
Authentication and authorization information that specifies permissions to the destination site collection.
Information about whether or not to deploy user names associated with the content.
A content deployment job defines:
Which sites within the source site collection to deploy.
How frequently to run the job.
Whether to deploy all content or only changed content.
Whether to send e-mail when a job succeeds or fails.
What e-mail address or addresses to use for success and failure notification.
When using the content deployment feature, the entire source site collection can be copied, or a subset of sites can be copied. In either case, content deployment is incremental by default, deploying only changed pages and related assets (such as images). A quick deploy feature supports deployment of a single page by authors.
Note
Before you can use the quick deploy feature, you must activate the Office SharePoint Server Publishing Infrastructure feature on the source site collection and the destination site collection.
In content deployment, the base URL of the source site collection can be different from the base URL of the destination site collection. The content deployment feature fixes links in the source content to work correctly in the destination location.
The content deployment feature only copies content, or Web pages and resources used by the copied pages. It cannot deploy programs, assemblies, Features, or configuration information such as Web.config files. When a Web page is deployed, any items in the content database that the page depends on, such as images, style sheets, or layout pages, are also deployed.
Content deployment deploys the most recent major and minor versions of a content item. For example, if version 2.7 of a Web page is being deployed, the most recent major version — in this example, version 2.0 — of the page, along with the most recent minor version — in this example, version 2.7 — is copied to the destination site.
If an item has an associated publishing schedule, the system deploys the scheduling information along with the item so that the schedule is followed in the destination site collection. For example, if an item that is scheduled to be published at 06:00 is deployed at 03:00, site users on the destination site are not be able to view the content until 06:00. For more information, see Plan content approval and scheduling.
For more information about content deployment, see Plan content deployment.
For a full discussion of content deployment topologies, see Design content deployment topology.
When to use the content deployment feature
The content deployment feature in Office SharePoint Server 2007 provides a simple and effective method of automating the deployment of content from one farm to another. In an environment that requires that authored site element customizations are stored in a software configuration management system, you can use content deployment to avoid having to develop custom scripts to move artifacts between the software configuration management system and the destination farm.
You can use the content deployment feature to deploy authored site elements if one or both of the following factors apply:
Connected environments The content deployment feature can only be used in a connected environment — that is, in an environment in which the source and destination farms can communicate over a network.
Automated environments If you want to automate the deployment of authored site elements from one server farm to another, the content deployment feature provides a built-in system for setting up automated deployment jobs.
The content deployment feature can be used to deploy authored site element customizations between an authoring site and a staging site, and between a staging site and pilot or production farms as shown in the deployment diagrams in the article Customization scenarios.
Deploy content by using content deployment jobs
You can deploy content by using content deployment jobs between farms that are connected by a network. In many customization environments, content deployment jobs are run at regular intervals between farms. For example, a content deployment job may deploy all customizations developed on the authoring farm to the integration farm nightly. This frees the authors and authoring farm administrators from the responsibility of manually migrating customizations, and you can time the migration to coincide with deployment of customizations from the developer workstations to the integration farm to ensure that customizations are deployed in the appropriate order.
Perform the following procedure to configure automated content deployment.
Configure automated content deployment
On the destination server farm, create an empty site collection based on the Blank Site template to receive the initial deployment job.
On the destination farm, on the Content Deployment Settings page in Office SharePoint Server 2007 Central Administration, configure the farm to accept incoming deployment jobs, assign a Web server as the import server to manage incoming deployment jobs, and specify whether or not to require encryption on the connection between the source and destination farms.
On the source farm, on the Content Deployment Settings page, assign a Web server as the export server to manage outgoing deployment jobs.
On the source farm, on the Manage Content Deployment Paths and Jobs page in Central Administration, create one or more deployment paths.
On the source farm, on the Manage Content Deployment Paths and Jobs page, create one or more deployment jobs for each path.
Run the initial deployment job to initiate the content on the destination farm.
If the path does not deploy all security information, you should replicate the source farm's users, SharePoint groups, and permissions on content and sites on the destination farm.
For more information about planning for automated content deployment, see Plan content deployment.
Deploying content by using content deployment packages
What is a content deployment package?
Content deployment packages are implemented as CAB files divided, by default, into 10-megabyte chunks, which are collected in a temporary location on the source server. After all the CAB files have been created and moved to the temporary directory on the source server, the scheduled content deployment job runs automatically, or the administrator initiates the content deployment job. After all the CAB files are received on the import or destination server, the content deployment system copies the deployed content to the destination Web sites.
In a disconnected environment (that is, an environment in which the source and destination farms are not connected by a network), you can use content deployment packages to move customizations from one farm to another. After a content deployment package has been created and delivered to an administrator of the destination farm, the administrator can import the package to the farm by using the procedure in the following section.
When to use a content deployment package
There are several methods of creating and deploying content deployment packages. Determining the most appropriate method depends on a number of factors, including whether the source and destination farms are on disconnected networks.
You can use content deployment packages to deploy authored site elements if one or more of the following factors apply:
Disconnected environments If the farms are disconnected, you should create a content deployment package for asynchronous transfer to the integration farm.
Rigorous software configuration management In environments in which authored site element customizations are saved to a software configuration management system, you can easily create a content deployment package for archival, enabling you to save one file that contains all current authored site element customizations.
Sample content If authored site element customizations need to be deployed from the authoring environment to the integration environment for development purposes, you can use a content deployment package to simplify this process.
You can use content deployment packages to deploy authored site element customizations between an authoring client workstation and an integration farm, and between a staging site and pilot or production farms as shown in the deployment diagrams in the article Customization scenarios.
Create a content deployment package by using the Stsadm command-line tool
You can use the Stsadm command-line tool to create a content deployment package file that contains an entire site.
Note
The Stsadm command-line tool can only be used to export an entire site. You cannot specify specific site elements for export.
This method of exporting the entire contents of a Web site is commonly used either in connected or disconnected environments. Because the procedure is run from a command prompt, it is very easy to write a batch script that can be run automatically.
After a content deployment package has been created with this command, it can be deployed to another farm in your environment by following the procedure in the section "Importing a content deployment package by using the Stsadm command-line tool" later in this article.
Important
The Stsadm command-line tool is located at the following path on the drive where SharePoint Products and Technologies are installed: %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin. You must be a member of the Administrators group on the local computer to use the Stsadm command-line tool.
To create a content deployment package, run the following commands from a command prompt on the source server:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
stsadm –o export –url <URL name> -filename <export file name> –includeusersecurity –versions 4 [-nofilecompression]
This exports the site that you specified in the url parameter (and the subsites beneath it) to the file name that you specified.
The -includeusersecurity parameter causes the new site to have the same permissions as the original site. The -versions parameter value set to 4 specifies that all versions should be included.
You can also use the -nofilecompression parameter to cause the content migration package to be output to an uncompressed folder instead of a single CAB file. This makes it more complicated to deploy the migration package to a different server but makes it much easier to edit the individual files.
For more information, see Export: Stsadm operation (Office SharePoint Server).
Saving a content deployment package to the software configuration management system
To save a content deployment package to the software configuration management system, follow the instructions in the previous section, and then use the procedure appropriate to your software configuration management system to save the file.
Importing a content deployment package by using the Stsadm command-line tool
The following procedure imports the content deployment package that you created in the previous section. You can use this procedure in either connected or disconnected environments.
Important
The Stsadm command-line tool is located at the following path on the drive where SharePoint Products and Technologies are installed: %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin. You must be a member of the Administrators group on the local computer to use the Stsadm command-line tool.
To import a content deployment package, run the following commands from a command prompt on the destination server:
cd %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin
stsadm –o import –url <URL name> -filename <import file name> –includeusersecurity
This imports the content deployment package you specified to the site that you specified in the url parameter.
For more information, see Import: Stsadm operation (Office SharePoint Server).
Deploying content by using solution packages
What is a solution package?
A solution package is a distribution package that delivers your custom Office SharePoint Server 2007 and Windows SharePoint Services 3.0 development work to the Web servers or the application servers in your server farm. Solution packages are also useful for deploying artifacts in disconnected environments, or to save artifacts to a software configuration management system.
There are various site elements that can be packaged in a solution and others that cannot. Components that can be packaged in a solution include:
.NET Framework assemblies.
Deployment files such as resource files, images, or other helper files.
Templates and definitions for sites, lists, libraries, fields, and content types. These definitions are in the form of CAML-based XML files.
Configurations that must be performed at the Web server level — for example, the Web.config files for the registration of Web Parts.
Solution packages cannot be used to export authored site elements that are not artifacts, such as Web pages and embedded images.
When to use a solution package
You can use solution packages to deliver developed site elements as described in the article Deploying developed site element customizations. You can also use solution packages to deploy artifacts, as described earlier in this article. A solution package is a CAB file with a .wsp file name extension and a manifest file. Solution packages can be created manually by using utilities such as Makecab.exe, or they can be created with the Solution Generator, a stand-alone application that is included in the Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions (https://go.microsoft.com/fwlink/?LinkID=107267&clcid=0x409).
You can use solution packages to deploy authored site elements if one or more of the following factors apply:
**Deployment of artifacts **Solution packages can be used to deploy artifacts whenever it is desirable to include artifacts in the same package with developed site element customizations, or when you want to deploy artifacts as part of a feature that can be turned on and off.
Tandem delivery of artifacts and developed site elements Use a solution package if you want to deploy both artifacts and developed site elements in a single deployment package.
**Disconnected environments ** If the farms are disconnected, you should create a solution package for asynchronous transfer to the integration farm.
**Scripted deployments ** You can use solution packages if you want to write a script to automate the artifact deployment process.
You can use solution packages to deploy authored site element customizations between an integration farm and authoring, pilot, or production farms as shown in the deployment diagrams in the article Customization scenarios.
Note that you cannot use solution packages to deploy Web content such as Web pages and images that are called by Web pages. If you must deploy Web content in a disconnected environment, you should use a content deployment package as described in the section Deploying content by using content deployment packages earlier in this article.
For more information about creating and deploying solution packages, see the "Deploying developed site elements by using solution packages" section of the article Deploying developed site element customizations.
Download this book
This topic is included in the following downloadable book for easier reading and printing:
See the full list of available books at Downloadable books for Office SharePoint Server 2007.
See Also
Concepts
Deploy customizations
Deploying developed site element customizations
Solution package components
Other Resources
How to: Migrate a Web site from one location to another
Deep Dive into the SharePoint content deployment and Migration API