Commit Graph

91 Commits

Author SHA1 Message Date
Abdul Rabbani
6a049d8f99 Dont run generic on schedule 2022-06-09 17:24:30 -04:00
Abdul Rabbani
4dc67c1f22 Use single quote cron 2022-06-09 17:19:16 -04:00
Abdul Rabbani
52850c5af2 Update system-tests.yml 2022-06-09 17:17:37 -04:00
Abdul Rabbani
6577eece2f Update system-tests.yml 2022-06-09 16:38:33 -04:00
Abdul Rabbani
7a33e2b9fd Update system-tests.yml 2022-06-09 16:36:35 -04:00
Abdul Rabbani
fb8b6e096f Update system-tests.yml 2022-06-09 16:29:15 -04:00
Abdul Rabbani
7e1a110725 Update system-tests.yml 2022-06-09 16:26:25 -04:00
Abdul Rabbani
a3dcfe00c0 Update system-tests.yml 2022-06-09 16:21:14 -04:00
Abdul Rabbani
d8742a4a9c Try forcing /bin/bash for docker-compose 2022-06-09 16:17:49 -04:00
Abdul Rabbani
4e694d4c1f rename ethcl --> eth-beacon 2022-06-09 16:12:08 -04:00
Abdul Rabbani
66fc40a37a Update and test the shutdown 2022-06-09 14:53:35 -04:00
Abdul Rabbani
fd449d368e Update test err 2022-06-09 13:10:51 -04:00
Abdul Rabbani
df9d37cc2a Update system-tests.yml 2022-06-09 13:08:10 -04:00
Abdul Rabbani
7690575f8e Update system-tests.yml 2022-06-09 13:06:17 -04:00
Abdul Rabbani
f1c4cfd9e5 Remove volumes at the end. 2022-06-09 12:27:17 -04:00
Abdul Rabbani
c8f8fe39d8 Try using the absolute path 2022-06-09 12:19:26 -04:00
Abdul Rabbani
8693a4f392 update path 2022-06-09 12:14:32 -04:00
Abdul Rabbani
e06dbc18d8 Add required secrets 2022-06-09 12:08:18 -04:00
Abdul Rabbani
7411a27188 Add secrets 2022-06-09 12:06:02 -04:00
Abdul Rabbani
eab59cebc4 Update workflow calls 2022-06-09 12:03:52 -04:00
Abdul Rabbani
3bc224ee83 Include system tests 2022-06-09 11:56:24 -04:00
Abdul Rabbani
3a61622e01 Add ordered testing 2022-06-09 08:33:34 -04:00
Abdul Rabbani
9d8f5bc6eb Ensure we release locks properly 2022-06-08 11:54:29 -04:00
Abdul Rabbani
d9d20ed922 Update Max Retry
Genesis is not working as expected.
2022-06-08 11:38:42 -04:00
Abdul Rabbani
e0f7adb2bc Update correct values 2022-06-08 11:20:17 -04:00
Abdul Rabbani
ebc12bd8a5 Update MhKeys in test 2022-06-08 11:14:01 -04:00
Abdul Rabbani
b36e2e545a Merge branch 'feature/48-test-historical' of github.com:vulcanize/ipld-ethcl-indexer into feature/48-test-historical 2022-06-08 10:26:30 -04:00
Abdul Rabbani
60855d2823 Tests + Significant Refactor
The code for historical processing has been significantly refactored to use a context to signify a shutdown.

There have also been many tests added for historical and knownGaps processing.
2022-06-08 10:26:27 -04:00
Abdul Rabbani
31e1ef0082 Set starting slot and improve error gap capturing 2022-06-06 15:52:51 -04:00
Abdul Rabbani
d674df1ef0
Merge pull request #55 from vulcanize/ian/update_multihash_prefix
update multihash prefix
2022-06-06 15:52:12 -04:00
i-norden
87aa87cb51 update multihash prefix 2022-06-06 13:10:09 -05:00
Abdul Rabbani
8cb7c66908 Set starting slot and improve error gap capturing 2022-06-06 12:12:31 -04:00
Abdul Rabbani
4d7781e2b0
Use a transaction for writing, knowngaps, and reorgs (#53)
* Use a transaction for writing, knowngaps, and reorgs

* Checkpoint - Check the DB before writing

* Ensure an error exists when writing a transaction to knowngaps

* Update unneccesary parameter
2022-06-06 09:02:43 -04:00
Abdul Rabbani
e3b4fad3c7
Capture the unique identifier everywhere its needed. (#51)
* Capture the unique identifier everywhere its needed.

* Handle graceful shutdown for historical processing

* Update flags and minor shutdown updates

* Update checkout statement for historic

* update cicd pipeline

* Add secret

* Use deploy-key instead of personal PAT

* update variables
2022-06-03 12:47:13 -04:00
Abdul Rabbani
9160dded11
Add Prometheus Metrics (#49)
* Add Prometheus Metrics

* Fix Prometheus duplicate error

* Handle duplicate registrations
2022-05-25 10:19:29 -04:00
Abdul Rabbani
347984a547
Feature/44 read write historic slots (#46)
* Update boot to set processing type.

* Handle entries from the historic_process table.

* Update on-pr.yml

* Fix head processing Error

* Update names and debug

* Seperate checking for new entries and locking them

* Application can process historic and known gaps

Untested

* Handle genesis

* Update remove entry for knownGaps, viper

* Disregard unused code from linter
2022-05-24 16:18:55 -04:00
Abdul Rabbani
041276da81
Update the boot process (#45)
* Update the boot process

* Update the CI/CD reference for stack-orchestrator
2022-05-19 09:46:38 -04:00
Abdul Rabbani
891f4c7ef3 Update Vulcanize License in a .go files 2022-05-18 12:12:54 -04:00
Abdul Rabbani
dd6be9ccba Debug docker issues. (#39) 2022-05-17 16:45:40 -04:00
Abdul Rabbani
de38c531d5 Test the application for v1 release. (#37)
* Allow the application to process events in parallel

there is a main thread that tracks incoming messages, but then it spawns goroutines to actually process each slot so that they can happen concurrently.

* Control knownGaps in existing test

* Use Interfaces for different fork version

Use interfaces for `SignedBeaconBlock` and `BeaconState`, this allows the application to determine the correct forked struct.

In the test we also use a switch condition to properly serve the correct mimics.

* Utilize new ipld-ethcl-db repository

* Add final tests

* Update timeout and secret

* Update token

* Update docker compose

* Update expected inserts
2022-05-17 16:45:40 -04:00
Abdul Rabbani
b79c57d5ac Build and Push Image to Docker Registry on Publish or Edit 2022-05-17 16:45:40 -04:00
Ian Norden
7a242a4c71 multihash key gen func (#36)
* multihash key gen func

* go mod updates

* Added test to ensure the application shuts down gracefully or within a timeframe.

* Disregard race condition since its with the test not the application itself

* Capture the head block in the DB entirely. (#27)

* -- Intermediary Commit --

Just want to commit my code over the weekend, in case I spill coffee on my workstation.

* Create DB models ready for write.

* Handle SSE events

* Update ref for stack-orchestrator

* Use env in one place only.

* Boot Application on PR

* Update syntax

* Update syntax

* Correct command

* Use bash instead of sh

* Use until instead of while

* Make linter happy and check sse subscription err

* Handle Reorgs - Untested

* Feature/22 test handling incoming events - Intermediary Commit (#28)

* Checkpoint before the weekend

* Update location for SetupPostgresDB

* Feature/22 test handling incoming events (#30)

* Checkpoint before the weekend

* Update location for SetupPostgresDB

* Include first functioning tests for processing head

* Fix gitignore

* Test CaptureHead | Add Metrics | Handle Test Race Conditions

This Commit allows us to:

* Test the `CaptureHead` function.
* Test parsing a single Head message.
* Test a Reorg condition.
* Add Metrics. This is primarily used for testing but can have future use cases.
* Rearrange the test due to race conditions introduced by reusing a variable. `BeforeEach` can't be used to update `BC`.

* Update and finalize testing at this stage

* Update code and CI/CD

* Fix lint errors

* Update CICD and fail when file not found.

* Update test to have failed as expected.

* Remove Test file

* Add KnownGaps Errors (#33)

* Handle Skipped Slots (#34)

* Ensure that the node is synced at boot time

* Update test + add logic for checking skipped slots

* Update boot check

* Add skip_sync to config.

* Update a test so it fails

* go mod updates

* Integrate MHKey into existing code base.

* Update go.mod and go.sum

* Utilize the MHkey

* Stop tests from running forever on failure.

* Use sszRoot instead of sszObj for MhKey

* Update entrypoint script

* Update config parameter

Co-authored-by: Abdul Rabbani <abdulrabbani00@gmail.com>
Co-authored-by: Abdul Rabbani <58230246+abdulrabbani00@users.noreply.github.com>
2022-05-17 16:45:40 -04:00
Abdul Rabbani
a31c9226ec Handle Skipped Slots (#34)
* Ensure that the node is synced at boot time

* Update test + add logic for checking skipped slots

* Update boot check

* Add skip_sync to config.

* Update a test so it fails
2022-05-17 16:45:40 -04:00
Abdul Rabbani
12675f85c2 Add KnownGaps Errors (#33) 2022-05-17 16:45:40 -04:00
Abdul Rabbani
78089d3fd8 Remove Test file 2022-05-17 16:45:40 -04:00
Abdul Rabbani
6123fa40e8 Feature/22 test handling incoming events (#30)
* Checkpoint before the weekend

* Update location for SetupPostgresDB

* Include first functioning tests for processing head

* Fix gitignore

* Test CaptureHead | Add Metrics | Handle Test Race Conditions

This Commit allows us to:

* Test the `CaptureHead` function.
* Test parsing a single Head message.
* Test a Reorg condition.
* Add Metrics. This is primarily used for testing but can have future use cases.
* Rearrange the test due to race conditions introduced by reusing a variable. `BeforeEach` can't be used to update `BC`.

* Update and finalize testing at this stage

* Update code and CI/CD

* Fix lint errors

* Update CICD and fail when file not found.

* Update test to have failed as expected.
2022-05-17 16:45:40 -04:00
Abdul Rabbani
361dbd73a0 Feature/22 test handling incoming events - Intermediary Commit (#28)
* Checkpoint before the weekend

* Update location for SetupPostgresDB
2022-05-17 16:45:40 -04:00
Abdul Rabbani
d13144ca90 Capture the head block in the DB entirely. (#27)
* -- Intermediary Commit --

Just want to commit my code over the weekend, in case I spill coffee on my workstation.

* Create DB models ready for write.

* Handle SSE events

* Update ref for stack-orchestrator

* Use env in one place only.

* Boot Application on PR

* Update syntax

* Update syntax

* Correct command

* Use bash instead of sh

* Use until instead of while

* Make linter happy and check sse subscription err

* Handle Reorgs - Untested
2022-05-17 16:45:40 -04:00
Abdul Rabbani
71348321ae Disregard race condition since its with the test not the application itself 2022-05-17 16:45:40 -04:00
Abdul Rabbani
6215f7e66f Added test to ensure the application shuts down gracefully or within a timeframe. 2022-05-17 16:45:40 -04:00