<project default="build">
	<loadtasks assembly="${tasks.dbghost.path}" />
	
	<target name="build">
		<call target="GetLatestVersion" />		
		<call target="RunDBGhost" />
	</target>
	
	<target name="GetLatestVersion">		
		<vssget 
			username="${vss.user}"
			password="${vss.password}"
			localpath="${database.src.root}"
			filetimestamp="Modified"
			recursive="true"
			removedeleted="true"
			replace="true"
			writable="false"
			dbpath="${vss.database}"
			path="${database.vss.path}"
		/>
	</target>

	<target name="RunDBGhost">
		<dbghost 
			targetserver="${database.instance}" 
			targetdb="${database.name}" 
			useintegratedauth="${sql.integratedauth}"
			targetusername="${sql.username}"
			targetpassword="${sql.password}"
			dropbuilddatabaseonerror="true"
			dropbuilddatabaseonsuccess="true">
				<AdHocScripts>
					<include name="${database.src.root}\AdHocs" />
				</AdHocScripts>
				<DefaultScripts>
					<include name="${database.src.root}\Defaults" />
				</DefaultScripts>
				<LoginScripts>
					<include name="${database.src.root}\Logins" />
				</LoginScripts>
				<RuleScripts>
					<include name="${database.src.root}\Rules" />
				</RuleScripts>
				<StaticDataScripts>
					<include name="${database.src.root}\Static Data" />
				</StaticDataScripts>
				<ProcedureScripts>
					<include name="${database.src.root}\Stored Procedures" />
				</ProcedureScripts>
				<TableScripts>
					<include name="${database.src.root}\Tables" />
				</TableScripts>
				<TriggerScripts>
					<include name="${database.src.root}\Triggers" />
				</TriggerScripts>
				<UddtScripts>
					<include name="${database.src.root}\User Defined Data Types" />
				</UddtScripts>
				<UdfScripts>
					<include name="${database.src.root}\User Defined Functions" />
				</UdfScripts>
				<UserRoleScripts>
					<include name="${database.src.root}\Users and Roles" />
				</UserRoleScripts>
				<ViewScripts>
					<include name="${database.src.root}\Views" />
				</ViewScripts>
		</dbghost>
	</target>
</project>


