CI/CD using GitHub Actions #361
Merged
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.
This PR closes #358. (It also fixes a version metadata in
dune-project
)Note: I guess the CI won't start as soon as I open this PR, because it comes from an external fork. See "checklist" below.
Anyway, the experiments I did in the pfitaxel fork (cf. "dry-run" part below) show this will fix #360 (Docker Hub deployment issue).
To sum up, it replaces Travis CI + Docker Hub automated build with GitHub Actions for both CI and CD, keeping the same semantics as much as possible.
Checklist
@yurug below are the steps I have applied to test this PR; you'll need to apply them on your side before merging the PR:
DOCKER_USERNAME
:= your Docker Hub loginDOCKER_PASSWORD
:= the token from item 2;Dry-run
This GitHub Actions configuration gathers four YAML files (there is a little duplication between
deploy-*.yml
files but it appears GitHub Action doesn't provide yet ways to "include" a YAML in another one):build-and-test.yml
- example runbuild-macos.yml
- example rundeploy-master.yml
- example rundeploy-tags.yml
- example runComparison with Docker Hub automated build
According to the line
cat /proc/cpuinfo /proc/meminfo
I've added in (the first stage of) the Dockerfile, it is very possible issue #360 showed up because of lack of RAM:Docker Hub: 1 processor; memory:
GitHub Actions: 2 processors; memory: