サービス定義のアップロード (Upload Service Definition) (サーバー)

サマリー

Web レイヤー、ロケーター、Web ツール、またはサービスを、ArcGIS OnlineArcGIS Enterprise、または ArcGIS Server にアップロードして共有します。

使用法

  • このツールは、入力のサービス定義に基づいて Web レイヤーロケーターWeb ツール、またはサービスをアップロードして共有します。

  • このツールでは、サービス定義のドラフト ファイル (*.sddraft) はアップロードおよび共有されません。 サービス定義のドラフトがある場合は、[サービスのステージング (Stage Service)] ツールを使用して、ステージングされたサービス定義に変換できます。

  • Web ツールは ArcGIS Enterprise でのみ共有できます。 ジオプロセシング サービスは ArcGIS Server にのみ公開できます。

  • ロケーターは ArcGIS Enterprise でのみ共有できます。 ジオコード サービスは ArcGIS Server にのみ公開できます。

パラメーター

ラベル説明データ タイプ
サービス定義

Web レイヤー、Web ツール、またはサービスを共有するために必要なすべての情報が含まれているサービス定義ファイル (*.sd)。

File
サーバー

サーバーの種類。 サポートされているサーバー タイプとしては、次のものがあります。

  • マイ ホスト サービス - ホストされた Web レイヤーを ArcGIS Online または ArcGIS Enterprise で共有するときに使用します。 サーバー コネクションの [マイ ホスト サービス] を入力します。 各単語の 1 文字目を大文字にし、単語と単語の間にスペースを入れます。
  • HOSTING_SERVER - ホストされた Web レイヤーを ArcGIS Online または ArcGIS Enterprise で共有するときに使用します。
  • ArcGIS Enterprise ポータル フェデレーション サーバーへの URL - Web ツールかマップ イメージ レイヤーArcGIS Enterprise ポータル フェデレーション サーバーで共有するときに使用します。
  • ArcGIS Server コネクション - マップまたはジオプロセシング サービスを ArcGIS Server で共有するときに使用します。 [プロジェクト] ウィンドウの [サーバー] ノードの下に表示されている ArcGIS Server コネクションを使用するか、サーバー コネクション ファイルが保存されているフォルダーを参照することができます。
  • ArcGIS Server への URL - マップまたはジオプロセシング サービスを ArcGIS Server で共有するときに使用します。 ArcGIS Server への公開者コネクションArcGIS AllSource プロジェクトに追加されており、そのプロジェクトをスクリプトで開いているか、ArcGIS AllSource でツールを実行している場合は、ArcGIS Server への URL を指定できます。

ServerConnection
サービス名
(オプション)

サービス定義で指定されている現在のサービス名を無効にするサービス名。

String
クラスター
(オプション)

サービスが割り当てられている現在のクラスターを無効にするクラスター名。 指定したサーバー上のクラスターから選択する必要があります。

レガシー:

クラスターは ArcGIS Enterprise 10.5.1 で廃止されました。 このパラメーターは、複数のクラスターをサポートしないサーバーでは無視されます。

String
フォルダー タイプ
(オプション)

フォルダーのソースを決定するために使用するフォルダー タイプを指定します。 デフォルトでは、サービス定義からフォルダーを取得します。 指定したオンライン サーバーに存在しているフォルダーのリストを取得することもできます。また、Web レイヤーまたはサービスを共有するときに、新しいフォルダーを作成するように指定することもできます。

  • 新規新しいフォルダーが作成されます。
  • 既存サーバー上の既存のフォルダーが使用されます。
  • サービス定義からサービス定義のフォルダーが使用されます。 これがデフォルトです。
String
フォルダー
(オプション)

Web レイヤーまたはサービスに使用されるフォルダー。 フォルダーを指定しない場合、サービス定義に指定されているフォルダーが使用されます。 [フォルダー タイプ][新規] を指定した場合は、このパラメーターを使用してフォルダー名を指定します。 [フォルダー タイプ][既存] を指定した場合は、サーバー上の既存のフォルダーを選択できます。

String
サービスを直ちに開始
(オプション)

共有後にサービスを開始するかどうかを指定します。

  • オン - 共有後にサービスが開始されます。 これがデフォルトです。
  • オフ - 共有後にサービスが開始されません。
Boolean
プロパティを共有しているサービス定義を上書き
(オプション)

サービス定義で設定されている共有プロパティを無視するかどうかを指定します。 これらのプロパティは、Web レイヤーまたは Web ツールを ArcGIS Online または ArcGIS Enterprise で共有するかどうかと、共有の方法を定義します。 Web レイヤーを共有して公開すると、そのレイヤーを他のユーザーが利用できるようになります。

  • オン - サービス定義で設定されている共有プロパティを無視します。
  • オフ - サービス定義で設定されている共有プロパティを無視せず、使用します。 これがデフォルトです。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
