This repository has been archived by the owner on Dec 15, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmix.exs
111 lines (102 loc) · 2.66 KB
/
mix.exs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
defmodule Mate.MixProject do
use Mix.Project
def project do
[
app: :mate,
version: "0.1.8",
elixir: "~> 1.12",
start_permanent: Mix.env() == :prod,
dialyzer: [
plt_local_path: "priv/plts",
plt_core_path: "priv/plts",
plt_add_apps: [:mix, :ex_aws, :ex_aws_s3]
],
description: description(),
package: package(),
deps: deps(),
name: "Mate",
docs: [
main: "overview",
extra_section: "GUIDES",
groups_for_extras: groups_for_extras(),
groups_for_modules: groups_for_modules(),
extras: extras()
],
source_url: "https://github.com/maxvw/mate"
]
end
defp package() do
[
files: ~w(lib priv/run-wrapper.sh .formatter.exs mix.exs CHANGELOG* README* LICENSE*),
licenses: ["MIT"],
links: %{"GitHub" => "https://github.com/maxvw/mate"}
]
end
defp description() do
"Customisable Deployment for Elixir / Phoenix"
end
def application do
[
extra_applications: [:logger, :eex, :crypto]
]
end
defp deps do
[
{:dialyxir, "~> 1.0", only: [:dev, :test], runtime: false},
{:ex_doc, "~> 0.24", only: :dev, runtime: false},
# Optional packages to support the S3 Storage module:
{:ex_aws, "~> 2.0", optional: true},
{:ex_aws_s3, "~> 2.0", optional: true}
]
end
defp extras do
[
"guides/introduction/overview.md",
"guides/introduction/getting_started.md",
"guides/introduction/build_strategies.md",
"guides/introduction/storage_options.md",
"guides/how_to/custom_driver.md",
"guides/how_to/custom_storage.md",
"guides/how_to/custom_steps.md",
"guides/introduction/faq.md"
]
end
defp groups_for_extras do
[
Introduction: ~r/guides\/introduction\/.?/,
"How To's": ~r/guides\/how_to\/.?/
]
end
defp groups_for_modules do
[
Testing: [
Mate.Driver.Test
],
"Build Drivers": [
Mate.Driver.SSH,
Mate.Driver.Docker,
Mate.Driver.Local
],
"Available Steps": [
Mate.Step.CleanBuild,
Mate.Step.CopyToStorage,
Mate.Step.LinkBuildSecrets,
Mate.Step.MixCompile,
Mate.Step.MixDeps,
Mate.Step.MixDigest,
Mate.Step.MixRelease,
Mate.Step.NpmBuild,
Mate.Step.NpmInstall,
Mate.Step.PrepareSource,
Mate.Step.SendGitCommit,
Mate.Step.VerifyElixir,
Mate.Step.VerifyGit,
Mate.Step.VerifyNode,
Mate.Step.CopyToDeployHost,
Mate.Step.StartRelease,
Mate.Step.StopRelease,
Mate.Step.UnarchiveRelease
]
]
end
end