다음을 통해 공유


Static Sites - Create Or Update Static Site

기존 리소스 그룹에 새 정적 사이트를 만들거나 기존 정적 사이트를 업데이트하는 것에 대한 설명입니다.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}?api-version=2023-12-01

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
name
path True

string

만들거나 업데이트할 정적 사이트의 이름입니다.

resourceGroupName
path True

string

리소스가 속한 리소스 그룹의 이름입니다.

regex 패턴: ^[-\w\._\(\)]+[^\.]$

subscriptionId
path True

string

Azure 구독 ID. GUID 형식 문자열입니다(예: 00000000-0000-0000-0000-0000-00000000000).

api-version
query True

string

API 버전

요청 본문

Name 필수 형식 Description
location True

string

리소스 위치입니다.

identity

ManagedServiceIdentity

관리 서비스 ID.

kind

string

리소스 종류입니다.

properties.allowConfigFileUpdates

boolean

false 이 정적 웹앱에 대해 구성 파일이 잠겨 있으면 이고, 그렇지 않으면 입니다 true.

properties.branch

string

리포지토리의 대상 분기입니다.

properties.buildProperties

StaticSiteBuildProperties

리포지토리에서 구성할 속성을 빌드합니다.

properties.enterpriseGradeCdnStatus

EnterpriseGradeCdnStatus

정적 웹앱에 트래픽을 제공하는 엔터프라이즈급 CDN의 상태 나타내는 상태입니다.

properties.provider

string

정적 사이트의 기본 환경에 마지막 배포를 제출한 공급자입니다.

properties.publicNetworkAccess

string

공용 트래픽이 정적 웹앱에 허용되는지 여부를 나타내는 상태입니다. 허용되는 값: 'Enabled', 'Disabled' 또는 빈 문자열입니다.

properties.repositoryToken

string

사용자의 github 리포지토리 토큰입니다. Github Actions 워크플로 파일 및 API 비밀을 설정하는 데 사용됩니다.

properties.repositoryUrl

string

정적 사이트의 리포지토리에 대한 URL입니다.

properties.stagingEnvironmentPolicy

StagingEnvironmentPolicy

스테이징 환경이 정적 웹앱에 허용되는지 여부를 나타내는 상태입니다.

properties.templateProperties

StaticSiteTemplateOptions

새 리포지토리를 생성하기 위한 템플릿 옵션입니다.

sku

SkuDescription

확장 가능한 리소스에 대한 SKU에 대한 설명입니다.

tags

object

리소스 태그.

응답

Name 형식 Description
200 OK

StaticSiteARMResource

OK.

202 Accepted

StaticSiteARMResource

비동기 작업이 진행 중입니다.

Other Status Codes

DefaultErrorResponse

오류 응답을 App Service.

보안

azure_auth

Azure Active Directory OAuth2 Flow

형식: oauth2
Flow: implicit
권한 부여 URL: https://login.microsoftonline.com/common/oauth2/authorize

범위

Name Description
user_impersonation 사용자 계정 가장

예제

Create or update a static site

샘플 요청

PUT https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0?api-version=2023-12-01

{
  "location": "West US 2",
  "properties": {
    "repositoryUrl": "https://github.com/username/RepoName",
    "branch": "master",
    "repositoryToken": "repoToken123",
    "buildProperties": {
      "appLocation": "app",
      "apiLocation": "api",
      "appArtifactLocation": "build"
    }
  },
  "sku": {
    "name": "Basic",
    "tier": "Basic"
  }
}

샘플 응답