ArcGIS Online での共有
(オプション)

Web レイヤーと Web ツールを共有するかどうかを指定します。

すべての共有 Web レイヤーおよび Web ツールを、[マイ コンテンツ] から利用できるようにします。 組織内の特定のグループのみと共有したい場合でも、Web レイヤーまたは Web ツールは [マイ コンテンツ] からも共有されます。

  • オン - Web レイヤーまたは Web ツールを ArcGIS Online または ArcGIS Enterprise で共有します。 Web レイヤーまたは Web ツールが [マイ コンテンツ] に表示されます。
  • オフ - Web レイヤーまたは Web ツールは ArcGIS Online または ArcGIS Enterprise で共有されません。他の ArcGIS Online または ArcGIS Enterprise のユーザーおよびクライアントは、Web 上でサービスにアクセスできません。 これがデフォルトです。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
すべての人と共有 (パブリック)
(オプション)

一般ユーザーが Web レイヤーまたは Web ツールを利用できるようにするかどうかを指定します。

  • オン - 一般ユーザーが Web レイヤーまたは Web ツールを利用できます。
  • オフ - 一般ユーザーが Web レイヤーまたは Web ツールを利用できません。 これがデフォルトです。

共有プロパティを上書きする場合は、ポータルにサイン インしている必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
組織と共有
(オプション)

Web レイヤーまたは Web ツールを組織と共有するかどうかを指定します。

  • オン - Web レイヤーまたは Web ツールを組織と共有します。
  • オフ - Web レイヤーまたは Web ツールを組織と共有しません。 これがデフォルトです。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、マップまたはジオプロセシング サービスを ArcGIS Server で共有する場合には無視されます。

Boolean
グループと共有
(オプション)

Web レイヤーまたは Web ツールを組織内の指定したグループと共有するかどうかを指定します。

  • オン - Web レイヤーまたは Web ツールを指定したグループと共有します。
  • オフ - Web レイヤーまたは Web ツールを指定したグループと共有しません。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

String

派生した出力

ラベル説明データ タイプ
SOAP サービス URL

サーバーに公開するサービスの SOAP URL。

String
REST サービス URL

サーバーに公開するサービスの REST URL。

String
ホスト マップ サービス アイテム ID

ポータルで共有するマップ イメージ レイヤーのアイテム ID。

String
ホスト フィーチャ サービス アイテム ID

ポータルで共有するホスト フィーチャ サービス レイヤーのアイテム ID。

String
キャッシュ サービス

キャッシュが有効になったイメージ サービスまたはマップ サービス。

Image Service; Map Server
フィーチャ サービス URL

ポータルで共有するホスト フィーチャ レイヤーの REST URL。

String
マップ サービス URL

ポータルで共有するマップ イメージ レイヤーの REST URL。

String
レイヤー ID

Layer1|ID1;Layer2|ID2; などの形式による、公開されたレイヤーとそれぞれに対応する ID。

String
サービス URL

Table1|ID1;Table2|ID2; などの形式による、公開されたスタンドアロン テーブルとそれぞれに対応する ID。

String
ホスト ベクター タイル サービス アイテム ID

ベクター タイル サービスのアイテム ID。

String
ベクター タイル サービスの URL

ベクター タイル サービスの REST URL。

String

arcpy.management.UploadServiceDefinition(in_sd_file, in_server, {in_service_name}, {in_cluster}, {in_folder_type}, {in_folder}, {in_startupType}, {in_override}, {in_my_contents}, {in_public}, {in_organization}, {in_groups})
名前説明データ タイプ
in_sd_file

Web レイヤー、Web ツール、またはサービスを共有するために必要なすべての情報が含まれているサービス定義ファイル (*.sd)。

File
in_server

サーバーの種類。 サポートされているサーバー タイプとしては、次のものがあります。

  • マイ ホスト サービス - ホストされた Web レイヤーを ArcGIS Online または ArcGIS Enterprise で共有するときに使用します。 サーバー コネクションの [マイ ホスト サービス] を入力します。 各単語の 1 文字目を大文字にし、単語と単語の間にスペースを入れます。
  • HOSTING_SERVER - ホストされた Web レイヤーを ArcGIS Online または ArcGIS Enterprise で共有するときに使用します。
  • ArcGIS Enterprise ポータル フェデレーション サーバーへの URL - Web ツールかマップ イメージ レイヤーArcGIS Enterprise ポータル フェデレーション サーバーで共有するときに使用します。
  • ArcGIS Server コネクション - マップまたはジオプロセシング サービスを ArcGIS Server で共有するときに使用します。 [プロジェクト] ウィンドウの [サーバー] ノードの下に表示されている ArcGIS Server コネクションを使用するか、サーバー コネクション ファイルが保存されているフォルダーを参照することができます。
  • ArcGIS Server への URL - マップまたはジオプロセシング サービスを ArcGIS Server で共有するときに使用します。 ArcGIS Server への公開者コネクションArcGIS AllSource プロジェクトに追加されており、そのプロジェクトをスクリプトで開いているか、ArcGIS AllSource でツールを実行している場合は、ArcGIS Server への URL を指定できます。

ServerConnection
in_service_name
(オプション)

サービス定義で指定されている現在のサービス名を無効にするサービス名。

String
in_cluster
(オプション)

サービスが割り当てられている現在のクラスターを無効にするクラスター名。 指定したサーバー上のクラスターから選択する必要があります。

レガシー:

クラスターは ArcGIS Enterprise 10.5.1 で廃止されました。 このパラメーターは、複数のクラスターをサポートしないサーバーでは無視されます。

String
in_folder_type
(オプション)

フォルダーのソースを決定するために使用するフォルダー タイプを指定します。 デフォルトでは、サービス定義からフォルダーを取得します。 指定したオンライン サーバーに存在しているフォルダーのリストを取得することもできます。また、Web レイヤーまたはサービスを共有するときに、新しいフォルダーを作成するように指定することもできます。

  • NEW新しいフォルダーが作成されます。
  • EXISTINGサーバー上の既存のフォルダーが使用されます。
  • FROM_SERVICE_DEFINITIONサービス定義のフォルダーが使用されます。 これがデフォルトです。
String
in_folder
(オプション)

Web レイヤーまたはサービスに使用されるフォルダー。 フォルダーを指定しない場合、サービス定義に指定されているフォルダーが使用されます。 in_folder_typeNEW を指定した場合は、このパラメーターを使用してフォルダー名を指定します。 in_folder_typeEXISTING を指定した場合は、サーバー上の既存のフォルダーを選択できます。

String
in_startupType
(オプション)

共有後にサービスを開始するかどうかを指定します。

  • STARTED共有後にサービスが開始されます。 これがデフォルトです。
  • STOPPED共有後にサービスが開始されません。
Boolean
in_override
(オプション)

サービス定義で設定されている共有プロパティを無視するかどうかを指定します。 これらのプロパティは、Web レイヤーまたは Web ツールを ArcGIS Online または ArcGIS Enterprise で共有するかどうかと、共有の方法を定義します。 Web レイヤーまたは Web ツールを共有して公開すると、そのレイヤーを他のユーザーが利用できるようになります。

  • OVERRIDE_DEFINITIONサービス定義で設定されている共有プロパティを無視します。
  • USE_DEFINITIONサービス定義で設定されている共有プロパティを無視せず、使用します。 これがデフォルトです。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
in_my_contents
(オプション)

Web レイヤーと Web ツールを共有するかどうかを指定します。

すべての共有 Web レイヤーおよび Web ツールを、[マイ コンテンツ] から利用できるようにします。 組織内の特定のグループのみと共有したい場合でも、Web レイヤーまたは Web ツールは [マイ コンテンツ] からも共有されます。

  • SHARE_ONLINEWeb レイヤーまたは Web ツールを ArcGIS Online または ArcGIS Enterprise で共有します。 Web レイヤーまたは Web ツールが [マイ コンテンツ] に表示されます。
  • NO_SHARE_ONLINEWeb レイヤーまたは Web ツールは ArcGIS Online または ArcGIS Enterprise で共有されません。他の ArcGIS Online または ArcGIS Enterprise のユーザーおよびクライアントは、Web 上でサービスにアクセスできません。 これがデフォルトです。

共有プロパティを上書きする場合は、ポータルにサイン インしている必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
in_public
(オプション)

一般ユーザーが Web レイヤーまたは Web ツールを利用できるようにするかどうかを指定します。

  • PUBLIC一般ユーザーが Web レイヤーまたは Web ツールを利用できます。
  • PRIVATE一般ユーザーが Web レイヤーまたは Web ツールを利用できません。 これがデフォルトです。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
in_organization
(オプション)

Web レイヤーまたは Web ツールを組織と共有するかどうかを指定します。

  • SHARE_ORGANIZATIONWeb レイヤーまたは Web ツールを組織と共有します。
  • NO_SHARE_ORGANIZATIONWeb レイヤーまたは Web ツールを組織と共有しません。 これがデフォルトです。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

Boolean
in_groups
[in_groups,...]
(オプション)

Web レイヤーまたは Web ツールを共有するグループ名のリスト。

共有プロパティを上書きする場合は、ArcGIS Online または ArcGIS Enterprise にサイン インする必要があります。

