diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 8b0285253..8a95f24bf 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -130,6 +130,8 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Build
+ env:
+ GIT_SHA: ${{ github.sha }}
run: |
. $HOME/.asdf/asdf.sh
cd omnibus
diff --git a/apps/fz_common/mix.exs b/apps/fz_common/mix.exs
index ab460e9ce..e9a3ff1bd 100644
--- a/apps/fz_common/mix.exs
+++ b/apps/fz_common/mix.exs
@@ -1,7 +1,7 @@
defmodule FzCommon.MixProject do
use Mix.Project
- @version_path "../../version.exs"
+ @version_path "../../scripts/version.exs"
def version do
Code.eval_file(@version_path)
@@ -16,7 +16,7 @@ defmodule FzCommon.MixProject do
config_path: "../../config/config.exs",
deps_path: "../../deps",
lockfile: "../../mix.lock",
- elixir: "~> 1.11",
+ elixir: "~> 1.12",
start_permanent: Mix.env() == :prod,
deps: deps()
]
diff --git a/apps/fz_http/lib/fz_http_web/templates/layout/root.html.heex b/apps/fz_http/lib/fz_http_web/templates/layout/root.html.heex
index e83bda60c..5eedd0cd8 100644
--- a/apps/fz_http/lib/fz_http_web/templates/layout/root.html.heex
+++ b/apps/fz_http/lib/fz_http_web/templates/layout/root.html.heex
@@ -142,7 +142,7 @@
diff --git a/apps/fz_http/lib/fz_http_web/views/layout_view.ex b/apps/fz_http/lib/fz_http_web/views/layout_view.ex
index def35d2f7..8f435cdc7 100644
--- a/apps/fz_http/lib/fz_http_web/views/layout_view.ex
+++ b/apps/fz_http/lib/fz_http_web/views/layout_view.ex
@@ -23,8 +23,8 @@ defmodule FzHttpWeb.LayoutView do
The current github sha, used to link to our Github repo.
This is set during application compile time.
"""
- def github_sha do
- Application.get_env(:fz_http, :github_sha, "master")
+ def git_sha do
+ Application.fetch_env!(:fz_http, :git_sha)
end
@doc """
diff --git a/apps/fz_http/mix.exs b/apps/fz_http/mix.exs
index 23777ebe6..45de1d324 100644
--- a/apps/fz_http/mix.exs
+++ b/apps/fz_http/mix.exs
@@ -1,7 +1,7 @@
defmodule FzHttp.MixProject do
use Mix.Project
- @version_path "../../version.exs"
+ @version_path "../../scripts/version.exs"
def version do
Code.eval_file(@version_path)
@@ -16,7 +16,7 @@ defmodule FzHttp.MixProject do
config_path: "../../config/config.exs",
deps_path: "../../deps",
lockfile: "../../mix.lock",
- elixir: "~> 1.11",
+ elixir: "~> 1.12",
elixirc_paths: elixirc_paths(Mix.env()),
compilers: [:phoenix, :gettext] ++ Mix.compilers(),
start_permanent: Mix.env() == :prod,
diff --git a/apps/fz_vpn/mix.exs b/apps/fz_vpn/mix.exs
index 9e7b85d24..a6c659cfe 100644
--- a/apps/fz_vpn/mix.exs
+++ b/apps/fz_vpn/mix.exs
@@ -1,7 +1,7 @@
defmodule FzVpn.MixProject do
use Mix.Project
- @version_path "../../version.exs"
+ @version_path "../../scripts/version.exs"
def version do
Code.eval_file(@version_path)
@@ -16,7 +16,7 @@ defmodule FzVpn.MixProject do
config_path: "../../config/config.exs",
deps_path: "../../deps",
lockfile: "../../mix.lock",
- elixir: "~> 1.11",
+ elixir: "~> 1.12",
start_permanent: Mix.env() == :prod,
test_coverage: [tool: ExCoveralls],
preferred_cli_env: [
diff --git a/apps/fz_wall/mix.exs b/apps/fz_wall/mix.exs
index b92342ab3..4d67e3cb6 100644
--- a/apps/fz_wall/mix.exs
+++ b/apps/fz_wall/mix.exs
@@ -1,7 +1,7 @@
defmodule FzWall.MixProject do
use Mix.Project
- @version_path "../../version.exs"
+ @version_path "../../scripts/version.exs"
def version do
Code.eval_file(@version_path)
@@ -16,7 +16,7 @@ defmodule FzWall.MixProject do
config_path: "../../config/config.exs",
deps_path: "../../deps",
lockfile: "../../mix.lock",
- elixir: "~> 1.11",
+ elixir: "~> 1.12",
start_permanent: Mix.env() == :prod,
test_coverage: [tool: ExCoveralls],
preferred_cli_env: [
diff --git a/config/config.exs b/config/config.exs
index 6bd1acea8..36ade9868 100644
--- a/config/config.exs
+++ b/config/config.exs
@@ -26,13 +26,14 @@ require Logger
# Use Jason for JSON parsing in Phoenix
config :phoenix, :json_library, Jason
-github_sha =
- case System.cmd("git", ["rev-parse", "--short", "HEAD"], stderr_to_stdout: true) do
- {result, 0} ->
- result |> String.trim()
+git_sha =
+ case System.get_env("GIT_SHA") do
+ nil ->
+ {output, 0} = System.cmd("git", ["rev-parse", "--short", "HEAD"], stderr_to_stdout: true)
+ String.trim(output)
- {_, _} ->
- nil
+ str ->
+ str
end
config :fz_http,
@@ -41,7 +42,7 @@ config :fz_http,
connectivity_checks_enabled: true,
connectivity_checks_interval: 3_600,
connectivity_checks_url: "https://ping-dev.firez.one/",
- github_sha: github_sha,
+ git_sha: git_sha,
cookie_signing_salt: "Z9eq8iof",
ecto_repos: [FzHttp.Repo],
admin_email: "firezone@localhost",
diff --git a/mix.exs b/mix.exs
index 6232d1a42..15a957f47 100644
--- a/mix.exs
+++ b/mix.exs
@@ -5,7 +5,7 @@ defmodule FirezoneUmbrella.MixProject do
use Mix.Project
- @version_path "version.exs"
+ @version_path "scripts/version.exs"
def version do
Code.eval_file(@version_path)
diff --git a/scripts/version.exs b/scripts/version.exs
new file mode 100644
index 000000000..d40d906e7
--- /dev/null
+++ b/scripts/version.exs
@@ -0,0 +1,2 @@
+{result, 0} = System.cmd(Path.join([__DIR__, "semver.sh"]), [], stderr_to_stdout: true)
+result |> String.trim()
diff --git a/version.exs b/version.exs
deleted file mode 100644
index 30b883ae3..000000000
--- a/version.exs
+++ /dev/null
@@ -1,7 +0,0 @@
-case System.cmd(Path.join([__DIR__, "scripts", "semver.sh"]), []) do
- {result, 0} ->
- result |> String.trim()
-
- {_, _} ->
- "0.0.0"
-end