{
  "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0",
  "name": "testStaticSite0",
  "type": "Microsoft.Web/staticSites",
  "location": "West US 2",
  "properties": {
    "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net",
    "repositoryUrl": "https://github.com/username/RepoName",
    "branch": "demo",
    "customDomains": [],
    "privateEndpointConnections": [],
    "contentDistributionEndpoint": "",
    "keyVaultReferenceIdentity": "SystemAssigned",
    "userProvidedFunctionApps": null,
    "linkedBackends": [],
    "stagingEnvironmentPolicy": "Enabled",
    "allowConfigFileUpdates": true
  },
  "sku": {
    "name": "Basic",
    "tier": "Basic"
  }
}
azure-asyncoperation: https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01
{
  "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0",
  "name": "testStaticSite0",
  "type": "Microsoft.Web/staticSites",
  "location": "West US 2",
  "properties": {
    "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net",
    "repositoryUrl": "https://github.com/username/RepoName",
    "branch": "demo",
    "customDomains": [],
    "privateEndpointConnections": [],
    "contentDistributionEndpoint": "",
    "keyVaultReferenceIdentity": "SystemAssigned",
    "userProvidedFunctionApps": null,
    "linkedBackends": [],
    "stagingEnvironmentPolicy": "Enabled",
    "allowConfigFileUpdates": true
  },
  "sku": {
    "name": "Basic",
    "tier": "Basic"
  }
}

정의

Name Description
ArmIdWrapper

ARM 리소스 ID에 대한 래퍼

ArmPlan

Azure Resource Manager 계획 개체는 마켓플레이스 계획을 나타냅니다.

Capability

특정 SKU에 허용되는 기능/기능에 대해 설명합니다.

DatabaseConnectionOverview

정적 사이트 데이터베이스 연결 개요.

DefaultErrorResponse

오류 응답을 App Service.

Details
EnterpriseGradeCdnStatus

정적 웹앱에 트래픽을 제공하는 엔터프라이즈급 CDN의 상태 나타내는 상태입니다.

Error

오류 모델.

ErrorEntity

API에서 반환된 오류 응답의 본문입니다.

ManagedServiceIdentity

관리되는 서비스 ID.

ManagedServiceIdentityType

관리 서비스 ID의 유형입니다.

PrivateLinkConnectionState

프라이빗 링크 연결의 상태입니다.

RemotePrivateEndpointConnection

원격 프라이빗 엔드포인트 연결

ResponseMessageEnvelope[RemotePrivateEndpointConnection]

일반적인 Azure 리소스 관리자 속성 및 리소스 공급자별 콘텐츠가 포함된 메시지 봉투입니다.

SkuCapacity

App Service 계획 확장 옵션에 대한 설명입니다.

SkuDescription

확장 가능한 리소스에 대한 SKU에 대한 설명입니다.

StagingEnvironmentPolicy

스테이징 환경이 정적 웹앱에 허용되는지 여부를 나타내는 상태입니다.

StaticSiteARMResource

정적 사이트 ARM 리소스.

StaticSiteBuildProperties

정적 사이트에 대한 속성을 빌드합니다.

StaticSiteDatabaseConnectionConfigurationFileOverview

데이터베이스 연결 구성 파일

StaticSiteLinkedBackend

정적 사이트 연결된 백 엔드 ARM 리소스.

StaticSiteTemplateOptions

정적 사이트에 대한 템플릿 옵션입니다.

StaticSiteUserProvidedFunctionApp

정적 사이트 사용자가 제공한 함수입니다.

userAssignedIdentity

사용자 할당 ID.

ArmIdWrapper

ARM 리소스 ID에 대한 래퍼

Name 형식 Description
id

string

ArmPlan

Azure Resource Manager 계획 개체는 마켓플레이스 계획을 나타냅니다.

Name 형식 Description
name

string

이름입니다.

product

string

제품입니다.

promotionCode

string

승격 코드입니다.

publisher

string

게시자입니다.

version

string

제품 버전입니다.

Capability

특정 SKU에 허용되는 기능/기능에 대해 설명합니다.

Name 형식 Description
name

string

SKU 기능의 이름입니다.

reason

string

SKU 기능의 이유입니다.

value

string

SKU 기능의 값입니다.

DatabaseConnectionOverview

정적 사이트 데이터베이스 연결 개요.

Name 형식 Description
configurationFiles

StaticSiteDatabaseConnectionConfigurationFileOverview[]

이 데이터베이스 연결과 연결된 구성 파일 목록입니다.

connectionIdentity

string

있는 경우 ID는 데이터베이스에 연결하기 위해 연결 문자열 함께 사용됩니다. 시스템 할당 관리 ID의 사용은 'SystemAssigned' 문자열로 표시되고, 사용자 할당 관리 ID의 사용은 관리 ID 리소스의 리소스 ID로 표시됩니다.

