66 Commits

Author SHA1 Message Date
Patrick Lodder
6c1ef79fc6
ci: update actions to v4
see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
2024-03-02 16:54:45 -05:00
Patrick Lodder
0c1b61d841
ci: execute only one aarch64 ci
For 7019ead, a separate CI job was created because bionic's gcc-7
didn't have sha512 intrinsics support. Now that we've moved to a
focal build system, the experimental CI job for aarch64 can be ran
as a single job again.
2023-11-24 20:18:13 -05:00
Patrick Lodder
cf485309c5
ci: add linter for translations
Adds a lint job to the CI where we can do sanity analysis on
included files to help spot errors on non-cpp source files
that may cause problems during runtime.

This first job implements contrib/devtools/check-translations.py
that alerts the repository of errors in the translation files in
src/qt/locale. Errors in a translation file are otherwise only
becoming visible during runtime.
2023-10-19 17:12:45 -04:00
Dakoda Greaves
d488df5e5d
ci: add pre-install scripts
cause: msft/gha doesn't support the i386 winehq ppa, therefore we
have to use a workaround to download necessary i386 dependencies
for winehq-stable.

This adds winehq-focal.sources to and removes microsoft-prod.list
from the i686 build.

Implemented by the "add architecture" CI step into a script that
can now be customized per job.

Co-authored-by: Patrick Lodder <patricklodder@users.noreply.github.com>
2023-05-23 09:38:04 +02:00
Patrick Lodder
b65c56b0d8
ci: switch build hosts to focal
switches all CI process and codeql to use focal hosts
2023-05-23 09:37:23 +02:00
Patrick Lodder
a680438a24
ci: enable security and symbol checks for all supported targets
This enables running of security checks for macOS and symbol
checks for windows and ARM linux targets with each CI run.

Symbol checks remain disabled for debug and experimental targets
because those aren't production binary releases.

macOS symbol checks need build system patches before it will
work as intended so these have to stay disabled at this point.
2023-01-22 03:56:49 +01:00
Patrick Lodder
547f0f3712
ci: integrate lief-based security and symbol check scripts
Integrates the lief-based scripts into the GH Actions CI. This
allows the CI to maintain consistent checks for an upcoming
upgrade to Ubuntu focal for CI and Gitian.

Because lief is not distributed as a wheel for glibc < 2.17, a
custom .whl file for Ubuntu Bionic is made available on
depends.dogecoincore.org to save up to an hour that would otherwise
be spent on compiling lief from source. For current focal-based
CI jobs, this is not needed because that provides glibc > 2.17.

Each CI job has received 2 extra steps that are mutually exclusive
to make sure that the correct version is installed. When there are
no longer any Ubuntu Bionic based bionic jobs, this can be deleted
in favor of a single command in the "install packages" step.

python3-pip and python3-setuptools are now installed by default
for all CI jobs, where before this was only used for jobs that ran
the full qa test suite.
2023-01-22 03:56:36 +01:00
Patrick Lodder
4310e0be23
qa: update codeql to v2 and standard actions to v3
This is needed because v1 will see final eol on 2023/01/18
2023-01-13 22:27:15 +01:00
chromatic
af3ad6add6
Merge pull request #3140 from patricklodder/1.14.7-actions-node-update
ci: update actions libraries to node16
2022-11-02 10:42:47 -07:00
Patrick Lodder
2c46336ce6
ci: configure experimental jobs explicitly 2022-10-30 13:22:08 +01:00
Patrick Lodder
551412bc60
ci: fix gui selectors 2022-10-22 15:36:22 +02:00
bluezr
8e02e99fe5
ci: drop extraneous libtinfo5 from x86_64-apple-darwin11 2022-10-17 14:55:09 -07:00
Patrick Lodder
d606d594a2
ci: update actions libraries to node16 2022-10-17 00:09:10 +02:00
Dakoda Greaves
73a435b58e
qa: fix ltc-scrypt
-update install-deps.sh so it will clean up after itself and can be invoked from root directory.
-add python3-pip and python3-setuptools to ci matrix jobs that run qa and qa/README.md which are needed in order to install ltc-scrypt.
-update archive source to dogecoin/ltc-scrypt:v1.0.1.
-update qa/README.md to include sudo prior to apt-get install directive and add instructions to invoke install-deps.sh script from root directory.
2022-08-27 14:26:05 -07:00
Ed Tubbs
e607a452bd ci: Added sse2 scrypt option to Win64 experimental build 2022-07-29 21:54:17 -05:00
Ed
8cff29b8db
Merge branch '1.14.7-dev' into 1.14.7-dev 2022-07-28 20:16:08 -05:00
Ed Tubbs
7a5358c77b depends: Updated intel-ipsec-mb to 1.2
config: Updated intel-ipsec-mb checks for Win64
ci: Added build with intel-ipsec-mb for Win64
src: Updated intel-ipsec-mb guard for Win64 in SHAs
2022-07-28 20:13:57 -05:00
Old Dip Tracker
cacc0f1ad3
Merge pull request #3025 from edtubbs/1.14.6-dev-arm-macos-ci
ci: added qemu ARM executable testing
2022-07-26 21:33:15 -04:00
Ed Tubbs
4afd45ba6e ci: Added qemu ARM executable testing 2022-07-23 16:17:35 -05:00
Patrick Lodder
3817cc3b63
qa: enable scrypt SSE2 on x86_64 experimental 2022-07-21 06:52:47 +02:00
Patrick Lodder
d5121c584b
ci: force remove mono from windows builds
After a bionic update on 2022/06/03, Github Actions images have a
mono-runtime installation that takes precedence over wine, which
we need for running the tests.

This removes mono-runtime from both win CI jobs if it exists, so
that it doesn't bother us anymore in any way thinkable. We do not
need mono there, as we do not .net

Although the issue only manifested on x86_64-w64-mingw32 builds,
this also removes it from the i686-w64-mingw32 build as a
precaution.
2022-06-05 14:30:54 +02:00
Patrick Lodder
88e841b933
Revert "qa: remove experimental ci for aarch64 sha512"
This reverts commit b4632e92e6594b22db48a453106ac0e71ede22b3.
2022-04-07 16:16:50 +02:00
Patrick Lodder
b4632e92e6
qa: remove experimental ci for aarch64 sha512
Remove the CI for aarch64-linux-sha512-experimental because it
errors out.
2022-04-05 09:54:06 +02:00
Patrick Lodder
a38e8bfff5
qa: harden SDK usage in GH Actions CI
- Check SDK shasum to protect against supply-chain attacks
- Don't re-download the SDK archive when we have it in cache
- Purge the cache when the CI configuration changes
2022-02-12 20:19:41 +01:00
Patrick Lodder
556c586ece
qa: Change CI source of macOS sdk dependency
Moves SDK file from bitcoincore.org to depends.dogecoincore.org to
further reduce dependencies on the former.
2022-02-12 20:19:40 +01:00
Michi Lumin
7019ead6a1
Merge pull request #2687 from edtubbs/1.14.6-dev
[feat] Added ARMv8 SHA support
2021-12-11 13:07:22 -07:00
Ed Tubbs
be9df91a4d Updated ARMv8 intrinsics for SHA-512
Updated cross build for ci environment
Updated experimental build to focal
Unified cross and native ARMv8.2 build options
Updated experimental build in ci
2021-12-08 19:24:49 -06:00
Ed Tubbs
54d5954761 Added cross and native variables for experimental build
Updated ci
2021-11-17 22:55:59 +00:00
Ed Tubbs
3a7fef10ca Added ARMv8.2 intrinsics for SHA-512
Added build parameter for ARMv8.2
Added experimental ci build
Updated comments
2021-11-17 22:55:59 +00:00
Ross Nicoll
89aeecc0dc
Merge pull request #2660 from patricklodder/1.14.5-exp-ci-bionic
[qa] run the experimental builds on bionic too
2021-11-16 19:26:46 +00:00
Patrick Lodder
a9d5a6e343
qa: run benchmark on CI and store with artifact
This makes sure that the benchmarks don't get broken and may
give insights into how improvements impact performance.
2021-11-11 14:02:21 -05:00
Ed
8400c57d90 Added experimental build to ci environment 2021-11-08 23:08:39 -06:00
Patrick Lodder
a834a4b4ae
qa: make experimental build on bionic too
Sets the linux experimental build to bionic, to be in line with the
rest of the CI and not have any unexpected surprises when moving
features from experimental to release.

