From 918229f8c606b6df8715bf62bead88b1c7b6a5c9 Mon Sep 17 00:00:00 2001 From: Inhji Date: Mon, 6 Mar 2023 10:24:36 +0100 Subject: [PATCH] add release files --- .gitignore | 4 ++++ lib/chiya/release.ex | 28 ++++++++++++++++++++++++++++ rel/overlays/bin/migrate | 3 +++ rel/overlays/bin/migrate.bat | 1 + rel/overlays/bin/server | 3 +++ rel/overlays/bin/server.bat | 2 ++ 6 files changed, 41 insertions(+) create mode 100644 lib/chiya/release.ex create mode 100755 rel/overlays/bin/migrate create mode 100755 rel/overlays/bin/migrate.bat create mode 100755 rel/overlays/bin/server create mode 100755 rel/overlays/bin/server.bat diff --git a/.gitignore b/.gitignore index 674e187..452142e 100644 --- a/.gitignore +++ b/.gitignore @@ -28,6 +28,8 @@ chiya-*.tar # Ignore assets that are produced by build tools. /priv/static/assets/ +/priv/static/* + # Ignore digested assets cache. /priv/static/cache_manifest.json @@ -35,3 +37,5 @@ chiya-*.tar npm-debug.log /assets/node_modules/ +# env file +.env diff --git a/lib/chiya/release.ex b/lib/chiya/release.ex new file mode 100644 index 0000000..cf5704a --- /dev/null +++ b/lib/chiya/release.ex @@ -0,0 +1,28 @@ +defmodule Chiya.Release do + @moduledoc """ + Used for executing DB release tasks when run in production without Mix + installed. + """ + @app :chiya + + def migrate do + load_app() + + for repo <- repos() do + {:ok, _, _} = Ecto.Migrator.with_repo(repo, &Ecto.Migrator.run(&1, :up, all: true)) + end + end + + def rollback(repo, version) do + load_app() + {:ok, _, _} = Ecto.Migrator.with_repo(repo, &Ecto.Migrator.run(&1, :down, to: version)) + end + + defp repos do + Application.fetch_env!(@app, :ecto_repos) + end + + defp load_app do + Application.load(@app) + end +end diff --git a/rel/overlays/bin/migrate b/rel/overlays/bin/migrate new file mode 100755 index 0000000..e569f77 --- /dev/null +++ b/rel/overlays/bin/migrate @@ -0,0 +1,3 @@ +#!/bin/sh +cd -P -- "$(dirname -- "$0")" +exec ./chiya eval Chiya.Release.migrate diff --git a/rel/overlays/bin/migrate.bat b/rel/overlays/bin/migrate.bat new file mode 100755 index 0000000..fa5d7ea --- /dev/null +++ b/rel/overlays/bin/migrate.bat @@ -0,0 +1 @@ +call "%~dp0\chiya" eval Chiya.Release.migrate diff --git a/rel/overlays/bin/server b/rel/overlays/bin/server new file mode 100755 index 0000000..b1260bf --- /dev/null +++ b/rel/overlays/bin/server @@ -0,0 +1,3 @@ +#!/bin/sh +cd -P -- "$(dirname -- "$0")" +PHX_SERVER=true exec ./chiya start diff --git a/rel/overlays/bin/server.bat b/rel/overlays/bin/server.bat new file mode 100755 index 0000000..50369a3 --- /dev/null +++ b/rel/overlays/bin/server.bat @@ -0,0 +1,2 @@ +set PHX_SERVER=true +call "%~dp0\chiya" start