■ はじめに
MWAA での単体試験 (Unit tests) について調査していたら、 以下のAWS公式ブログがヒットした。
上記によると、aws-mwaa-local-runner なるものを使っているので 深堀りしてみた。 => めちゃくちゃ簡単にできた。
目次
【1】aws-mwaa-local-runner 【2】ライセンス 【3】必要事項 【4】設定手順 1)前提条件 2)手順 3)補足:デフォルトパスワード「test」 【5】フォルダ構成
【1】aws-mwaa-local-runner
* ローカル上に、MWAA実行環境を構築してくれる
【2】ライセンス
* MIT-0 (MIT No Attribution) => 商用可
https://licenses.opensource.jp/MIT-0/MIT-0.html
【3】必要事項
https://github.com/aws/aws-mwaa-local-runner#prerequisites
のGithubのREADMEによれば、Docker を使える環境は必須。 => MWAA実行環境は、Dockerコンテナイメージで構築するため。
https://github.com/aws/aws-mwaa-local-runner#prerequisites
* macOS: Install Docker Desktop. * Linux/Ubuntu: Install Docker Compose and Install Docker Engine. * Windows: Windows Subsystem for Linux (WSL) to run the bash based command mwaa-local-env. Please follow Windows Subsystem for Linux Installation (WSL) and Using Docker in WSL 2, to get started.
【4】設定手順
* README の 「Get started」をやってみる
https://github.com/aws/aws-mwaa-local-runner#get-started
1)前提条件
* ローカル上に port : 8080 で動いているモジュールがないこと * Git がインストールされていること * Docker が設定されていること => 設定されていない場合は、以下の関連記事を参照のこと。
Git ~ 初期設定 / Windows 編 ~
https://dk521123.hatenablog.com/entry/2018/08/14/215814
Docker Desktop / WSL2 ~ Windows / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2020/12/08/165505
設定環境例
* OS : Windows10 * Git : git version 2.23.0.windows.1
2)手順
* Git Bash を立ち上げて以下をコマンドする
[1] インストール および Apache Airflow の起動
# Step0: Download git clone https://github.com/aws/aws-mwaa-local-runner.git cd aws-mwaa-local-runner # Step1: Building the Docker image (結構な時間が掛かる) ./mwaa-local-env build-image # Step2: Running Apache Airflow (サーバがPort:8080で起動されるはず) ./mwaa-local-env start
[2] 動作確認
* ブラウザで以下にアクセスする => Web UI のログイン画面が表示されるので以下でログインする + Username: admin + Password: test (※1)
※1:ログイン失敗する場合
* WSL2 環境であったのだが、以下のサイトにあるように パスワードを「test」⇒「"test"」とダブルクォーテーション付きで試してみる
https://github.com/aws/aws-mwaa-local-runner/issues/300
3)補足:デフォルトパスワード「test」
* 以下で設定している
【5】フォルダ構成
+ aws-mwaa-local-runner + dags <= DAGフォルダ + docker <= Docker関連フォルダ + plugins <= プラグイン関連フォルダ + mwaa-local-env <= Shell 実際の動作確認については以下の関連記事を参照のこと
MWAA Local ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/10/21/233404
参考文献
https://dev.classmethod.jp/articles/introduction-aws-mwaa-local-runner/
https://qiita.com/pioho07/items/5ed8dcb804d75be07e87
AWS公式サイトのチュートリアル
https://docs.aws.amazon.com/mwaa/latest/userguide/tutorials-docker.html
関連記事
MWAA ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2021/09/29/131101
MWAA Local ~ 環境構築編 / Docker compose ~
https://dk521123.hatenablog.com/entry/2021/11/07/132014
MWAA Local ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/10/21/233404
MWAA Local ~ AWSに繋げるようにするには ~
https://dk521123.hatenablog.com/entry/2023/10/28/184431
LocalStack ~ awscli-local ~
https://dk521123.hatenablog.com/entry/2020/12/16/211127
LocalStack ~ ローカルで疑似AWSを作成する ~
https://dk521123.hatenablog.com/entry/2019/12/14/010524
LocalStack ~ ローカルで疑似Lambda/S3/DynamoDBを作成する ~
https://dk521123.hatenablog.com/entry/2019/12/16/231149
Amazon DynamoDB Local
https://dk521123.hatenablog.com/entry/2019/11/13/221326
Git ~ 初期設定 / Windows 編 ~
https://dk521123.hatenablog.com/entry/2018/08/14/215814
Docker Desktop / WSL2 ~ Windows / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2020/12/08/165505
WindowsでAWS CLIを使うには
https://dk521123.hatenablog.com/entry/2020/12/01/000000