Commit Graph

776 Commits

Author SHA1 Message Date
Deirdre Connolly c901b42c75 Shorten health check delay from 3 minutes to 1 2020-06-19 03:46:09 -04:00
Deirdre Connolly 05316dee21 Listen on 0.0.0.0, not 127.0.0.1
Turns out when your node faces the internet directly, it has to listen
to those addresses directly.
2020-06-19 03:46:09 -04:00
Deirdre Connolly e6d986a057 Put all ports EXPOSE'd on the same line 2020-06-19 03:46:09 -04:00
Deirdre Connolly c85acde18f Add 'zebrad' tags to instance templates
And add 'one time' commands commented out for managing firewall rules.
2020-06-19 03:46:09 -04:00
Deirdre Connolly f95e7d5595 Add health check 2020-06-19 03:46:09 -04:00
Deirdre Connolly 4aabadc67d Remove zone param 2020-06-19 03:46:09 -04:00
Deirdre Connolly 621a14abe9 Managed group of size 1 seems to reliably work 🙃 2020-06-19 03:46:09 -04:00
Deirdre Connolly c7046eb6f5 Create instance group in one specified zone 2020-06-19 03:46:09 -04:00
Deirdre Connolly 20e0e4bef0 Go back to project default machine type for now 2020-06-19 03:46:09 -04:00
Deirdre Connolly cae9df9169 Remove --base-instance-name, redundant 2020-06-19 03:46:09 -04:00
Deirdre Connolly c50e9a5bee Add region 2020-06-19 03:46:09 -04:00
Deirdre Connolly e2c30e7bd2 Type n1-highmem-8 2020-06-19 03:46:09 -04:00
Deirdre Connolly 14a62bf9bb Remove region; highmem is constrainted 2020-06-19 03:46:09 -04:00
Deirdre Connolly 7742bb4dbd Bump memory on instance template 2020-06-19 03:46:09 -04:00
Deirdre Connolly 30f01c6ff0 Use updated 'zebrad seed' command, move binary to root, no workdir 2020-06-19 03:46:09 -04:00
Deirdre Connolly 29117f7c73 Explicit WORKDIR for runner stage 2020-06-19 03:46:09 -04:00
Deirdre Connolly 84c34b2e48 Use ENTRYPOINT plus CMD for command 2020-06-19 03:46:09 -04:00
Deirdre Connolly e86bbf372b Run 'zebrad seed' instead of 'connect' for now 2020-06-19 03:46:09 -04:00
Deirdre Connolly 65bd05932e Remove cloudbuild.yml, tidy gcloud deploy workflow 2020-06-19 03:46:09 -04:00
Deirdre Connolly 0ccf167125 gcloud workflow to deploy containers via managed instance group
Also default command to 'zebrad connect' until 'start' is fleshed out.
2020-06-19 03:46:09 -04:00
Jane Lusby 9d4ad933aa cleanup 2020-06-19 01:48:56 -04:00
Jane Lusby b67ead665a cleaning 2020-06-19 01:48:56 -04:00
Jane Lusby b727beb778 use better generic idents 2020-06-19 01:48:56 -04:00
Jane Lusby 61489dbf5d fix debug impl 2020-06-19 01:48:56 -04:00
Jane Lusby faf36f5c04 require clone bound inner error type rather than Arcifying it ourselves 2020-06-19 01:48:56 -04:00
Jane Lusby 9db936923b use type inference 2020-06-19 01:48:56 -04:00
Jane Lusby 63ae085945 make return error type for Batch generic 2020-06-19 01:48:56 -04:00
Henry de Valence 6cc1627a5d zebrad: apply serde(default) to config sections
Each subsection has to have `serde(default)` to get the behaviour we want
(delete all fields except the ones that have been changed); otherwise, we can
delete only entire sections.
2020-06-18 17:43:36 -04:00
Henry de Valence 4b8f07ebb2 zebrad: Add reference to config docs. 2020-06-18 17:43:36 -04:00
Alfredo Garcia b8f174ee3a change config module to generate 2020-06-18 12:44:02 -07:00
dependabot[bot] 70948556cf Bump ed25519-zebra from 0.4.0 to 0.4.1
Bumps [ed25519-zebra](https://github.com/ZcashFoundation/ed25519-zebra) from 0.4.0 to 0.4.1.
- [Release notes](https://github.com/ZcashFoundation/ed25519-zebra/releases)
- [Changelog](https://github.com/ZcashFoundation/ed25519-zebra/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ZcashFoundation/ed25519-zebra/compare/0.4.0...0.4.1)

Signed-off-by: dependabot[bot] <support@github.com>
2020-06-18 03:18:56 -07:00
Jane Lusby 7f8a336b69 switch to on_disk state service for start cmd 2020-06-17 23:30:50 -07:00
Jane Lusby df18ac72c5 fix sharedpeererror to propagate tracing context 2020-06-17 14:38:26 -07:00
Jane Lusby fa6b098056
cleanup clippy warnings (#495)
Co-authored-by: Jane Lusby <jane@zfnd.org>
2020-06-16 17:51:50 -07:00
Henry de Valence a40b1a787b Clean up Ed25519 example 2020-06-16 14:35:42 -07:00
Henry de Valence b299fb7162 Remove deprecated pin_project items 2020-06-16 14:35:42 -07:00
Henry de Valence a0e0e2302b Update ed25519-zebra to 0.4 2020-06-16 14:35:42 -07:00
Henry de Valence 34ca9a7ed2 Fix Ed25519Verifier using a patched batch API.
Changing the batch API to have an explicit item type removes the lifetime
problems described in the previous commit.
2020-06-16 14:35:42 -07:00
Henry de Valence 5bcef64514 Add Ed25519 batch verification example test.
This test doesn't compile in a way that reveals a problem with the design.  The
verification service takes a `Request<'msg>` parameterized by the message
lifetime, and returns a future unconstrained by the message lifetime (it hashes
upfront to avoid requiring that `'msg` outlive `call`).  But the `Batch`
middleware has the verification service working on its own task, so how can we
ensure that the message lives long enough to be read by the worker task?
2020-06-16 14:35:42 -07:00
Henry de Valence 8f2ee22708 Add documentation. 2020-06-16 14:35:42 -07:00
Henry de Valence ee26e786f7 tower-batch: initial implementation of batching logic.
The name "Buffer" is changed to "Batch" everywhere, and the worker task is rewritten.

Instead of having Worker implement Future directly, we have a consuming async run() function.
2020-06-16 14:35:42 -07:00
Henry de Valence dcd3f7bb2d tower-batch: copy tower-buffer source code.
There's a lot of functional overlap between the batch design and tower-buffer's
existing internals, so we'll just vendor its source code and modify it.
If/when we upstream it, we can deduplicate common components.
2020-06-16 14:35:42 -07:00
Deirdre Connolly dab3eeca3c Go back to stable clippy-check
The experimental one duplicates outputs X however many github checks run, rust or not.
2020-06-16 17:14:27 -04:00
Jane Lusby 685bdaf2df don't require absense of cancel handles
Prior to this change, we required that services that are canceled do not
have a cancel handle in the `cancel_handles` list, based on the
assumption that the handle must have been removed in the process of
canceling this service.

This doesn't holding up though, because it is currently possible for us
to have the same peer connect to us multiple times, the second connect
removes the cancel handle of the original connect and inserts it's own
cancel handle in its place. In this scenario, when the first service is
polled for readiness it will see that it has been canceled and go to
clean itself up, but when it asserts that it doesn't have a cancel
handle it will see the cancel handle of the second connect event, which
uses the same key as the first connect, and fail its debug assertion.

This change removes that debug assert on the assumption that it is okay
for a peer to connect multiple times consecutively, and that the correct
behavior in that case is to just cancel the first connection and
continue as normal.
2020-06-16 13:42:31 -07:00
Jane Lusby 06fd3b2503 be more explicit with pattern in drain_requests 2020-06-16 12:04:45 -07:00
Jane Lusby b0ecd019b6 apply comments from code review 2020-06-16 12:04:45 -07:00
Jane Lusby d09c339dc5 little more cleaning 2020-06-16 12:04:45 -07:00
Jane Lusby 528fd2b5b1 add an outline of the structure of the node 2020-06-16 12:04:45 -07:00
Jane Lusby fc96a41b18 copy connect command into start command 2020-06-16 12:04:45 -07:00
dependabot[bot] 42fc386bb9 Bump thiserror from 1.0.19 to 1.0.20
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.19 to 1.0.20.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.19...1.0.20)

Signed-off-by: dependabot[bot] <support@github.com>
2020-06-16 09:51:05 -07:00