Загрузить определение сервиса (Сервер)

Сводка

Загружает и публикует веб-слой, веб-инструмент или сервис на ArcGIS Online, ArcGIS Enterprise или ArcGIS Server.

Использование

  • Этот инструмент загружает и публикует веб-слой, веб-инструмент или сервис на основе входного определения сервиса. Этот инструмент выполняется всякий раз, когда вы публикуете веб-слой или сервис, используя ArcGIS Pro; при этом в элементе История геообработки на панели Каталог появляется соответствующая форма.

  • Этот инструмент не загружает и не публикует файлы черновика определения сервиса (.sddraft). Если у вас есть черновое определение сервиса, вы можете преобразовать его в организованное определение сервиса с помощью инструмента Разместить сервис.

  • Веб-инструменты можно публиковать только в ArcGIS Enterprise. Инструменты геообработки можно публиковать только в ArcGIS Server.

Синтаксис

arcpy.server.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})
ParameterОбъяснениеТип данных
in_sd_file

Файл определения сервиса (.sd), который содержит всю информацию, необходимую для публикации веб-слоя, веб-инструмента или сервиса.

File
in_server

Строка, представляющая тип сервера. Поддерживаются следующие типы серверов:

  • Мои размещенные сервисы – Используется при публикации размещенного веб-слоя на ArcGIS Online или ArcGIS Enterprise. Введите Мои размещенные сервисы для подключения сервера. Все слова должны начинаться с заглавных букв, и между словами должны быть пробелы.
  • HOSTING_SERVER – Используется при публикации размещенного веб-слоя на ArcGIS Online или ArcGIS Enterprise.
  • Адрес URL к интегрированному серверу портала ArcGIS Enterprise – используйте при публикации слоя изображений карты на интегрированном сервере портала ArcGIS Enterprise.
  • Подключение ArcGIS Server – используйте при публикации картографического сервиса на ArcGIS Server. Вы можете использовать подключения ArcGIS Server, перечисленные в узле Серверы в окне Проект, или перейти в другую папку, где могут храниться файлы подключения к серверу.
  • URL-адрес к ArcGIS Server – Используется при публикации картографического сервиса или сервиса геообработки на ArcGIS Server. Вы можете указать URL к ArcGIS Server при условии, что в проект ArcGIS Pro было добавлено подключение издателя к ArcGIS Server, и что вы открываете этот проект в скрипте или запускаете инструмент в ArcGIS Pro.

ServerConnection
in_service_name
(Дополнительный)

Используйте эту опцию для того, чтобы заменить имя сервиса, указанное в определении сервиса в настоящее время, на новое имя.

String
in_cluster
(Дополнительный)

Используйте эту опцию, если хотите изменить кластер, которому был назначен данный сервис. Вы должны выбрать из кластеров, доступных на указанном сервере.

Прежние версии:

Кластеры в ArcGIS Enterprise 10.5.1 признаны устаревшими. Этот параметр будет проигнорирован серверами, которые не поддерживают множественные кластеры.

String
in_folder_type
(Дополнительный)

Задает тип папки используется для определения источника для папки. По умолчанию папку получают из определения сервиса. Вы также можете получить список папок, уже имеющихся на указанном сервере, или задать новую папку, которая будет создана после публикации этого веб-слоя или сервиса.

  • NEWСоздать новую папку.
  • EXISTINGУкажите папку, существующую на сервере.
  • FROM_SERVICE_DEFINITIONУкажите папку в определении сервиса. Используется по умолчанию.
String
in_folder
(Дополнительный)

Используйте эту опцию, чтобы указать папку для веб-слоя или сервиса. По умолчанию используется папка, уже указанная в определении сервиса. Если вы выбрали NEW для in_folder_type, используйте этот параметр, чтобы ввести новое имя папки. Если вы выбрали EXISTING для in_folder_type, то вы можете выбрать одну из существующих на сервере папок.

String
in_startupType
(Дополнительный)

Используется для определения состояния сервиса (включен/остановлен) сразу после публикации.

  • STARTEDСервис запускается сразу после публикации.
  • STOPPEDСервис не запускается после публикации. Сервис нужно перезапустить вручную.
Boolean
in_override
(Дополнительный)

Используйте этот параметр, если хотите перезаписать свойства общего доступа, установленные в определении сервиса. Эти свойства определяют, как и каким образом вы публикуете веб-слой или веб-инструмент на ArcGIS Online или ArcGIS Enterprise. Публикация веб-слоя или веб-инструмента позволяет другим использовать его.

  • OVERRIDE_DEFINITIONЗамените свойства общего доступа, установленные в определении сервиса, новыми значениями.
  • USE_DEFINITIONСвойства общего доступа, в настоящее время установленные в определении сервиса, будут использоваться после публикации веб-слоя. Используется по умолчанию.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online или ArcGIS Enterprise.

