배포 조건은 조건이 true인 배포에만 적용되도록 정책의 범위를 좁힙니다. 예를 들어 배포 조건을 사용하여 특정 카탈로그 항목이나 템플릿에만 적용되는 정책을 생성할 수 있습니다.

배포 조건 구성

그래픽 인터페이스를 사용하여 배포 조건 표현식을 구성합니다. 복잡한 표현식을 구성하려면 AND 및 OR을 사용할 수 있습니다. 표현식을 괄호 연산자로 그룹화할 수도 있습니다. 표현식이 처리되는 방법에 대한 자세한 내용은 표현식의 연산 순서 항목을 참조하십시오.

다음은 표현식의 예입니다.
deployment equals Multi-tier with LB AND (ownedBy equals jan@mycompany.com OR ownedBy kris@mycompany.com)
배포 조건 구성 요소 사용은 다음 예와 같습니다.
배포 조건의 예.

배포 조건 속성

실용적인 배포 조건을 생성하려면 구문을 이해해야 합니다.

조건 텍스트 상자에는 사용 가능한 속성과 연산자를 제공하는 다양한 드롭다운 메뉴가 있습니다. 표현식을 구성하는 방법은 사용 가능한 값과 연산 순서에 따라 다릅니다.

드롭다운 메뉴에는 다음과 같은 속성이 포함됩니다. 일부 속성은 정책 유형에 따라 다릅니다.

속성 설명 다음 정책 유형에서 사용 가능 지원되는 연산자
Cloud Template

배포를 생성하는 데 사용된 Cloud Assembly 클라우드 템플릿의 식별자입니다.

정책이 Cloud Assembly 클라우드 템플릿에만 해당하는 경우 Catalog Item 대신 Cloud Template을 사용합니다. 예를 들어, Amazon Web Services 템플릿에는 Cloud Template가 없습니다.
  • 승인
  • 2일차
  • 리스
  • 같음
  • 같지 않음

Catalog Item

배포를 요청하는 데 사용된 Service Broker 카탈로그 항목의 식별자입니다.

정책에 템플릿, 확장성 워크플로 또는 기타 컨텐츠 유형에 기반하는 Service Broker 카탈로그 항목을 포함할 수 있으면 Cloud Template 대신 Catalog Item을 사용합니다. 예를 들어 카탈로그에서 배포된 Cloud Assembly 클라우드 템플릿과 Amazon Web Services CloudFormation 템플릿은 Catalog Item입니다.

  • 승인
  • 2일차
  • 리스
  • 같음
  • 같지 않음
Deployment Creation Cost

비용 값입니다.

배포가 지정된 비용 표현식과 일치하는 경우 승인 흐름을 트리거합니다.

  • 승인
  • 같음
  • 같지 않음
  • 보다 큼
  • 크거나 같음
  • 보다 작음
  • 작거나 같음
Deployment 배포 식별자입니다.
  • 승인
  • 같음
  • 같지 않음
Created By

배포를 요청한 사용자의 이름입니다. 형식은 username@mycompany.com입니다.

이 사용자는 배포를 요청한 사용자입니다.

  • 2일차
  • 리스
  • 같음
  • 같지 않음
  • 정규식과 일치
  • 포함
Name 배포 이름.
  • 2일차
  • 리스
  • 같음
  • 같지 않음
  • 정규식과 일치
  • 포함
Owned By

현재 배포 소유자의 이름입니다.

  • 승인
  • 2일차
  • 리스
  • 같음
  • 같지 않음
  • 정규식과 일치
  • 포함
Requested By

2일차 작업을 요청한 사용자의 이름입니다. 형식은 username@mycompany.com입니다.

승인 정책을 생성할 때 requestedBy 조건은 배포를 요청한 사용자가 아닌 2일차 작업을 요청한 사용자입니다. 배포를 요청한 사용자는 createdBy 조건입니다.

  • 승인
  • 같음
  • 같지 않음
  • 정규식과 일치
  • 포함
Resources 배포의 일부인 리소스입니다.

다음 리소스를 기반으로 배포 조건을 정의할 수 있습니다.

  • CPU 수
  • 클라우드 유형
  • 버전
  • 지역
  • 태그

    사용자 정의 및 검색된 태그.

  • 총 메모리(MB)
  • 리소스 유형
  • 승인
  • 2일차
  • 리스

다음 추가 리소스를 기반으로 승인 조건을 정의할 수 있습니다.

  • 클라우드 영역
  • 클라우드 계정
  • 스냅샷 있음
  • 이미지
  • 이미지 ID
  • OS 유형
  • 전원 상태
  • 디스크
  • 승인

