チーム開発機能とはGeneXus Serverとの連携を意味し、GeneXus IDE上では「Serverからナレッジベースを作成」「ナレッジベースをServerへ送信」「アップデート」「コミット」等の操作になります。
まずはプロジェクトファイルです。
チーム開発機能を使用するためにはtargetsファイル(GeneXus.Server.Tasks.targets)のインポートを追加します。
今回は「Serverからナレッジベースを作成」を試してみます。PropertyGroupで必要な操作に必要なプロパティを定義しています。
それぞれ以下になります。
- GeneXus Serverへの接続情報およびServerからナレッジを作成時の指定情報
- ナレッジベースを新規作成する時の情報
- ビルド時に必要な情報(データストアプロパティ)
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="C:\Program Files (x86)\GeneXus\GeneXus16JP\Genexus.Tasks.targets" />
<Import Project="C:\Program Files (x86)\GeneXus\GeneXus16JP\Genexus.Server.Tasks.targets"/>
<PropertyGroup> <!--Input Parameters-->
<!-- Server Properties -->
<ServerUrl>https://sandbox.genexusserver.com/v16/</ServerUrl>
<ServerUsername>GXTechnical\*******</ServerUsername>
<ServerPassword>*******</ServerPassword>
<GetAllKbVersions>false</GetAllKbVersions>
<ServerKbAlias>GX16U2JP_Demo</ServerKbAlias>
<ServerKbVersion>GX16U2JP_Demo</ServerKbVersion>
<KBName>GX16U2JP_Demo</KBName>
<WorkingKBName>GX16U2JP_Demo</WorkingKBName>
<!-- Working KB Properties -->
<KBDir>C:\Models\$(WorkingKBName)</KBDir>
<DbaseServerInstance>localhost</DbaseServerInstance>
<CreateDbInKbFolder>true</CreateDbInKbFolder>
<DbaseUseIntegratedSecurity>true</DbaseUseIntegratedSecurity>
<DbaseServerUsername></DbaseServerUsername>
<DbaseServerPassword></DbaseServerPassword>
<DbaseName>GX_KB_$(WorkingKBName)</DbaseName>
<!-- DataStore Properties -->
<Datastore>Default</Datastore>
<Datastore_Property_DBName>$(WorkingKBName)</Datastore_Property_DBName>
<Datastore_Property_ServerName>(local)</Datastore_Property_ServerName>
</PropertyGroup>
<Target Name="CreateKBFromServer">
<Error Condition="'$(KBDir)'==''" Text="KBDir cannot be null" />
<Message Text="CreateKBfromServer Directory=$(KBDir)" />
<CreateKnowledgeBaseFromServer
Directory="$(KBDir)"
CreateDbInKbFolder="$(CreateDbInKbFolder)"
DBName="$(DbaseName)"
IntegratedSecurity="$(DbaseUseIntegratedSecurity)"
UserId="$(DbaseServerUsername)"
Password="$(DbaseServerPassword)"
ServerUri="$(ServerUrl)"
ServerInstance="$(DbaseServerInstance)"
ServerKBAlias="$(ServerKbAlias)"
ServerVersionName="$(ServerKbVersion)"
ServerUserName="$(ServerUsername)"
ServerPassword="$(ServerPassword)"
FullKB="$(GetAllKbVersions)"/>
</Target>
<Target Name="OpenKB">
<Message Text="OpenKB:$(KBDir)"/>
<OpenKnowledgeBase Directory="$(KBDir)" />
</Target>
<Target Name="SetDataStoreProperty">
<SetDataStoreProperty Datastore="$(Datastore)" Name="Database name" Value="$(Datastore_Property_DBName)" />
<SetDataStoreProperty Datastore="$(Datastore)" Name="Server name" Value="$(Datastore_Property_ServerName)" />
</Target>
<Target Name="BuildAll">
<BuildAll />
</Target>
</Project>
実行は以下の通りです。
>MSBuild.exe GeneXus.msbuild /t:CreateKBFromServer;SetDataStoreProperty;BuildAll /p:WorkingKBName=GX16U2JP_Demo_20190819
0 件のコメント:
コメントを投稿