-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix output of remote step in nix workflow #4716
Conversation
update the conditions for uploading of artifacts to internal repository -- based on Ed's suggestion
Is there any way I can try out the CI changes in this PR? How can I ensure that these commands work correctly? |
What do you mean the binaries are not uploaded? It appears to me that they are. How would you be able to tell if you could not inspect the Artifactory? The Artifactory is public and browsable without credentials. There you can see the list of packages and their binaries. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll approve this change because it improves the observability of the workflow. I don't think the title or description of this PR is accurate, though.
@thejohnfreeman could you suggest an alternate title and description? |
@thejohnfreeman This was an observation made by @ximinez and @godexsoft , here is the context of the discussion: https://ripple-enterprise.slack.com/archives/C02GE9NBA/p1695084567770189?thread_ts=1695051230.548129&cid=C02GE9NBA I am of the understanding that the Github CI was not correctly returning success, which caused the binaries to not be uploaded to the internal artifactory. |
I know the thread. I commented in it. It has 180 comments, though, and I don't feel like digging through all that in the Slack UI to try to figure out what you mean in the description here. Instead of linking to the Slack (which is not visible to non-Ripple employees), it would be better to link to a job run that you think failed to upload correctly (which is visible). I looked and found one. The problem is that the step output starts with the string "Changed user of remote ..." printed by the This PR does not change the condition for upload. It fixes the output of the Recommended: |
@thejohnfreeman thanks, this helps. Did we face issues with binary uploads anytime prior to this week? This issue must have surfaced before. |
I filtered for the |
* Experimentally remove the `-p` param from mkdir in dependencies action * Add the "build_type" param to the dependencies check in the `nix` workflow * Update the version of actions/cache * Steal the remote step outcome fix from XRPLF#4716 * Allow the Windows job to succeed if tests fail (explained in comments)
- name: try to authenticate to ripple Conan remote | ||
id: remote | ||
run: | | ||
echo outcome=$(conan user --remote ripple ${{ secrets.CONAN_USERNAME }} --password ${{ secrets.CONAN_TOKEN }} && echo success || echo failure) | tee ${GITHUB_OUTPUT} | ||
conan user --remote ripple ${{ secrets.CONAN_USERNAME }} --password ${{ secrets.CONAN_TOKEN }} | ||
echo outcome=$([ $? -eq 0 ] && echo success || echo failure) | tee ${GITHUB_OUTPUT} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem with creating your branch in the XRPLF repo is that it has those secrets configured, so the connection works. On a personal repo (or just one that doesn't have secrets), when the conan user
command fails, the whole step fails. https://github.com/ximinez/rippled/actions/runs/6342827288/job/17229389904
There's an easy fix, though. The shell is running with set -e
, so you can undo it by starting the run:
with set +e
.
Example from my Windows CI PR: https://github.com/XRPLF/rippled/actions/runs/6343277722/job/17230836193?pr=4596#step:9:28
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for pointing this out.
I have incorporated your suggestions in this commit (ckeshava-patch-2...ckeshava:rippled:ckeshava-patch-2), but I don't have permissions to update this branch, because this is a branch on XRPLF's fork.
Do I need to create a new PR?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we've fixed this in other places with || true
, which is the fix I prefer because it is highly specific. Only one command is permitted to fail.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|| true
will change the value of $?
, won't it? That would defeat the whole point of this PR.
$ false ; [ $? -eq 0 ] && echo success || echo failure
failure
$ false || true ; [ $? -eq 0 ] && echo success || echo failure
success
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have permissions to update this branch, because this is a branch on XRPLF's fork.
How did you create the branch in the first place?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ximinez
If the secrets are not configured, thenoutcome
is set tofailure
in both the suggestions. Won't both of these commands stop the build process?
No. That's the reason it's written this way. Setting outcome=failure
only affects the "upload dependencies to remote" and "recreate archive with dependencies" steps.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, the additional tee ${GITHUB_OUTPUT}
in your suggestion protects the entire bash command from failure. I'm guessing the command will short-circuit to the next OR condition. I think I understand it now 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yet another option. A minimal change to the original. Just redirects output of
conan user
to stderr.echo outcome=$(conan user --remote ripple ${{ secrets.CONAN_USERNAME }} --password ${{ secrets.CONAN_TOKEN }} >&2 && echo success || echo failure) | tee ${GITHUB_OUTPUT}
This sounds like a winner.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have permissions to write into this branch :/
let me ask elliot and revert back to this PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have permissions to update this branch, because this is a branch on XRPLF's fork.
How did you create the branch in the first place?
@ckeshava previously had write access, but this was changed to read in order to improve the security of this repo. In general, contributions should be developed in your personal fork.
@ckeshava : please open a new PR using a branch on your fork. Thanks!
this PR is superceded by #4746 |
Artifactory support was added to the `nix` builds with #4556. This extends that support to the Windows build. Now the Windows build works; CI will build and test a Windows release build. This only affects CI and does not change any C++ code. * Copy the remote setup step outcome fix from #4716 discussion * Allow the Windows job to succeed if tests fail: * Currently the tests do not always pass, even on a single threaded run on the GitHub runners. So we are using parallel runs and mark the test step as allowed to fail (continue-on-error). * At this point, it's more important that the build succeeds than that the tests succeed, because: * We've got plenty of test coverage on the other jobs. * Test failures are much rarer than build failures because of cross-platform issues. * Having a test failure locally doesn't interrupt a workflow nearly as much as a build failure. Note that Conan Center cannot hold the binaries we need. They do not build the configurations we need, and they will not add them. ## Future Tasks This introduces a new bottleneck since the build and test takes over an hour. Speed up the job by: * Making this job run on heavy Windows runners. * Increasing the number of hardware threads.
commit 47e9807 Merge: aac143e 0c32fc5 Author: Ed Hennis <ed@ripple.com> Date: Tue Mar 19 12:22:13 2024 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: test: Env unit test RPC errors return a unique result: (4877) commit aac143e Merge: a38b331 af9cabe Author: Ed Hennis <ed@ripple.com> Date: Thu Mar 14 13:31:30 2024 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Install more public headers (4940) commit a38b331 Merge: 6d1d8a0 2ecb851 Author: Ed Hennis <ed@ripple.com> Date: Wed Mar 13 19:23:24 2024 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Update remaining actions (4949) Upgrade to xxhash 0.8.2 as a Conan requirement, enable SIMD hashing (4893) Fix workflows (4948) fix: order book update variable swap: (4890) Embed patched recipe for RocksDB 6.29.5 (4947) commit 6d1d8a0 Merge: 2aabc0c c28e005 Author: Ed Hennis <ed@ripple.com> Date: Thu Mar 7 16:56:23 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: build: add STCurrency.h to xrpl_core to fix clio build (4939) feat: add user version of `feature` RPC (4781) Fast base58 codec: (4327) Remove default ctors from SecretKey and PublicKey: (4607) commit 2aabc0c Merge: 38f908a 97863e0 Author: Ed Hennis <ed@ripple.com> Date: Fri Mar 1 14:00:14 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.2.0-b1 commit 38f908a Merge: 4f89097 8a2f6be Author: Ed Hennis <ed@ripple.com> Date: Thu Feb 29 12:16:39 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix compile error on gcc 13: (4932) Price Oracle (XLS-47d): (4789) (4789) commit 4f89097 Merge: e296805 d7d15a9 Author: Ed Hennis <ed@ripple.com> Date: Wed Feb 21 13:17:24 2024 -0800 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.1.0 test: guarantee proper lifetime for temporary Rules object: (4917) commit e296805 Merge: f1a3f38 da68651 Author: Ed Hennis <ed@ripple.com> Date: Thu Feb 8 17:40:31 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.1.0-rc1 `fixInnerObjTemplate`: set inner object template (4906) feat: allow `port_grpc` to be specified in `[server]` stanza (4728) build: add headers needed in Conan package for libxrpl (4885) `fixNFTokenReserve`: ensure NFT tx fails when reserve is not met (4767) fix(libxrpl): change library names in Conan recipe (4831) test: check for success/failure of Windows CI unit tests (4871) test: add unit test for redundant payment (4860) commit f1a3f38 Merge: 283fd23 22cdb57 Author: Ed Hennis <ed@ripple.com> Date: Mon Jan 29 17:16:04 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.0.1 commit 283fd23 Merge: dd41182 901152b Author: Ed Hennis <ed@ripple.com> Date: Thu Jan 25 19:18:58 2024 -0500 erge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: chore: retry codecov upload (4896) docs: fix broken links in docs/build/conan.md (4699) Set version to 2.0.1-rc1 commit dd41182 Merge: c5ee5c4 fad9d63 Author: Ed Hennis <ed@ripple.com> Date: Mon Jan 22 17:46:52 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: test: improve code coverage reporting (4849) docs: update help message about unit test-suite pattern matching (4846) Revert "Asynchronously write batches to NuDB. (4503)" (4882) Set version to 2.0.1-b1 docs: add Performance type to PR template (4875) commit c5ee5c4 Merge: 40d31ed 6ac2b70 Author: Ed Hennis <ed@ripple.com> Date: Wed Jan 17 12:54:03 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: test: add DeliverMax to more JSONRPC tests (4826) commit 40d31ed Merge: dd17f0b fe4d6c6 Author: Ed Hennis <ed@ripple.com> Date: Tue Jan 16 17:40:26 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix: change default send_queue_limit to 500 (4867) fix: clang warning about deprecated sprintf usage (4747) commit dd17f0b Merge: d9d54ad d9f90c8 Author: Ed Hennis <ed@ripple.com> Date: Fri Jan 12 12:47:26 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Improve lifetime management of ledger objects (`SLE`s) to prevent runaway memory usage: (4822) commit d9d54ad Merge: 4242af5 4308407 Author: Ed Hennis <ed@ripple.com> Date: Thu Jan 11 20:16:08 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: WebSocket should only call async_close once (4848) commit 4242af5 Merge: 1c87aaf 2b0313d Author: Ed Hennis <ed@ripple.com> Date: Mon Jan 8 19:42:00 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.0.0 commit 1c87aaf Merge: 7a54b9c 350d213 Author: Ed Hennis <ed@ripple.com> Date: Mon Jan 8 18:55:06 2024 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.0.0-rc7 commit 7a54b9c Merge: 6dd3eee ca31981 Author: Ed Hennis <ed@ripple.com> Date: Thu Dec 21 16:50:48 2023 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.0.0-rc6 Revert "Apply transaction batches in periodic intervals (4504)" (4852) Revert "Add ProtocolStart and GracefulClose P2P protocol messages (3839)" (4850) docs(API-CHANGELOG): clarify changes for V2 (4773) fix typo: 'of' instead of 'on' (4821) commit 6dd3eee Merge: 8a7c5bb 46f3d3e Author: Ed Hennis <ed@ripple.com> Date: Tue Dec 5 11:34:04 2023 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.0.0-rc5 Workarounds for gcc-13 compatibility (4817) Revert 4505, 4760 (4842) Set version to 2.0.0-rc4 commit 8a7c5bb Merge: 2c56c48 fe8621b Author: Ed Hennis <ed@ripple.com> Date: Wed Nov 29 15:26:29 2023 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: APIv2: show DeliverMax in submit, submit_multisigned (4827) APIv2: consistently return ledger_index as integer (4820) commit 2c56c48 Merge: 1c1eb1b 8ec475b Author: Ed Hennis <ed@ripple.com> Date: Wed Nov 29 12:50:52 2023 -0500 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: Set version to 2.0.0-rc3 docs(API-CHANGELOG): add extra bullet about DeliverMax (4784) Update API-CHANGELOG.md for release 2.0 (4828) Add Debian 12 Bookworm; ignore core-utils in almalinux (4836) Set version to 2.0.0-rc2 Optimize calculation of close time to avoid impasse and minimize gratuitous proposal changes (4760) Fix 2.0 regression in tx method with binary output (4812) Update Linux smoketest distros (4813) Promote API version 2 to supported (4803) Support for the mold linker (4807) Proposed 2.0.0-rc2 (4818) Optimize calculation of close time to avoid impasse and minimize gratuitous proposal changes (4760) Fix 2.0 regression in tx method with binary output (4812) Update Linux smoketest distros (4813) Promote API version 2 to supported (4803) Support for the mold linker (4807) Set version to 2.0.0-rc1 Unify JSON serialization format of transactions (4775) commit 1c1eb1b Merge: 4004dbf 09e0f10 Author: Ed Hennis <ed@ripple.com> Date: Fri Nov 3 11:31:48 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix: check for valid public key in attestations (4798) Fix unit test api_version to enable api_version 2 (4785) chore: delete unused Dockerfile (4791) commit 4004dbf Merge: 8f05472 26b0322 Author: Ed Hennis <ed@ripple.com> Date: Tue Oct 31 13:05:58 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix: remove unused variable (4677) `fixFillOrKill`: fix offer crossing with tfFillOrKill (4694) fix: remove include <ranges> (4788) commit 8f05472 Merge: 2a03684 1eac4d2 Author: Ed Hennis <ed@ripple.com> Date: Thu Oct 26 10:13:15 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: APIv2: remove tx_history and ledger_header (4759) docs: clarify definition of network health (4729) Set version to 2.0.0-b4 commit 2a03684 Merge: 27bdd6a 3972683 Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 23 16:08:12 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: APIv2(DeliverMax): add alias for Amount in Payment transactions (4733) commit 27bdd6a Merge: dbc9067 5026cbd Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 23 16:07:00 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: perf(CI): use unity builds to speed up Windows CI (4780) commit dbc9067 Merge: 3a531a8 5af9dc5 Author: Ed Hennis <ed@ripple.com> Date: Thu Oct 19 14:52:40 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix(CI): set permission for doxygen workflow (4756) commit 3a531a8 Merge: 5ab3395 8d86c5e Author: Ed Hennis <ed@ripple.com> Date: Thu Oct 19 13:18:07 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix: allow pseudo-transactions to omit NetworkID (4737) feat(rpc): add `server_definitions` method (4703) `DID`: Decentralized identifiers (DIDs) (XLS-40): (4636) Update the reserved hook error code name to `tecHOOK_REJECTED` (4559) refactor(peerfinder): use LogicError in PeerFinder::Logic (4562) docs(pull_request_template): add API Impact section (4757) Set version to 2.0.0-b3 commit 5ab3395 Merge: 8096d1c 1fde585 Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 16 17:36:09 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix(CI): Call python to upgrade pip on Windows (4768) commit 8096d1c Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 16 12:39:45 2023 -0400 fixup! [WIP] Try different cmake args commit 654d690 Merge: 05827b6 c915984 Author: Ed Hennis <ed@ripple.com> Date: Thu Oct 12 18:10:21 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: docs(conan.md): fix broken link to conanfile.py (4740) fix(PathRequest): remove incorrect assert (4743) commit 05827b6 Merge: 19f314e 1151fba Author: Ed Hennis <ed@ripple.com> Date: Wed Oct 11 18:24:49 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action-wip * upstream/develop: fix(CI): update workflow for uploading binaries to artifactory (4746) commit 19f314e Author: Ed Hennis <ed@ripple.com> Date: Wed Oct 4 16:52:09 2023 -0400 [WIP] Try different cmake args commit 0306e9d Author: Ed Hennis <ed@ripple.com> Date: Tue Jul 25 12:14:34 2023 -0400 [FOLD] Fallback on pip upgrade commit 5a8af18 Author: Ed Hennis <ed@ripple.com> Date: Wed Jul 12 14:01:15 2023 -0400 [FOLD] Enable Windows debug CI builds commit 908ee49 Author: Ed Hennis <ed@ripple.com> Date: Fri Jul 7 14:33:53 2023 -0400 [FOLD] Run on self-hosted runner commit d1c8c80 Merge: 5f3a938 3e08c39 Author: Ed Hennis <ed@ripple.com> Date: Tue Oct 10 11:51:26 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: ci: reenable Windows CI build with Artifactory support (4596) commit 5f3a938 Merge: c3bce68 053b69c Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 9 12:07:25 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: docs(API-CHANGELOG): add `XRPFees` change (4741) docs(rippled-example.cfg): add P2P link compression (4753) commit c3bce68 Merge: 7fdd63c 6ba9450 Author: Ed Hennis <ed@ripple.com> Date: Thu Oct 5 20:04:52 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: `fixDisallowIncomingV1`: allow issuers to authorize trust lines (4721) refactor: reduce boilerplate in applySteps: (4710) commit 7fdd63c Merge: 5778a34 4e84ad6 Author: Ed Hennis <ed@ripple.com> Date: Thu Oct 5 12:45:46 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: refactor: reunify transaction common fields: (4715) fix typo in SECURITY.md (4662) docs(API-CHANGELOG): clarify account_info response (4724) fix: asan stack-use-after-scope in soci::use with rvalues (4676) commit 5778a34 Merge: 15f1f0c e27d24b Author: Ed Hennis <ed@ripple.com> Date: Tue Oct 3 11:44:42 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: docs(BUILD.md): require GCC 11 or higher (4700) commit 15f1f0c Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 2 17:02:21 2023 -0400 fixup! [FOLD] Improve remote setup step commit 8f1c1e4 Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 2 16:47:02 2023 -0400 [FOLD] Improve remote setup step * Stolen from (4716 discussion) * Also add note to test step that it can fail commit e308801 Merge: 63c6717 925aca7 Author: Ed Hennis <ed@ripple.com> Date: Mon Oct 2 16:44:42 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: fix(XLS-38): disallow the same bridge on one chain: (4720) commit 63c6717 Merge: f875a86 2bb8de0 Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 28 19:30:58 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: fix: stabilize voting threshold for amendment majority mechanism (4410) commit f875a86 Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 28 19:25:52 2023 -0400 [FOLD] Further feedback from @thejohnfreeman: * Remove "actions/dependencies" from "actions/build" and call it manually from each workflow. Resolves issues with trying to create an existing build directory. commit 1641cc6 Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 28 16:35:24 2023 -0400 fixup! fixup! [FOLD] Address review feedback from @thejohnfreeman: commit 715aeea Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 28 14:30:51 2023 -0400 fixup! [FOLD] Address review feedback from @thejohnfreeman: commit 222c7e4 Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 28 14:13:51 2023 -0400 [FOLD] Address review feedback from @thejohnfreeman: * Experimentally remove the `-p` param from mkdir in dependencies action * Add the "build_type" param to the dependencies check in the `nix` workflow * Update the version of actions/cache * Steal the remote step outcome fix from XRPLF#4716 * Allow the Windows job to succeed if tests fail (explained in comments) commit 2f3ddde Merge: 43690b3 b92d511 Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 28 10:48:45 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: fix(build): `uint` is not defined on Windows platform (4731) Eliminate the built-in SNTP support (fixes 4207): (4628) Set version to 2.0.0-b2 fix: accept all valid currency codes in API (4566) chore: add .build to .gitignore (4722) Add ProtocolStart and GracefulClose P2P protocol messages (3839) Fix typo in BUILD.md (4718) APIv2(gateway_balances, channel_authorize): update errors (4618) build: use Boost 1.82 and link Boost.Json (4632) docs(overlay): add URL of blog post and clarify wording (4635) docs(API-CHANGELOG): api_version 2 is expected with 2.0 (4633) docs(RELEASENOTES): update 1.12.0 notes to match dev blog (4691) commit 43690b3 Merge: 4cd85a6 7bff9dc Author: Ed Hennis <ed@ripple.com> Date: Mon Sep 18 18:27:01 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Update secp256k1 to 0.3.2 (4653) commit 4cd85a6 Author: Ed Hennis <ed@ripple.com> Date: Mon Sep 18 18:06:21 2023 -0400 Try using one unit test job? commit 0fecaf7 Merge: efd32a6 e86181c Author: Ed Hennis <ed@ripple.com> Date: Mon Sep 18 14:50:15 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: docs: fix comment for LedgerHistory::fixIndex return value (4574) fix: remove unused variable causing clang 14 build errors (4672) docs(BUILD): make it easier to find environment.md (4507) Set version to 2.0.0-b1 Revert CMake changes (4707) Change `XChainBridge` amendment to `Supported::yes` (4709) commit efd32a6 Merge: a35dd82 237b406 Author: Ed Hennis <ed@ripple.com> Date: Fri Sep 15 12:55:15 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Fix Windows build by removing two unused declarations (4708) Match unit tests on start of test name (4634) Revert ThreadName due to problems on Windows (4702) `XChainBridge`: Introduce sidechain support (XLS-38): (4292) APIv2(account_tx, noripple_check): return error on invalid input (4620) commit a35dd82 Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 14 17:56:37 2023 -0400 Revert "[FOLD] Run on self-hosted runner" This reverts commit 9c0882f. commit de2df5d Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 14 17:56:28 2023 -0400 Revert "fixup! [FOLD] Run on self-hosted runner" This reverts commit 069aebb. commit 77a8f2c Author: Ed Hennis <ed@ripple.com> Date: Thu Sep 14 17:56:09 2023 -0400 Revert "fixup! fixup! [FOLD] Run on self-hosted runner" This reverts commit ab26e5c. commit 9c15e2a Merge: f01002f f259cc1 Author: Ed Hennis <ed@ripple.com> Date: Mon Sep 11 19:48:45 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Several changes to improve Consensus stability: (4505) Apply transaction batches in periodic intervals (4504) Asynchronously write batches to NuDB. (4503) Remove CurrentThreadName.h from RippledCore.cmake (4697) commit f01002f Merge: f568ac0 a955057 Author: Ed Hennis <ed@ripple.com> Date: Mon Sep 11 16:53:39 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: docs: update SECURITY.md (4338) refactor: simplify `TxFormats` common fields logic (4637) APIv2(ledger_entry): return invalidParams for bad parameters (4630) docs(rippled-example.cfg): clarify ssl_cert vs ssl_chain (4667) Introduce replacement for getting and setting thread name: (4312) Set version to 1.12.0 Set version to 1.12.0-rc4 amm_info: fetch by amm account id; add AMM object entry (4682) AMMBid: use tecINTERNAL for 'impossible' errors (4674) commit f568ac0 Merge: 5d661f5 f31c50d Author: Ed Hennis <ed@ripple.com> Date: Fri Sep 1 12:46:52 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Set version to 1.12.0-rc3 Revert "Asynchronously write batches to NuDB (4503)" Revert "Apply transaction batches in periodic intervals (4504)" Revert "Several changes to improve Consensus stability: (4505)" commit 5d661f5 Merge: 5cfa42c 300b7e0 Author: Ed Hennis <ed@ripple.com> Date: Wed Aug 23 10:47:07 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Set version to 1.12.0-rc1 Set version to 1.12-b3 Several changes to improve Consensus stability: (4505) Apply transaction batches in periodic intervals (4504) Asynchronously write batches to NuDB (4503) refactor: fix typo in FeeUnits.h (4644) Update Ubuntu build image (4650) test: add forAllApiVersions helper function (4611) add view updates for account SLEs (4629) Fix the package recipe for consumers of libxrpl (4631) refactor: improve checking of path lengths (4519) refactor: use C++20 function std::popcount (4389) fix(AMM): prevent orphaned objects, inconsistent ledger state: (4626) feat: support Concise Transaction Identifier (CTID) (XLS-37) (4418) commit 5cfa42c Merge: b42edc1 aded4a7 Author: Ed Hennis <ed@ripple.com> Date: Thu Jul 20 14:02:53 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: docs: add API Changelog (4612) Set version to 1.12.0-b2 BUILD: list steps after dependencies update (4623) commit b42edc1 Merge: 106596b 5ba1f98 Author: Ed Hennis <ed@ripple.com> Date: Fri Jul 14 09:51:27 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Rename `allowClawback` flag to `allowTrustLineClawback` (4617) Update dependencies (4595) commit 106596b Merge: ab26e5c 3c9db4b Author: Ed Hennis <ed@ripple.com> Date: Wed Jul 12 14:46:55 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: Introduce AMM support (XLS-30d): (4294) Adapt to change in Conan recipe for NuDB (4615) docs(CONTRIBUTING): push beta releases to `release` (4589) commit ab26e5c Author: Ed Hennis <ed@ripple.com> Date: Fri Jul 7 16:52:59 2023 -0400 fixup! fixup! [FOLD] Run on self-hosted runner commit 069aebb Author: Ed Hennis <ed@ripple.com> Date: Fri Jul 7 16:49:58 2023 -0400 fixup! [FOLD] Run on self-hosted runner commit 9c0882f Author: Ed Hennis <ed@ripple.com> Date: Fri Jul 7 14:33:53 2023 -0400 [FOLD] Run on self-hosted runner commit 1b5e089 Merge: e88ca37 a45a95e Author: Ed Hennis <ed@ripple.com> Date: Thu Jul 6 19:42:59 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: APIv2(ledger_entry): return "invalidParams" when fields missing (4552) commit e88ca37 Merge: 10f25ff c6fee28 Author: Ed Hennis <ed@ripple.com> Date: Thu Jul 6 11:04:23 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: refactor: change the return type of mulDiv to std::optional (4243) commit 10f25ff Merge: e0a84e0 77dc63b Author: Ed Hennis <ed@ripple.com> Date: Wed Jul 5 17:06:40 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: fix: add allowClawback flag for `account_info` (4590) build: add binary hardening compile and link flags (4603) add clang-format pre-commit hook (4599) chore: update checkout action version to v3: (4598) commit e0a84e0 Merge: f31ebff f18c6df Author: Ed Hennis <ed@ripple.com> Date: Fri Jun 30 17:55:10 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: APIv2(account_info): handle invalid "signer_lists" value (4585) fix: deb package build (4591) commit f31ebff Merge: 3df07fb 54afdaa Author: Ed Hennis <ed@ripple.com> Date: Thu Jun 29 19:52:26 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: ci: cancel overridden workflows (4597) fix: Update Handler::Condition enum values 3417 (4239) commit 3df07fb Merge: ab52f3c d34e8be Author: Ed Hennis <ed@ripple.com> Date: Thu Jun 29 11:54:22 2023 -0400 Merge remote-tracking branch 'upstream/develop' into action * upstream/develop: APIv2: add error messages for account_tx (4571) commit ab52f3c Author: Ed Hennis <ed@ripple.com> Date: Fri Jun 23 11:24:27 2023 -0400 ci: use Artifactory remote in windows workflow * Use github concurrency management * Update to get more in sync with nix.yml * Don't bother caching Conan * Add support for Debug job (disabled for now)
Artifactory support was added to the `nix` builds with XRPLF#4556. This extends that support to the Windows build. Now the Windows build works; CI will build and test a Windows release build. This only affects CI and does not change any C++ code. * Copy the remote setup step outcome fix from XRPLF#4716 discussion * Allow the Windows job to succeed if tests fail: * Currently the tests do not always pass, even on a single threaded run on the GitHub runners. So we are using parallel runs and mark the test step as allowed to fail (continue-on-error). * At this point, it's more important that the build succeeds than that the tests succeed, because: * We've got plenty of test coverage on the other jobs. * Test failures are much rarer than build failures because of cross-platform issues. * Having a test failure locally doesn't interrupt a workflow nearly as much as a build failure. Note that Conan Center cannot hold the binaries we need. They do not build the configurations we need, and they will not add them. ## Future Tasks This introduces a new bottleneck since the build and test takes over an hour. Speed up the job by: * Making this job run on heavy Windows runners. * Increasing the number of hardware threads.
This pull request updates the nix CI runner. Although the builds are successful, the binaries are not uploaded to the internal artifactory. This PR attempts to fix this issue and I have borrowed the idea from @ximinez
After successful authentication,
outcome
variable contains a string. In the upload step, we are checking ifoutcome == success
as a prerequisite for uploading the binary.This PR updates the contents of the
outcome
variable in the CI.Example of a breaking Github Actions workflow (thanks to @thejohnfreeman): https://github.com/XRPLF/rippled/actions/runs/6264131645/job/17010134246
High Level Overview of Change
Context of Change
Type of Change
This does not modify any of the source code files. The CI runner condition is updated to ensure uploads of binaries upon successful builds.
This change as motivated from this slack discussion: https://ripple-enterprise.slack.com/archives/C02GE9NBA/p1695051230548129