Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Step Functions Lokal tidak didukung
Step Functions Local tidak menyediakan paritas fitur dan tidak didukung.
Anda dapat mempertimbangkan solusi pihak ketiga yang meniru Step Functions untuk tujuan pengujian.
Dengan AWS Step Functions Local, versi Step Functions yang dapat diunduh, Anda dapat menguji aplikasi dengan Step Functions yang berjalan di lingkungan pengembangan Anda sendiri.
Saat menjalankan Step Functions Local, Anda dapat menggunakan salah satu cara berikut untuk memanggil integrasi layanan:
-
Mengkonfigurasi titik akhir lokal untuk AWS Lambda dan layanan lainnya.
-
Melakukan panggilan langsung ke AWS layanan dari Step Functions Local.
-
Mengejek respons dari integrasi layanan.
AWS Step Functions Local tersedia sebagai paket JAR atau image Docker mandiri yang berjalan di Microsoft Windows, Linux, macOS, dan platform lain yang mendukung Java atau Docker.
Awas
Anda hanya boleh menggunakan Step Functions Local untuk pengujian dan tidak pernah memproses informasi sensitif.
Topik
Menyiapkan Step Functions Lokal (Versi yang Dapat Diunduh) di Docker
Citra Docker Step Functions Local memungkinkan Anda memulai dengan Step Functions Local cepat dengan menggunakan citra Docker terhadap semua dependensi yang dibutuhkan. Image Docker memungkinkan Anda untuk menyertakan Step Functions Local dalam build container Anda dan sebagai bagian dari pengujian integrasi berkelanjutan Anda.
Untuk mendapatkan image Docker untuk Step Functions Local, lihat https://hub.docker.com/r/amazon/ aws-stepfunctions-localpull
docker pull amazon/aws-stepfunctions-local
Untuk memulai versi Step Functions yang dapat diunduh di Docker, jalankan perintah Docker berikut run
docker run -p 8083:8083 amazon/aws-stepfunctions-local
Untuk berinteraksi dengan AWS Lambda atau layanan lain yang didukung, Anda perlu mengonfigurasi kredensyal dan opsi konfigurasi lainnya terlebih dahulu. Untuk informasi selengkapnya, lihat topik berikut.
Menyiapkan Step Functions Lokal (Versi yang Dapat Diunduh) - Versi Java
Versi yang dapat diunduh AWS Step Functions disediakan sebagai file JAR yang dapat dieksekusi dan sebagai gambar Docker. Aplikasi Java berjalan pada Windows, Linux, macOS, dan platform lain yang mendukung Java. Selain Java, Anda perlu menginstal AWS Command Line Interface (AWS CLI). Untuk informasi tentang menginstal dan mengonfigurasi AWS CLI, lihat Panduan AWS Command Line Interface Pengguna.
Untuk menyiapkan dan menjalankan Step Functions di komputer Anda
-
Unduh Step Functions menggunakan tautan berikut.
Unduh Tautan Checksum .tar.gz .tar.gz.md5 .zip .zip.md5 -
Ekstrak file
.zip
. -
Menguji unduhan dan melihat informasi versi.
$ java -jar StepFunctionsLocal.jar -v Step Function Local Version: 2.0.0 Build: 2024-05-18
-
(Opsional) Melihat daftar perintah yang tersedia.
$ java -jar StepFunctionsLocal.jar -h
-
Untuk memulai Step Functions di komputer Anda, buka command prompt, navigasikan ke direktori tempat Anda mengekstrak
StepFunctionsLocal.jar
, dan masukkan perintah berikut.java -jar StepFunctionsLocal.jar
-
Untuk mengakses Step Functions yang berjalan secara lokal, gunakan parameter
--endpoint-url
. Misalnya, menggunakan AWS CLI, Anda akan menentukan perintah Step Functions sebagai berikut:aws stepfunctions --endpoint-url http://localhost:8083
command
catatan
Secara default, Step Functions Local menggunakan akun pengujian lokal dan kredensialnya, dan AWS Region diatur ke US East (Virginia N.). Untuk menggunakan Step Functions Local dengan AWS Lambda, atau layanan lain yang didukung, Anda harus mengonfigurasi kredensyal dan Wilayah Anda.
Jika Anda menggunakan alur kerja Express dengan Step Functions Local, riwayat eksekusi akan disimpan dalam file log. Itu tidak masuk ke CloudWatch Log. Jalur file log akan didasarkan pada grup CloudWatch log Log ARN yang disediakan saat Anda membuat mesin status lokal. Berkas log akan disimpan di /aws/states/log-group-name/
relatif terhadap lokasi tempat Anda menjalankan Step Functions Local. Misalnya, jika ARN eksekusi adalah:${execution_arn}
.log
arn:aws:states:us-east-1:123456789012:express:test:example-ExpressLogGroup-wJalrXUtnFEMI
berkas log adalah:
aws/states/log-group-name/arn:aws:states:us-east-1:123456789012:express:test:example-ExpressLogGroup-wJalrXUtnFEMI.log
Pengaturan Opsi Konfigurasi untuk Step Functions Lokal
Saat Anda memulai AWS Step Functions Local dengan menggunakan file JAR, Anda dapat mengatur opsi konfigurasi dengan menggunakan AWS Command Line Interface (AWS CLI), atau dengan memasukkannya ke dalam lingkungan sistem. Untuk Docker, Anda harus menentukan pilihan ini dalam file yang Anda referensi ketika memulai Step Functions Local.
Opsi konfigurasi
Saat Anda mengonfigurasi container Step Functions Local untuk menggunakan endpoint override seperti Lambda Endpoint dan Batch Endpoint, dan melakukan panggilan ke endpoint tersebut, Step Functions Local tidak menggunakan kredenal yang Anda tentukan. Menyetel penggantian titik akhir ini adalah opsional.
Opsi | Baris perintah | Lingkungan |
---|---|---|
Akun | -akun, --aws-akun | AWS_ACCOUNT_ID |
Wilayah | -wilayah, --aws-region | AWS_DEFAULT_WILAYAH |
Skala Waktu Tunggu | -waitTimeScale, --wait-time-scale | WAIT_TIME_SCALE |
Titik Akhir Lambda | -LambdaendPoint, --lambda-titik akhir | LAMBDA_ENDPOINT |
Titik Akhir Batch | -BatchEndPoint, --batch-titik akhir | BATCH_ENDPOINT |
Titik Akhir DynamoDB | -dinamo, --dynamodb-titik akhir DBEndpoint | DYNAMODB_ENDPOINT |
Titik akhir ECS | -ECSendPoint, --ecs-titik akhir | ECS_ENDPOINT |
Titik Akhir Glue | -GlueEndpoint, --lem-titik akhir | GLUE_ENDPOINT |
SageMaker Titik akhir | -sageMakerEndpoint, --sagemaker-titik akhir | SAGE_MAKER_ENDPOINT |
Titik akhir SQS | -SqSendPoint, --sqs-titik akhir | SQS_ENDPOINT |
Titik Akhir SNS | -SnsendPoint, --sns-titik akhir | SNS_ENDPOINT |
Titik akhir Step Functions | -stepFunctionsEndpoint, --step-functions-endpoint | STEP_FUNCTIONS_ENDPOINT |
Kredensial dan konfigurasi untuk Docker
Untuk mengonfigurasi Step Functions Local untuk Docker, buat file berikut: aws-stepfunctions-local-credentials.txt
.
File ini berisi kredensyal Anda dan opsi konfigurasi lainnya. Berikut ini dapat digunakan sebagai template saat membuat aws-stepfunctions-local-credentials.txt
file.
AWS_DEFAULT_REGION
=AWS_REGION_OF_YOUR_AWS_RESOURCES
AWS_ACCESS_KEY_ID=YOUR_AWS_ACCESS_KEY
AWS_SECRET_ACCESS_KEY=YOUR_AWS_SECRET_KEY
WAIT_TIME_SCALE=VALUE
LAMBDA_ENDPOINT=VALUE
BATCH_ENDPOINT=VALUE
DYNAMODB_ENDPOINT=VALUE
ECS_ENDPOINT=VALUE
GLUE_ENDPOINT=VALUE
SAGE_MAKER_ENDPOINT=VALUE
SQS_ENDPOINT=VALUE
SNS_ENDPOINT=VALUE
STEP_FUNCTIONS_ENDPOINT=VALUE
Setelah Anda mengonfigurasi kredensial dan opsi konfigurasi Anda di aws-stepfunctions-local-credentials.txt
, mulai Step Functions dengan perintah berikut.
docker run -p 8083:8083 --env-file aws-stepfunctions-local-credentials.txt amazon/aws-stepfunctions-local
catatan
Disarankan untuk menggunakan nama DNS khusushost.docker.internal
, yang menyelesaikan ke alamat IP internal yang digunakan host, seperti. http://host.docker.internal:8000
Untuk informasi selengkapnya, lihat dokumentasi Docker untuk Mac dan Windows di fitur Jaringan di Docker Desktop untuk Mac
Menjalankan Step Functions Lokal di Komputer Anda
Gunakan Step Functions versi lokal untuk mengonfigurasi, mengembangkan, dan menguji mesin status di komputer Anda.
Jalankan mesin HelloWorld status secara lokal
Setelah menjalankan Step Functions secara lokal dengan AWS Command Line Interface (AWS CLI), Anda dapat memulai eksekusi mesin status.
-
Buat mesin status dari AWS CLI dengan melarikan diri dari definisi mesin status.
aws stepfunctions --endpoint-url http://localhost:8083 create-state-machine --definition "{\ \"Comment\": \"A Hello World example of the Amazon States Language using a Pass state\",\ \"StartAt\": \"HelloWorld\",\ \"States\": {\ \"HelloWorld\": {\ \"Type\": \"Pass\",\ \"End\": true\ }\ }}" --name "HelloWorld" --role-arn "arn:aws:iam::012345678901:role/DummyRole"
catatan
role-arn
Ini tidak digunakan untuk Step Functions Local, tetapi Anda harus memasukkannya dengan sintaks yang tepat. Anda dapat menggunakan Amazon Resource Name (ARN) dari contoh sebelumnya.Jika Anda berhasil membuat mesin status, Step Functions merespons dengan tanggal penciptaan dan ARN mesin status.
{ "creationDate": 1548454198.202, "stateMachineArn": "arn:aws:states:us-east-1:123456789012:stateMachine:HelloWorld" }
-
Mulai eksekusi menggunakan ARN dari mesin status yang Anda buat.
aws stepfunctions --endpoint-url http://localhost:8083 start-execution --state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:HelloWorld
Step Functions Lokal dengan AWS SAM CLI Lokal
Anda dapat menggunakan versi lokal Step Functions dengan versi lokal AWS Lambda. Untuk mengonfigurasi ini, Anda harus memasang dan mengonfigurasi AWS SAM.
Untuk informasi tentang mengkonfigurasi dan menjalankan AWS SAM, lihat berikut ini:
Ketika Lambda berjalan pada sistem lokal Anda, Anda dapat memulai Step Functions Local. Dari direktori tempat Anda mengekstrak file JAR lokal Step Functions, mulai Step Functions Local dan gunakan --lambda-endpoint
parameter untuk mengonfigurasi titik akhir Lambda lokal.
java -jar StepFunctionsLocal.jar --lambda-endpoint http://127.0.0.1:3001 command
Untuk informasi selengkapnya tentang menjalankan Step Functions Local with AWS Lambda, lihatTutorial: Menguji alur kerja menggunakan Step Functions dan AWS SAM CLI Local.