name

string

있는 경우 이 데이터베이스 연결 리소스의 이름입니다.

region

string

데이터베이스 리소스의 지역입니다.

resourceId

string

데이터베이스의 리소스 ID입니다.

DefaultErrorResponse

오류 응답을 App Service.

Name 형식 Description
error

Error

오류 모델.

Details

Name 형식 Description
code

string

프로그래밍 방식으로 오류를 식별하는 표준화된 문자열입니다.

message

string

자세한 오류 설명 및 디버깅 정보입니다.

target

string

자세한 오류 설명 및 디버깅 정보입니다.

EnterpriseGradeCdnStatus

정적 웹앱에 트래픽을 제공하는 엔터프라이즈급 CDN의 상태 나타내는 상태입니다.

Name 형식 Description
Disabled

string

Disabling

string

Enabled

string

Enabling

string

Error

오류 모델.

Name 형식 Description
code

string

프로그래밍 방식으로 오류를 식별하는 표준화된 문자열입니다.

details

Details[]

자세한 오류입니다.

innererror

string

디버그 오류에 대한 자세한 정보입니다.

message

string

자세한 오류 설명 및 디버깅 정보입니다.

target

string

자세한 오류 설명 및 디버깅 정보입니다.

ErrorEntity

API에서 반환된 오류 응답의 본문입니다.

Name 형식 Description
code

string

기본 오류 코드입니다.

details

ErrorEntity[]

오류 세부 정보.

extendedCode

string

오류 유형입니다.

innerErrors

ErrorEntity[]

내부 오류입니다.

message

string

오류에 대한 모든 세부 정보입니다.

messageTemplate

string

메시지 템플릿.

parameters

string[]

템플릿에 대한 매개 변수입니다.

target

string

오류 대상입니다.

ManagedServiceIdentity

관리되는 서비스 ID.

Name 형식 Description
principalId

string

관리 서비스 ID의 보안 주체 ID입니다.

tenantId

string

관리 서비스 ID의 테넌트입니다.

type

ManagedServiceIdentityType

관리 서비스 ID의 유형입니다.

userAssignedIdentities

<string,  userAssignedIdentity>

리소스와 연결된 사용자 할당 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName} 형식의 ARM 리소스 ID입니다.

ManagedServiceIdentityType

관리 서비스 ID의 유형입니다.

Name 형식 Description
None

string

SystemAssigned

string

SystemAssigned, UserAssigned

string

UserAssigned

string

PrivateLinkConnectionState

프라이빗 링크 연결의 상태입니다.

Name 형식 Description
actionsRequired

string

개인 링크 연결에 대한 ActionsRequired

description

string

프라이빗 링크 연결에 대한 설명

status

string

프라이빗 링크 연결의 상태

RemotePrivateEndpointConnection

원격 프라이빗 엔드포인트 연결

Name 형식 Description
id

string

리소스 ID입니다.

kind

string

리소스 종류입니다.

name

string

리소스 이름입니다.

properties.ipAddresses

string[]

원격 프라이빗 엔드포인트에 매핑된 개인 IPAddresses

properties.privateEndpoint

ArmIdWrapper

원격 프라이빗 엔드포인트 연결의 PrivateEndpoint

properties.privateLinkServiceConnectionState

PrivateLinkConnectionState

프라이빗 링크 연결의 상태입니다.

properties.provisioningState

string

type

string

리소스 종류.

ResponseMessageEnvelope[RemotePrivateEndpointConnection]

일반적인 Azure 리소스 관리자 속성 및 리소스 공급자별 콘텐츠가 포함된 메시지 봉투입니다.

Name 형식 Description
error

ErrorEntity

Azure-AsyncOperation 오류 정보입니다.

id

string

리소스 ID. 일반적으로 ID는 GET 요청에 대한 응답에 대해서만 채워집니다. 호출자는 GET 요청에 대해서만 이 값을 전달해야 합니다. 예: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupId}/providers/Microsoft.Web/sites/{sitename}

