Skip to content

Cirrus CI: Prepare for druntime/Phobos CI#11868

Merged
dlang-bot merged 8 commits intodlang:masterfrom
kinke:ci
Oct 19, 2020
Merged

Cirrus CI: Prepare for druntime/Phobos CI#11868
dlang-bot merged 8 commits intodlang:masterfrom
kinke:ci

Conversation

@kinke
Copy link
Contributor

@kinke kinke commented Oct 13, 2020

No description provided.

In order not to have to `source` it multiple times, leading to ugly
clutter in CI logs.
@kinke kinke force-pushed the ci branch 4 times, most recently from e9383ff to c5e2cdd Compare October 13, 2020 17:39
As preparation for using this script for druntime/Phobos CI too.
@kinke kinke marked this pull request as ready for review October 13, 2020 18:09
@kinke
Copy link
Contributor Author

kinke commented Oct 13, 2020

Alright, enabling Cirrus CI for druntime and Phobos after this should be a matter of adding some ~80 YAML lines to both repos, very similar to how Azure CI is handled.

@dlang-bot
Copy link
Contributor

Thanks for your pull request and interest in making D better, @kinke! We are looking forward to reviewing it, and you should be hearing from a maintainer soon.
Please verify that your PR follows this checklist:

  • My PR is fully covered with tests (you can see the coverage diff by visiting the details link of the codecov check)
  • My PR is as minimal as possible (smaller, focused PRs are easier to review than big ones)
  • I have provided a detailed rationale explaining my changes
  • New or modified functions have Ddoc comments (with Params: and Returns:)

Please see CONTRIBUTING.md for more information.


If you have addressed all reviews or aren't sure how to proceed, don't hesitate to ping us with a simple comment.

Bugzilla references

Your PR doesn't reference any Bugzilla issue.

If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog.

Testing this PR locally

If you don't have a local development environment setup, you can use Digger to test this PR:

dub run digger -- build "master + dmd#11868"

@kinke kinke added the Review:Blocking Other Work review and pulling should be a priority label Oct 13, 2020
@kinke kinke mentioned this pull request Oct 13, 2020
Copy link
Member

@WalterBright WalterBright left a comment

Choose a reason for hiding this comment

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

  1. Non-trivial changes should come with at least some explanation of what the PR does other than "Prepare".

  2. Bash code is code and should be commented as appropriate.

@kinke
Copy link
Contributor Author

kinke commented Oct 14, 2020

  1. See Cirrus CI: Prepare for druntime/Phobos CI #11868 (comment). I assumed the reviewer would be somewhat familiar with the CI process, as Azure is set up similarly (but way more complex over all). - The point is to make the YAML files as compact as possible, because they are required for each repo, e.g., by extracting the prerequisites installation to external cirrusci.sh. The druntime and Phobos repos clone the dmd repo anyway and can re-use that file for their CI, as well as ci.sh, which is also used by Semaphore CI, see linked druntime and Phobos PRs.

  2. I assume you mean a little header for new cirrusci.sh; if not, please be more specific.

kinke added 2 commits October 14, 2020 14:20
As preparation for druntime/Phobos CI, so that they can use this file
too instead of having to duplicate these steps in their .cirrus.yml.
HOST_DC is more self-descriptive I think; DMD & D_VERSION are rather
misleading for D host compiler and its version.

Also get rid of the `install_d` arg and use HOST_DC directly.
sudo wget https://raw.githubusercontent.com/D-Programming-GDC/GDMD/master/dmd-script -O /usr/bin/gdmd-${GDC_VERSION}
sudo chmod +x /usr/bin/gdmd-${GDC_VERSION}
sudo curl -fsSL -A "$CURL_USER_AGENT" --connect-timeout 5 --speed-time 30 --speed-limit 1024 --retry 5 --retry-delay 5 https://raw.githubusercontent.com/D-Programming-GDC/GDMD/master/dmd-script -o /usr/bin/gdmd-$gdc_version
sudo chmod +x /usr/bin/gdmd-$gdc_version
Copy link
Member

