【Codemagic】Git管理下にない環境変数を設定する方法

CI

概要

どうも、@daiki1003です!

つい最近、 flutter_dotenvを使って、Gitで管理したくないファイルを追加しました。

【flutter_dotenv】Gitで管理したくないsecret keyなどの扱い方を分かりやすく解説してみたよ
flutter_dotenvのインストール方法 こちらのパッケージをインストールします。 パッケージのインストール方法に関しては、 こちらのブログを見ていただければと思います! flu...

すると、Codemagicでのビルドがこける様になりました。
エラーの内容見てみると

Error detected in pubspec.yaml:
No file or variants found for asset: .env.

.envがないよ、とのこと。
まぁ、確かにそうだよな、と笑

この記事では、どうやってこのエラーに対処したかを書こうと思います。
上からなぞっていくだけで、解決すると思います。
それでは早速、始めていきましょう!

💻 ファイルをbase64でエンコード

今回は、 .envファイルを参考にしますが、
ご自身のファイルに置き換えて読み進めていただければと思います。

まずは、ファイルの中身をbase64でエンコードして、クリップボードに保存します。

$ base64 .env | pbcopy

📌 Codemagicにて環境変数の設定

ここからは、Codemagicで作業を進めていきます。

Environment Variablesを選択

ワークフローの設定画面より、 Environment Variablesをタップし、開きます。

環境変数の設定

適当な名前で良いので、環境変数名とその値をそれぞれ入力します。
最後に、Secureにチェックを入れ、Addボタンを押します。

📌 Codemagicにてビルド前スクリプトの設定

次に、設定した環境変数を元に、.envを作成するスクリプトを記入します。

TestとBuildの間にあるプラスをタップ

ビルド前スクリプトの記入

.envはルートディレクトリにあれば良いので、

 $ echo $ENV | base64 --decode> $FCI_BUILD_DIR/.env

とだけ記入します。

もし、階層が必要な場合は、この前にmkdirなどのスクリプトも必要になるかと思います。

最後に

これで、設定を保存してビルドすれば無事にビルドが通っているかと思います。

誰かのお役に立てば。

Twitterフォローお願いします

「次回以降も記事を読んでみたい!」
「この辺分からなかったから質問したい!」

そんな時は、是非@daiki1003のフォローお願いします♪

また、記事がとても役に立ったと思う人は
コーヒーを奢っていただけると非常に嬉しいです!

コメント

タイトルとURLをコピーしました