identity

ManagedServiceIdentity

MSI 리소스

location

string

지리적 지역 리소스는 SouthCentralUS, SouthEastAsia와 같은 지역에 속합니다.

name

string

리소스의 이름입니다.

plan

ArmPlan

Azure 리소스 관리자 계획.

properties

RemotePrivateEndpointConnection

리소스별 속성입니다.

sku

SkuDescription

리소스에 대한 SKU 설명입니다.

status

string

상태 정보를 Azure-AsyncOperation.

tags

object

리소스와 연결된 태그입니다.

type

string

리소스 유형(예: "Microsoft.Web/sites").

zones

string[]

서비스가 호스팅되는 논리적 가용성 영역

SkuCapacity

App Service 계획 확장 옵션에 대한 설명입니다.

Name 형식 Description
default

integer

이 App Service 계획 SKU의 기본 작업자 수입니다.

elasticMaximum

integer

이 App Service 계획 SKU의 최대 탄력적 작업자 수입니다.

maximum

integer

이 App Service 계획 SKU의 최대 작업자 수입니다.

minimum

integer

이 App Service 계획 SKU의 최소 작업자 수입니다.

scaleType

string

App Service 계획에 사용 가능한 크기 조정 구성

SkuDescription

확장 가능한 리소스에 대한 SKU에 대한 설명입니다.

Name 형식 Description
capabilities

Capability[]

