Skip to content

Conversation

@hebasto
Copy link
Member

@hebasto hebasto commented Jul 27, 2023

From #28098:

Thus, someone would have to sponsor an amount of roughly 5kUSD/mo for those two tasks.

If the goal is to stay on a free plan, I think the only option is GitHub Actions CI.

Historical context:

Security concerns:

GITHUB_TOKEN permissions (from the build log in my personal repo):

2023-07-27T07:30:17.8313534Z ##[group]GITHUB_TOKEN Permissions
2023-07-27T07:30:17.8314113Z Contents: read
2023-07-27T07:30:17.8314608Z Metadata: read
2023-07-27T07:30:17.8314957Z Packages: read
2023-07-27T07:30:17.8315233Z ##[endgroup]

Comparison of resources:

Resource Current, Cirrus CI Suggested, GitHub Actions
CPU 6 2
RAM, GB 12 7

The TEST_RUNNER_TIMEOUT_FACTOR variable is set to the current default value for all CI tasks:

export TEST_RUNNER_TIMEOUT_FACTOR=${TEST_RUNNER_TIMEOUT_FACTOR:-40}

@DrahtBot
Copy link
Contributor

DrahtBot commented Jul 27, 2023

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Reviews

See the guideline for information on the review process.

Type Reviewers
Concept ACK real-or-random
Stale ACK dergoegge

If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

Conflicts

No conflicts as of last run.

@DrahtBot DrahtBot added the Tests label Jul 27, 2023
@maflcko
Copy link
Member

maflcko commented Jul 28, 2023

Can you remove the Windows Cirrus task here, as it will need to be removed either way? Also, a link to a build would be nice, before this is enabled here.

@maflcko
Copy link
Member

maflcko commented Jul 28, 2023

Maybe also print the GITHUB_TOKEN permissions at every start of the task, just to double check they are read-only?

@hebasto
Copy link
Member Author

hebasto commented Jul 28, 2023

Can you remove the Windows Cirrus task here, as it will need to be removed either way?

Done.

Maybe also print the GITHUB_TOKEN permissions at every start of the task, just to double check they are read-only?

They are printed by default. To see them, in https://github.com/hebasto/bitcoin/actions/runs/5685393993/job/15410187833, one needs to expand "Set up job", then expand "GIHUB_TOKEN Permissions".

@maflcko
Copy link
Member

maflcko commented Jul 28, 2023

Ok, so I guess someone needs to enable Actions in both orgs for this to proceed.

@maflcko
Copy link
Member

maflcko commented Jul 28, 2023

In the meantime it may be good to do 10 runs and then check how many of them fail

@hebasto
Copy link
Member Author

hebasto commented Jul 29, 2023

In the meantime it may be good to do 10 runs and then check how many of them fail

Observing intermittent "Error: no RPC connection". Converting this PR to a draft for now.

UPD. Timeout has been adjusted.

@hebasto hebasto marked this pull request as draft July 29, 2023 09:11
@hebasto hebasto marked this pull request as ready for review July 30, 2023 14:22
@hebasto
Copy link
Member Author

hebasto commented Jul 30, 2023

In the meantime it may be good to do 10 runs and then check how many of them fail

10 runs are green for the recent commit:

Ok, so I guess someone needs to enable Actions in both orgs for this to proceed.

@sipa @fanquake

Mind enabling GitHub Actions in the https://github.com/bitcoin/bitcoin repository?

I'm suggesting the repository "Actions permissions" as follows:

image

image

@hebasto
Copy link
Member Author

hebasto commented Aug 1, 2023

Rebased on top of the merged #28188.

@hebasto
Copy link
Member Author

hebasto commented Aug 5, 2023

Converting this PR to a draft as it conflicts with #28187.

Please review #28187 first.

@hebasto
Copy link
Member Author

hebasto commented Aug 19, 2023

#28292 is a blocker for this PR.

@maflcko
Copy link
Member

maflcko commented Aug 21, 2023

#28292 is a blocker for this PR.

Is it? It should only affect the cache hit percentage, no? And the cache hit percentage shouldn't affect the behavior of this pull, except for the cache hit percentage, potentially.

@hebasto
Copy link
Member Author

hebasto commented Aug 21, 2023

#28292 is a blocker for this PR.

Is it? It should only affect the cache hit percentage, no?

Yes, that is what I mean. Without #28292, caches for the master branch are to be evicted very often. And this PR makes it roughly 2 times more often.

@maflcko
Copy link
Member

maflcko commented Aug 21, 2023

Ok, fair enough. But that shouldn't be a blocker to rebase this, and for code review to happen on the rebase.

@dergoegge
Copy link
Member

By the way, what's an "lgtm ACK"?

(at least for me) it's just a normal ack pre-fixed with "looks good to me"

Copy link
Member

@dergoegge dergoegge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

reACK a3ebaa2

@hebasto
Copy link
Member Author

hebasto commented Aug 25, 2023

Friendly ping @MarcoFalke :)

@hebasto
Copy link
Member Author

