Browse Source

Update elixir version to 1.4.1 (#2750)

* Update Elixir version to 1.4.1

* Add send_resp for each action

* Fix cowboy mix file

* Return :ranch and change setup.sh
Jester 8 years ago
parent
commit
d2660a243a

+ 1 - 1
frameworks/Elixir/cowboy/benchmark_config.json

@@ -13,7 +13,7 @@
             "language": "Elixir",
             "flavor": "None",
             "orm": "raw",
-            "platform": "None",
+            "platform": "Cowboy",
             "webserver": "None",
             "os": "Linux",
             "database_os": "Linux",

+ 6 - 5
frameworks/Elixir/cowboy/mix.exs

@@ -3,18 +3,19 @@ defmodule Hello.Mixfile do
 
   def project do
     [app: :hello,
-     version: "0.0.1",
-     elixir: "~> 1.0",
-     deps: deps]
+     version: "0.1.0",
+     elixir: "~> 1.4",
+     deps: deps()]
   end
 
   def application do
     [mod: {Hello, []},
-     applications: [:cowboy, :ranch, :poison]]
+     applications: [:cowboy, :poison, :ranch]]
   end
 
   defp deps do
     [{:cowboy, "~> 1.0"},
-     {:poison, "~> 1.4.0"}]
+     {:poison, "~> 1.4.0"},
+     {:ranch, "~> 1.3.2"}]
   end
 end

+ 4 - 4
frameworks/Elixir/cowboy/setup.sh

@@ -2,12 +2,12 @@
 
 fw_depends elixir
 
-rm -rf _build deps rel
+rm -rf _build deps
 
-MIX_ENV=prod
-export MIX_ENV
+export MIX_ENV=prod
 mix local.hex --force
-mix deps.get --force
+mix local.rebar --force
+mix deps.get --force --only prod
 mix compile --force
 
 elixir --detached --no-halt -S mix

+ 1 - 1
frameworks/Elixir/phoenix/config/prod.exs

@@ -11,7 +11,7 @@ config :hello, Hello.Repo,
   username: "benchmarkdbuser",
   password: "benchmarkdbpass",
   database: "hello_world",
-  hostname: "localhost",
+  hostname: "127.0.0.1",
   pool_size: 20
 
 # ## SSL Support

+ 4 - 4
frameworks/Elixir/phoenix/mix.exs

@@ -4,12 +4,12 @@ defmodule Hello.Mixfile do
   def project do
    [app: :hello,
     version: "0.1.0",
-    elixir: "~> 1.3",
+    elixir: "~> 1.4",
     elixirc_paths: elixirc_paths(Mix.env),
     compilers: [:phoenix] ++ Mix.compilers,
     build_embedded: Mix.env == :prod,
     start_permanent: Mix.env == :prod,
-    deps: deps]
+    deps: deps()]
   end
 
   # Configuration for the OTP application
@@ -26,10 +26,10 @@ defmodule Hello.Mixfile do
   #
   # Type `mix help deps` for examples and options
   defp deps do
-    [{:phoenix, "~> 1.2"},
+    [{:phoenix, "~> 1.2.1"},
      {:phoenix_ecto, "~> 3.0"},
      {:postgrex, ">= 0.0.0"},
-     {:cowboy, "~> 1.0.0"},
+     {:cowboy, "~> 1.0"},
      {:phoenix_html, "~> 2.6"},
      {:phoenix_live_reload, "~> 1.0", only: :dev}]
   end

+ 13 - 7
frameworks/Elixir/phoenix/web/controllers/page_controller.ex

@@ -5,18 +5,21 @@ defmodule Hello.PageController do
 
   def index(conn, _params) do
     conn
-    |> json(%{"TE Benchmarks\n" => "Started"})
+    |> put_resp_content_type("application/json", nil)
+    |> send_resp(200, Poison.encode!(%{"TE Benchmarks\n" => "Started"}))
   end
 
   # avoid namespace collision
   def _json(conn, _params) do
     conn
-    |> json(%{message: "Hello, world!"})
+    |> put_resp_content_type("application/json", nil)
+    |> send_resp(200, Poison.encode!(%{message: "Hello, world!"}))
   end
 
   def db(conn, _params) do
     conn
-    |> json(Repo.get(World, :rand.uniform(10000)))
+    |> put_resp_content_type("application/json", nil)
+    |> send_resp(200, Poison.encode!(Repo.get(World, :rand.uniform(10000))))
   end
 
   def queries(conn, params) do
@@ -31,7 +34,8 @@ defmodule Hello.PageController do
     end
 
     conn
-    |> json(Enum.map(1..q, fn _ -> Repo.get(World, :rand.uniform(10000)) end))
+    |> put_resp_content_type("application/json", nil)
+    |> send_resp(200, Poison.encode!(Enum.map(1..q, fn _ -> Repo.get(World, :rand.uniform(10000)) end)))
   end
 
   def fortunes(conn, _params) do
@@ -57,18 +61,20 @@ defmodule Hello.PageController do
     end
 
     conn
-    |> json(Enum.map(1..q, fn _ ->
+    |> put_resp_content_type("application/json", nil)
+    |> send_resp(200, Poison.encode!(Enum.map(1..q, fn _ ->
       id = :rand.uniform(10000)
       num = :rand.uniform(10000)
       w = Repo.get(World, id)
       changeset = World.changeset(w, %{randomnumber: num})
       Repo.update(changeset)
       %{id: id, randomnumber: num}
-    end))
+    end)))
   end
 
   def plaintext(conn, _params) do
     conn
-    |> text("Hello, world!")
+    |> put_resp_content_type("text/plain", nil)
+    |> send_resp(200, "Hello, world!")
   end
 end

+ 1 - 1
toolset/setup/linux/languages/elixir.sh

@@ -5,7 +5,7 @@ fw_depends erlang
 fw_installed elixir && return 0
 
 ELIXIR_HOME=$IROOT/elixir
-VERSION="1.3.3-1"
+VERSION="1.4.1-1"
 RELEASE="trusty"
 ARCH="all"