Commit Graph

179 Commits

Author SHA1 Message Date
Christian Decker 6bf97ac259 ci: Split out the fuzz testing
Tacking the fuzz testing onto the PR testing not a good idea. It
causes completely unrelated tests to fail, and doesn't guarantee it
will find newly introduced ones. Running daily is likely better.

Changelog-None No user visible change
2024-02-01 19:46:57 +01:00
Vincenzo Palazzo 12a285f5dd ci: fix the CI configuration for rust release
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2024-01-31 12:09:01 +01:00
Rusty Russell 1093b43ccf lnprototest: remove.
At this point it needs a complete rewrite to be useful, and it's just
constraining development.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2024-01-31 14:10:51 +10:30
Christian Decker d8f410f2e5 gci: Add build step to PyPI publication 2023-12-29 00:35:45 +01:00
Christian Decker c7da72cd39 gci: Upload to test.pypi.org only from `master`
Turns out that if we publish from PRs we may end up with versioning
collisions, causing errors. This publishes only from `master` where we
have a linearizable history, and should therefore get unique versions.

Changelog-None
2023-12-15 10:01:57 +10:30
Christian Decker b6c486c2ba gha: Add `--skip-existing` option to publish to testpypi
Changelog-None
2023-12-14 13:03:55 +01:00
Christian Decker be52f2f21e ci: Force flaky of tests
We are tracking the flakiness of tests [here][1], so no need to suffer
through fail-looping CI while trying to fix a PR or get it merged.

Changelog-None

[1]: http://35.239.136.52:3170/run
2023-12-04 20:22:04 +01:00
Christian Decker a96e64ed56 chore(CI): Add manually triggerable PyPI publication
We used to run the publication on each PR, which could cause conflicts
due to the naming convention being based on the commit history length,
and multiple PRs potentially hitting the same name.

