Commit Graph

344 Commits (8f32888dff5a800879e619722e7331f3d735aca1)

Author SHA1 Message Date
Jef Roosens 5e11a91f3d
refactor: renamed cron & build code to use "target" naming 2022-06-17 16:24:12 +02:00
Jef Roosens 8f91c1fde5
feat(build): added support for 'url' kind 2022-06-17 14:31:34 +02:00
Jef Roosens bd07964509
feat(api): prevent invalid kind values 2022-06-17 13:56:38 +02:00
Jef Roosens bb5643bb03
feat: added ability to specify kind of target 2022-06-17 13:45:21 +02:00
Jef Roosens 1b7c14e7dc
feat(server): no longer calculate md5 hashes for packages 2022-06-16 22:36:11 +02:00
Jef Roosens 3d38df6d03
fix(client): use new "target" name for param 2022-06-16 18:10:25 +02:00
Jef Roosens fcdcf9c5ca
feat(server): add config option for server port 2022-06-16 16:56:58 +02:00
Jef Roosens 102a7f8899
refactor: renamed codebase to "targets" 2022-06-16 16:56:58 +02:00
Jef Roosens faec08f846
refactor(console): renamed stuff to 'targets' 2022-06-16 16:56:58 +02:00
Jef Roosens 4d581da7bf
refactor: renamed api routes & client code to 'targets' 2022-06-16 16:56:58 +02:00
Jef Roosens 6b79f7b5ed
feat(server): moved api routes under /v1 namespace 2022-06-16 16:56:55 +02:00
Jef Roosens 339267e6b2
fix: added VIETER_ prefix to vconf.load calls 2022-06-15 22:54:27 +02:00
Jef Roosens 44696fc11b
refactor: migrated env code to own external module 2022-06-15 13:20:29 +02:00
Jef Roosens 12805d713c
chore: bumped versions to 0.3.0 2022-06-13 21:32:35 +02:00
Jef Roosens ec128539d2
chore: bumped version to 0.3.0-rc.1 2022-06-10 15:09:55 +02:00
Jef Roosens 0855d9efd8
fix(console): removed unimplemented -arch flag 2022-06-10 08:40:28 +02:00
Jef Roosens 95441bdea0
refactor: migrated to Response.body 2022-06-05 22:21:54 +02:00
Jef Roosens e734e658a0
fix(server): publish build log now uses epoch value for dates 2022-06-04 12:11:51 +02:00
Jef Roosens 329e819e15
feat(console): added command to generate man pages 2022-06-02 16:36:18 +02:00
Jef Roosens 48e2ae7645
feat(build): show shell commands in build logs 2022-06-01 20:34:36 +02:00
Jef Roosens 9f753f9c93
feat(build): add target repo to builds; update system for every build 2022-06-01 17:08:18 +02:00
Jef Roosens aded6d438a
feat(cli): use correct timezones strings for log info; show build
duration
2022-05-31 12:46:39 +02:00
Jef Roosens edd71b41c2
feat(cli): interpet input dates & print dates as local timezone 2022-05-31 12:31:44 +02:00
Jef Roosens a4ffc2c0e3
feat(cli): added more advanced date flags for BuildLog CLI 2022-05-30 23:27:09 +02:00
Jef Roosens 401e0291e3
feat(cli): added some filter flags to GitRepo CLI 2022-05-29 21:59:21 +02:00
Jef Roosens a39c1aa5eb
feat(server): added proper filtering the BuildLog API 2022-05-29 20:15:54 +02:00
Jef Roosens 4f32dec5b5
feat(db): added function to convert sqlite output to struct 2022-05-29 20:15:54 +02:00
Jef Roosens 31e903ebeb
feat(server): partial implementation of BuildLog API filter 2022-05-29 20:15:54 +02:00
Jef Roosens 0d5704ba15
feat(server): initial implementation of migrations 2022-05-28 19:49:49 +02:00
Jef Roosens 768da5b790
refactor: added CronExpression.next_n function 2022-05-26 13:41:28 +02:00
Jef Roosens bd4bb9a9fb
feat: added cli command for previewing cron schedules 2022-05-26 09:15:49 +02:00
Jef Roosens 7f6e9e636c
fix(cron): retrieve all GitRepo's instead of first 25 2022-05-25 09:24:01 +02:00
Jef Roosens 0233b8559d
doc: added some missing docstrings 2022-05-19 22:14:41 +02:00
Jef Roosens 2fc25f1afe
refactor: moved BuildLog to models 2022-05-19 22:11:48 +02:00
Jef Roosens 6bd5b7cb48
refactor: separated GitRepo types into own module
feat: added more query params for GitRepo API
2022-05-19 22:11:48 +02:00
Jef Roosens 5e81dadce3
feat: partially added filters to GitRepo CLI 2022-05-19 22:11:35 +02:00
Jef Roosens 1e079143cd
feat(server): added better query params to GitRepo API 2022-05-18 16:05:42 +02:00
Jef Roosens 0de5ffb45d
chore: bumped versions 2022-05-16 17:34:51 +02:00
Jef Roosens 73d2d4b08f
feat(console): replaced `vieter build` with `vieter repos build` 2022-05-16 17:12:37 +02:00
Jef Roosens 889d5a0884
refactor(docker): removed unused function 2022-05-16 15:39:23 +02:00
Jef Roosens 3c87e60293
refactor(docker): more tightly integrate streams 2022-05-16 15:36:21 +02:00
Jef Roosens 850cba6ab9
refactor(docker): use http.Method instead of strings 2022-05-16 15:02:57 +02:00
Jef Roosens d4c803c41c
doc(env): added missing docstring & README 2022-05-16 14:53:48 +02:00
Jef Roosens 055b168ff1
refactor(util): split into two files 2022-05-16 14:36:31 +02:00
Jef Roosens 1d3c7a1651
refactor(docker): renamed DockerDaemon to DockerConn 2022-05-16 14:09:21 +02:00
Jef Roosens 97cdaa18e1
refactor(docker): split stream separator code into own function 2022-05-16 13:03:44 +02:00
Jef Roosens ce67208fbd
refactor(docker): remove old code 2022-05-15 10:01:12 +02:00
Jef Roosens e041682fea
feat(docker): fully migrate build commands to new code 2022-05-15 09:56:23 +02:00
Jef Roosens 79fd9c1f87
fix(docker): read_response now handles chunked data 2022-05-15 09:23:35 +02:00
Jef Roosens 1811ebbe3f
doc: documented new Docker code 2022-05-15 09:23:35 +02:00
Jef Roosens f22ed29631
feat(docker): added StreamFormatReader 2022-05-15 09:23:35 +02:00
Jef Roosens 92cbea69d6
feat(docker): added ChunkedResponseReader implementation 2022-05-15 09:23:34 +02:00
Jef Roosens da46b8b4ae
feat(docker): error when HTTP requests fail 2022-05-15 09:23:34 +02:00
Jef Roosens 4c97489f8a
feat(docker): partially migrate to new code 2022-05-15 09:23:21 +02:00
Jef Roosens dd9958ea28
refactor: ran vfmt with new defaults
feat(docker): started work on new implementation
2022-05-15 09:23:21 +02:00
Jef Roosens 473c7ec06b
feat(docker): start of new socket implementation 2022-05-15 09:23:13 +02:00
Jef Roosens 5c5c2f87e0
feat(cli): lists are now properly formatted in an ascii table 2022-05-14 20:11:29 +02:00
Jef Roosens 5f21e256ee
refactor: apply new vfmt defaults 2022-05-14 20:06:08 +02:00
LordMZTE 0bac221aee fix: don't pass --nodeps to initial build step (#173)
This fixes packages that require their dependencies in `pkgver` or
`prepare` failing to build.

