9be7566cbb
feat: execute service as distributed erlang ( #96 )
...
continuous-integration/drone/push Build is passing
To create a cluster with distributed nodes, the following changes were made:
* Use [`dns_cluster`][0] to execute distributed nodes
* Add _script_ to execute distributed nodes locally
Also, improve local execution by:
* Use [`mix release`][1] to make easier [deploy `phoenix`][2]
* Use [`compose watch`][3] to synchronize code from the host with the service
Some minor improvements:
* Ignore files and folders in git and docker
* Remove boilerplate comments
[0]: https://github.com/phoenixframework/dns_cluster
[1]: https://hexdocs.pm/mix/Mix.Tasks.Release.html
[2]: https://hexdocs.pm/phoenix/releases.html
[3]: https://docs.docker.com/compose/how-tos/file-watch/
Co-authored-by: Joao P Dubas <joao.dubas@gmail.com>
Reviewed-on: #96
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
2024-09-22 18:56:27 +00:00
39fd238ed8
feat: upgrade erlang and deps ( #87 )
...
continuous-integration/drone/push Build is passing
* Upgrade erlang to 27.0.1
* Upgrade abisnthe to 1.7.7
Reviewed-on: #87
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
2024-07-12 11:12:50 +00:00
3f83808335
feat: upgrade elixir and erlang runtimes, and deps ( #83 )
...
continuous-integration/drone/push Build is passing
Upgrade runtimes:
* [erlang from 26.2.5 to 27.0][0]
* [elixir from 1.16.3 to 1.17.1][1]
Upgrade dependencies:
* `castore` [from 1.0.6 to 1.0.8](https://diff.hex.pm/diff/castore/1.0.6..1.0.8 )
* `cowboy` [from 2.10.0 to 2.12.0](https://diff.hex.pm/diff/cowboy/2.10.0..2.12.0 )
* `cowlib` [from 2.12.1 to 2.13.0](https://diff.hex.pm/diff/cowlib/2.12.1..2.13.0 )
* `credo` [from 1.7.6 to 1.7.7](https://diff.hex.pm/diff/credo/1.7.6..1.7.7 )
* `db_connection` [from 2.6.0 to 2.7.0](https://diff.hex.pm/diff/db_connection/2.6.0..2.7.0 )
* `ecto_sql` [from 3.11.2 to 3.11.3](https://diff.hex.pm/diff/ecto_sql/3.11.2..3.11.3 )
* `erlex` [from 0.2.6 to 0.2.7](https://diff.hex.pm/diff/erlex/0.2.6..0.2.7 )
* `hpax` [from 0.1.2 to 1.0.0](https://diff.hex.pm/diff/hpax/0.1.2..1.0.0 )
* `jason` [from 1.4.1 to 1.4.3](https://diff.hex.pm/diff/jason/1.4.1..1.4.3 )
* `mime` [from 2.0.5 to 2.0.6](https://diff.hex.pm/diff/mime/2.0.5..2.0.6 )
* `mint` [from 1.5.2 to 1.6.2](https://diff.hex.pm/diff/mint/1.5.2..1.6.2 )
* `nimble_options` [from 1.1.0 to 1.1.1](https://diff.hex.pm/diff/nimble_options/1.1.0..1.1.1 )
* `nimble_pool` [from 1.0.0 to 1.1.0](https://diff.hex.pm/diff/nimble_pool/1.0.0..1.1.0 )
* `phoenix` [from 1.7.12 to 1.7.14](https://diff.hex.pm/diff/phoenix/1.7.12..1.7.14 )
* `phoenix_ecto` [from 4.6.1 to 4.6.2](https://diff.hex.pm/diff/phoenix_ecto/4.6.1..4.6.2 )
* `phoenix_live_dashboard` [from 0.8.3 to 0.8.4](https://diff.hex.pm/diff/phoenix_live_dashboard/0.8.3..0.8.4 )
* `phoenix_live_view` [from 0.20.14 to 0.20.17](https://diff.hex.pm/diff/phoenix_live_view/0.20.14..0.20.17 )
* `phoenix_view` [from 2.0.3 to 2.0.4](https://diff.hex.pm/diff/phoenix_view/2.0.3..2.0.4 )
* `plug` [from 1.15.3 to 1.16.1](https://diff.hex.pm/diff/plug/1.15.3..1.16.1 )
* `plug_crypto` [from 2.0.0 to 2.1.0](https://diff.hex.pm/diff/plug_crypto/2.0.0..2.1.0 )
* `telemetry_metrics_prometheus_core` [from 1.2.0 to 1.2.1](https://diff.hex.pm/diff/telemetry_metrics_prometheus_core/1.2.0..1.2.1 )
* `websock_adapter` [from 0.5.5 to 0.5.6](https://diff.hex.pm/diff/websock_adapter/0.5.5..0.5.6 )
* `yaml_elixir` [from 2.9.0 to 2.11.0](https://diff.hex.pm/diff/yaml_elixir/2.9.0..2.11.0 )
To make `graphql` work with the newer `erlang` and `elixir`, the `absinthe` is installed directly from github:
* [`absinthe`](358e273a26
)
* [`absinthe_plug`](3a984cc341
)
Finally, the `ci` routine was simplified, so test + lint is executed in parallel, and more core is reused.
[0]: https://www.erlang.org/news/170
[1]: https://github.com/elixir-lang/elixir/releases/tag/v1.17.1
Reviewed-on: #83
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
2024-07-08 21:04:26 +00:00
ece17e3cf9
feat: upgrade elixir runtimes and dependencies ( #78 )
...
continuous-integration/drone/push Build is passing
Upgrade [elixir][0] runtime from [1.16.2 to 1.16.3][1].
Also, [upgrade application dependencies][2]:
* `ecto_sql` from 3.11.1 to 3.11.2
* `phoenix_ecto` from 4.6.0 to 4.6.1
* `postgrex` from 0.17.5 to 0.18.0
Reviewed-on: #78
[0]: https://github.com/elixir-lang/elixir/releases/tag/v1.16.3
[1]: https://github.com/elixir-lang/elixir/compare/v1.16.2...v1.16.3
[2]: https://diff.hex.pm/diffs?diffs[]=ecto_sql:3.11.1:3.11.2&diffs[]=phoenix_ecto:4.6.0:4.6.1&diffs[]=postgrex:0.17.5:0.18.0
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
2024-05-28 14:27:49 +00:00
9aeaaabc35
chore(deps): upgrade erlang runtime and application dependencies ( #73 )
...
continuous-integration/drone/push Build is passing
Bump [application dependencies][app-diffs]:
* [`credo` from 1.7.5 to 1.7.6][credo-diffs]
* [`phoenix_ecto` from 4.5.1. to 4.6.0][phoenix_ecto-diffs]
Bump [`erlang`][erlang-release] from [26.2.3 to 26.2.5][erlang-diffs].
[app-diffs]: https://diff.hex.pm/diffs?diffs[]=credo:1.7.5:1.7.6&diffs[]=phoenix_ecto:4.5.1:4.6.0
[credo-diffs]: https://diff.hex.pm/diff/credo/1.7.5..1.7.6
[phoenix_ecto-diffs]: https://diff.hex.pm/diff/phoenix_ecto/4.5.1..4.6.0
[erlang-release]: https://www.erlang.org/patches/otp-26.2.5
[erlang-diffs]: https://github.com/erlang/otp/compare/OTP-26.2.3...OTP-26.2.5
Reviewed-on: #73
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
2024-05-16 18:46:25 +00:00
9bd41ba3b8
chore(deps): bump erlang runtime and deps ( #67 )
...
continuous-integration/drone/push Build is passing
Update runtime:
* Bump [`erlang` from 26.2.2 to 26.2.3][0]
Update [dependencies][1]:
* credo from 1.7.4 to 1.7.5
* mix_audit from 2.1.2 to 2.1.3
* phoenix_ecto from 4.4.3 to 4.5.1
* postgrex from 0.17.4 to 0.17.5
[0]: https://www.erlang.org/patches/otp-26.2.3
[1]: https://diff.hex.pm/diffs?diffs[]=credo:1.7.4:1.7.5&diffs[]=mix_audit:2.1.2:2.1.3&diffs[]=phoenix_ecto:4.4.5:4.5.1&diffs[]=postgrex:0.17.4:0.17.5
Reviewed-on: #67
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
2024-03-19 16:23:27 +00:00
dbce23e51a
chore(deps): update hexpm/elixir docker tag to v1.16.2 ( #65 )
...
continuous-integration/drone/push Build is passing
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| hexpm/elixir | final | patch | `1.16.1-erlang-26.2.2-debian-bookworm-20240130-slim` -> `1.16.2-erlang-26.2.2-debian-bookworm-20240130-slim` |
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNjIuMSIsInVwZGF0ZWRJblZlciI6IjM3LjE2Mi4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
Reviewed-on: #65
Co-authored-by: renovate-bot <renovate-bot@dubas.dev>
Co-committed-by: renovate-bot <renovate-bot@dubas.dev>
2024-03-19 12:48:38 +00:00
1b21556d2c
Upgrade runtime and deps ( #60 )
...
Upgrade project runtimes and dependencies to the latest versions.
1. Runtimes:
1. `elixir` to 1.16.1
1. `erlang` to 26.2.2
1. [Dependencies][0]:
1. `absinte` from 1.7.5 to 1.7.6
1. `credo` from 1.7.1 to 1.7.4
1. `dialyxir` from 1.4.2 to 1.4.3
1. `ecto_sql` from 3.10.3 to 3.11.1
1. `gettext` from 0.23.1 to 0.24.0
1. `mix_audit` from 2.1.1 to 2.1.2
1. `pg_ranges` from 1.1.0 to 1.1.1
1. `phoenix` from 1.7.10 to 1.7.11
1. `plug_cowboy` from 2.6.1 to 2.7.0
1. `postgrex` from 0.17.3 to 0.17.4
1. `telemetry_metrics` from 0.6.1 to 0.6.2
[0]: https://diff.hex.pm/diffs?diffs[]=absinte:1.7.5:1.7.6&diffs[]=credo:1.7.1:1.7.4&diffs[]=dialyxir:1.4.2:1.4.3&diffs[]=ecto_sql:3.10.3:3.11.1&diffs[]=gettext:0.23.1:0.24.0&diffs[]=mix_audit:2.1.1:2.1.2&diffs[]=pg_ranges:1.1.0:1.1.1&diffs[]=phoenix:1.7.10:1.7.11&diffs[]=plug_cowboy:2.6.1:2.7.0&diffs[]=postgrex:0.17.3:0.17.4&diffs[]=telemetry_metrics:0.6.1:0.6.2
Reviewed-on: #60
2024-02-11 13:53:11 +00:00
4d09f20e69
chore(deps): update elixir docker tag ( #56 )
...
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| elixir | final | minor | `1.15.7-slim` -> `1.16.0-slim` |
| [elixir](https://elixir-lang.org/ ) ([source](https://github.com/elixir-lang/elixir )) | | minor | `1.15.7` -> `1.16.1` |
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate ).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS4xMTcuMyIsInVwZGF0ZWRJblZlciI6IjM3LjE2Mi4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
Reviewed-on: #56
Co-authored-by: renovate-bot <renovate-bot@dubas.dev>
Co-committed-by: renovate-bot <renovate-bot@dubas.dev>
2024-01-31 11:42:10 +00:00
7420139650
feat(ci): additional code/deps/security checks ( #37 )
...
To improve `CI` quality the following checks were added:
* compile warnings
* deprecated dependencies
* insecure dependencies
* unused dependencies
* code vulnerabilities
Also, to improve `CI` execution time, dependencies checks and lining were separated from the test pipeline.
Last, but not least, to make local development easier a `Dockerfile` was created to contain any system dependencies, and targets to handle database creation and migration were added.
Reviewed-on: #37
2023-11-11 20:35:45 +00:00