Sergio Moura
0d6aa081d8
remove direct db instructions from apiRegisterHandler and statsHandler
2023-09-08 10:58:01 -04:00
Sergio Moura
382f234c09
remove usage_data related queries from the main package into a database package
2023-09-08 10:58:01 -04:00
David Dworken
294bf78d25
Loosen bash options for docker compose
2023-09-07 22:45:24 -07:00
David Dworken
8db87d2a1e
Try customizing the shell for github actions to force it to run as a login shell
2023-09-07 22:37:41 -07:00
David Dworken
3448c3fdf6
Add hishtory export test as a pre-req for testTui/search to ensure that entries are getting properly stored
2023-09-07 22:18:16 -07:00
David Dworken
82d311e3e7
Enable tmate for docker-compose test debugging
2023-09-07 22:12:41 -07:00
David Dworken
519a7ba706
Add OS tag for datadog test export
2023-09-07 22:03:03 -07:00
David Dworken
fe75d67ede
Link colima's docker socket to the default location
2023-09-07 22:02:08 -07:00
David Dworken
c67b6b8c82
Install docker on macos github action so the datadog integration works
2023-09-07 22:00:47 -07:00
David Dworken
e5864c9a16
Fix datadog tags to be passed as key/values
2023-09-07 21:05:30 -07:00
David Dworken
2154d9e707
Split docker compose test into two stages
2023-09-07 18:51:13 -07:00
David Dworken
daa4fa2a00
Fix indentation error in go-test.yml
2023-09-07 18:32:17 -07:00
David Dworken
a13549851c
Add basic datadog integration to monitor test failures in github actions
2023-09-07 18:30:47 -07:00
David Dworken
9dcc80e9a8
Run hishtory from local dir in docker-compose tests since the shell hasn't been restarted so it isn't yet in the path
2023-09-07 18:29:24 -07:00
David Dworken
81655953b8
Improve the docker compose test by having it check that entries are getting recorded and properly synced
2023-09-07 18:15:47 -07:00
David Dworken
4d0b45d975
Merge pull request #100 from lsmoura/sergio/simple-docker
...
Improve docker images by using alpine, simplifying Dockerfiles, and improving the docker-compose example
2023-09-07 18:11:32 -07:00
David Dworken
4bc23c9575
Add additional information about sync status to hishtory status -v
for debugging purposes
2023-09-07 18:10:17 -07:00
David Dworken
c73b10011b
Add TODO for a bug where sorting entries by timestamps in different timezones causes issues
2023-09-07 18:09:30 -07:00
Sergio Moura
a3e6d5a940
docker improvements:
...
* use alpine for small docker images
* use docker compose to wait for the database to be ready
* use a single Dockerfile with parameters to determine the correct GOARCH
* update makefile to account for the new GOARCH parameter on the Dockerfile
* remove native-arch-Dockerfile
2023-09-07 11:06:32 -04:00
David Dworken
aa3c7fc41a
Follow up to #103 : assign err from fmt.Fprintf to _ to ensure go-errcheck doesn't flag it
2023-09-07 07:57:20 -07:00
David Dworken
68e3a813c9
Follow up to #103 : pull context from r.Context() when used rather than at the start of functions
2023-09-07 07:56:03 -07:00
David Dworken
86c0acfbc8
Merge pull request #103 from lsmoura/sergio/handlers
...
Use the existing HTTP request context and modify server to always return a 200 response code even when there is no associated response
2023-09-07 07:48:16 -07:00
Sergio Moura
e6d922709d
fix tests
2023-09-07 09:50:36 -04:00
Sergio Moura
37670230af
Merge remote-tracking branch 'origin/master' into sergio/handlers
2023-09-07 09:33:42 -04:00
Sergio Moura
589b99e500
do not use http.StatusNoContent
2023-09-07 08:34:21 -04:00
David Dworken
2a95553fdf
Fix install.py script for arm7 so installs work on raspberry pis
2023-09-06 21:35:28 -07:00
David Dworken
578113e07c
Revert "use errors.Is
to determine what the error is" since it doesn't work with modernc.org/sqlite which we need in order to avoid using CGO (which we do to enable easy cross-compiles)
...
This reverts commit 1589f77956
. When building with CGO_ENABLED=0, this code will fail to build.
2023-09-06 20:21:00 -07:00
David Dworken
d80afc27d4
Clear out ~/.other-path/ in tests since it wasn't getting cleared, which meant retries were guaranteed to fail for this function
2023-09-06 20:13:36 -07:00
David Dworken
c5bdee9ad5
Merge pull request #102 from lsmoura/sergio/no-ctx-ptr
...
Remove context pointers since there is no need to pass around a pointer to an interface
2023-09-06 19:58:08 -07:00
David Dworken
02d04928d5
Merge pull request #101 from lsmoura/sergio/wrap-errors
...
Wrap errors
2023-09-06 19:56:29 -07:00
Sergio Moura
2b1ba7e3ba
use single context and always return a status to the client
...
api handlers do not need an extra context. http.Request already has a context that is being ignored, so we leverage it and stop creating a new one.
make the endpoints return http.StatusNoContent instead of just closing the connection from the client.
2023-09-06 11:37:14 -04:00
Sergio Moura
ce6484f465
constant context keys
2023-09-05 15:54:47 -04:00
Sergio Moura
a12b0e5f6f
no context pointers
2023-09-05 15:45:17 -04:00
Sergio Moura
1589f77956
use errors.Is
to determine what the error is
2023-09-05 15:37:42 -04:00
Sergio Moura
83ad8c7b1f
wrap errors with %w instead of using %v
2023-09-05 15:08:55 -04:00
David Dworken
efa9ddd6df
Upgrade checkout action
2023-09-04 21:23:22 -07:00
David Dworken
f778c1b2b6
Increase number of retries for all retriable tests on github actions
2023-09-04 21:21:13 -07:00
David Dworken
adbd87a81e
Clear out ~/.hishtory/ between test retries to ensure state is cleared for a fresh run
2023-09-04 21:16:22 -07:00
David Dworken
22abfbc733
Add overall test retries for all tests to make github action tests even more reliable
2023-09-04 19:30:38 -07:00
David Dworken
fd018fa759
Increase number of retries for testTui/search since that method appears to be the flakiest on github actions
2023-09-04 18:57:00 -07:00
David Dworken
af0234797c
Refactor test retrying functions to make the number of retries configurable, and change the default to 3 retries (I'll be tuning this number in a follow up commit)
2023-09-04 18:17:02 -07:00
David Dworken
7b02d6f2a2
Update testTui setup function to ensure that entries are also added in the remote server and not just locally, to ensure they show up post-sync
2023-09-04 18:13:22 -07:00
David Dworken
434acd3738
Increase timeout amount for all github action tests
2023-09-04 18:09:11 -07:00
David Dworken
25eae144d8
Revert all tmpfs related commits, since running in a tmpfs doesn't seem to meaningfully improve test reliability
2023-09-04 18:03:46 -07:00
David Dworken
9b06e6980a
Revert 2ca6c751d0
and instead have BackupAndRestore keep files on the same mount point
2023-09-02 20:09:22 -07:00
David Dworken
2ca6c751d0
Avoid constantly copying the binary back and forth to make tests faster on github actions
2023-09-02 19:51:43 -07:00
David Dworken
6950215427
Increase test timeout to account for copies being slower than renames
2023-09-02 19:47:59 -07:00
David Dworken
c0f33a3456
Swap from os.Rename to a custom implementation that copies files to support cross-device renames, as needed for making ~/.hishtory/ a tmpfs for tests
2023-09-02 18:50:52 -07:00
David Dworken
069705ef41
Move setting of TZ variable into Makefile so it is always set even if doing local development in a different timezone
2023-09-02 18:28:37 -07:00
David Dworken
a2617e970a
Fix tmpfs creation for macos
2023-09-02 18:25:09 -07:00