このパラメーターは、ArcGIS Server で共有する場合には使用されません。

String

派生した出力

名前説明データ タイプ
out_soap_svc_url

サーバーに公開するサービスの SOAP URL。

String
out_rest_svc_url

サーバーに公開するサービスの REST URL。

String
out_mapServiceItemID

ポータルで共有するマップ イメージ レイヤーのアイテム ID。

String
out_featServiceItemID

ポータルで共有するホスト フィーチャ サービス レイヤーのアイテム ID。

String
out_cached_service

キャッシュが有効になったイメージ サービスまたはマップ サービス。

Image Service; Map Server
out_featureServiceURL

ポータルで共有するホスト フィーチャ レイヤーの REST URL。

String
out_mapServiceURL

ポータルで共有するマップ イメージ レイヤーの REST URL。

String
out_LayerIDMap

Layer1|ID1;Layer2|ID2; などの形式による、公開されたレイヤーとそれぞれに対応する ID。

String
out_standaloneTableIDMap

Table1|ID1;Table2|ID2; などの形式による、公開されたスタンドアロン テーブルとそれぞれに対応する ID。

String
out_vectorTileServiceID

ベクター タイル サービスのアイテム ID。

String
out_vectorTileServiceURL

ベクター タイル サービスの REST URL。

String

コードのサンプル

UploadServiceDefinition の例 1 (スタンドアロン スクリプト)

次に示すスクリプトは、Web タイル レイヤーとしてレイヤーのリストをマップから ArcGIS Enterprise または ArcGIS Online に公開します。 ポータル情報は、ArcGIS AllSource[ポータル] ページから取得されます。

import arcpy
import os

# Set output file names
outdir = r"C:\Project\Output"
service = "TileSharingDraftExample"
sddraft_filename = service + ".sddraft"
sddraft_output_filename = os.path.join(outdir, sddraft_filename)

# Reference map to publish
aprx = arcpy.mp.ArcGISProject(r"C:\Project\World.aprx")
m = aprx.listMaps("World")[0]
lyrs = []
lyrs.append(m.listLayers('cities')[0])
lyrs.append(m.listLayers('counties')[0])

# Create TileSharingDraft and set service properties
sharing_draft = m.getWebLayerSharingDraft("HOSTING_SERVER", "TILE", service, lyrs)
sharing_draft.summary = "My Summary"
sharing_draft.tags = "My Tags"
sharing_draft.description = "My Description"
sharing_draft.credits = "My Credits"
sharing_draft.useLimitations = "My Use Limitations"

# Create Service Definition Draft file
sharing_draft.exportToSDDraft(sddraft_output_filename)

# Stage Service
sd_filename = service + ".sd"
sd_output_filename = os.path.join(outdir, sd_filename)
arcpy.server.StageService(sddraft_output_filename, sd_output_filename)

# Share to portal
print("Uploading Service Definition...")
arcpy.server.UploadServiceDefinition(sd_output_filename, "My Hosted Services")

print("Successfully Uploaded service.")
UploadServiceDefinition の例 2 (スタンドアロン スクリプト)

次のスクリプトでは、既存のサービス定義をアップロードし、オプション パラメーターを使用してサービスのプロパティを変更します。

import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set local variables
inSdFile = "myMapService.sd"
inServer = "myServerConnection.ags"
inServiceName = "newServiceName"
inCluster = "myCluster"
inFolderType = "NEW"
inFolder = "newFolder"
inStartup = "STOPPED"

# Run UploadServiceDefinition
arcpy.server.UploadServiceDefinition(inSdFile, inServer, inServiceName, 
                                     inCluster, inFolderType, inFolder, 
                                     inStartup)
UploadServiceDefinition の例 3 (スタンドアロン スクリプト)

次のスクリプトでは、既存のサービス定義を ArcGIS Online または ArcGIS Enterprise にアップロードし、オプション パラメーターを使用してサービスのプロパティを変更します。

import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set local variables
inSdFile = "myMapService.sd"
inServer = "HOSTING_SERVER"
inServiceName = "newServiceName"
inCluster = "myCluster"
inFolderType = "EXISTING"
inFolder = "existingFolder"
inStartup = "STOPPED"
inOverride = "OVERRIDE_DEFINITION"
inMyContents = "SHARE_ONLINE"
inPublic = "PRIVATE"
inOrganization = "NO_SHARE_ORGANIZATION"
inGroups = ["My Group", "MyGroup 2"]

# Run UploadServiceDefinition
arcpy.server.UploadServiceDefinition(inSdFile, inServer, inServiceName, 
                                     inCluster, inFolderType, inFolder, 
                                     inStartup, inOverride, inMyContents, 
                                     inPublic, inOrganization, inGroups)

環境

このツールは、ジオプロセシング環境を使用しません。