This was caused by the bionic downgrade for the CI crossing the
introduction of the experimental CI for AVX2.
2021-11-08 21:26:10 +01:00
Ross Nicoll
ca94ba2246
Merge pull request #2683 from patricklodder/1.14.6-ci-trigger
qa: nuke caches on CI descriptor change
2021-11-08 18:51:17 +00:00
Patrick Lodder
f2a079f571
qa: fixup codeql path scope 2021-11-08 10:01:18 -05:00
Patrick Lodder
cfe91b00b4
qa: nuke caches on CI descriptor change
Adds a nonce field to manually nuke the cache

Changing the CI workflow descriptor can invalidate dependencies
and ccache caches by introducing different compilers or base OS,
but as GH Actions does not let us update an existing cache, this
would cause every subsequent CI run to rebuild everything until
a nuke is triggered.
2021-11-08 09:58:15 -05:00
Patrick Lodder
8e4ea27962
Merge pull request #2491 from edtubbs/master
[feat] Added AVX2 SHA support
2021-11-01 18:47:05 -04:00
Patrick Lodder
e6e2f460c3
cleanup: don't build CI macos tests if we dont run them 2021-10-12 02:57:12 +02:00
Patrick Lodder
dbb81ea357
ci: add aarch64 2021-10-12 02:57:12 +02:00
Patrick Lodder
40d2a4ea42
ci: add check-security and check-symbols 2021-10-12 02:57:12 +02:00
Patrick Lodder
60f821fe73
ci: make --enable-reduce-exports standard for all hosts 2021-10-12 02:57:12 +02:00
Patrick Lodder
7dae118b0a build: experimental ci build with AVX2 2021-10-03 00:55:55 -05:00
Ed Tubbs
bef1ae5f3c Commit changes to SHA sources
Added nasm and intel-ipsec-mb to depends
Added remote_digest_init.patch
Added argument and checks to configure.ac
Make nasm a native dependency
2021-10-02 23:32:42 -05:00
Patrick Lodder
5dd1a6283b
qa: change CI and CodeQL to use bionic for all builds
- change host os for all builds
- change i686 wine to wine-stable
2021-09-29 20:50:10 +02:00
roman-rr
deeabe9438
issue template updated to prevent spam in repository
Cherry-picked from dogecoin/master at b5989ee03
2021-08-19 00:11:57 +02:00
Patrick Lodder
3c4b35f3c4
[qa] reduce CodeQL triggers to exclude non-compiled code
contrib, doc, share and qa do not compile production code, skip
CodeQL on PRs to save everyone time and GitHub some cpu ticks.
2021-07-25 20:45:45 +02:00
Patrick Lodder
7d81c1bb17
ci: make dogecoin-qt builds explicit
CI will not complain if there were an error with qt for builds that
do not explicitly specify that we want to build UI. This makes all
builds expect QT except the i686-linux and armhf builds.
2021-07-17 21:38:21 +02:00
Patrick Lodder
09a05ea58c
Merge pull request #2380 from patricklodder/1.14-fix-codeql
Tune codeql-analysis
2021-07-11 23:50:26 +02:00
Patrick Lodder
7c90da10c2
[CI] add macOS GH Actions w/ bionic instead of focal 2021-07-11 22:20:32 +02:00
Patrick Lodder
e3ba25473f
Tune codeql-analysis
- only audit production code (no python)
- trigger on *-maint and *-dev push
- trigger on PR
- remove useless autogenerated comments
- skip doc changes
- use depends system without analyzing it
- cache depends
2021-07-10 00:43:26 +02:00