SKU의 기능(예: Traffic Manager가 사용하도록 설정되어 있나요?

capacity

integer

리소스에 할당된 현재 인스턴스 수입니다.

family

string

리소스 SKU의 패밀리 코드입니다.

locations

string[]

SKU의 위치입니다.

name

string

리소스 SKU의 이름입니다.

size

string

리소스 SKU의 크기 지정자입니다.

skuCapacity

SkuCapacity

SKU의 최소, 최대 및 기본 크기 조정 값입니다.

tier

string

리소스 SKU의 서비스 계층입니다.

StagingEnvironmentPolicy

스테이징 환경이 정적 웹앱에 허용되는지 여부를 나타내는 상태입니다.

Name 형식 Description
Disabled

string

Enabled

string

StaticSiteARMResource

정적 사이트 ARM 리소스.

Name 형식 Description
id

string

리소스 ID입니다.

identity

ManagedServiceIdentity

관리되는 서비스 ID.

kind

string

리소스 종류입니다.

location

string

리소스 위치입니다.

name

string

리소스 이름입니다.

properties.allowConfigFileUpdates

boolean

false 이 정적 웹앱에 대해 구성 파일이 잠겨 있으면 이고, 그렇지 않으면 입니다 true.

properties.branch

string

리포지토리의 대상 분기입니다.

properties.buildProperties

StaticSiteBuildProperties

리포지토리에서 구성할 속성을 빌드합니다.

properties.contentDistributionEndpoint

string

정적 사이트의 콘텐츠 배포 엔드포인트입니다.

properties.customDomains

string[]

이 정적 사이트와 연결된 사용자 지정 도메인입니다.

properties.databaseConnections

DatabaseConnectionOverview[]

정적 사이트에 대한 데이터베이스 연결

properties.defaultHostname

string

정적 사이트의 기본 자동 생성된 호스트 이름입니다.

properties.enterpriseGradeCdnStatus

EnterpriseGradeCdnStatus

정적 웹앱에 대한 트래픽을 제공하는 엔터프라이즈급 CDN의 상태 나타내는 상태입니다.

properties.keyVaultReferenceIdentity

string

Key Vault 참조 인증에 사용할 ID입니다.

properties.linkedBackends

StaticSiteLinkedBackend[]

정적 쪽에 연결된 백 엔드

properties.privateEndpointConnections

ResponseMessageEnvelope[RemotePrivateEndpointConnection][]

프라이빗 엔드포인트 연결

properties.provider

string

정적 사이트의 기본 환경에 마지막 배포를 제출한 공급자입니다.

properties.publicNetworkAccess

string

정적 웹앱에 대한 공용 트래픽 허용 여부를 나타내는 상태입니다. 허용되는 값: 'Enabled', 'Disabled' 또는 빈 문자열입니다.

properties.repositoryToken

string

사용자의 github 리포지토리 토큰입니다. Github Actions 워크플로 파일 및 API 비밀을 설정하는 데 사용됩니다.

properties.repositoryUrl

string

정적 사이트의 리포지토리에 대한 URL입니다.

properties.stagingEnvironmentPolicy

StagingEnvironmentPolicy

스테이징 환경이 정적 웹앱에 허용되는지 여부를 나타내는 상태입니다.

properties.templateProperties

StaticSiteTemplateOptions

새 리포지토리를 생성하기 위한 템플릿 옵션입니다.

properties.userProvidedFunctionApps

StaticSiteUserProvidedFunctionApp[]

정적 사이트에 등록된 사용자가 제공한 함수 앱

sku

SkuDescription

확장 가능한 리소스에 대한 SKU에 대한 설명입니다.

tags

object

리소스 태그.

type

string

리소스 종류.

StaticSiteBuildProperties

정적 사이트에 대한 속성을 빌드합니다.

Name 형식 Description
apiBuildCommand

string

Azure Functions API 애플리케이션을 배포하는 동안 실행할 사용자 지정 명령입니다.

apiLocation

string

리포지토리 내의 api 코드 경로입니다.

appArtifactLocation

string

사용되지 않음: 빌드 후 앱 아티팩트 경로입니다(OutputLocation을 위해 사용되지 않음)

appBuildCommand

string

정적 콘텐츠 애플리케이션을 배포하는 동안 실행할 사용자 지정 명령입니다.

appLocation

string

리포지토리 내의 앱 코드 경로입니다.

githubActionSecretNameOverride

string

Github 작업 비밀 이름이 재정의됩니다.

outputLocation

string

빌드 후 앱의 출력 경로입니다.

skipGithubActionWorkflowGeneration

boolean

Github 작업 워크플로 생성을 건너뜁니다.

StaticSiteDatabaseConnectionConfigurationFileOverview

데이터베이스 연결 구성 파일

Name 형식 Description
contents

string

파일 콘텐츠의 Base64 인코딩입니다.

fileName

string

구성 파일의 이름입니다.

type

string

구성 파일의 형식입니다.

StaticSiteLinkedBackend

정적 사이트 연결된 백 엔드 ARM 리소스.

Name 형식 Description
backendResourceId

string

정적 사이트에 연결된 백 엔드의 리소스 ID

createdOn

string

백 엔드가 정적 사이트에 연결된 날짜 및 시간입니다.

provisioningState

string

연결 프로세스의 프로비전 상태입니다.

region

string

정적 사이트에 연결된 백 엔드의 영역

StaticSiteTemplateOptions

정적 사이트에 대한 템플릿 옵션입니다.

Name 형식 Description
description

string

새로 생성된 리포지토리에 대한 설명입니다.

isPrivate

boolean

새로 생성된 리포지토리가 프라이빗 리포지토리인지 여부입니다. 기본값은 false(예: public)입니다.

owner

string

새로 생성된 리포지토리의 소유자입니다.

repositoryName

string

새로 생성된 리포지토리의 이름입니다.

templateRepositoryUrl

string

템플릿 리포지토리의 URL입니다. 새로 생성된 리포지토리는 이 리포지토리를 기반으로 합니다.

StaticSiteUserProvidedFunctionApp

정적 사이트 사용자가 제공한 함수입니다.

Name 형식 Description
id

string

리소스 ID입니다.

kind

string

리소스 종류입니다.

name

string

리소스 이름입니다.

properties.createdOn

string

함수 앱이 정적 사이트에 등록된 날짜 및 시간입니다.

properties.functionAppRegion

string

정적 사이트에 등록된 함수 앱의 영역

properties.functionAppResourceId

string

정적 사이트에 등록된 함수 앱의 리소스 ID

type

string

리소스 종류.

userAssignedIdentity

사용자 할당 ID.

Name 형식 Description
clientId

string

사용자 할당 ID의 클라이언트 ID

principalId

string

사용자 할당 ID의 보안 주체 ID