Terraform 確認
Terraform について確認。
む
以下なナニがありますね。動作検証などやってみます。
README に以下な記述。
Demoより引用
とりあえず web/router.ex を確認。以下な記載。
use Terraform,
terraformer: ReverseProxy.Terraformers.Giphy
routing 定義に記載されていないものについては lib/terraformers/giphy.ex に記述されている定義に沿って処理、なのかしら。その中の match しないリクエストを処理する部分が以下。
get _ do
%{method: "GET", request_path: request_path, params: params, req_headers: req_headers} = conn
Logger.debug """
Processing by #{__MODULE__}
Path: #{@host <> request_path}
Parameters: #{inspect params}
Headers: #{inspect req_headers}
"""
res = Giphy.get!(request_path, req_headers, [params: Map.to_list(params)])
send_response({:ok, conn, res})
end
Giphy はてっぺんあたりで宣言されてる以下なナニを指してるはず。
alias ReverseProxy.Clients.Giphy
lib/reverse_proxy/clients/giphy.ex は HTTPoison を use しています。再定義? されているのが以下の手続き。
process_url
process_request_headers
append_secret
process_url が使っているがコメントアウトされている
基本的には HTTPoison の get! を使っているのですね。ちょっと Heroku に deploy してみようかしら。
Heroku に展開
とりあえず clone してきたソレを github に登録しないと、なのか。で
heroku create
config/prod.exs 修正
elixir_buildpack.config 作成て
バージョンていくつになるのかしら
既存プロジェクトからまんまコピィ
Procfile も作成
mix phx.gen.secret
これ、docker の中で、なのでした。。。
準備として mix deps.get しなければ、でした
heroku config:set SECRET_KEY_BASE='hoge'
heroku addons:create heroku-postgresql:hobby-dev
が失敗
deplopy 不具合
以下を config/prod.exs に追加
config :reverse_proxy, :giphy,
host: "http://api.giphy.com",
secret: "dc6zaTOxFJmzC"
以下の修正も endpoint.ex
plug Plug.Parsers,
parsers: [:urlencoded, :multipart, :json],
pass: ["*/*"],
- json_decoder: Poison
+ json_decoder: Phoenix.json_library()
違いました mix.exs に {:poison, "~> 1.5"}, な記述追加
config の use Mix.Config という記述を import Config に修正
elixir_buildpack.config の hook_post_compile="eval mix assets.deploy && rm -f _build/esbuild*" な記述をコメントアウト
そして deploy には成功してますが、起動時にコケている模様。ローカル動作検証からやり直します。。
この記事が気に入ったらサポートをしてみませんか?