Reviewed-on: vieter/vieter#173
Co-authored-by: LordMZTE <lord@mzte.de>
Co-committed-by: LordMZTE <lord@mzte.de>
2022-05-10 13:36:07 +02:00
Jef Roosens 3821ed29fd
refactor(docker): simplified loop expression 2022-05-09 15:05:53 +02:00
Jef Roosens 5a5f7f8346
refactor(docker): use builtin parse_rfc3339 function 2022-05-09 14:58:20 +02:00
Jef Roosens ea4c4fce16
feat(cron): upload logs after build 2022-05-09 08:51:10 +02:00
Jef Roosens e79d18100f
chore: ran `make fmt` 2022-05-09 08:51:10 +02:00
Jef Roosens 4b172cb5d8
feat(cli): `vieter build` now builds a single repo & uploads build logs 2022-05-09 08:51:10 +02:00
Jef Roosens 27aa215eff
feat(docker): added function to retrieve container logs 2022-05-09 08:51:10 +02:00
Jef Roosens 5f7d7c4780
doc: added documentation to all functions 2022-05-07 22:06:17 +02:00
Jef Roosens 5b016df85d
feat(cli): added commands for interacting with build logs 2022-05-07 21:50:20 +02:00
Jef Roosens fa6603bd45
feat(client): added client code for logs API 2022-05-07 19:38:28 +02:00
Jef Roosens 407b226955
refactor: moved client code into own module 2022-05-07 16:10:27 +02:00
Jef Roosens f42d3fd8b0
fix(server): prevent adding logs to non-existent repo 2022-05-07 15:44:59 +02:00
Jef Roosens 139142fcec
feat(server): added endpoint for content of build log 2022-05-07 15:41:49 +02:00
Jef Roosens 393e641a76
feat(server): allow filtering of builds per repo 2022-05-07 15:31:01 +02:00
Jef Roosens 7e01dbafec
feat(server): added endpoints for listing & uploading build logs 2022-05-07 15:10:07 +02:00
Jef Roosens 58c1ecd25e
db: added BuildLog & required methods 2022-05-07 14:16:30 +02:00
Jef Roosens 356a34ab01
chore: bumped versions 2022-05-06 20:04:48 +02:00
Jef Roosens a3b6680153
cron: filter out repos with wrong architecture 2022-05-06 08:31:59 +02:00
Jef Roosens 8c5652c230
ci: made build upload failable; updated ci for use with PRs 2022-05-05 23:11:18 +02:00
Jef Roosens 5781796e99
doc: added docstrings to all db/git functions 2022-05-03 20:02:05 +02:00
Jef Roosens 204144cee8
refactor: removed commented code & ran formatter 2022-05-03 19:50:14 +02:00
Jef Roosens c818273790
feat: simplified config down to pkg_dir & data_dir
BREAKING: downloads are now stored inside the root of pkg_dir, the log
file is always stored in the root of data_dir
2022-05-03 19:50:14 +02:00
Jef Roosens 7419144f97
feat: removed git.GitRepo type
feat(cli): updated to new GitRepo format
2022-05-03 19:50:14 +02:00
Jef Roosens 0a2488a4df
feat(server): migrated repo patch to sqlite 2022-05-03 19:50:14 +02:00
Jef Roosens 891a206116
feat(server): partially migrated repos API to sqlite 2022-05-03 19:50:14 +02:00
Jef Roosens 03318586ed
feat(cron): added debug log on build_repo failure 2022-05-02 07:50:44 +02:00
Jef Roosens 5cde3d0235
fix(cli): allow empty schedule to clear it 2022-05-01 14:51:52 +02:00
Jef Roosens d313c5b786
feat(cli): added command to show detailed repo info 2022-05-01 13:06:57 +02:00
Jef Roosens 92b8f1fb93
feat(cli): added management of cron schedules 2022-05-01 12:52:05 +02:00
Jef Roosens b1ac39e234
feat: made arch param optional when adding Git repo 2022-05-01 12:44:54 +02:00
Jef Roosens 325dcc27de
fix(cron): made Daemon.run infallible 2022-05-01 09:15:17 +02:00
Jef Roosens cfacf9ed0f
fix(cron): don't show error for empty cron schedule 2022-04-30 20:58:43 +02:00
Jef Roosens f9f440500e
docs: added comment string to each function 2022-04-30 20:22:03 +02:00
Jef Roosens fb65efdfbe
feat(cron): added removal of old builder images 2022-04-30 18:38:24 +02:00
Jef Roosens 369b4458c5
feat(cron): added automatic rebuilding of image; implemented builds 2022-04-30 18:10:33 +02:00
Jef Roosens caee56efd4
feat(cron): improve sleep calculation; prevent invalid rescheduling of
finished builds
2022-04-30 16:08:35 +02:00
Jef Roosens a1c308f29d
feature(daemon): added api renewal & calculated sleep time 2022-04-30 14:19:08 +02:00
Jef Roosens 6f9e1b5f3c
feat(cron): start of working loop 2022-04-30 11:58:49 +02:00
Jef Roosens 7722d5a7e4
fix: replace byte with u8
BREAKING: the V compiler removed the byte type alias in favor of u8.
2022-04-30 11:58:49 +02:00
Jef Roosens c8fc683384
Eh don't feel like writing scheduler rn 2022-04-14 21:20:10 +02:00
Jef Roosens c8af362a4a
Workaround for weird bug 2022-04-14 20:38:14 +02:00
Jef Roosens 78b477fb92
Removed deprecated err.msg & err.code 2022-04-13 22:20:05 +02:00
Jef Roosens f7e1aba30b
Attempt at writing renew_queue function; seems to just stop in the
middle
2022-04-13 16:12:22 +02:00
Jef Roosens ff57d73998
Start of daemon (not working) [CI SKIP] 2022-04-13 15:24:55 +02:00
Jef Roosens 132a7a8ba5
Added int support to env; fixed apparently broken defaults 2022-04-13 14:51:01 +02:00
Jef Roosens bd0c276fd8
Added 'WIP' notice for cron cli 2022-04-12 21:28:44 +02:00
Jef Roosens 5ce431aa4a
Added two more test dates; pleased v vet 2022-04-12 21:23:38 +02:00
Jef Roosens 1116fee3fc
Actually possibly kinda decent cron next func 2022-04-12 21:16:09 +02:00
Jef Roosens e6033f9ab4
Ran vfmt 2022-04-12 20:53:20 +02:00
Jef Roosens eb65bb8a69
These bugs are gonna take a while 2022-04-12 14:22:40 +02:00
Jef Roosens 5c38071998
Merge branch 'dev' into cron 2022-04-12 11:30:01 +02:00
Jef Roosens 65d6aae701
Made sure unix value is calculated 2022-04-12 11:10:49 +02:00
Jef Roosens 2942793f40
Added support for x-y syntax 2022-04-12 10:35:29 +02:00
Jef Roosens f4bb03f488
Tests n bug fixes 2022-04-12 09:48:25 +02:00
Jef Roosens 04e54b8b10
Migrated tests to new bitv-based implementation 2022-04-12 09:00:18 +02:00
Jef Roosens ab4f64b6b6
Failed attempt at x,y,z cron stuff [CI SKIP] 2022-04-11 22:52:06 +02:00
Jef Roosens 0e5f31e649
Added some much-needed documentation 2022-04-11 22:30:22 +02:00
Jef Roosens 135b6c3d7f
Alpha version cron 'next' function 2022-04-11 22:16:31 +02:00
Jef Roosens 3b15066329
Removed unnecessary log output 2022-04-11 09:36:40 +02:00
Jef Roosens e3da3d0d7f
Can't figure out cron algo right now [CI SKIP] 2022-04-10 17:48:15 +02:00
Jef Roosens 799fe2e454
Added some extra tests for parse_range 2022-04-10 16:58:55 +02:00
Jef Roosens f92a20fcf8
Gave all modules own directory; added test CI pipeline 2022-04-10 16:48:37 +02:00
Jef Roosens 6d60ea1538
Started writing cron expression parser [CI SKIP] 2022-04-10 16:17:50 +02:00
Jef Roosens aacadca7a8
Bumped version in cli 2022-04-09 22:13:21 +02:00
Jef Roosens 62bee78955
Updated changelog 2022-04-09 21:17:22 +02:00
Jef Roosens a65207f961
Solved the "removing old packages" problem (I think) 2022-04-09 21:08:54 +02:00
Jef Roosens cec5ecce7f
Each repo now has its own subdir in pkg_dir 2022-04-09 17:41:41 +02:00
Jef Roosens ebe01c2d44
Added route to request desc file; updated builder for new route (fixes #118) 2022-04-09 12:23:54 +02:00
Jef Roosens e890128bda
Ran formatter 2022-04-09 09:50:37 +02:00
Jef Roosens 41ee08045b Start of cron implementation 2022-04-09 09:46:07 +02:00
Jef Roosens 8b2900d7f3
Added option to specify base build image to use 2022-04-08 13:22:29 +02:00
Jef Roosens 0617c9b904
forgot to add part for creating filename 2022-04-07 22:00:38 +02:00
Jef Roosens c3ac00f24d
Added support for xz-compressed packages 2022-04-07 21:29:08 +02:00
Jef Roosens 97f3532204
Ran vfmt 2022-04-07 16:11:05 +02:00
Jef Roosens 3b555efa91
Renamed data_dir to repos_dir 2022-04-07 15:21:27 +02:00
Jef Roosens a5ac0b6956
Fixed dumb mistake in repos cli 2022-04-07 15:12:48 +02:00
Jef Roosens c6d176f426
Added patch support to repos cli 2022-04-07 15:08:27 +02:00
Jef Roosens ab72c800c3
Ran vfmt 2022-04-07 14:50:07 +02:00
Jef Roosens 8ecac2ff28
Updated build system to respect repo arch settings 2022-04-07 14:40:49 +02:00
Jef Roosens 7eab7afa98
Expanded git repos api to store repository to publish to 2022-04-07 14:28:21 +02:00
Jef Roosens 9d8491a77a
Changed behavior for default_arch variable 2022-04-07 13:47:06 +02:00
Jef Roosens 6479071fd7
Merge branch 'dev' into multi-arch-repos-v2 2022-04-07 13:06:37 +02:00
Jef Roosens 78310fa1e4
Builder now uses new Git repos API 2022-04-07 12:10:37 +02:00
Jef Roosens fc1d4480dc
Split Git client code into separate module 2022-04-07 12:07:56 +02:00
Jef Roosens b31b4cbd7a
Pleased vfmt & vet 2022-04-07 11:58:05 +02:00
Jef Roosens 7eb0aa76e1
CLI tool can now work with new repo UUIDs 2022-04-07 11:54:20 +02:00
Jef Roosens a893577ade
Merge branch 'dev' into multi-arch-repos-v2 2022-04-06 23:11:41 +02:00
Jef Roosens f44ce1c17f
Started work on better repos cli 2022-04-06 22:41:19 +02:00
Jef Roosens d7f6c87053
Added some comments 2022-04-06 21:11:38 +02:00
Jef Roosens 6b495b4e6e
Merge branch 'dev' into restful-api 2022-04-06 21:03:52 +02:00
Jef Roosens dff531d866
Some final adjustments before merge 2022-04-06 19:51:54 +02:00
Jef Roosens c656e672e2
Moved config structs to more logical location 2022-04-06 18:20:14 +02:00