

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 작업 AWS Step Functions
<a name="building-stepfunctions"></a>

다음 섹션에서는 AWS 도구 키트에서 상태 시스템 정의가 포함된 파일을 사용하는 AWS Step Functions `Amazon State Language (ASL)` 방법을 설명합니다. AWS Step Functions 상태 시스템에 대한 자세한 내용은 *AWS Step Functions* 개발자 안내서의 [Step Functions에서 상태 시스템에 대해 알아보기](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-statemachines.html) 주제를 참조하세요.

## Step Functions 상태 머신 보기
<a name="starting-sfn-list"></a>

 AWS Toolkit Explorer에서 상태 시스템 정의가 포함된 기존 `ASL` 파일을 보려면 다음 단계를 완료하세요.

1.  AWS Toolkit Explorer에서 보려는 `ASL` 파일이 포함된 리전을 확장합니다.

1. **Step Functions** 제목을 확장합니다.

1. `ASL` 파일이 AWS 탐색기에 표시됩니다.

## Step Functions 상태 머신 생성
<a name="starting-sfn-create"></a>

 AWS 도구 키트에서 파일에서 새 Step Functions 상태 시스템을 생성하거나 템플릿을 사용할 수 있습니다. 다음 절차에서는 파일에서 Step Functions 상태 머신 생성하는 방법을 설명합니다. 템플릿에서 SFN 상태 머신을 생성하는 방법에 대한 자세한 내용은 이 사용 설명서 주제 하위에 있는 *상태 머신 템플릿* 섹션을 참조하세요.