Choose a reason for hiding this comment

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

? I see only one script being created in the code

Copy link
Contributor Author

Choose a reason for hiding this comment

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

This gdmd script is downloaded one line above.

@WalterBright
Copy link
Member

Comments are better now. Pls fix the remaining comments then merge. Thanks!

@kinke
Copy link
Contributor Author

kinke commented Oct 15, 2020

Okay, I think your remaining comments (the majority of which not related to changes in this PR :]) should have been addressed.

@kinke
Copy link
Contributor Author

kinke commented Oct 15, 2020

The std.concurrency unittest segfault for the one Ubuntu x64 job is unrelated and hopefully no random master regression caused by dlang/phobos#7655 / dlang/phobos#7661:

generated/linux/debug/64/unittest/libphobos2-ut.so(_D4core7runtime18runModuleUnitTestsUZ19unittestSegvHandlerUNbiPSQCk3sys5posix6signal9siginfo_tPvZv+0x55)[0x7fb2f4d5577d]
/lib/x86_64-linux-gnu/libc.so.6(+0x354c0)[0x7fb2f0dff4c0]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std11concurrency5yieldFNbZv+0x4a)[0x7fb2f35fcd42]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std11concurrency10MessageBox__T3getTDFNaNbNiNfiZvTPFNaNiNfCQCiQCh14LinkTerminatedZvTPFNaNiNfCQDqQDp15OwnerTerminatedZvTPFNfSQEv7variant__T8VariantNVmi32ZQpZvZQExMFMQEyMQEoMQDkMQCfZb+0x7b)[0x7fb2f360ef6b]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std11concurrency__T11receiveOnlyTiZQqFZi+0x88)[0x7fb2f360edbc]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std11concurrency19__unittest_L1854_C9FZ13testSchedulerFCQCfQCe9SchedulerZ9__lambda2MFZ9__lambda1FZ12__dgliteral1MFNaNiNfZv+0x11)[0x7fb2f35fcfd9]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std9exception__T15assertNotThrownHTC4coreQBm11AssertErrorTvZQBsFNaLvAyaQdmZv+0x35)[0x7fb2f361e1ad]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std11concurrency19__unittest_L1854_C9FZ13testSchedulerFCQCfQCe9SchedulerZ9__lambda2MFZ9__lambda1FZv+0x48)[0x7fb2f35fcf7c]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D3std11concurrency__T6_spawnTPFZvZQnFbQjZ4execMFZv+0x40)[0x7fb2f360dc98]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D4core6thread7context8Callable6opCallMFZv+0x41)[0x7fb2f4d6ae71]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D4core6thread10threadbase10ThreadBase3runMFZv+0x19)[0x7fb2f4d67c15]
generated/linux/debug/64/unittest/libphobos2-ut.so(_D4core6thread8osthread6Thread3runMFZv+0x15)[0x7fb2f4d69549]
generated/linux/debug/64/unittest/libphobos2-ut.so(thread_entryPoint+0xe5)[0x7fb2f4d6a65d]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x76ba)[0x7fb2f09b06ba]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7fb2f0ed14dd]
posix.mak:413: recipe for target 'unittest/std/concurrency.run' failed
make[1]: *** [unittest/std/concurrency.run] Segmentation fault (core dumped)

@kinke
Copy link
Contributor Author

kinke commented Oct 19, 2020

Ping.

@kinke
Copy link
Contributor Author

kinke commented Oct 19, 2020

This won't automerge due to an autotester 'break'.

@thewilsonator
Copy link
Contributor

Really? everything looks green.

@dlang-bot dlang-bot merged commit 17f73d0 into dlang:master Oct 19, 2020
@kinke kinke deleted the ci branch October 19, 2020 16:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Merge:auto-merge Review:Blocking Other Work review and pulling should be a priority

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

Comments