hebasto commented Aug 25, 2023

Updated a3ebaa2 -> 6a43372 (pr28173.11 -> pr28173.12):

@maflcko
Copy link
Member

maflcko commented Aug 25, 2023

lgtm

@hebasto hebasto requested a review from dergoegge August 25, 2023 15:04
@maflcko maflcko requested a review from fanquake August 28, 2023 08:11
@maflcko
Copy link
Member

maflcko commented Aug 28, 2023

Would be good to merge it, otherwise the CI will break this week.

@maflcko maflcko added this to the 26.0 milestone Aug 28, 2023
@fanquake fanquake merged commit db57574 into bitcoin:master Aug 28, 2023
C:\ProgramData\chocolatey\lib\ccache
C:\ProgramData\chocolatey\bin\ccache.exe
C:\ccache\cl.exe
key: ${{ github.job }}-ccache-installation-${{ env.CI_CCACHE_VERSION }}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the cache key will additionally include the branch name / context, so this will cycle the cache. See https://github.com/bitcoin/bitcoin/actions/caches

win64-native-ccache-installation-4.7.5 2.7 MB cached August 28, 2023 08:55
refs/pull/27601/merge 

 win64-native-ccache-installation-4.7.5 2.7 MB cached August 28, 2023 07:43
refs/pull/26312/merge 

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#28173 (comment):

While key remains the same, pull requests will restore cache from the master branch and make no new saves.

A few pull requests created their caches since they had not been created for the master branch yet.

All recent pull requests skipped saving their caches because they hit the caches from the master branch.

uses: actions/cache@v3
with:
path: C:/vcpkg/downloads/tools
key: ${{ github.job }}-vcpkg-tools
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same, etc ...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hebasto hebasto deleted the 230727-actions branch August 28, 2023 20:21
fanquake added a commit to bitcoin-core/gui that referenced this pull request Aug 30, 2023
…nal tests for pull requests

62ab3e9 ci, windows: Do not run extended functional tests for pull requests (Hennadii Stepanov)

Pull request description:

  This PR is intended to speed up the CI feedback for pull requests:

  - a [PR](https://github.com/bitcoin/bitcoin/actions/runs/6019964104?pr=28196) opened against the current master branch:
  ![image](https://github.com/bitcoin/bitcoin/assets/32963518/481a70eb-13f3-40c9-8f6a-ca2f06350158)

  - this PR:
  ![image](https://github.com/bitcoin/bitcoin/assets/32963518/2582307f-7b72-4816-b5be-e84d5e4a3016)

  Suggested in bitcoin/bitcoin#28173 (comment):

  > An alternative would be to run them on non-pr pushes only. Failures should be rare enough to deal with them post-merge.

ACKs for top commit:
  MarcoFalke:
    lgtm ACK 62ab3e9 if https://github.com/hebasto/bitcoin/actions/runs/6023862001/job/16341417883 is green

Tree-SHA512: e937efc5c03290f5d246ce1b0638dc72f39ef1d509ba5d2063f92bfe9157c602e6a952a9558dfc6413bbc5209fe55280b3278a0e4079773b8cc9ff236c8f9246
# Increase the dynamic port range to the maximum allowed value to mitigate "OSError: [WinError 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted".
# See: https://learn.microsoft.com/en-us/biztalk/technical-guides/settings-that-can-be-modified-to-improve-network-performance
- netsh int ipv4 set dynamicport tcp start=1025 num=64511
- netsh int ipv6 set dynamicport tcp start=1025 num=64511
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, logs say nothing about WinError 10048 error.

See #28384 for a proposed fix.

sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Sep 26, 2023
sidhujag pushed a commit to syscoin/syscoin that referenced this pull request Sep 26, 2023
…s for pull requests

62ab3e9 ci, windows: Do not run extended functional tests for pull requests (Hennadii Stepanov)

Pull request description:

  This PR is intended to speed up the CI feedback for pull requests:

  - a [PR](https://github.com/bitcoin/bitcoin/actions/runs/6019964104?pr=28196) opened against the current master branch:
  ![image](https://github.com/bitcoin/bitcoin/assets/32963518/481a70eb-13f3-40c9-8f6a-ca2f06350158)

  - this PR:
  ![image](https://github.com/bitcoin/bitcoin/assets/32963518/2582307f-7b72-4816-b5be-e84d5e4a3016)

  Suggested in bitcoin#28173 (comment):

  > An alternative would be to run them on non-pr pushes only. Failures should be rare enough to deal with them post-merge.

ACKs for top commit:
  MarcoFalke:
    lgtm ACK 62ab3e9 if https://github.com/hebasto/bitcoin/actions/runs/6023862001/job/16341417883 is green

Tree-SHA512: e937efc5c03290f5d246ce1b0638dc72f39ef1d509ba5d2063f92bfe9157c602e6a952a9558dfc6413bbc5209fe55280b3278a0e4079773b8cc9ff236c8f9246
@bitcoin bitcoin locked and limited conversation to collaborators Aug 31, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants