Commit graph

193 commits

Author SHA1 Message Date
f111b5c8bf
feat: delete deployment from web UI
closes: #13
2022-12-05 17:40:38 +05:30
398f08c07a
feat: view site details, deploy secret and latest events
closes: #10
2022-12-05 15:48:16 +05:30
5917e5e29f
feat: DB: get site from deploy secret 2022-12-05 15:45:52 +05:30
7e17f9de0a
feat: add show and hide icons 2022-12-05 15:45:04 +05:30
7bf28f0f93
feat: use latest update event DB method when rendering dash home 2022-12-03 17:46:39 +05:30
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
d30d4e29b8
chore: rm debugging statement 2022-12-03 17:45:01 +05:30
bc7153a060
feat: add website from web UI
closes: #4 (comment)
2022-12-03 16:40:53 +05:30
ef55697879
fix: dashboard home title 2022-12-03 16:39:33 +05:30
1f1b21baac
feat: add public ID to deployments 2022-12-03 16:30:33 +05:30
f56ca02d39
chore: lints 2022-12-03 16:12:19 +05:30
9236451628
fix: link homepage in navbar 2022-12-03 15:47:46 +05:30
330e835094
fix: test dashboard homepage and fix template vars in dash home 2022-12-03 15:31:40 +05:30
6660602ab6
fix: redirect to dashboard homepage if user is authenticated 2022-12-03 14:57:08 +05:30
cdeabb06aa
feat: dashboard homepage. List existing deployments with add site btn 2022-12-03 14:56:17 +05:30
cbcd7bad7b
fix: rm loggedin_user link in authenticated nav bar component 2022-12-03 14:54:23 +05:30
7dca981ee3
fix: style: broken fullscreen component 2022-12-03 14:54:12 +05:30
eae0a568e7
fix: duplicate title 2022-12-03 14:53:55 +05:30
21bea52323
fix: revert back to using github.com for testing 2022-12-03 14:53:12 +05:30
0f77f81f84
fix: use localhost for dev
actix_identity doesn't work otherwise
2022-12-03 14:52:45 +05:30
2d9e952040
fix: load identity middleware 2022-12-03 14:03:24 +05:30
1015ccbf4d
chore: refactor Event to be deserializ-able 2022-11-27 22:01:36 +05:30
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
26fdc1db9f
chore: use common repo URL, as specified in src/tests.rs 2022-11-27 21:07:05 +05:30
54c0323105
chore: mv deploy and meta API endpoints to src/api/v1 2022-11-27 21:06:42 +05:30
20c3ee1f11
feat: test for unique event names and return event IDs on update API calls 2022-11-15 20:51:34 +05:30
f89b3e6d4c
feat: log site deploy ,update and delete events in db 2022-11-15 20:24:13 +05:30
1e0fa7279f
chore: apply clippy lints 2022-11-15 18:09:34 +05:30
b07f076634
feat: read config from repository on every deploy and deployment update 2022-11-12 15:51:53 +05:30
2d9d511bb8
feat: read configuration from repositories
ref: #8
2022-11-12 15:51:34 +05:30
ccb0ac9d09
feat: test util: accept custom filename and content in write_file_util 2022-11-12 15:50:55 +05:30
3c3ff0f8a7
feat: report 404 when file not found in Git repo 2022-11-12 14:27:05 +05:30
3a961bc524
feat: add tracing log identifier to each HTTP route handler 2022-11-11 15:37:33 +05:30
0b2db58483
feat: replace log crate with tracing 2022-11-11 14:56:36 +05:30
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
ed68b4570c
feat: auto assign default deployment hostnames using crate::subdomains
utils
2022-11-10 17:35:48 +05:30
30be3a293d
feat: use settings.page.base_domain to generate default deployment hostname 2022-11-10 17:34:21 +05:30
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
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
926cf3fe08
fix: CI: install node and sass in coverage workflow 2022-11-10 16:30:02 +05:30
79a8b6586c
feat: rm loading pages from settings and rely on DB. Propagate changes
across codebase
2022-11-10 16:26:19 +05:30
4d7d2fd359
feat: controllers for adding and updating sites 2022-11-10 16:25:37 +05:30
e5450801c1
feat: add DB method to check if hostname exists 2022-11-10 16:19:28 +05:30
74a33cf044
feat: test utils to add site 2022-11-10 16:18:52 +05:30
7fb29e0d7a
fix: rm unique constraint on librepages_sites.repo_url
DESCRIPTION
    A repository might have several deployments. So unique repo_urls
    don't make any sense.
2022-11-10 16:11:56 +05:30
8aa736da27
fix: use ServiceError::WebsiteNotFound for site related DB operations 2022-11-10 15:23:30 +05:30
c86ca3467f
feat: website FS path construction utility 2022-11-09 14:45:37 +05:30
ec7d698252
feat: db: get_site_from_secret for API authentication 2022-11-09 14:45:25 +05:30
76692109bc
feat: add Settings.pages.base_path to store website content
DIRECTORY STRUCTURE:
    Settings.pages.base_path > page.hostname
2022-11-09 14:20:56 +05:30
71533b9860
feat: db: add, rm, list and get site 2022-11-09 14:07:45 +05:30