Commit Graph

668 Commits

Author SHA1 Message Date
Riordan Panayides dbb1c314da Add ci-docker-heroku-deploy.yml 2022-08-08 20:25:56 +01:00
Riordan Panayides e97e8a085a Remove ci-docker-heroku-deploy.yml 2022-08-08 20:24:24 +01:00
Riordan Panayides a53c061d1f Superficial change to force workflow parsing 2022-08-08 20:20:17 +01:00
Riordan Panayides 49ee6416b1 Trigger Build 2022-08-08 20:17:40 +01:00
Riordan Panayides 4024e76bd0 Fix YAML 2022-08-08 20:15:14 +01:00
Riordan Panayides 442b6a6ff0 Fix yaml 2022-08-08 20:14:07 +01:00
Riordan Panayides 2353e94d12 Add heroku deploy workflow 2022-08-08 20:06:27 +01:00
Riordan Panayides bddb0f363e Add bin dockerfiles to subdirectories 2022-08-05 17:50:43 +01:00
Riordan Panayides 74e05d41f8 Fix registry path 2022-08-05 15:51:31 +01:00
Riordan Panayides 4050d0ed4e Fix registry path 2022-08-05 15:50:32 +01:00
Riordan Panayides 69094f4286 Try a different registry path 2022-08-05 15:03:42 +01:00
Riordan Panayides f452b08462 Login to Google Cloud and generate oauth token 2022-08-05 13:49:14 +01:00
Riordan Panayides a7e58ea99d Use artifact repository 2022-08-04 17:05:52 +01:00
Riordan Panayides 74e8827e05 Log debug 2022-08-04 16:59:40 +01:00
Riordan Panayides b364d04447 Try registry buildcache 2022-08-04 16:08:48 +01:00
Riordan Panayides 8a8d8a456c Try different caching action 2022-08-04 15:24:25 +01:00
Riordan Panayides 6d582ba937 Try different cache action 2022-08-04 14:20:47 +01:00
Riordan Panayides 8ab083b862 Add dockerfile for base image, keeper deployment 2022-08-02 21:06:13 +01:00
Riordan Panayides ea7c7c7060 Fix tags 2022-08-02 20:16:48 +01:00
Riordan Panayides 40cfce432c Fix tag names 2022-08-02 19:54:59 +01:00
Riordan Panayides 6698841a7d Use caching in docker build 2022-08-02 19:52:07 +01:00
Riordan Panayides 5a722d2bc1 Pull submodules 2022-08-02 17:59:59 +01:00
Riordan Panayides 6c2d0bb957 Fix typo 2022-08-02 16:51:25 +01:00
Riordan Panayides e353d41add Add build step to dockerfile, publish to gcr action, heroku procfile for keeper 2022-08-02 16:46:22 +01:00
microwavedcola1 14cd9ae9b7 remove stray heroku experiments
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-07-29 11:16:08 +02:00
microwavedcola1 3fcb9000a1 wip docker
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-07-29 11:15:26 +02:00
microwavedcola1 6a95295eba ts and keeper improvements
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-07-27 08:55:19 +02:00
microwavedcola1 f2bfb951fd
anchor as submodule (#121)
* anchor as submodule
* Use anchor submodule as dependency

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>
2022-07-27 08:52:41 +02:00
microwavedcola1 2fb92abad8
Mc/ts upgrade (#122)
* upgrade anchor fork, supports anchor idl close now

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* upgrade ts deps

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-07-26 17:14:07 +02:00
microwavedcola1 0b2e1e6e6c
Mc/realloc 4 (#119)
Realloc + dynamic mango account

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
Co-authored-by: Christian Kamm <mail@ckamm.de>
2022-07-25 16:07:53 +02:00
Christian Kamm 46b6bce14b IDL: Remove NodeRef and NodeRefMut enums
Anchor cannot load idls that include enums with tuple variants.
2022-07-22 08:35:30 +02:00
Christian Kamm 7c4d052979 ChainData: Fix returning stale data
1. Only the CreatedBank message contains the parent and often that was
   not the first message received. That confused the data structure,
   because it then considered a chain of slots alive that had only a
   single slot in it.
   Fixed by tracking as "best_chain" only the top slot that actually has
   a parent set.
2. OptimisticallyConfirm messages sometimes arrive before CreateBank,
   which would change the slot status from Confirmed back to Processed.
   Nothing dependend on confirmed vs processed, but it's been fixed
   anyway by making slot status only increase confirmation status.
3. Accept account writes for slots newer than the current best_chain
   head as alive.
2022-07-21 12:33:03 +02:00
Christian Kamm ea85824ccb Remove code copied from solana-address-lookup-table-program
This removes the ProgramInstruction enum from the IDL, which was unused
and could break clients.
2022-07-21 06:49:04 +02:00
microwavedcola1 39686d3d0f CU of test has increased, accomodate only for this test
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-07-20 15:51:10 +02:00
microwavedcola1 3eae2cdc34 upgrade anchor to latest, upgrade solana dependencies to match what latest anchor uses
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2022-07-20 15:51:10 +02:00
Christian Kamm f8d4b2443c Liq: Don't log common+expected simulation errors 2022-07-20 09:47:37 +02:00
Christian Kamm 2bff4bba3d Drop being_liquidated after bankruptcy resolves 2022-07-20 09:47:37 +02:00
Christian Kamm b5d3e2164c Make Serum3Info and PerpInfo pub again
Accidentally reverted in bad merge
2022-07-20 09:47:37 +02:00
Christian Kamm 999bb4b597 Liq/Keeper: allow --dotenv=<file> arg
Makes it easier to run the tools with different configs, without either
passing everything explicitly or making separate directories for .env
files.
2022-07-19 14:57:25 +02:00
Christian Kamm a82bab4ed7 Better error when vault doesn't have enough funds
The spl_token transfer cpi instruction just says "error code: 1", which
is too opaque.
2022-07-19 13:43:05 +02:00
Christian Kamm 7e0e6e4506 Liq: use clap+dotenv instead of toml config file 2022-07-19 11:35:59 +02:00
Christian Kamm ca8b900913 Liq: explain re-fetching reason 2022-07-18 18:18:57 +02:00
Christian Kamm 348d8cfcd8 Liq/Client: Various improvements
- Abstract away account fetching, so it can be done via RPC or from a
  websocket stream (or a geyser plugin) that populates a ChainData
  instance.

- Separate out information about tokens, markets into MangoGroupContext.

- Separate all gPA calls into functions in a new file

- The liquidator re-fetches critical accounts via RPC before
  liquidation. Unfortunately the websocket stream seems slower :/

- Don't re-implement health account derivation in the liquidator.
  Instead reuse the existing code from the client.

- More smaller stuff.
2022-07-18 18:18:57 +02:00
Christian Kamm eee7ed097b fix getEquivalentNativeUsdcPosition for null TokenPosition 2022-07-18 18:18:57 +02:00
Christian Kamm b44f628c01 LiqTokenWithToken: More error contexts 2022-07-18 18:18:57 +02:00
Christian Kamm 1be22faf0d Liq: Fix up max_swap call when liquidator didn't use tokens yet 2022-07-18 18:18:57 +02:00
Christian Kamm 199819f9c6 Rust client: Print simulation log messages 2022-07-18 18:18:57 +02:00
Christian Kamm 45f3e26386 Improve scripts for making a liquidation candidate 2022-07-18 18:18:57 +02:00
Christian Kamm 50f9eb6913 Liq: trigger a full health check after the snapshot 2022-07-18 18:18:57 +02:00
Christian Kamm 4e87c07a9a Prefer "group" argument to keeper/liquidator
The admin keypair doesn't need to be passed in. It's only convenient for
testing.
2022-07-18 18:18:57 +02:00