Commit graph

81 commits

Author SHA1 Message Date
Nikos Papadakis
e0850c1d2b
make health somewhat work 2024-02-01 23:54:23 +02:00
Nikos Papadakis
b4cd5642ed
app refactoring 2024-02-01 17:34:26 +02:00
Nikos Papadakis
f59cfee792
make it bad, so to make it good later 2024-01-31 22:37:05 +02:00
Nikos Papadakis
b7a29405f0
what am i doing 2024-01-30 23:34:19 +02:00
Nikos Papadakis
e3611ee15a
channels 2024-01-30 17:40:46 +02:00
Nikos Papadakis
46ae6f0163
todo: subscribers and publishers created on messaging 2024-01-30 01:51:56 +02:00
Nikos Papadakis
46b87d2559
more churn 2024-01-29 20:18:29 +02:00
Nikos Papadakis
67d147c7e3
uggggh 2024-01-29 12:44:00 +02:00
Nikos Papadakis
e2c50ca174
todo: services 2024-01-27 23:01:59 +02:00
Nikos Papadakis
5a6ad517d2
messaging stuff 2024-01-26 18:22:09 +02:00
Nikos Papadakis
4c951a5bfe
health draft 2024-01-25 17:16:27 +02:00
Nikos Papadakis
221b4348d8
nats 2024-01-25 01:18:30 +02:00
Nikos Papadakis
6c72ebbe3e
update dependencies 2023-12-23 15:32:18 +02:00
Nikos Papadakis
ac709e66f5
add web terminal emulator (closes #6) 2023-12-16 22:59:19 +02:00
Nikos Papadakis
62c40358a2
nix: improve prymn_db script, adding a 'shell' command 2023-12-14 14:45:22 +02:00
Nikos Papadakis
818b20f775 add functionality that creates wordpress sites
Reviewed-on: https://git.nikos.gg/prymn/prymn/pulls/9
Co-authored-by: Nikos Papadakis <nikos@papadakis.xyz>
Co-committed-by: Nikos Papadakis <nikos@papadakis.xyz>
2023-12-14 12:27:05 +00:00
Nikos Papadakis
1a21bce0d2
form input style changes 2023-12-13 17:41:46 +02:00
Nikos Papadakis
2771a7bcb2
app: dropdown improvements 2023-11-25 16:49:51 +02:00
Nikos Papadakis
c81d112eb8
app(fix): only update health updates on its own page 2023-11-25 15:29:59 +02:00
Nikos Papadakis
efd5f1d126
app: alpine.js + dropdown 2023-11-24 00:56:38 +02:00
Nikos Papadakis
c7b9be3ee4
app: new button component 2023-11-23 15:45:33 +02:00
Nikos Papadakis
4a37cc402a
draft: apps 2023-11-20 18:50:24 +02:00
Nikos Papadakis
78051bb796
fix tests and better async results 2023-11-20 18:50:08 +02:00
Nikos Papadakis
707cb0d636
run cargo and nix update 2023-11-20 18:49:09 +02:00
Nikos Papadakis
8bf9261583
upgrade phoenix
Now with the new liveview async API!
2023-11-20 00:27:36 +02:00
Nikos Papadakis
53572d4993
add blocks and placeholders for where stuff will go later 2023-11-16 23:45:36 +02:00
Nikos Papadakis
085e000009
refactor: move system all modules to root 2023-11-14 17:42:47 +02:00
Nikos Papadakis
5c64f02579 Feature: Agent Tasks (#8)
Reviewed-on: https://git.nikos.gg/prymn/prymn/pulls/8
Co-authored-by: Nikos Papadakis <nikos@papadakis.xyz>
Co-committed-by: Nikos Papadakis <nikos@papadakis.xyz>
2023-11-14 15:23:50 +00:00
Nikos Papadakis
59c8c6ee23
Move Mix project to the root dir
This commit moves the mix.exs, mix.lock and priv directors that were
inside app/ to the root directory. Configuration tweaks with paths were
done for the asset building.

The priv/ directory had to be moved because mix by default symlinks it
inside the build output, and I couldn't find a configuration option to
have it live inside app/
2023-11-04 16:33:51 +02:00
Nikos Papadakis
0ce0132554
ci: tweak container images 2023-10-27 11:09:22 +03:00
Nikos Papadakis
2bab72a9b7
ci: implement tests for rust 2023-10-17 14:13:51 +03:00
Nikos Papadakis
2955f68562
CI: Use caching for nix 2023-10-12 22:13:00 +03:00
Nikos Papadakis
e8a6ebafc2
CI (Work in progress): Use nix for building in CI 2023-10-12 01:29:01 +03:00
Nikos Papadakis
f1c784c79c
nix: simpler refactor into files, add scripts 2023-10-07 14:43:07 +03:00
Nikos Papadakis
082e5bf210
nix: add postgres and multiple system support 2023-10-01 11:26:40 +03:00
Nikos Papadakis
4bc159d698
chore: switch to nix for development (closes #2)
This commit add nix support for development shells. The developer can
use `nix develop` to setup a complete and reproducable devleopment
environment using Nix.
2023-09-30 21:06:56 +03:00
Nikos Papadakis
c896fd6d7e
upgrade deps 2023-09-20 16:08:42 +03:00
Nikos Papadakis
3628754120
app: support button as link 2023-09-10 15:46:42 +03:00
Nikos Papadakis
9b0ddf107e
ci: refactor - use cached builds, add tests and lints 2023-09-10 13:51:06 +03:00
Nikos Papadakis
c1e39c9bf2
app: use x-forwarded-for header to get ips 2023-09-04 13:11:06 +03:00
Nikos Papadakis
414cba561b
app: enable local email storage for now 2023-09-04 12:34:41 +03:00
Nikos Papadakis
e0991498fd
ci: use sccache for cargo & fix ci 2023-09-04 12:04:17 +03:00
Nikos Papadakis
ec365709b4
ci: app release pipeline 2023-09-03 15:18:06 +03:00
Nikos Papadakis
7e71df8a96
app: fix dialyixir (closes #4) 2023-08-29 14:17:08 +03:00
Nikos Papadakis
26ba60b95d
app: refactor the Connection to make it asynchronous when connecting
Some work has been done on making the Connection feel nicer, but also
more work is needed to not have the channel be exposed to the upper
layers of the application. We should wrap all the GRPC calls in the
GenServer (which may also allow caching on certain calls such as
get_sys_info)
2023-08-28 23:32:42 +03:00
Nikos Papadakis
be7f584010
app: a nice poc background connection with the agent
Dynamically supervise a GRPC connection and keep it alive for a while,
using a timeout to kill the process on inactivity.

The Connection GenServer keeps the connection alive, while listening to
a health stream from the GRPC endpoint, notifying any subscribed
listeners about changes to health.

This health is then propagated to the main servers page.

Also create a looping get_sys_info which retrieves some basic system
information.
2023-08-26 00:51:04 +03:00
Nikos Papadakis
89ffca8833
agent: dependency update, cleanup, and logging
- ran cargo update
- added tower-http and attached the tracing subscriber
- make the repo a cargo workspace
2023-08-24 22:16:00 +03:00
Nikos Papadakis
5bd44ef9ac
refactor: agent connections now use the new healthcheck streaming
`Prymn.Agent.Connection` GenServer uses healthchecking with the new
streaming RPC, retrieving asynchronously the health status of the agent.

The Connection will also shut itself down when there's no usage (when
the keepalive function is not called frequently)
2023-08-19 21:14:07 +03:00
Nikos Papadakis
20896ab5a3
app: add 'Skip to content' link for accessibility' 2023-08-17 13:24:09 +03:00
Nikos Papadakis
6071e4d155
ci: conditions on builds 2023-08-12 14:03:15 +03:00