Šrumec is a school project created for the MOIS (Modern Information Systems) course at UHK.
The goal of the application is to enable sharing of local events using a modern service architecture.
The backend of the project is built on a microservice architecture, which is a key requirement of the MOIS course.
- Jiří Žák
- Jiří Dostál
- Martin Portych
- Michal Novák
git clone https://github.com/jirka124/srumec
cd srumecThis project works as a monorepo that contains other services using git subtree:
| Path | Repository |
|---|---|
./srumec-orchestration |
Repo |
./srumec-events-service |
Repo |
./srumec-chats-service |
Repo |
./srumec-rabbitmq-client |
Repo |
./srumec-rabbitmq-service |
Repo |
./srumec_auth |
Repo |
./srumec-admin-app |
Repo |
./srumec-expire-service |
Repo |
./srumec-users-service |
Repo |
./srumec-ws-service |
Repo |
Regular project update:
git pullAdding a remote (e.g., orchestration):
git remote add <remote_name> <remote_url>
# Example:
git remote add orchestration https://github.com/jirka124/srumec-orchestration.gitAdding a subtree (e.g., srumec-orchestration):
git subtree add --prefix=<subfolder_name> <remote_name> main --squash
# Example:
git subtree add --prefix=srumec-orchestration orchestration main --squashTo pull updates from a specific subtree within monorepo (e.g., orchestration):
git fetch <remote_name>
git subtree pull --prefix=<subfolder_name> <remote_name> main --squash
git push origin main
# Example:
git fetch orchestration
git subtree pull --prefix=srumec-orchestration orchestration main --squash
git push origin mainTo push updates to a specific subtree within monorepo (e.g., orchestration):
git add <files>
git commit -m "<message>"
# Create a temporary branch containing ONLY the history of the subtree
git subtree split --prefix=<subfolder_name> -b <temp_branch_name>
# Push the temporary branch INTO the remote repository
git push <remote_name> <temp_branch_name>:main
# Delete temporary branch (optional)
git branch -D <temp_branch_name>
# Example:
git add .
git commit -m "Update orchestration config"
git subtree split --prefix=srumec-orchestration -b orchestration-temp
git push orchestration orchestration-temp:main
git branch -D orchestration-tempThe application is started using the orchestration inside the directory:
./srumec-orchestration