Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 31 additions & 7 deletions .github/workflows/elixir.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ jobs:
image: postgres:12
ports: ["5432:5432"]
env:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: medirepo
POSTGRES_PASSWORD: medirepo
POSTGRES_DB: medirepo_test
POSTGRES_HOST: localhost
options: >-
--health-cmd pg_isready
--health-interval 10s
Expand All @@ -28,9 +31,11 @@ jobs:
- name: Set up Elixir
uses: erlef/setup-beam@v1
with:
elixir-version: "1.13.1"
otp-version: "24.2" # Define the OTP version [required]
elixir-version: "1.17.3"
otp-version: "27.1.2" # Define the OTP version [required]
version-type: "strict"
- name: Restore dependencies cache
id: mix-cache
uses: actions/cache@v3
with:
path: deps
Expand All @@ -44,27 +49,46 @@ jobs:
mix local.hex --force
mix deps.get

- name: Setup database
run: |
mix ecto.drop --force || true
mix ecto.create
mix ecto.migrate
env:
MIX_ENV: test
DATABASE_URL: ecto://medirepo:medirepo@localhost:5432/medirepo_test
POSTGRES_USER: medirepo
POSTGRES_PASSWORD: medirepo
POSTGRES_HOST: localhost

- name: Check Formatting
run: mix format --check-formatted

- name: Run Credo
run: mix credo --strict
run: mix credo suggest --strict

- name: Check coverage
run: mix coveralls.json
env:
MIX_ENV: test
DATABASE_URL: ecto://medirepo:medirepo@localhost:5432/medirepo_test
POSTGRES_USER: medirepo
POSTGRES_PASSWORD: medirepo
POSTGRES_HOST: localhost