Этот параметр не учитывается при публикации на ArcGIS Server.

Boolean
in_my_contents
(Дополнительный)

Определяет параметры публикации веб-слоев или веб-инструментов. Все опубликованные веб-слои и веб-инструменты доступны через Мои ресурсы. Даже если вы захотите предоставить доступ лишь определенной группе в своей организации, все равно этот веб-слой или веб-инструмент будет также распространяться через Мои ресурсы.

  • SHARE_ONLINEДает общий доступ к веб-слою или веб-инструменту на ArcGIS Online или ArcGIS Enterprise. Этот веб-слой или веб-инструмент будет показан в списке на странице Мои ресурсы.
  • NO_SHARE_ONLINEВеб-слой или веб-инструмент не будет в общем доступе на ArcGIS Online или ArcGIS Enterprise и будет недоступен для прочих пользователей и клиентов ArcGIS Online или ArcGIS Enterprise в веб.

Для того чтобы переписать свойства общего доступа, необходимо выполнить вход на портал.

Этот параметр не учитывается при публикации на ArcGIS Server.

Boolean
in_public
(Дополнительный)

Указывает, будет ли веб-слой или веб-инструмент доступен для общественности.

  • PUBLICПредоставляется общий доступ к веб-слою или веб-инструменту.
  • PRIVATEОбщий доступ к веб-слою или веб-инструменту не предоставляется.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online или ArcGIS Enterprise.

Этот параметр не учитывается при публикации на ArcGIS Server.

Boolean
in_organization
(Дополнительный)

Определяет, будет ли веб-слой или веб-инструмент доступен в пределах вашей организации.

  • SHARE_ORGANIZATIONПредоставляется общий доступ к веб-слою или веб-инструменту в пределах организации.
  • NO_SHARE_ORGANIZATIONОбщий доступ к веб-слою или веб-инструменту в пределах организации не предоставляется.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online или ArcGIS Enterprise.

Этот параметр не учитывается при публикации на ArcGIS Server.

Boolean
in_groups
[group_name,...]
(Дополнительный)

Список имен групп, которым предоставляется доступ к веб-слою или веб-инструменту.

Для того чтобы переписать свойства общего доступа, необходимо войти на ArcGIS Online или ArcGIS Enterprise.

Этот параметр не учитывается при публикации на ArcGIS Server.

String

Производные выходные данные

NameОбъяснениеТип данных
out_soap_svc_url

URL-адрес сервиса SOAP, опубликованного на сервере.

Строковое
out_rest_svc_url

URL-адрес сервиса REST, опубликованного на сервере.

Строковое
out_mapServiceItemID

ID элемента слоя изображений карты, опубликованного на портале.

Строковое
out_featServiceItemID

ID элемента размещенного векторного слоя, опубликованного на портале.

Строковое
out_cached_service

Сервис изображений или картографический сервис с включенной возможностью кэширования.

Сервис изображений; MapServer
out_featureServiceURL

URL-адрес REST размещенного векторного слоя, опубликованного на портале.

Строковое
out_mapServiceURL

URL-адрес REST слоя изображений карты, опубликованного на портале.

Строковое
out_LayerIDMap

Опубликованные слои и их ID в формате Layer1|ID1;Layer2|ID2; и т.п.

Строковое
out_standaloneTableIDMap

Опубликованные автономные таблицы и их ID в формате Table1|ID1;Table2|ID2; и т.п.

Строковое
out_vectorTileServiceID

ID элемента сервиса векторных тайлов.

Строковое
out_vectorTileServiceURL

REST URL сервиса векторный тайлов.

Строковое

Пример кода

UploadServiceDefinition, пример 1 (автономный скрипт)

Следующий скрипт публикует список слоёв из карты как слой веб-листов в ArcGIS Enterprise или ArcGIS Online. Информацию о портале можно получить на странице Portals в ArcGIS Pro.

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.StageService_server(sddraft_output_filename, sd_output_filename)
# Share to portal
print("Uploading Service Definition...")
arcpy.UploadServiceDefinition_server(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"
# Execute UploadServiceDefinition
arcpy.UploadServiceDefinition_server(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"]
# Execute UploadServiceDefinition arcpy.UploadServiceDefinition_server(inSdFile, inServer, inServiceName,                                      inCluster, inFolderType, inFolder, 
                                     inStartup, inOverride, inMyContents,                                      inPublic, inOrganization, inGroups)

Environments

Этот инструмент не использует параметры среды геообработки

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы