Commit Graph

94 Commits

Author SHA1 Message Date
Arya e64f3dcddd
add(test): Check that scan task removes keys, unify scan task acceptance tests, and add test to CI (#8308)
* merges scan task tests and checks that the scan task removes keys

* Adds test to CI

* Skip to expected block height and assert that the result is from that height

* Updates test docs and uses zebrad state path for scan cache

* Log "Zcash network: {network}" from scan task commands test
2024-03-04 21:25:50 +00:00
Gustavo Valverde 56fca2c9ee
ref(build)!: use official lightwallted image for CI (#8323) 2024-02-29 15:50:50 +00:00
kai 6c0aa042ad
fix(docker): set log rotation to avoid docker bugs (#8269)
Containers can generate a significant amount of logs,
consuming disk space over time. Here I added configuration
for maximum log file size (max-size) and the number of retained
log files (max-file) in the logging driver options
to control disk usage and prevent log files from
growing indefinitely.
2024-02-20 10:40:38 +00:00
Marek 584bd23718
Update Debian from Bullseye to Bookworm (#8273) 2024-02-14 23:02:06 +00:00
Gustavo Valverde 5feb40e0b8
feat(docker): allow users to use Zebra + LWD with persistent states (#8215)
* feat(docker): allow users to use Zebra + LWD with persistent states

* fix(docs): better documentation and compose execution

* chore(docs): better context box

* chore: do not commit further user changes to the `.env`

This can always be overriden by forcing this pushes if it was intended

* fix(compose): do not add extra volumes and ports

* Apply suggestions from code review

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2024-02-01 21:54:17 +00:00
Gustavo Valverde 18477ecbbe
feat(docker): add `docker-compose` file to run CI locally (#8209)
* ref(docker): Consolidate all tests in the `entrypoint.sh` script

* fix(ci): missing docker argument

* fix(ci): do not blank `ENTRYPOINT_FEATURES` vairable

* fix(docker): do not add `shielded-scan` as part of `TEST_FEATURES`

* chore: remove misleading comment

* feat(docker): add `docker-compose` file to run CI locally

* fix(docs): do not remove previous sections until we have a substitute for users

* fix(docs): revert some changes

* fix: typos

* ref(docker): Consolidate all tests in the `entrypoint.sh` script

* fix(ci): missing docker argument

* fix(ci): do not blank `ENTRYPOINT_FEATURES` vairable

* fix(docker): do not add `shielded-scan` as part of `TEST_FEATURES`

* chore: remove misleading comment

* Update docker/Dockerfile

Co-authored-by: Arya <aryasolhi@gmail.com>

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2024-01-30 19:19:44 +00:00
Gustavo Valverde 184c30e0fc
ref(docker): Consolidate all tests in the `entrypoint.sh` script (#8175)
* ref(docker): Consolidate all tests in the `entrypoint.sh` script

* fix(ci): missing docker argument

* fix(ci): do not blank `ENTRYPOINT_FEATURES` vairable

* fix(docker): do not add `shielded-scan` as part of `TEST_FEATURES`

* chore: remove misleading comment

* Update docker/Dockerfile

Co-authored-by: Arya <aryasolhi@gmail.com>

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2024-01-30 17:47:05 +00:00
Marek 34a3ba8c69
add(scan): Add the `scan_start_where_left` test to CI (#8172)
* Add the `scan_start_where_left` test to CI

* Fix passing of features

Co-authored-by: Arya <aryasolhi@gmail.com>

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2024-01-23 23:07:53 +00:00
teor 5dd33d7265
Add `ldb` RocksDB query tool to the Dockerfile (#8074)
* Add `ldb` RocksDB query tool to the Dockerfile

* Add shielded scanning link to run.md

* Add `ldb` tool instructions to install.md

* Add a rough framework for shielded-scan.md

* Add security warning and feature limitations to shielded-scan.md
2023-12-08 00:14:54 +00:00
teor 71a9865b6c
remove(cmd): Remove `zebrad download` command, because it no longer does anything (#7819)
* Remove the `zebrad download` command

* Reorder command.rs imports

* Remove zcash-params/Dockerfile and the main Dockerfile commands that use it

* Stop building zcash-params Docker images in CI

* Update CHANGELOG for `zebrad download` removal

* Clarify why the image is smaller

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2023-10-25 23:42:27 +00:00
teor ae10eafb57
Update Dockerfile features comment (#7815) 2023-10-25 02:38:34 +00:00
teor 60b447bef2
change(ci): Remove duplicate CI jobs for getblocktemplate-rpcs (#7753)
* Remove duplicate CI docker job and make features consistent

* Remove duplicate OS job

* Rename experimental release build

* Make Rust features into GitHub repository variables

* Remove redundant features in entrypoint.sh

* Remove a dependency on a deleted job

* Fix syntax of array

* Another fix attempt

* Undo some accidental merge overwrites

* Add missing space

* Explain how default is implemented

* Fix missing --features and quoting

* We can fix this later

* Use vars directly in with: blocks

* Use correct features for fake activation heights test
2023-10-22 15:40:10 +00:00
Gustavo Valverde fc0133e886
ref(workflows): consolidate workflows based on their purpose (#7616)
* ref(workflows): consolidate workflows based on their purpose

This also renames the workflows to make their naming more consistent and adding a naming convention

Fixes: #6166
Fixes: #6167

* fix(workflows): use correct name for patch

* fix(workflow): docker unit tests

* fix(release): validation error

Error:
```
Validation Failed: {"resource":"Release","code":"invalid","field":"target_commitish"}
```

Fixes: https://github.com/release-drafter/release-drafter/issues/1125

* fix(workflows): reference correct name

* fix: remove extra workflow

* fix(workflows): use larger runners

* fix(workflow): remove code already in docker unit-test

* fix(unit-tests): start zebra the right way

* fix: typo in patch name

* chore: move job to logical order

* imp(workflows): use better name for gcp tests

* add: missing merge changes

* chore: use better name for find-disks

* fix(ci): use the `entrypoint.sh` to change the Network

* fix(ci): add missing `ZEBRA_CONF_PATH` variable

* fix(ci): allow to build the entrypoint file with testnet

* fix(entrypoint): allow to create a dir and file with a single variable

* refactor: test config file in CI and CD with a reusable workflow

* fix(ci): wrong name used

* fix(ci): use checkout

* fix(ci): improve docker config tests

* fix(ci): use better name for protection rules

* Fix changed workflow file name in docs patch file

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: Arya <aryasolhi@gmail.com>

* fix(cd): depend on file tests

* fix(docs): adapt to new workflow name

* fix: revert test coverage on CD

* chore: reduce diff

* fix(ci): allow using variable images for reusable workflows

* fix(dockerfile): use variables or default for config path and file

* fix(entrypoint): if `$ZEBRA_CONF_PATH` is set, do not override it

* Fix patch job names and remove failure job testnet dependencies

---------

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: Arya <aryasolhi@gmail.com>
2023-10-18 06:16:02 +00:00
Gustavo Valverde fbd6b0f8b3
ref(docker): combine test and prod entrypoints into one (#7660)
* ref(docker): combine test and prod entrypoints into one

This makes the following changes
- Uses `-x` instead of echoing the variables values
- Sets default values where required
- Create a function to list directories
- Create a function to run cargo tests
- Use a better approach to handle different options in the `case` manegement for tests and production
- Replaces all instances of `runtime-entrypoint.sh` with `entrypoint.sh`

* chore: use 2 spaces insted of 4 for indentation

* fix: add missing `test-threads` to `fully_synced_rpc_`

* fix: allow 3 arguments instead of 2 to handle `fully_synced_rpc_` correctly

* chore: remove extra file

* chore: add comments to main parts of the file

* fix(ci): just create the `$ZEBRA_CONF_PATH` if `$ENTRYPOINT_FEATURES` is not set

* fix(entrypoint): just print ${ZEBRA_CONF_PATH} if exists

* fix: missing condition

* ref: handle tests better if `$ENTRYPOINT_FEATURES` is set

* fix(ci): We just want `ZEBRA_CONF_PATH` to be set in the `release` image

* fix(entrypoint): fix the overall `case` logic

* fix(ci): allos to run with custom config in CI image

* fix(ci): more edgecases

* fix: we don't need to find files, but subdirectories

* fix(ci): handle Signal Forwarding and exit codes for `cargo`

* fix(ci): parse `fully_synced_rpc_` test correctly

* chore: add missing cache dir variable for LWD

* fix(entrypoint): handle an arbitrary number of arguments

* fix(entrypoint): handle features list

* fix(entrypoint): typo

* chore: typo
2023-10-11 19:04:45 +00:00
Alfredo Garcia 80da28b3e3
tests(rpc): Add fixed test vectors for `z_getsubtreesbyindex` from zcashd to zebra (#7515)
* add fixed test vectors for `z_getsubtreesbyindex`

* change to snapshots

* add test to docker

* remove assert lines from snapshots

* add more tests

* change test description

* change test name

* run both tests together

* wait for state version update in test

* Run one test at a time to avoid state locking issues

---------

Co-authored-by: teor <teor@riseup.net>
2023-09-20 23:40:21 +00:00
Gustavo Valverde ff60260464
fix(build): reintroduce `RUST_LOG` info (#7404)
Not having the default `info` level causes some tests to not output the needed logs to debug information.
2023-08-29 07:45:26 +00:00
Gustavo Valverde bf6832f53a
fix: remove reference to old `zealous-zebra` project (#7303)
* fix: remove reference to old `zealous-zebra` project

* fix(build): use `edge` tag from our repositories
2023-08-08 10:24:48 +00:00
teor a61d464d4d
Fix Docker git commit handling (#7265) 2023-07-20 11:50:13 +00:00
Gustavo Valverde 3faef29d23
ref(docker): organize `ENV` and `ARG` values based on their usage (#7200)
* ref(docker): use a single variable for test features

* ref(docker): scope `ARG`s and `ENV`s correctly

* fix(docker): use variables as expected on test build

* fix(docker): use correct `$RPC_PORT` validation

* revert(docker): revert to using extra `ENTRYPOINT_FEATURES`

* fix(rust): missing features replacements

* fix(docker): enable backtraces for errors and panics

This is a costly function!!

* ref(docker): remove `$NETWORK` as an `ARG`

* fix typo

* Apply suggestions from code review

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2023-07-17 20:03:17 +00:00
Marek 32dd6180de
add(Docker): Enable miners to set their address for mining rewards. (#7178)
* Enable RPC port in general scenarios

* Add `mining.miner_address` to runtime entrypoint
2023-07-10 10:46:52 +00:00
Marek 776c7c7cd2
Enable RPC port in general scenarios (#7177) 2023-07-10 06:07:32 +00:00
Marek 1014e3c785
Add default RPC port depending on Zcash network (#7162)
The `runtime-entrypoint.sh` uses the `RPC_PORT` env var when the user
specifies the `getblocktemplate-rpc` feature, but this env var is unset
unless the user sets it. This commit sets the default values for
`RPC_PORT` depending on `NETWORK`.
2023-07-06 23:23:47 +00:00
Marek 00dd110265
Use standard syntax for Dockerfile ENV instruction (#7155) 2023-07-05 23:01:22 +00:00
teor aa8489373e
Use release images for zcash-params downloads (#7097) 2023-06-29 20:19:15 +00:00
Gustavo Valverde 8c90f65391
refactor(docker): allow more flexible zebra configuration (#7045)
* fix(docker): use `entrypoint.sh` as default for users

* ref(entrypoint): allow more flexible configurations

This changes allow users to:
- Mount their own configuration file
- Allow for Zebra to be exposed outside the container or not
- Allow the user to turn off sync
- Allow to enable `metrics` and `tracing`, exposing them or not

Having the `-x` option prints variable expasions, so we don't have to echo each value.

* chore(docker): remove unused ARGs from the Dockerfile

ARGs are not available at build time, so we don't require this ARGs as their ENV variables counterparts are being set in the `entrypoint`, at runtime.

* revert: keep old naming

* fix: renaming mistake :)

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* fix(docker): revert some breaking changes

* imp(docker): allow more flexibility with FEATURES config

* chore(docker): remove confusing port on `EXPOSE`

* chore(docker): remove unused command

* fix(docker): handle quotes while building the conf file

---------

Co-authored-by: teor <teor@riseup.net>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2023-06-28 02:36:07 +00:00
teor 62b4fa21a2
change(docker): Replace the zcash-params Dockerfile build with a zebrad binary copy (#7054)
* Replace the zcash-params Dockerfile build with a zebrad binary copy

* Update zcash-params workflow conditions
2023-06-28 02:34:46 +00:00
teor 76a7ff45a9
fix(deps): Replace openssl with rustls in tests and experimental features (#7047)
* Remove openssl dependency and prevent it coming back

* Put the arguments in the right place

* Put comment in the right place

* Add a default-docker feature to zebrad and use it in workflows and Docker files

* Fix a comment typo

* Make sure that Docker production builds don't use openssl

* Rename feature to default-release-binaries
2023-06-26 05:44:19 +00:00
teor 8861de6a7c
fix(docker): Stop resetting the `cargo-chef` cache in the Dockerfile (#6934)
* Fix Dockerfile cache use

* Remove cache-breaking COPY commands

* Use git to only reset files modified by cargo-chef

* Copy .git and sources before cargo chef cook

* Update .dockerignore to include .git

* Don't use .git

* Use rsync instead of git

* Maybe COPY is needed

* Actually copy changed files using rsync

* Actually copy the files using the correct rsync syntax

* Remove ls commands from Dockerfile
2023-06-22 04:16:50 +00:00
teor 912693bf0a
Fix Dockerfile cache use (#6933) 2023-06-14 22:15:51 +00:00
Gustavo Valverde 17d36ffc7a
fix(deploy): allow the container to raise in MIGs (#6893)
* fix(deploy): allow the container to raise in MIGs

* fix(docker): add the `ZEBRA_CACHED_STATE_DIR` as a default `ENV`

This no longer requires the env variable to be defined in other places, unless we're changing the default configuration
2023-06-09 19:16:39 +00:00
teor 89bf875744
fix(deployment): Fix log file path and log colour (#6890)
* Fix CD log file path handling

* Variables don't substitute

* Disable color escapes in Google Cloud logs

* Use correct elif syntax
2023-06-09 07:41:09 +00:00
teor d9add4a01f
change(cd): Deploy testnet instances for every main branch push and release (#6842) 2023-06-08 15:44:30 +10:00
Marek 5421447804
Listen on `0.0.0.0` instead of `127.0.0.1` (#6755)
Binding `127.0.0.1` means that Zebra will accept inbound connections
coming only from the loopback network interface. This is desirable as
long as Zebra runs on a native machine.

When Zebra runs inside a Docker container, incoming connections coming
from the host machine don't come from the container's loopback
interface. In order to be able to connect to Zebra from the host
machine, we can listen on `0.0.0.0` so Zebra accepts inbound connections
coming from any interface. Users then can limit inbound connection to
the loopback of their host by

```bash
docker run -p 127.0.0.1:8232:8232 zfnd/zebra:1.0.0-rc.8
```
2023-05-24 16:56:22 +00:00
teor 937d704e69
change(ci): Generate testnet checkpoints in CI (#6581)
* Split checking for cached state disks into its own workflow

* Fix workflow field order

* Run the top-level workflow when the reusable workflow changes

* And run dependent workflows for pull requests as well

* Remove redundant output names

* Document the existing and new workflow jobs

* Add the network to the "no disk found" message

* Tweak existing docs and descriptions

* Generate Zebra checkpoints on testnet

* Add a full sync testnet entrypoint, and simplify mainnet env vars

* Only run the full testnet sync on the main branch

* Deduplicate and update the zebra-checkpoints docs

* Add instructions for automatic checkpoint generation

* Hide some details in the release checklist

* Update release checkpoint instructions to use CI

* Only update the cache in one job on mainnet
2023-05-03 23:14:22 +00:00
teor 1461c912f9
change(ci): Generate mainnet checkpoints in CI (#6550)
* Add extra test type modes to support zebra-checkpoints

* Add Mainnet and Testnet zebra-checkpoints test harnesses

* Add zebra-checkpoints to test docker images

* Add zebra-checkpoints test entrypoints

* Add Mainnet CI workflow for zebra-checkpoints

* Enable zebra-checkpoints feature in the test image

* Use the same features for (almost) all the docker tests

* Make workflow features match Docker features

* Add a feature note

* Add a zebra-checkpoints test feature to zebrad

* Remove the "no cached state" testnet code

* Log a startup message to standard error when launching zebra-checkpoints

* Rename tests to avoid partial name conflicts

* Fix log formatting

* Add sentry feature to experimental docker image build

* Explain what ENTRYPOINT_FEATURES is used for

* Use the correct zebra-checkpoints path

* Silence zebrad logs while generating checkpoints

* Fix zebra-checkpoints log handling

* Re-enable waiting for zebrad to fully sync

* Add documentation for how to run these tests individually

* Start generating checkpoints from the last compiled-in checkpoint

* Fix clippy lints

* Revert changes to TestType

* Wait for all the checkpoints before finishing

* Add more stderr debugging to zebra-checkpoints

* Fix an outdated module comment

* Add a workaround for zebra-checkpoints launch/run issues

* Use temp dir and log what it is

* Log extra metadata about the zebra-checkpoints binary

* Add note about unstable feature -Z bindeps

* Temporarily make the test run faster and with debug info

* Log the original test command name when showing stdout and stderr

* Try zebra-checkpoints in the system path first, then the cargo path

* Fix slow thread close bug in dual process test harness

* If the logs are shown, don't say they are hidden

* Run `zebra-checkpoints --help` to work out what's going on in CI

* Build `zebra-utils` binaries for `zebrad` integration tests

* Revert temporary debugging changes

* Revert changes that were moved to another PR
2023-04-27 04:39:43 +00:00
Arya 671420bd84
feat(release): create Docker hub binary with mining enabled on release (#6228)
* Duplicates Dockerfile

* updates mining-testnet Dockerfile with getblocktemplate-rpcs feature, Testnet by default, and an RPC port

* renames mining-testnet.Dockerfile and adds workflow for publishing images on release

* replaces space-seperated features with commas

* Adds .experimental tag suffix, removes new dockerfile, makes lightwalletd tests conditional

* updates build-args to pass on features directly

* adds "lightwalletd-grpc-tests" as default test_features in build-docker-image

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* adds tag suffix to cache keys

---------

Co-authored-by: teor <teor@riseup.net>
2023-03-24 07:10:40 +00:00
Gustavo Valverde 85bcbbdf16
ci: add a test to check that the Docker image config works (#5968)
* ci: add a test to validate Zebra's config file and path

* fix: use `ZEBRA_CONF_PATH` as single variable locating the conf

* fix: do not remove the containers

* fix: use extended regex

* fix: use different steps to validate the conf tests

* fix: do not specify a default CMD for running Docker in test builds

* fix: use actual starting commands for entrypoint

* fix: do not add cargo twice if cargo is in $1

* fix: allow to run `zebrad` in the `tests` stage of Dockerfile

* fix: new entrypoint does not allow an empty CMD

* fix: do not duplicate the `zebrad` command

* fix: segregate configuration jobs

* refactor(entrypoint): handle better parameters conditions

* fix: make `zebrad` an executable command in `tests` stage

* Show the commands that are being executed in the new docker test

* Show full logs without tee or grep

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* fix: use the actual path inside docker

* fix: use `grep` with exit code

If the container is logging to stderr, piping works only for stdout, so we're adding `2>&1`

* fix: use `grep -q` to get an exit code

* fix: fail if any error is detected

* fix: fail if this test takes more than 5 minutes

* fix: update patch workflows

* feat: test Dockerfile `runtime` config

* fix: depend on the configuration test to continue

Co-authored-by: teor <teor@riseup.net>
2023-01-23 06:41:59 +00:00
teor afdb3a7013
change(ci): add acceptance test for getblocktemplate RPC in CI, and fix RPC bugs (#5761)
* Re-apply: add acceptance test for getblocktemplate method in CI (#5653)

Revert "Revert "change(tests): add acceptance test for getblocktemplate method in CI (#5653)" (#5672)"

This reverts commit 6446e0ec1b.

* Fix incorrect MAX_CONTEXT_BLOCKS assertion in state

* Actually negate the miner fee for the RPC output

* Try the RPC again after waiting for transactions to verify

* Log before the test waits for the mempool to verify transactions

* Use the new ssh key secrets in CI
2022-12-01 19:39:01 +00:00
teor 6446e0ec1b
Revert "change(tests): add acceptance test for getblocktemplate method in CI (#5653)" (#5672)
This reverts commit bd54a2f40e.
2022-11-21 10:44:11 +10:00
Arya bd54a2f40e
change(tests): add acceptance test for getblocktemplate method in CI (#5653)
* adds test for getblocktemplate rpc method

* adds the new test to CI

* adds a couple logs

* Adds example for running the test in acceptance.rs

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-11-18 11:49:54 +00:00
Arya c447b03223
fix(tests): add submitblock test to CI, and avoid copying the cached state directory in other tests (#5589)
* updates mod docs for tests that use future blocks

* updates submitblock test to use TestType methods

* prunes redundant code

* adds check_sync_logs_until

* adds assertion for needs cached state & rpc server

* updates get_raw_future_blocks fn with rpc calls

* updates to get_raw_future_blocks fn and submit_block test

* Rename LightwalletdTestType to TestType

* moves TestType and random_known_rpc_port_config to test_type.rs and config.rs

* moves get_raw_future_blocks to cached_state.rs

* updates ci workflows to include submit block test

* adds get_future_blocks fn and uses it in load_transactions_from_future_blocks

* updates CI docker

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

* Applies suggestions from code review

* Updates misnamed closure param

* updates mod docs for test_type.rs

Co-authored-by: teor <teor@riseup.net>
2022-11-10 03:40:21 +00:00
Gustavo Valverde bbbd56d7ce
fix(build): restore Rust stable in builds and beta for CI (#5515)
* Revert "fix(ci): Build zebrad with Rust 1.63 to avoid Zcash parameter download hangs (#5251)"

This reverts commit 9cb6c559f4.

* Revert "Require Rust 1.63 in the README (#5359)"

This reverts commit ee0edef857.

* Revert "Revert "ci(build): re-enable Rust beta tests in ubuntu (#5024)" (#5090)"

This reverts commit 579d6be4e9.
2022-11-01 10:51:29 +10:00
teor 469c471d92
Use correct TOML syntax in Docker zebrad.toml (#5320) 2022-10-04 02:51:43 +00:00
teor f71bb74951
fix(docker): Make default command work in docker images, disable optional listener ports (#5313)
* Disable optional listener ports so the default config is secure

* Fix Zebra config file path in Dockerfile
2022-10-03 17:50:27 +00:00
teor 9cb6c559f4
fix(ci): Build zebrad with Rust 1.63 to avoid Zcash parameter download hangs (#5251)
* Try running coverage with Rust 1.63

* Run GitHub Actions tests with Rust 1.63

* Change from stable to 1.63 in the patch file

* Use Rust 1.63 to download Zcash parameters

* Use Rust 1.63 to build Docker zebrad images

* Make Rust 1.63 a supported platform, and make stable temporarily unsupported
2022-09-26 12:37:23 +00:00
Gustavo Valverde 726f732640
fix(build): a path must exist before creating a file in it (#5177)
* fix(build): a path must exist before creating a file in it

Other directories in the Dockerfile were automatically created with the `WORKDIR` and  `COPY` commands. In this case it has to be explicitly created

* fix(build): use a variable for the conf path and another for the file

Add some pending actions to consider, for a better user experience.

* fix(runtime): run with the correct path
2022-09-15 22:26:32 +00:00
Gustavo Valverde e48e8e5572
chore(build): allow a custom `zebrad` config file path (#5163)
* chore(build): allow a custom `zebrad` config file path

Previous behavior:
The zebrad config file was hardcoded into the Dockerfile, allowing to
change specific values, but not the config file as a whole

Expected behavior:
Allow the user to specify the config file themselves, for example with
the nginx image you can pass -v /host/path/nginx.conf:/etc/nginx/nginx.conf:ro

Solution:
Use and ARG, with a default value, to allow the user to change the location
of the zebrad configuration file. This also sets the location under /etc,
honoring The Filesystem Hierarchy Standard (FHS) for linux

* Apply suggestions from code review

Co-authored-by: teor <teor@riseup.net>

Co-authored-by: teor <teor@riseup.net>
2022-09-15 09:05:24 +00:00
teor f804ff6238
fix(docker): Copy lightwalletd from the correct path during Docker builds (#4886)
* Copy lightwalletd from the updated Docker path

* Try the build path instead

* Fix the build stage entrypoint path
2022-08-04 06:29:49 +00:00
Gustavo Valverde 6ff0a42318
refactor(build): use FHS for deployments and artifacts (#4786)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2022-08-03 23:43:32 +00:00
teor a9fcde3ebf
1. add(ci): Add a Zebra cached state update test, fix lightwalletd tests (#4813)
* Fix clippy::let_and_return

* Increase lightwalletd test timeouts for zebrad slowness

* Add a `zebrad_update_sync()` test, that update syncs Zebra without lightwalletd

* Run the zebrad-update-sync test in CI

* Add extra zebrad time to workaround lightwalletd bugs
2022-07-26 08:13:25 +10:00