generated from opensafely-core/repo-template
-
Notifications
You must be signed in to change notification settings - Fork 0
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
WIP: Test codespaces #25
Closed
Closed
+157
−9
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
In GitHub Actions workflow.
It's a simpler command.
Using `pigz` cuts the compression time from about 4 minutes to 2 minutes in the default 4 core GitHub Actions runner. The `upload-artifact` action also compresses with `zlib` which is redundant, so let's disable this to speed up the upload step.
One-off comparison in GitHub Actions with the default 4 core runner: * default `pigz`: 1.7G file size, 1m 49s * `--fast`: 1.9G file size, 1m 16s The upload and download time for the file compressed with default settings is about 10 seconds (turning compression off for the upload).
This is a separate job so that we can easily and cleanly have the research-template repository checked out. We could consider moving the smoke test here, although it's maybe advantageous to have that fail early, before the Docker image is compressed (because that's a slow step).
Check these are the same as the OpenSAFELY Python Docker image.
It needs to match that which we tag locally, otherwise we'll end up pulling the image instead of using the locally built image.
There may be better software out there to do this, but this is available in Ubuntu's repositories, without having to manually download a software release. Hopefully, `jq` eventually gets functionality to handle this without needing another package.
As the comments explain, the R packaging situation is slightly complicated. We have additional packages due to the Rocker image. Some of these are duplicates of those in the OpenSAFELY R image; some with the same version and some with a different version. An alternative approach might have been to: * copy the OpenSAFELY R packages to a path that is unique * add that library tree to the front of `.libPaths`, so these packages always take precedence over other installed versions * when comparing, compare the `installed_packages` in the specific OpenSAFELY library tree of interest: ```r installed.packages(lib.loc="/usr/local/lib/R/opensafely-site-library") ``` taken from the OpenSAFELY image. That would remove the need for the exemptions when checking. Fow now, it's possibly more useful still being aware of these additional packages and checking for them explicitly.
With the R checks.
We're not going to do this right now. See opensafely-core/codespaces-initiative#18. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Depends on #13.
May not actually be viable, but let's try.