**참고**  
VS Code에서 Step Functions로 작업하려면, 상태 머신 정의가 포함된 `Amazon State Language`(ASL) 파일의 확장자가 `asl.json`, `asl.yml`, 또는 `.asl.yaml`로 끝나야 합니다.  
기본적으로 관련 Step Functions 파일은 Workflow Studio에서 열 수 있습니다. AWS 도구 키트를 통해 Workflow Studio에서 작업하는 방법에 대한 자세한 내용은이 사용 설명서의 [Workflow Studio 작업](https://docs.aws.amazon.com//toolkit-for-vscode/latest/userguide/stepfunctions-workflowstudio.html) 주제를 참조하세요.

1. VS Code의 워크스페이스에서 새 파일을 생성합니다.

1. 파일 이름을 지정하고 파일 확장자를 `asl.json`, `asl.yml` 또는 `.asl.yaml`로 지정합니다.

1. 도구 AWS 키트가 생성되면 AWS Step Functions Workflow Studio에서 새 파일이 열립니다.

1. **Workflow Studio**의 유틸리티 메뉴에서 **저장** 버튼을 선택하여 새 `ASL` 파일을 저장합니다.

## 템플릿을 이용해 Step Functions 상태 머신 생성
<a name="templates-stepfunctions"></a>

 AWS 도구 키트의 템플릿에서 Step Functions 상태 시스템을 생성할 수 있습니다. 템플릿 프로세스는 상태 머신 정의가 포함된 `ASL` 파일을 생성하여 프로젝트의 시작점을 제공합니다. 다음 절차에서는 AWS 도구 키트의 템플릿에서 Step Functions 상태 시스템을 생성하는 방법을 설명합니다.

1.  AWS Toolkit Explorer에서 Step Functions 상태 시스템을 생성할 리전을 확장합니다.

1. **Step Functions**를 우클릭해서 컨텍스트 메뉴를 열고 **새 Step Functions 상태 머신 생성**을 선택하여 VS Code에서 **스타터 템플릿 선택(1/2)** 마법사를 엽니다.

1. **스타터 템플릿 선택(1/2)** 마법사에서 사용할 Step Functions 상태 머신 템플릿 유형을 선택합니다.

1. **템플릿 형식 선택(2/2)** 화면에서 템플릿 형식으로 **YAML** 또는 **JSON**을 선택합니다.

1. 상태 머신 정의가 포함된 새 `ASL` 파일이 VS Code 편집기에서 열립니다.

## Step Functions 상태 머신 다운로드
<a name="sfn-download"></a>

원격으로 저장된 Step Functions 상태 머신을 VS Code의 로컬 인스턴스에 다운로드하려면 다음 단계를 완료하세요.

1.  AWS Toolkit Explorer에서 다운로드하려는 Step Functions 상태 시스템이 포함된 리전을 확장합니다.

1. **Step Functions**를 확장한 다음, 다운로드할 Step Functions 상태 머신을 우클릭하고 **정의 다운로드…**를 선택합니다.

1. 계속하려면 Step Functions 상태 머신을 저장할 로컬 저장 위치를 지정합니다.

1. 해당 절차가 완료되면 Workflow Studio에서 Step Functions 상태 머신이 열립니다.

## Step Functions 상태 머신에 변경 사항 저장
<a name="starting-sfn-update"></a>

다음 절차에서는 Step Functions 상태 머신에 적용한 변경 사항을 저장하는 방법을 설명합니다.

**참고**  
Workflow Studio에서 편집한 내용은 로컬 파일에 동기화되지만 작업이 VS Code 편집기 또는 Workflow Studio에 저장되기 전에는 저장되지 않은 상태로 유지됩니다. Workflow Studio가 열려 있는 동안 로컬 파일이 수정 및 저장되고, `ASL` 파일에서 오류가 감지되지 않으면 저장이 완료된 후 Workflow Studio에 **성공** 알림이 표시됩니다. 그러나 로컬 파일에 잘못된 `JSON` 또는 `YAML`이 포함되어 있는 상태로 저장을 시도하면 로컬 파일은 동기화되지 않고, Workflow Studio에 **경고** 알림이 표시됩니다.

1. Workflow Studio의 상태 머신 정의가 포함된 `ASL` 파일이 열린 상태에서 **유틸리티 버튼으로** 이동합니다.

1. **저장** 버튼을 선택합니다.

1. 파일이 저장되면 VS Code가 알려줍니다.

## Step Functions 상태 머신 실행
<a name="starting-sfn-execute"></a>

다음 절차에서는 AWS 도구 키트에서 Step Functions 상태 시스템을 실행하는 방법을 설명합니다.

1.  AWS Toolkit Explorer에서 실행하려는 Step Functions 상태 시스템이 포함된 리전을 확장합니다.

1. **Step Functions**를 확장한 다음 실행하려는 Step Functions 상태 머신을 우클릭합니다.

1. 컨텍스트 메뉴에서 **실행 시작**을 선택하여 시작 프로세스를 시작합니다.

1. VS Code의 **AWS Toolkit 출력** 창에 시작 상태가 표시됩니다.

## 코드 스니펫 작업
<a name="building-stepfunctions-code-snippets"></a>

코드 스니펫은 작업 중인 코드를 기반으로 생성하는 자동화된 제안입니다. 도구 키트에서 Step Functions를 이용해 코드 스니펫으로 작업하려면 다음 단계를 완료하세요.

**참고**  
VS Code에서 Step Functions 코드 스니펫으로 작업하려면 상태 머신 정의가 포함된 `ASL` 파일의 확장자가 `.asl.json`, `.asl.yml`또는 `.asl.yaml`로 끝나야 합니다.  
기본적으로 관련 Step Functions 파일은 Workflow Studio에서 열립니다.

1. VS Code에서 수정하려는 상태 머신 정의가 포함된 `ASL` 파일을 열거나 새 `ASL` 파일을 생성합니다.

1. Workflow Studio에서 **설계** 모드인 경우 **코드** 모드로 전환합니다.

1. Workflow Studio 코드 편집기에서 `"States"` 속성에 커서를 놓습니다.

1. **control \$1 space**를 눌러 코드 스니펫 메뉴를 엽니다. **control \$1 space**를 눌러 추가 속성에 액세스할 수 있으며, 해당 속성은 `"State"` `"Type"`를 기반으로 합니다.

1. 목록에서 원하는 코드 스니펫을 선택합니다.

## 코드 검증
<a name="building-stepfunctions-code-completion"></a>

Workflow Studio에서 Step Functions를 작업할 때, 코드 검증은 오류를 적극적으로 식별하고 다음을 제안합니다.
+ 누락된 속성
+ 잘못된 값
+ 비종료 상태
+ 포인트가 지정되지만 존재하지 않는 상태