Packages
krug
2.0.7
2.0.36
2.0.35
2.0.34
2.0.33
2.0.32
2.0.31
2.0.30
2.0.29
2.0.27
2.0.26
2.0.25
2.0.24
2.0.23
2.0.22
2.0.20
2.0.19
2.0.18
2.0.17
2.0.16
2.0.15
2.0.14
2.0.13
2.0.12
2.0.11
2.0.10
2.0.9
2.0.8
2.0.7
2.0.6
2.0.5
2.0.4
2.0.1
2.0.0
1.1.53
1.1.52
1.1.50
1.1.49
1.1.48
1.1.47
1.1.46
1.1.45
1.1.44
1.1.43
1.1.42
1.1.41
1.1.40
1.1.39
1.1.38
1.1.37
1.1.36
1.1.35
1.1.34
1.1.33
1.1.32
1.1.31
1.1.30
1.1.29
1.1.28
1.1.27
1.1.26
1.1.25
1.1.24
1.1.23
1.1.22
1.1.21
1.1.20
1.1.19
1.1.18
1.1.17
1.1.16
1.1.15
1.1.14
1.1.12
1.1.10
1.1.9
1.1.8
1.1.7
1.1.6
1.1.5
1.1.4
1.1.3
1.1.2
1.1.1
1.1.0
1.0.9
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.31
0.4.30
0.4.29
0.4.28
0.4.27
0.4.26
0.4.25
0.4.24
0.4.23
0.4.22
0.4.20
0.4.19
0.4.18
0.4.17
0.4.16
0.4.15
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.1
0.2.0
0.1.0
A Utilitary package functionalities modules for improve a secure performatic development.
Current section
Files
Jump to
Current section
Files
lib/krug/ecto/enviroment.behavior.ex
defmodule Krug.EctoEnviroment do
@moduledoc """
Defines a behaviour for higher-level Ecto enviroments key values.
The module that implement this, should be passed as ```enviroment:``` value option
on module that extends ```Krug.EnviromentReader```
Utilization Example:
```elixir
defmodule MyApp.Enviroment do
@behaviour Krug.EctoEnviroment
@impl Krug.EctoEnviroment
def get_enviroment(type) do
cond do
(type == "prod") -> get_enviroment_list_prod()
true -> get_enviroment_list_dev()
end
end
end
defmodule MyApp.Enviroment.Reader do
use Krug.EnviromentReader, decisor: MyApp.EnviromentDecisor, enviroment: MyApp.Enviroment
end
```
"""
@moduledoc since: "0.2.1"
@doc """
Should return an array of strings, based on value received ("dev" or "prod")
containing key pars values based on schema: "key=value".
-Example:
```elixir
defmodule MyApp.Enviroment do
@behaviour Krug.EctoEnviroment
@impl Krug.EctoEnviroment
def get_enviroment(type) do
cond do
(type == "prod") -> get_enviroment_list_prod()
true -> get_enviroment_list_dev()
end
end
defp get_enviroment_list_dev() do
["APPDB_HOST=127.0.0.1","APPDB_PORT=3306","APPDB_DATABASE=elixir_app_db_development",
"APPDB_USERNAME=root","APPDB_PASSWORD=123456"]
end
defp get_enviroment_list_prod() do
["APPDB_HOST=127.0.0.1","APPDB_PORT=3306","APPDB_DATABASE=elixir_app_db_production",
"APPDB_USERNAME=root","APPDB_PASSWORD=123456"]
end
end
"""
@callback get_enviroment(type :: String.t()) :: [String.t()]
end