리소스 태그에 대한 조건 형식

리소스 태그는 키 값 쌍입니다. 태그를 기반으로 배포 조건을 정의하는 경우 키를 정의해야 합니다. 값을 정의하는 것은 선택 사항입니다. 조건은 사용자 정의 태그 및 시스템 태그를 기반으로 합니다.

예를 들어, 태그 쌍 하나에 대한 조건을 생성하려면 표현식이 다음 예와 유사합니다.
resources has any 
    tags has any 
        key equals env 
        AND 
        value equals dev
UI에 표시되는 키 값 쌍 하나의 간단한 배포 조건 표현식의 예.
하나의 키이지만 여러 값에 기반한 조건을 만들려면 표현식이 다음 예와 유사합니다.
resources has any 
    tags has any 
        key equals env 
            AND 
                value equals dev 
                OR
                value equals prod
UI에 표시되는 단일 키 및 다중 값 배포 조건 표현식의 예.
여러 키에 기반하지만 값이 없는 조건을 만들려면 표현식이 다음 예와 유사합니다.
resources has any 
    tags has any 
        key equals env1 
        OR 
        key equals env2
UI에 표시되는 여러 키 배포 조건식의 예.
두 개의 서로 다른 키 값 쌍을 평가하는 조건을 생성하려면 개별 리소스 태그로 추가해야 합니다. 예를 들어,
resources has any 
    tags has any 
        key equals env 
        AND 
        value equals envprod
    AND
    tags has any 
        key equals vc_65_network 
        AND 
        value equals vc
UI에 표시되는 여러 키 및 값 배포 조건 표현식의 예.

포함정규식과 일치 연산자 사용

containsmatches Regex 연산자는 속성 내에서 지정된 문자 집합에 대한 검색을 정의합니다. 이러한 연산자를 드롭다운을 지원하지 않는 문자열 기반 속성에 적용할 수 있습니다(예: createdBy, name, ownedBy).

contains 연산자는 컨텍스트에서 지정한 값의 모든 인스턴스를 검색합니다. 값 입력 텍스트 상자는 대/소문자를 구분하고 공백을 구분합니다. 컨텍스트 변형을 고려하려면 각 추가 변형에 대한 값을 설정해야 합니다. 제한된 수의 값을 간단하게 검색하려면 contains 연산자를 사용합니다.

matches Regex 연산자는 많은 컨텍스트 변형을 고려해야 하는 복잡한 검색에 사용하는 경우 뛰어난 유연성을 제공합니다. 정규식은 ECMAScript 구문을 따라야 합니다. 정규식을 정의할 때 값의 시작과 끝에 슬래시(/)를 입력하지 마십시오.

다음 표에서는 두 연산자를 사용하는 표현식의 예를 제공하고 동일한 목표를 달성하기 위해 사용할 수 있는 방법을 비교합니다.

contains 연산자의 예 matches Regex 연산자의 예 필드 값 매칭
name contains test
name matches Regex test*

test(소문자)가 포함된 모든 배포 이름. 예: test deployment, mytest, test-123 등.

name contains test
OR
name contains Test
name matches Regex (t|T)est.*

test 또는 Test가 포함된 모든 배포 이름.

(group)
	createdBy contains admin@
	(group)
	AND
		createdBy contains .com
		OR
		createdBy contains .org
(group)
AND
	name contains test
	OR
	name contains test-
	OR
	name contains Test
	OR
	name contains Test-
	OR
	name contains deploy
	OR
	name contains Deploy
createdBy matches Regex admin@\S+\.((com)|(org))
AND
name matches ((t|T)est)|(d|D)epl.*.

이메일 주소가 admin@으로 시작하고 .com 또는 .org로 끝나는 사용자가 생성한 모든 배포.

test 및/또는 deploy가 포함된 모든 배포 이름. 예: test deployment, testdeployment, Test-Deployment 등.

표현식의 연산 순서

표현식은 다음과 같은 순서로 처리됩니다. 그룹은 괄호로 표시됩니다.

  1. 그룹의 표현식
  2. AND
  3. 또는

다음 예를 사용하여 순서를 이해할 수 있습니다.

  • X OR Y AND Z. 이 예에서 , Y AND Z는 X OR Y보다 먼저 평가됩니다. 다음으로, X OR은 Y AND Z의 결과와 비교하여 평가됩니다.
  • (X OR Y) AND Z. 이 예에서, X OR Y는 AND보다 먼저 평가됩니다. 그룹의 표현식이 항상 먼저 평가되기 때문입니다. 다음 AND Z는 X OR Y의 결과와 비교하여 평가됩니다.