-
-
Notifications
You must be signed in to change notification settings - Fork 294
Feature: Implement Docker-based building and client tests #4565
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
Conversation
Coverage summary from CodacySee diff coverage on Codacy
Coverage variation details
Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: Diff coverage details
Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: See your quality gate settings Change summary preferences |
Hey @AnXh3L0 I just noticed this now, shall i proceed with a first round of review or is there still something you want to complete? I will give this a try tomorrow. I see that the test run is failing but it is probably due to problems related to the devel branch, while for this changes we could directly instegrate inside the stable. |
@evilaliv3 yes, I think you can start with a first round of review, I don't think there's anything else I can add for now. |
831a6be
to
5adf68d
Compare
I remodeled the pull request to be based on current stable branch in order to perform a first review. |
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.
Hello @AnXh3L0 , i've loaded all my current comments suggesting the changes to apply before merge.
Thanks for the comments @evilaliv3, I am checking and applying the changes you requested. |
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.
Thank you @AnXh3L0
I think all is good to go. I would amiliorate just adding the hashes of all the base images used
Thank you @AnXh3L0 Actually i notice still duplication in hash definition and hash usage. As example i refer to: BASE_IMAGE_BOOKWORM: debian:bookworm-slim@sha256:36e591f228bb9b99348f584e83f16e012c33ba5cad44ef5981a1d7c0a93eca22 and: BASE_IMAGE: ${BASE_IMAGE_BOOKWORM:-debian:bookworm-slim@sha256:36e591f228bb9b99348f584e83f16e012c33ba5cad44ef5981a1d7c0a93eca22} Above is defined an hash but while using it the hash is provided again. Is this necessary or could we write it once? |
Coverage summary from CodacySee diff coverage on Codacy
Coverage variation details
Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: Diff coverage details
Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: See your quality gate settings Change summary preferences |
Coverage summary from CodacySee diff coverage on Codacy
Coverage variation details
Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: Diff coverage details
Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: See your quality gate settings Change summary preferences |
9d221ef
to
28a098a
Compare
Changes applied: - restored original static docker-compose.yml used for production purposes - extended original docker-compose with health checks as in new testing compose - add missing testing of debian bullseye - reduced code duplication - removed usage of deprecated apt-key
2beba4b
to
a41c10d
Compare
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.
🚀 LGTM @AnXh3L0 !
In my review i've applied the following changes and attempted to reduce code duplication:
- restored original static docker-compose.yml used for production purposes
- extended original docker-compose with health checks as in new testing compose
- add missing testing of debian bullseye
- removed usage of deprecated apt-key
Proceeding with the merge!
This PR aims to improve the current Docker-building methodology, by re-using the same build.yml file while adding a new install-docker script. Among the changes, we have implemented parallel Docker building and test execution on all the distros we currently support, with bookworm as the default one.
Additionally, the Cypress tests have been changed to run on these Docker instances, and Lighthouse testing has been added for the three main public-facing pages, that do not require log in.
Currently, the workflows may fail because there's a few Cypress tests failing, but the workflow is generally stable. A few changes have been introduced to the .dockerignore and the .gitignore files, in order to prevent local tests from being accidentally commited to the remote repo.
Moreover, almost every step of the build is commented, in order to make it easier to understand what each line does. At the moment, the workflow takes about 30-40 minutes to execute, when running the default bookworm build process.