🔐
Makefileから.envの中身を参照する
はじめに
この記事は、Makefileから.envの中身を参照する方法を個人的な備忘録としてまとめたものです。
Makefileや.envその他のアップデートおよび仕様変更によって将来的にこの手順が使用できなくなる可能性があります。(記.2023/11/30)
方法
Makefileにはincludeというものがあるので、それを使う。厳密には環境変数と.envの変数とMake変数は異なるものだが、Makefileから.envの中身を参照するだけであればこれで良い。
.env
ENV=hogehoge
Makefile
inlude .env
env:
echo $(ENV)
$ make env
echo hogehoge
hogehoge
例えば、Azure Container RegistryへDockerイメージをpushする場合はこのように書くことができる。
Makefile
include .env
push:
docker build -t app .
docker login $(ACR_HOST) -u $(ACR_USER) -p $(ACR_PASSWORD)
docker tag app $(ACR_HOST)/app:latest
docker push $(ACR_HOST)/app:latest
便利。
Discussion