Adding a `workflow_dispatch` trigger allows us to still test the
workflow in PRs but only do so manually (when we're watching anyway).

Changelog-None
2023-12-04 20:22:04 +01:00
Christian Decker 66bf0a7bbb chore(CI): Increase the timeout to publish to test.pypi.org 2023-12-04 20:22:04 +01:00
Ken Sedgwick 88a536f3eb Possible fix for CI_SERVER issue in VLS CI
Code using `CI_SERVER` was added recently to track something.  It
attempts to short-cut if `CI_SERVER` is not set, but on gitlab it
is set to `yes`.  https://docs.gitlab.com/ee/ci/variables/

Instead use `CI_SERVER_URL`, maybe that is what is intended?
2023-11-02 13:53:03 +01:00
Christian Decker b6e2624970 gci: Fix up the crates.io publishing job 2023-10-26 15:51:07 +02:00
fanquake a13cbcf16f ci: use Bitcoin Core 25.1 2023-10-24 08:34:39 +10:30
Matt Morehouse 74b8fff3d4 github: re-enable ASan and UBSan for check-fuzz
ASan and UBSan were disabled by
364de00947, which has already prevented
multiple bugs from being discovered prior to merging.
2023-10-18 09:53:22 +10:30
Christian Decker 452b45f675 lnproto: Remove unused report upload on GH Actions 2023-09-29 16:00:05 +09:30
ShahanaFarooqui 4301030a12 plugins/clnrest: Updated clnrest install command in Docker images and CI
We do not need explicit clnrest dependencies installation for clnrest
because `poetry install` will also install clnrest libraries.
2023-09-29 16:00:05 +09:30
Vincenzo Palazzo 57ead06e3c ci: autopublish rust crates on tag event
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2023-09-28 14:00:59 +02:00
Christian Decker 9a51418e82 gci: Update apt before installing
A stale apt-get cache could otherwise cause a test failure.
2023-09-26 19:21:05 +02:00
Christian Decker d82d561593 gci: Print envvars and configuration when testing 2023-09-26 19:21:05 +02:00
Christian Decker 36494b6a51 gci: Only install one of elementsd or bitcoind
We were accidentally testing against `bitcoind` rather than
`elementsd` which meant we believed everything was find, when in
reality some tests broke. By only installing the required daemon we
ensure that such a mixup causes a CI failure.
2023-09-26 19:21:05 +02:00
Christian Decker 8ac63daf71 ci: Unbreak the liquid-regtest run on Github Actions 2023-09-26 19:21:05 +02:00
Rusty Russell 3d3bf87b34 build: remove all trace of DEVELOPER.
If you previously configured with `--enable-developer` we turn that into `--enable-debugbuild`.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Changelog-Removed: build: `--enable-developer` arg to configure (and DEVELOPER variables): use `./configure --enable-debugbuild` and `developer` setting at runtime.
2023-09-21 20:08:24 +09:30
Christian Decker 305579305d gci: Update apt cache before installing
CI was broken due to an outdated repository cache, pointing to a
yanked file.

Changelog-None
2023-09-15 14:43:19 +02:00
Christian Decker cda06db367 gci: Fix wrong guard on rebase step 2023-09-14 10:30:40 +09:30
Christian Decker 4ff513da55 ci: Add a server to track flakyness in pytest tests 2023-09-14 10:30:40 +09:30
Christian Decker 62fdfe7f0b gci: Do not try to rebase if we're on master already
Changelog-None
2023-08-27 10:51:12 +09:30
Rusty Russell 40bb22b9ed CI: add clnrest requirements so --help lists rest params.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-08-18 20:29:34 +09:30
Rusty Russell 88448a7892 CI: add -O3 to one of the builds, to test for errors.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-08-15 06:21:23 +09:30
Rusty Russell 32b224f6db Pypi: publish to real repository.
Cut & paste bug from test repo section?

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-08-12 12:17:25 +09:30
Adi Shankara 98c805e267
fix flake8 errors in the script file (#6528)
* fix flake8 errors

* fix E126 error

* fix E123 error
2023-08-07 21:45:44 +05:30
Christian Decker 0bf5ee6bba meta: Add the VLS team as codeowners of hsmd/hsmd_wire.csv
We use this file as a proxy for breaking changes in the signer
protocol. It may not catch all the breaking changes, but it's a
good first approximation.
2023-08-07 13:10:56 +09:30
Christian Decker f56ba464b8 meta: Remove ZmnSCPxj from codeowners 2023-08-07 13:10:56 +09:30
Adi Shankara be829a1475 add workflow to sync rpc commands 2023-08-07 11:55:57 +09:30
Adi Shankara f64aaaf943 add script to sync rpc commands 2023-08-07 11:55:57 +09:30
Dusty Daemon fb179f2d5e
splicing: Remove dependency on experimental_dual_fund
Splicing should work automatically on v1 or v2 channels so this requirement isn’t needed.

Changelog-None
[ Squashed fixup into a single commit --RR ]
2023-08-06 12:19:42 +09:30
Adi Shankara aa2f4a1fa0
Fixing env reference for API key and path to doc (#6478)
* fix the env reference for the API key

* fix path to directory in the workflow file
2023-08-01 17:48:00 +05:30
Adi Shankara 572d71c50e
fix readme workflow (yet again) and test a dummy change (#6477) 2023-08-01 17:19:29 +05:30
Adi Shankara bb0286bb82
fix workflow file and test changes (#6476) 2023-08-01 13:19:29 +05:30
Rusty Russell 3974806e5a CI: Try not running group 2/10 UBSAN in parallel.
It's being killed with signal 143, which means docker isn't happy; too much memory consumption?

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-07-31 21:00:22 +09:30
Dusty Daemon 4628e3ace8 channeld: Code to implement splicing
Update the lightningd <-> channeld interface with lots of new commands to needed to facilitate spicing.

Implement the channeld splicing protocol leveraging the interactivetx protocol.

Implement lightningd’s channel_control to support channeld in its splicing efforts.

Changelog-Added: Added the features to enable splicing & resizing of active channels.
2023-07-31 21:00:22 +09:30
Adi Shankara a9565f5589 added frontmatter and fix github workflow 2023-07-29 10:30:25 +09:30
Christian Decker a6ade2e071 ci: Update the upload-artifact step to v3
GH was complaining about Node v12 being used in v2.2.4. We used to
hold back from this upgrade because v3 was breaking quotas, but we
should try again.
2023-07-24 09:23:10 +09:30
Shahana Farooqui c0bb7f0721 lightningd: updating python v3.7 to v3.8 2023-07-20 11:44:46 +09:30
Adi Shankara 9f8889eb8c update workflow to sync readme files 2023-07-16 12:59:40 +09:30
Vincenzo Palazzo eff160cbae ci: Fix flakiness of lnprototest on CI
The lnprototest occasionally fails on our CI due to the
timeout duration we set while waiting for cln to start up.
This timeout is insufficient for machines like the ones
used in the GitHub CI environment.

To address this issue, this commit introduces the use of
environment variables to increase the lnprototest timeout,
ensuring sufficient time for cln to initialize.

Changelog-None
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2023-07-13 08:54:21 +02:00
Christian Decker b81212826f ci: Add pyln-grpc-proto to auto-publication workflow 2023-07-10 13:47:38 +09:30
Rusty Russell 016e48f8d3 CI: use prebuild for (almost all) ci steps.
With the exception of fuzzing, make all builds in the `compile` job,
and simply download them in the other steps.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-07-09 16:49:48 +09:30
Rusty Russell 364de00947 CI: clean up workflow files.
We used to have to use environment variables to pass through to
github/scripts/build.sh, but now we run ./configure directly it's
clearer to use explicit flags (though some matrixes still use env vars
for simplicity).

We also don't need to set COMPAT, as it's the default (MacOS tests
that we build without it, but otherwise we assume it's on).

And we make `gather` actually depend on all the other steps!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-07-09 16:49:48 +09:30
Rusty Russell fa596a9446 configure: --enable-debugbuild flag for debug builds.
This controls debug flags for the build, rather than --developer,
which is going away.

I thought about making this flag control the RUST_PROFILE too, but
it seems that we want that set to "release" for CI, whereas for the
C code we want --enable-debugbuild.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-07-09 16:49:48 +09:30
Rusty Russell f0a9f1100a poetry, CI: insist in protobuf v21.12 in both Python and CI.
And re-ran poetry update which updated the lock file ofc.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-06-23 13:58:31 +09:30
Rusty Russell 55d6eb6762 CI: run 2, not 3 UBSAN/ASAN pytests at once.
It seems to reliably be getting a SIGTERM after 17-18 minutes:

```
[gw1] [ 91%] PASSED tests/test_plugin.py::test_forward_event_notification
Error: Process completed with exit code 143.
```

Perhaps this is out of mem?  So, try -n2.  We also make the configure
line explicit, rather than relying on environment vars (we should probably
do this for the other cases, too)

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2023-06-22 13:23:21 +09:30