- name: Run codecov Script
run: bash <(curl -s https://codecov.io/bash)
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

- name: Install dependencies
run: mix deps.get

- name: Run tests
run: mix test
env:
MIX_ENV: test
DATABASE_URL: ecto://medirepo:medirepo@localhost:5432/medirepo_test
POSTGRES_USER: medirepo
POSTGRES_PASSWORD: medirepo
POSTGRES_HOST: localhost

- name: Run digest
run: mix phx.digest
Expand Down
4 changes: 2 additions & 2 deletions .tool-versions
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
erlang 24.2
elixir 1.13.1
erlang 27.1.2
elixir 1.17.3
postgres 14.5
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM bitwalker/alpine-elixir:1.14.0 AS build
FROM bitwalker/alpine-elixir:1.17.3 AS build

RUN apk update \
&& apk add --no-cache tzdata ncurses-libs postgresql-client build-base openssh-client \
Expand Down
2 changes: 1 addition & 1 deletion config/dev.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ config :medirepo, Medirepo.Repo,
username: "medirepo",
password: "medirepo",
database: "medirepo_dev",
hostname: "db",
hostname: "localhost",
show_sensitive_data_on_connection_error: true,
pool_size: 10

Expand Down
6 changes: 3 additions & 3 deletions config/test.exs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use Mix.Config
import Config

# Configure your database
#
Expand All @@ -9,7 +9,7 @@ config :medirepo, Medirepo.Repo,
username: "medirepo",
password: "medirepo",
database: "medirepo_test#{System.get_env("MIX_TEST_PARTITION")}",
hostname: "db",
hostname: "localhost",
pool: Ecto.Adapters.SQL.Sandbox

# We don't run a server during test. If one is required,
Expand All @@ -19,7 +19,7 @@ config :medirepo, MedirepoWeb.Endpoint,
server: false

# Print only warnings and errors during test
config :logger, level: :warn
config :logger, level: :warning

config :pbkdf2_elixir, :rounds, 1

Expand Down
5 changes: 2 additions & 3 deletions elixir_buildpack.config
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
elixir_version=1.12
erlang_version=24
erlang_version=23.2
elixir_version=1.17.3
erlang_version=27.1.2
2 changes: 1 addition & 1 deletion lib/medirepo/hospitals/models/hospital.ex
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ defmodule Medirepo.Hospitals.Models.Hospital do
end

defp put_password_hash(%Changeset{valid?: true, changes: %{password: password}} = changeset) do
change(changeset, Pbkdf2.add_hash(password))
change(changeset, %{password_hash: Pbkdf2.hash_pwd_salt(password)})
end

defp put_password_hash(changeset), do: changeset
Expand Down
7 changes: 0 additions & 7 deletions lib/medirepo_web.ex
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,6 @@ defmodule MedirepoWeb do

def view do
quote do
use Phoenix.View,
root: "lib/medirepo_web/templates",
namespace: MedirepoWeb

# Import convenience functions from controllers
import Phoenix.Controller,
only: [get_flash: 1, get_flash: 2, view_module: 1, view_template: 1]
Expand Down Expand Up @@ -60,9 +56,6 @@ defmodule MedirepoWeb do

defp view_helpers do
quote do
# Import basic rendering functionality (render, render_layout, etc)
import Phoenix.View

import MedirepoWeb.ErrorHelpers
import MedirepoWeb.Gettext
alias MedirepoWeb.Router.Helpers, as: Routes
Expand Down
2 changes: 1 addition & 1 deletion lib/medirepo_web/gettext.ex
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,5 @@ defmodule MedirepoWeb.Gettext do

See the [Gettext Docs](https://hexdocs.pm/gettext) for detailed usage.
"""
use Gettext, otp_app: :medirepo
use Gettext.Backend, otp_app: :medirepo
end
46 changes: 23 additions & 23 deletions mix.exs
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ defmodule Medirepo.MixProject do
[
app: :medirepo,
version: "0.1.0",
elixir: "~> 1.7",
elixir: "~> 1.17",
elixirc_paths: elixirc_paths(Mix.env()),
compilers: [:phoenix] ++ Mix.compilers(),
compilers: Mix.compilers(),
start_permanent: Mix.env() == :prod,
aliases: aliases(),
deps: deps(),
Expand Down Expand Up @@ -41,29 +41,29 @@ defmodule Medirepo.MixProject do
# Type `mix help deps` for examples and options.
defp deps do
[
{:phoenix, "~> 1.5.8"},
{:phoenix_ecto, "~> 4.1"},
{:ecto_sql, "~> 3.4"},
{:phoenix, "~> 1.7.21"},
{:phoenix_ecto, "~> 4.6"},
{:ecto_sql, "~> 3.12"},
{:postgrex, ">= 0.0.0"},
{:phoenix_live_dashboard, "~> 0.4"},
{:telemetry_metrics, "~> 0.4"},
{:telemetry_poller, "~> 0.4"},
{:gettext, "~> 0.23.1"},
{:jason, "~> 1.0"},
{:plug_cowboy, "~> 2.0"},
{:credo, "~> 1.6", only: [:dev, :test], runtime: false},
{:pbkdf2_elixir, "~> 1.4"},
{:guardian, "~> 2.3"},
{:phoenix_live_dashboard, "~> 0.8"},
{:telemetry_metrics, "~> 1.0"},
{:telemetry_poller, "~> 1.1"},
{:gettext, "~> 0.25"},
{:jason, "~> 1.4"},
{:plug_cowboy, "~> 2.7"},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:pbkdf2_elixir, "~> 2.1"},
{:guardian, "~> 2.4"},
{:secure_random, "~> 0.5"},
{:bamboo, "~> 2.1.0"},
{:bamboo_smtp, "~> 4.0.1"},
{:excoveralls, "~> 0.10", only: :test},
{:cors_plug, "~> 2.0"},
{:ex_machina, "~> 2.7.0", only: :test},
{:absinthe, "~> 1.7"},
{:absinthe_plug, "~> 1.5"},
{:faker, "~> 0.17", only: :test},
{:mix_test_watch, "~> 1.0", only: [:dev, :test], runtime: false}
{:bamboo, "~> 2.2"},
{:bamboo_smtp, "~> 4.1"},
{:excoveralls, "~> 0.18", only: :test},
{:cors_plug, "~> 3.0"},
{:ex_machina, "~> 2.8", only: :test},
{:absinthe, "~> 1.7.10"},
{:absinthe_plug, "~> 1.5.9"},
{:faker, "~> 0.18", only: :test},
{:mix_test_watch, "~> 1.3", only: [:dev, :test], runtime: false}
]
end

Expand Down
Loading
Loading