Commit Graph

201 Commits

Author SHA1 Message Date
Aravinth Manivannan 8a2ada891e
feat: run conductor instance while testing 2022-12-15 01:01:53 +05:30
Aravinth Manivannan be3af0e1fa
feat: relay site events to conductor 2022-12-15 01:00:15 +05:30
Aravinth Manivannan b7be2811d9
feat: talk to conductor 2022-12-15 00:59:52 +05:30
Aravinth Manivannan 59b619f6fd
feat: accept conductor configuration 2022-12-15 00:59:35 +05:30
Aravinth Manivannan 5c0f6fd84d
feat: use librepages/libconfig for handling deployment configurations 2022-12-09 14:24:02 +05:30
Aravinth Manivannan 538bc41113
feat: fire and test deployment deletion event when deployment is deleted 2022-12-06 06:30:56 +05:30
Aravinth Manivannan 3594d4e23b
feat: tombstone deployments instead of deleting them.
It is probably worthwhile storing deleted deployment('s events) for a
bit, before completely wiping them clean. Tombstone allows us to do
that.
2022-12-06 06:29:56 +05:30
Aravinth Manivannan ee6af46ccf
todo: erect deployment deletion tomstone 2022-12-05 19:15:49 +05:30
Aravinth Manivannan f111b5c8bf
feat: delete deployment from web UI
closes: #13
2022-12-05 17:40:38 +05:30
Aravinth Manivannan 398f08c07a
feat: view site details, deploy secret and latest events
closes: #10
2022-12-05 15:48:16 +05:30
Aravinth Manivannan 5917e5e29f
feat: DB: get site from deploy secret 2022-12-05 15:45:52 +05:30
Aravinth Manivannan 7e17f9de0a
feat: add show and hide icons 2022-12-05 15:45:04 +05:30
Aravinth Manivannan 7bf28f0f93
feat: use latest update event DB method when rendering dash home 2022-12-03 17:46:39 +05:30
Aravinth Manivannan c5ed6bf6c2
feat: add generic method to get latest event of any registered type and
get latest update event
2022-12-03 17:45:06 +05:30
Aravinth Manivannan d30d4e29b8
chore: rm debugging statement 2022-12-03 17:45:01 +05:30
Aravinth Manivannan bc7153a060
feat: add website from web UI
closes: #4 (comment)
2022-12-03 16:40:53 +05:30
Aravinth Manivannan ef55697879
fix: dashboard home title 2022-12-03 16:39:33 +05:30
Aravinth Manivannan 1f1b21baac
feat: add public ID to deployments 2022-12-03 16:30:33 +05:30
Aravinth Manivannan f56ca02d39
chore: lints 2022-12-03 16:12:19 +05:30
Aravinth Manivannan 9236451628
fix: link homepage in navbar 2022-12-03 15:47:46 +05:30
Aravinth Manivannan 330e835094
fix: test dashboard homepage and fix template vars in dash home 2022-12-03 15:31:40 +05:30
Aravinth Manivannan 6660602ab6
fix: redirect to dashboard homepage if user is authenticated 2022-12-03 14:57:08 +05:30
Aravinth Manivannan cdeabb06aa
feat: dashboard homepage. List existing deployments with add site btn 2022-12-03 14:56:17 +05:30
Aravinth Manivannan cbcd7bad7b
fix: rm loggedin_user link in authenticated nav bar component 2022-12-03 14:54:23 +05:30
Aravinth Manivannan 7dca981ee3
fix: style: broken fullscreen component 2022-12-03 14:54:12 +05:30
Aravinth Manivannan eae0a568e7
fix: duplicate title 2022-12-03 14:53:55 +05:30
Aravinth Manivannan 21bea52323
fix: revert back to using github.com for testing 2022-12-03 14:53:12 +05:30
Aravinth Manivannan 0f77f81f84
fix: use localhost for dev
actix_identity doesn't work otherwise
2022-12-03 14:52:45 +05:30
Aravinth Manivannan 2d9e952040
fix: load identity middleware 2022-12-03 14:03:24 +05:30
Aravinth Manivannan 1015ccbf4d
chore: refactor Event to be deserializ-able 2022-11-27 22:01:36 +05:30
Aravinth Manivannan 8a25459985
fix: duplicate home page. Redirect to login page, if user is
unauthenticated and redirect to dashboard homepage if user is
authenticated
2022-11-27 21:25:57 +05:30
Aravinth Manivannan 26fdc1db9f
chore: use common repo URL, as specified in src/tests.rs 2022-11-27 21:07:05 +05:30
Aravinth Manivannan 54c0323105
chore: mv deploy and meta API endpoints to src/api/v1 2022-11-27 21:06:42 +05:30
Aravinth Manivannan 20c3ee1f11
feat: test for unique event names and return event IDs on update API calls 2022-11-15 20:51:34 +05:30
Aravinth Manivannan f89b3e6d4c
feat: log site deploy ,update and delete events in db 2022-11-15 20:24:13 +05:30
Aravinth Manivannan 1e0fa7279f
chore: apply clippy lints 2022-11-15 18:09:34 +05:30
Aravinth Manivannan b07f076634
feat: read config from repository on every deploy and deployment update 2022-11-12 15:51:53 +05:30
Aravinth Manivannan 2d9d511bb8
feat: read configuration from repositories
ref: #8
2022-11-12 15:51:34 +05:30
Aravinth Manivannan ccb0ac9d09
feat: test util: accept custom filename and content in write_file_util 2022-11-12 15:50:55 +05:30
Aravinth Manivannan 3c3ff0f8a7
feat: report 404 when file not found in Git repo 2022-11-12 14:27:05 +05:30
Aravinth Manivannan 3a961bc524
feat: add tracing log identifier to each HTTP route handler 2022-11-11 15:37:33 +05:30
Aravinth Manivannan 0b2db58483
feat: replace log crate with tracing 2022-11-11 14:56:36 +05:30
Aravinth Manivannan 58bb606879
feat: serve requests on auto-assigned default deployment hostnames
TODO: serving custom domain requests are not yet implemented
2022-11-10 17:36:01 +05:30
Aravinth Manivannan ed68b4570c
feat: auto assign default deployment hostnames using crate::subdomains
utils
2022-11-10 17:35:48 +05:30
Aravinth Manivannan 30be3a293d
feat: use settings.page.base_domain to generate default deployment hostname 2022-11-10 17:34:21 +05:30
Aravinth Manivannan dd38dd05d1
feat: add base_path to settings to specify deploy host name.
DESCRIPTION
    Each deployment should have a default hostname before a custom
    domain can be assigned. Therefore, this domain must be in control of
    the Librepages system (Librepages/conductor, namely)

SECURITY
    base_domain must be different from the domains hosting confidential
    information (authentication systems, PII data, etc.) to make use of
    browser domain sandboxing safety. If Librepages deployment is open
    to the public, unaudited, third-party content may be hosted in this
    domain, so it is very important that this domain shouldn't be used
    for critical infrastructure dealing with confidential information.
2022-11-10 17:19:35 +05:30
Aravinth Manivannan 344cc85935
feat: construct random subdomains from wordlists.
SUMMARY
    Using data 1) and approach 2) mentioned here[0]

[0]: #5 (comment)
2022-11-10 17:02:41 +05:30
Aravinth Manivannan 926cf3fe08
fix: CI: install node and sass in coverage workflow 2022-11-10 16:30:02 +05:30
Aravinth Manivannan 79a8b6586c
feat: rm loading pages from settings and rely on DB. Propagate changes
across codebase
2022-11-10 16:26:19 +05:30
Aravinth Manivannan 4d7d2fd359
feat: controllers for adding and updating sites 2022-11-10 16:25:37 +05:30