-
Notifications
You must be signed in to change notification settings - Fork 58
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
ci(docker): rework workflow (3rd time) #289
Conversation
Achievements:Compared to current stage, my version enables i386, armv7, armv8 and arm64(maybe a duplicate of armv8), besides of amd64. Image will be built once and then push to ghcr, quay and dockerhub, with tag of either version or date, as well as latest. Once upgraded, most of use cases will be satisfied. Ready for review. @kunish @mzz2017 @yqlbu Limitations and explanation:I've tried my best. As for paralleled image build process using matrix, I've kind of gave up. The whole build process will run about one hour, which may cause a problem of hitting the limit of free action access of 2000 minutes per month per account. As for the parallel one, a single run takes only about half an hour, but now it is entirely unusable. Mips64le (solely debian based) Goals not achieved:Platform support for more platforms Later I'll update the documents. Thanks for your patience again. I also learned a lot from this experience. |
Excuse me? Has anyone pay any attention to this pr yet? |
@hero-intelligent When it comes to
|
From your sample workflow run, everything meets our expectations except the list of build candidates (platforms). Ideally, we should ONLY consider offering this containerization deployment alternative to |
|
full change log: ci(docker): come back arm64 platform support (Experimental) ci(docker): publish dockerhub image ci(docker): action version upgrade ci(docker): multiple action trigger -------------------- * add dockerhub * fix workflow error * fix workflow error * dockerhub * no quay * nothing important * dockerhub username * nothing important * test architecture * test repo * new platforms * nth important * nth important * ci(build): publish docker image * ci: upgrade docker build workflow * ci: error fix * nth important * ci: standardize Dockerfile * ci: docker build roll back * correct mistake recursive * test push * ci(docker): rework docker publish workflow, push to dockerhub Signed-off-by: hero-intelligent <[email protected]> --------- Signed-off-by: hero-intelligent <[email protected]>
* add dockerhub * fix workflow error * fix workflow error * dockerhub * no quay * nothing important * dockerhub username * nothing important * test architecture * test repo * new platforms * nth important * nth important * ci(build): publish docker image * ci: upgrade docker build workflow * ci: error fix * nth important * ci: standardize Dockerfile * ci: docker build roll back * correct mistake recursive * test push * ci(docker): build with tag on dashboard * ci(docker):upgrade and rework docker ci * ci(docker): comment * ci: use DOCKERHUB_TOKEN --------- Signed-off-by: hero-intelligent <[email protected]>
* add dockerhub * fix workflow error * fix workflow error * dockerhub * no quay * nothing important * dockerhub username * nothing important * test architecture * test repo * new platforms * nth important * nth important * ci(build): publish docker image * ci: upgrade docker build workflow * ci: error fix * nth important * ci: standardize Dockerfile * ci: docker build roll back * correct mistake recursive * test push * ci(docker): build with tag on dashboard * ci(docker):upgrade and rework docker ci * ci(docker): comment * ci: use DOCKERHUB_TOKEN * ci(docker): more platform, matrix(disabled), build test * ci(docker): needs build-web * ci(docker):armv5 won't build Armv5 can build on debian but cannot build on alpine Armv6 can build on alpine but cannot build on debian Signed-off-by: hero-intelligent <[email protected]> * not pullute Dockerfile Signed-off-by: hero-intelligent <[email protected]> * Delete not-tested .github/workflows/test-publish-docker-image.yml Signed-off-by: hero-intelligent <[email protected]> * Delete deprecated .github/workflows/docker-ci.yml Signed-off-by: hero-intelligent <[email protected]> * ci(docker): publish-docker-image.yml ci(docker): build web outside the Dockerfile ci(docker): docker enabled armv7 and armv8 Signed-off-by: hero-intelligent <[email protected]> --------- Signed-off-by: hero-intelligent <[email protected]>
Signed-off-by: hero-intelligent <[email protected]>
Signed-off-by: hero-intelligent <[email protected]>
~~self-build~~ Co-authored-by: kev <[email protected]> Signed-off-by: hero-intelligent <[email protected]>
types: [prereleased,released] | ||
|
||
env: | ||
REGISTRY_IMAGE: daeuniverse/daed |
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.
This variable is no longer necessary
# with: | ||
# submodules: 'recursive' |
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.
We did it on purpose, as those source code files under submodules are also used by linux distro packages, such as archlinux and gentoo. For example, the packaging process of gentoo is done inside a isolated environment, which means we can't do git clone as we desire.
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.
Oh, does build-web need sub-modules as well? I thought this process just renders htmls.
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.
Yeah, they are requested by package maintainers
now the image in this ghcr.io is still not usable. please build again as soon as possible, if this pr can be merged. |
Awesome, let's ship it! |
This build process is time consuming, which takes about one hour. You can disable |
OK |
@hero-intelligent I will update the workflow definition accordingly. Stay tuned. |
Background
Thanks for your patience. Maybe this will help. Only the tested will be squashed into one commit and pushed here. I'll try not to close pr so frequently. Feel free to review my working status in my repo.
Checklist
Full Changelogs
Issue Reference
#280
#267
#286
Test Result
Action page
Dockerhub page
Download log archive
View raw logs
It should work, but we need cooperation.