Ftr/550 build from sep frontend and backend
Description, Context and related Issue
This major change reflects the frontend/backend separation. As frontend and backend are moved into separate repos now, their code can be removed. Instead Dockerfiles to build the frontend and backend are inserted, as well as a docker-compose.yml to set up an environment with eXist-db server (for backend) and nginx server (for frontend)
Closes #550
How Has This Been Tested?
navigated into cloned repository and in terminal: docker compose up
also see README
Types of changes
- New feature (non-breaking change which adds functionality)
- Breaking change (fix or feature that would cause existing functionality to change)
- Documentation Update
- Improvement
- Refactoring
Overview
- I have updated the inline documentation accordingly.
- I have performed a self-review of my code, according to the style guide
- I have read the CONTRIBUTING document.
The build test currently fails because it is tailored to the old monolithic Edirom-Online structure (build with build.sh)
Since you asked for it, here are my 2cent: tldr: I wouldn't merge this PR with failing tests.
I see two options: the simple solution is to remove the pre-release.yml from this repo and copy the actual tests "check-language-files" and "xqunit" to the backend-repo where they belong.
The other tasks concern building the artifacts and the Docker image, as well as as tagging and releasing. I think that might be set up for the backend and the frontend repo, too.
Now I wonder (and that is my option 2), whether we should keep publishing a single Docker image for the Edirom Online? I think that may be beneficial for people who want to simply download and run the image? (and of course for some sort of backwards compatibility)
I wrote nonsense:
Now I wonder (and that is my option 2), whether we should keep publishing a single Docker image for the Edirom Online? I think that may be beneficial for people who want to simply download and run the image? (and of course for some sort of backwards compatibility)
There has never been such an Edirom Online Docker image. So please disregard this remark.
I wrote nonsense:
Now I wonder (and that is my option 2), whether we should keep publishing a single Docker image for the Edirom Online? I think that may be beneficial for people who want to simply download and run the image? (and of course for some sort of backwards compatibility)
There has never been such an Edirom Online Docker image. So please disregard this remark.
Thanks for the hint @peterstadler
So you agree that we do not need an action in this repo which starts up the complete thing (docker compose up) and runs tests for the individual docker containers? This would be a double-check and unnecessary resource use because the individual repos have these tests then already, right?
regarding documentation in readme.md
- move about and showcases to the top. user installation bevore dev
Test cases:
Test cases using different editions:
EditionExample:
export EDITION_XAR=https://github.com/Edirom/EditionExample/releases/download/v0.1.1/EditionExample-0.1.1.xar
docker compose up
Klarinettenquintett:
export EDITION_XAR=https://git.uni-paderborn.de/-/project/7894/uploads/0e0c97b029820cc94302d4c6151bec79/weber-klarinettenquintett-eol-emeritus.xar
docker compose up
Test cases:
Test cases using different editions:
EditionExample:
export EDITION_XAR=https://github.com/Edirom/EditionExample/releases/download/v0.1.1/EditionExample-0.1.1.xar docker compose upKlarinettenquintett:
export EDITION_XAR=https://git.uni-paderborn.de/-/project/7894/uploads/0e0c97b029820cc94302d4c6151bec79/weber-klarinettenquintett-eol-emeritus.xar docker compose up
@daniel-jettka Thanks, that is very helpful! Just another (hopefully little) request. Is it also possible to mount a local directory or must the .xar be loaded from the internet? (If this is complicated it may be an issue for a later release)
When clicking the "About" button the "About Edirom Online" window will not load with the following output in the console: ...
Thanks, we have to update the mounting of the CITATION.cff files -> Issue: https://github.com/Edirom/Edirom-Online-Frontend/issues/73 -> PR: https://github.com/Edirom/Edirom-Online-Frontend/pull/74
When clicking the "?" (Help) button in the footer the images of the document will not load with the following output in the console: ...
Right, this is a path problem and the images should reside in the frontend anyway, so we should move them -> Issue: https://github.com/Edirom/Edirom-Online-Backend/issues/58 -> PR: https://github.com/Edirom/Edirom-Online-Backend/pull/59
@daniel-jettka Thanks, that is very helpful! Just another (hopefully little) request. Is it also possible to mount a local directory or must the
.xarbe loaded from the internet? (If this is complicated it may be an issue for a later release)
Will have a look if it could work with ADD command (https://www.docker.com/blog/docker-best-practices-understanding-the-differences-between-add-and-copy-instructions-in-dockerfiles/)
@daniel-jettka Thanks, that is very helpful! Just another (hopefully little) request. Is it also possible to mount a local directory or must the
.xarbe loaded from the internet? (If this is complicated it may be an issue for a later release)Will have a look if it could work with ADD command (https://www.docker.com/blog/docker-best-practices-understanding-the-differences-between-add-and-copy-instructions-in-dockerfiles/)
It is now possible to copy one or more edition xars into the directory backend/autodeploy. They are uploaded into the eXist-db then -> https://github.com/Edirom/Edirom-Online/commit/6bb2882aee4df105acb5267b128c2973e8c2a316
@DennisFriedl I created issues and PRs for the bug reports in https://github.com/Edirom/Edirom-Online/pull/559#pullrequestreview-2846367885 and re-requested a review in case you approve besides these frontend/backend-specific bugs :-)
Hi @DennisFriedl @peterstadler @roewenstrunk "Merging is blocked - At least 1 approving review is required by reviewers with write access."
Could one of you review? :-)