Commit Graph

88 Commits

Author SHA1 Message Date
Alex Akselrod
8d5f8d822d
itest: ensure LND gets correct CLI options when itest are parallel 2024-08-24 13:28:14 -07:00
yyforyongyu
35287ee899
scripts: silence test outputs 2024-08-23 15:48:09 +08:00
ffranr
2a6e54016f
Makefile: add lint check for Go version in Dockerfile and YAML
Implemented linter scripts to ensure consistency of the Go version
specified in Dockerfiles and YAML files. These scripts verify that the
Go version used across these files is uniform, enhancing maintainability
and reducing configuration errors.

This commit also introduces a `GO_VERSION` Makefile variable to control
the Go version used throughout the project.
2024-08-01 14:09:58 +01:00
saubyk
ab00c8ad18
scripts: add gpg key for suheb [skip ci] 2024-06-01 11:25:46 -07:00
Keagan McClelland
fce2ef15a5 scripts: add gpg key for proofofkeags [skip ci] 2024-05-28 17:29:36 -07:00
Oliver Gugger
8a5160e1de
multi: add test coverage for integration tests 2024-04-23 19:15:33 +02:00
Slyghtning
ffaf4da1da
release: add hieblmi to verify install script 2024-04-23 10:03:23 +02:00
Oliver Gugger
817ddb807b
GitHub+scripts: use bitcoind v27.0 2024-04-18 17:44:04 +02:00
Oliver Gugger
b4449ab55f
GitHub: use bitcoind v26.0 for CI, remove default value
To make it less confusing what version of bitcoind is actually
installed, we now require the version to be specified as a command line
argument.

