Commit graph

81 commits

Author SHA1 Message Date
b8e52ff82a
feat: add export page 2023-03-14 15:51:53 +05:30
1e33e5303a
feat: serve files from export dir 2023-03-14 15:51:46 +05:30
740b1a331e
feat: get all campaigns on an instance 2023-03-14 15:50:27 +05:30
a3f2c3632e
feat: publish benchmark data periodically (configurable)
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
ci/woodpecker/pr/woodpecker Pipeline failed
2023-03-12 20:11:06 +05:30
9411c2ba9f
feat: read publication dir config and serve it 2023-03-12 20:10:40 +05:30
d2c52cc62c
feat: cleanup archiver and include tests 2023-03-08 17:38:24 +05:30
604fca0a62
feat: archive campaign and benchmark data
DESCRIPTION
    FORMATS
	- Campaign configuration is stored in JSON format
	- Benchmark data is stored in CSV format

    DIRECTORY STRUCTURE
	Each campaign gets a separate directory. A campaign can have
	multiple archives. Archives are stored in directories whose names
	would be the same as the UNIX timestamp of when they were
	recorded.

	EXAMPLE
	    The example below shows three campaigns with one archive
	    each. Each archive is stored in a directory denoting the
	    moment in which the archive was generated. Each archive
	    includes campaign configuration and benchmark.

	    ```bash
		14:53 atm@lab archive → tree
		.
		├── 4e951e01-71ee-4a18-9b97-782965495ae3
		│   └── 1675329764
		│       ├── benchmark.csv
		│       └── challenge.json
		├── 9d16df08-dffc-484e-bbe2-10c00b431c7e
		│   └── 1675329764
		│       ├── benchmark.csv
		│       └── challenge.json
		└── fa9f7c24-afec-4505-adb9-8e0c3ce54d37
		    └── 1675329764
			├── benchmark.csv
			└── challenge.json

		7 directories, 6 files
		```
2023-03-08 17:36:45 +05:30
a44f6f1748
feat: add archive base_path in settings 2023-03-08 17:36:45 +05:30
9e153b22ca
fix: update sqlx and fix container build
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
closes: #14
2023-02-14 17:25:27 +05:30
92ab34967d
feat: display filtered (wasm, js and all) filtered benchmarks 2023-02-02 00:30:51 +05:30
9d128033ac
feat: fetch and test filtered benchmark results. 2023-02-02 00:29:52 +05:30
1a466bbd3c
feat: display benchmark type 2023-02-01 18:19:06 +05:30
0fa21911f0
feat: submit and store benchmark type 2023-02-01 18:18:50 +05:30
94eb76c188
feat: show timestamp in results page 2023-02-01 15:27:26 +05:30
21ff6741a0
feat: add timestamp to benchmark submissions 2023-02-01 15:26:58 +05:30
6bce9877ab
feat: link to results page from admin campaign list page 2023-01-26 20:58:53 +05:30
ab3d496bca
feat: show campaign results in web UI 2023-01-26 20:58:32 +05:30
79bd99d398
fix: page title 2023-01-26 20:58:07 +05:30
82bb2f327a
chore: get page helper method 2023-01-26 20:57:38 +05:30
c576487333
fix: store and get submission ID
DESCRIPTION
    If the same survey_user submits the survey many times, their first
    submission ID was being used to record benchmarks from their future
    submissions. Which resulted in submissions with empty benchmarks.

    This patch gets the submission ID as the record is being created and
    records benches using that. Bug fix and one less query.
2023-01-26 20:55:23 +05:30
0ac915b426
feat: REST API endpoint to return survey campaign results 2023-01-26 19:07:48 +05:30
aa63783794
feat: list survey responses per campaign 2023-01-26 18:25:52 +05:30
f6030577a0
fix: upload difficulty via web form 2023-01-26 18:25:22 +05:30
6b608c6677
feat: finish porting pages to tera. Fix tests 2023-01-24 23:31:04 +05:30
b874c17362
feat: port panel to tera 2023-01-24 23:29:58 +05:30
8e6a3afb4c
feat: port new campaign page to tera 2023-01-24 23:29:47 +05:30
e5bf7feebe
feat: port benchmark page to tera 2023-01-24 23:29:17 +05:30
82d293a159
feat: port delete campaign to tera 2023-01-24 23:28:57 +05:30
599777cbf3
feat: port list campaigns to tera 2023-01-24 23:28:22 +05:30
67d50a3d80
feat: rm gift and port about page to tera 2023-01-24 23:27:43 +05:30
9f0d38ab07
feat: define campaign doesnt exist error type 2023-01-24 23:00:08 +05:30
d2f266c689
feat: port login page to tera 2023-01-24 19:25:56 +05:30
c645bf83a3
feat: port join page to tera 2023-01-24 19:25:23 +05:30
9a15e11c5d
feat: port error component to tera 2023-01-24 19:24:18 +05:30
fe584190f5
feat: bootstrap tera 2023-01-24 19:23:29 +05:30
29a5e065aa
feat: use settings from app context 2023-01-24 19:22:19 +05:30
b66d5e7c70
chore: linting 2023-01-24 19:21:54 +05:30
33cd4e23bd
feat: load static assets info in serialize able form for tera integration 2023-01-24 19:02:52 +05:30
73cfe1b95d
chore: lint, use actix_web_codegen_const_routes and serde all routes 2023-01-24 19:02:29 +05:30
654a898413
chore: rm PageError 2023-01-24 19:01:56 +05:30
009ee5d11e
feat: load settings in application context 2023-01-24 19:01:30 +05:30
d5211cf946
feat: linting and load application context with test-env Modifications 2023-01-24 19:00:56 +05:30
c92aa10327
feat: load project links from configuration 2023-01-24 19:00:31 +05:30
7ff66c551d
feat & chore: update actix-web and deps and use actix-auth-middleware for guarding auth routes 2022-03-26 12:45:36 +05:30
81f3f5e450
chore: update cache-buster 2022-03-26 12:43:33 +05:30
0524208a39
mobile styling 2021-10-27 11:39:37 +05:30
eccb87fd99
fetch survey config 2021-10-14 22:35:38 +05:30
1b06c2c5be
filemap: fix broken test 2021-10-14 22:08:34 +05:30
9ba2fe31f5
change logo 2021-10-14 22:02:45 +05:30
bc950268de
fix app name 2021-10-14 21:54:26 +05:30