Как создать недействительность в облачном фронте aws после действий в моем проекте elixir/phoenix
Я использую ex_aws
зависимость в моем проекте elixir/phoenix от некоторых действий в моем аккаунте aws. Теперь мне нужно запустить что-то вроде этого, чтобы сделать кеш недействительным:
aws cloudfront create-invalidation --distribution-id 1111111111 --paths '/*'
Но ex_aws
Зависимость не имеет службы Cloudfront. Какие-нибудь решения для этого?
Versions:
{:phoenix, "~> 1.4.0"}
...
{:ex_aws, "~> 2.1.0"},
{:ex_aws_s3, "~> 2.0.1"},
1 ответ
Решение
Вы не должны пытаться охватить все функции, предоставляемые AWS через чистые обертки Elixir. Erlang (и, следовательно, Elixir) оба созданы для поддержания очень хорошего уровня взаимодействия с базовой ОС и System.cmd/3
является гражданином первого класса. Так,
System.cmd(
"aws",
~w|cloudfront create-invalidation --distribution-id 1111111111 --paths '/*'|,
env: [{"MIX_ENV", "prod"}])