Because we tag the version in the docker image tag as bitcoin-core:XX
but the binary internally is located under /opt/bitcoin-XX.Y/, we
manually set Y to 0.
2024-03-18 16:13:38 +01:00
Mohamed Awnallah
1812b0e56e
scripts+dev.Dockerfile: address dockerfile build issue 2024-03-18 13:47:39 +02:00
Mohamed Awnallah
dfd1636f18
scripts: add gen_man_pages.sh script 2024-03-13 21:18:23 +02:00
positiveblue
e7d82fa530
tools: update sqlc version to v1.25.0 2024-03-01 10:08:07 +01:00
yyforyongyu
6abfa0b1ee
scripts: add gpg key for yyforyongyu [skip ci] 2024-01-19 01:23:30 +08:00
yyforyongyu
994a1426d6
CI: upgrade bitcoind version to 0.25 2023-11-01 16:34:07 +08:00
Olaoluwa Osuntokun
63a94ad987
build: build+install using GOEXPERIMENT=loopvar
We also update the release script to do the same as well.
2023-10-24 18:40:58 -07:00
Oliver Gugger
abb1e3463f
scripts: kill lnd on windows to access log files (#8076)
For some reason lnd doesn't properly shut down on some windows itests,
and the process still running makes it impossible to access its log
files.
So for the Windows integration test, we attempt to kill the whole
process tree once the process indicates it is done.
2023-10-10 16:15:41 +02:00
yyforyongyu
ba007d9373 itest: fix itest logs upload
When one of the itest tranches fails, because we are running tests in
parallel, other tranches will still be running, which caused 7z to fail
at zipping the logs because race reads. This commit fixes it by making
sure we are waiting other tranches to finish before moving to zipping
and uploading the logs.
2023-10-06 16:34:47 -07:00
Elle Mouton
275201de5b scripts: remove litecoin strings from script 2023-10-06 16:34:47 -07:00
yyforyongyu
c568ba9fa2
github+Makefile: add new action make tidy-module-check
This commit adds `tidy-module` and `tidy-module-check` to make sure the
modules are always tidy.
2023-09-06 02:48:13 +08:00
yyforyongyu
5296509474
Makefile+action: add make unit-module to test submodules
This commit adds a new command `make unit-module` to run unit tests for
submodules to avoid future build errors.
2023-09-06 02:47:55 +08:00
feelancer21
2914f8007f
scripts: Direct 'lnd --help' output to a file
We are directing the output of 'lnd --help' to a file, as there
is currently an issue when an option is mentioned in the help
text.
2023-08-08 11:47:21 +02:00
Oliver Gugger
aa7e7a1e5a
Merge pull request #7770 from feelancer21/sample-lnd-conf-update-defaults
Revision of default values in sample-lnd.conf and building of a check script
2023-08-04 13:10:29 +02:00
feelancer21
aa6bc0828a
scripts: Add check script for sample-lnd.conf
The new script perfoms the following checks on the sample-lnd.conf file:
 1. Checks that all relevant options of lnd are included.
 2. Verifies that defaults are labeled if there are also further examples.
 3. Checks that all default values of lnd --help are mentioned correctly,
    including empty defaults and booleans which are set to false by
    default.
2023-08-03 18:04:18 +02:00
Slyghtning
37c0e521e8
scripts: add gpg key for Slyghtning [skip ci] 2023-07-20 16:28:21 +02:00
@RandyMcMillan
f2b3674b3a
scripts/check-release-notes.sh: fix bash expression 2023-07-13 12:51:40 -04:00
Olaoluwa Osuntokun
acecb12f54
Merge pull request #7354 from positiveblue/invoice-sql-schema
sqldb: add invoice schema and sql queries
2023-07-12 17:03:26 -07:00
Oliver Gugger
8c9f4515b6
scripts: use gpg --homedir flag to fix new behavior in 2.4
With the latest Golang Docker base image we are using the new gpg
version 2.4 is now being installed in the lnd Docker base image.

Apparently the expected value for the --keyring flag is just a file name
and not an absolute path. The path of the file is indicated either by
the $HOME environment variable or the --homedir flag. It looks like 2.4
now finally stopped supporting an absolute path in the --keyring flag
and we need to update our gpg command to make the script work again.

This should be backward compatible and still work on older versions of
gpg.
2023-07-11 09:18:22 +02:00
positiveblue
43a9e2f1ca
multi: add sqlc support
sqlc is a tool that generates fully type-safe idiomatic code from SQL.
The result is Go code can then used execute the queries in the database.

The noraml flow looks like:
- The developer write some sql that will update the schema in the
  database: new tables, indices, etc
- The developer updates the set of queries that will use the new schema.
- `sqlc` generates type-safe interfaces to those queries.
- The developer can then write application code that calls the methods
  generated by sqlc.

The tool configuration needs to live in the repo's root and its name is
`sqlc.yaml`.

LND will support out of the box sqlite and postgres. The sql code needs to
be (almost) the same for both engines, so we cannot use custom functions
like `ANY` in postgres.

The SQLC config file needs to define what is the target engine, we will
set postgres but the generated code can be executed by sqlite too.

In some specific cases, we will `match and replace` some sql lines to be
sure the table definitions are valid for the targeted engine.
2023-07-10 17:36:58 -07:00
Viktor Tigerström
376aeec52a
scripts: add ViktorTigerstrom PGP key [skip ci] 2023-07-10 12:55:19 +02:00
Olaoluwa Osuntokun
f42b6a3949
scripts: update release notes check for merge queue usage
Without this commit, PRs can fail to be merged via the merge queue, as
it'll fail with this error:
```
Run scripts/check-release-notes.sh
PR gh-readonly-queue didn't update release notes
Error: Process completed with exit code 1.
```
2023-06-15 17:48:55 -05:00
yyforyongyu
d730797880
itest: remove unused flag goroutineDump 2023-02-23 21:56:08 +08:00
yyforyongyu
0bc86a3b4b
multi: move itest out of lntest
This commit moves all the test cases living in `itest` out of `lntest`,
further making `lntest` an independent package for general testing.
2023-02-23 21:56:08 +08:00
Conner
25a7bb8b86
make+scripts+docs: update fuzzing script and make fuzz 2022-11-11 10:30:05 -06:00
sputn1ck
d16fcf12aa
scripts: add sputn1ck pgp key
[skip ci]
2022-10-11 09:00:46 +02:00
Robyn
8ab914dae5
scripts: add ffranr PGP signing key [skip ci] 2022-10-10 19:08:28 +01:00
Andras Banki-Horvath
c09a81624c
keys: update key for bhandras 2022-06-09 09:28:46 +02:00
Olaoluwa Osuntokun
dec389d54f
build: update CI to build against bitcoind 23 2022-05-04 15:24:22 -07:00
Elle Mouton
eca2ac8a57
scripts: add gpg key for ellemouton [skip ci] 2022-04-19 11:38:04 +02:00
Oliver Gugger
bdda2aa059
docs+github+scripts: remove submodule update check
Because we want to avoid local replace directives (as they make it easy
to screw up things for external applications that use lnd as a library
without us noticing), we're going to switch over to a new process.
See section "Use of Golang submodules" in the code contribution
guideline.
2022-03-22 14:17:26 +01:00
Oliver Gugger
a6282ab08e
scripts: remove expiring key for cfromknecht [skip ci]
The user cfromknecht isn't an active contributor anymore and the key
will expire in less than two weeks.
2022-02-21 10:26:48 +01:00
Oliver Gugger
d46e9d2d29
scripts: remove expired key for halseth
Fixes #6272.
The user halseth isn't an active contributor anymore and the key
expired.
2022-02-21 10:21:54 +01:00
Oliver Gugger
55edd1b260
scripts+GitHub: check submodule version bump 2021-11-22 14:40:28 +01:00
Olaoluwa Osuntokun
56d00f40ef
script: update CI to bitcoind 22 2021-11-03 16:43:27 -07:00
Oliver Gugger
d7d1574095
scripts: verify version in manifest
To make a downgrade attack harder, we also check that the version string
is contained in the manifest, on the same line as the hash.
2021-09-27 15:49:12 +02:00
Oliver Gugger
5bafff2cf2
scripts: allow packaged release archive to be verified
Instead of only allowing to verify installed/unpacked binaries, we also
allow a single binary or packaged release archive to be verified.
2021-09-27 15:49:11 +02:00
Oliver Gugger
6d0368a189
scripts: pin signatures to keys
With this commit we add a new restriction that checks that the
username in the signature file (manifest-<username>-<version>.sig) actually
does have a signing key and that the signature was created with that key.
The signature is only counted towards the minimum of 5 signatures if
that check is successful.
The changes in this commit were inspired by @kixunil in #5048.
2021-09-27 15:49:11 +02:00
Oliver Gugger
0984638a74
scripts: make sure signature files have unique names
To fix a simple attack where the same file would be uploaded multiple
times under the same name, we make sure we only count unique file names.
2021-09-27 15:49:10 +02:00
positiveblue
c8987ec2c5
scripts: add positiveblue key to verify script 2021-09-27 15:49:10 +02:00
Oliver Gugger
f6c66ca980
scripts: add signing keys to repo
Instead of importing the keys from Keybase, we add all the signing keys
to the repository. In addition to having the key file present each key's
ID must also be added to the verification script. This acts as a double
check that the correct key is added and makes a key change more
explicit.
2021-09-27 15:49:08 +02:00
Conner Fromknecht
fc4a16b672
scripts/verify-install.sh: pass expected version as argument
This removes a vulnerability brought up by @Kixunil where both the lnd
and lncli binaries are executed to obtain their version before they have
been verified against the release. A malicious binary could have already
compromised the user's system before any of the checks had been
performed.

This commit it split out from the doc changes so that it can easily be
cherry-picked to master/0.13.0.
2021-09-27 15:48:19 +02:00