-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' of github.com:CityConnect-TQS/control-room
- Loading branch information
Showing
12 changed files
with
116 additions
and
85 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
on: | ||
push: | ||
branches: | ||
- main | ||
workflow_dispatch: | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
deploy: | ||
runs-on: self-hosted | ||
name: Deploy to DETI machine | ||
env: | ||
PRODUCTION: true | ||
CURRENCY_API_KEY: ${{secrets.CURRENCY_API_KEY}} | ||
JWT_PRIVATE: ${{secrets.JWT_PRIVATE}} | ||
JWT_PUBLIC: ${{secrets.JWT_PUBLIC}} | ||
POSTGRES_PASSWORD: ${{secrets.POSTGRES_PASSWORD}} | ||
HOST_URL: deti-tqs-16.ua.pt | ||
steps: | ||
- name: Checkout repo | ||
uses: actions/checkout@v4 | ||
|
||
- name: Login to GitHub Packages | ||
uses: docker/login-action@v3 | ||
with: | ||
registry: ghcr.io | ||
username: ${{ github.actor }} | ||
password: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
- name: Deploy with Docker Compose | ||
run: | | ||
docker compose -f compose.prod.yaml pull | ||
docker compose -f compose.prod.yaml up -d --remove-orphans | ||
docker container prune -f | ||
docker image prune -af | ||
docker builder prune -af |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,74 +1,52 @@ | ||
# CityConnect | ||
|
||
This project is undertaken as part of the TQS course, with the goal of developing a MVP product while applying software enterprise architecture patterns, specifying and enforcing a Software Quality Assurance (SQA) strategy and applying Continuous Testing, Continuous Integration and Continuous Delivery practices. The chosen theme was a bus service, like the ones you found in common transportation terminals. This is a digital service which includes a customer portal, tools for staff to edit bus and trips information and a digital signage system. | ||
![example workflow](https://github.com/CityConnect-TQS/control-room/actions/workflows/deploy.yaml/badge.svg) | ||
|
||
Our project aligns with these goals by focusing on the development of a user-centered online system for a public bus service, with the advantage of unifying these digital services into one. | ||
This project is undertaken as part of the TQS course, with the goal of developing an MVP product while applying software | ||
enterprise architecture patterns, specifying and enforcing a Software Quality Assurance (SQA) strategy and applying | ||
Continuous Testing, Continuous Integration and Continuous Delivery practices. | ||
The chosen theme was a bus service, like the ones you found in common transportation terminals. | ||
This is a digital service that includes a customer portal, | ||
tools for staff to edit bus and trip information and a digital signage system. | ||
|
||
## Keep repo and submodules up-to-date | ||
Our project aligns with these goals by focusing on the development of a user-centered online system for a public bus | ||
service, with the advantage of unifying these digital services into one. | ||
|
||
Do these commands every time you start working: | ||
|
||
```bash | ||
git pull | ||
git submodule foreach git pull | ||
``` | ||
|
||
If everything works right, all submodules will hopefully be updated. | ||
|
||
There is no need to commit submodule changes to this repo, since GitHub Actions does it by itself. | ||
|
||
### Full fetch & pull | ||
|
||
In the case where a full pull is needed, do the following: | ||
|
||
```bash | ||
git pull --recurse-submodules | ||
git submodule foreach git checkout main | ||
``` | ||
|
||
**WARNING: All local changes will be discarded!** | ||
|
||
## Git tips | ||
|
||
### Check current branch | ||
|
||
Run this code to get the current branch of all submodules: | ||
|
||
```bash | ||
git submodule foreach git rev-parse --abbrev-ref HEAD | ||
``` | ||
|
||
### Cherry-picking commits | ||
## Credentials for testing | ||
|
||
If you need to cherry-pick commits from another branch or repo, do the following: | ||
- <b>Email</b>: [email protected] | ||
- <b>Password</b>: admin123 | ||
|
||
```bash | ||
# Add other repo, if applicable | ||
git remote add cherry [email protected]:CityConnect-TQS/client-portal.git | ||
git fetch cherry | ||
## Project Resources | ||
|
||
# Cherry-pick one commit | ||
git cherry-pick commit_hash | ||
#### Jira | ||
- [Project (might need permission)](https://cityconnect-tqs.atlassian.net/jira/software/projects/CC/boards/1) | ||
- [Jira List](https://cityconnect-tqs.atlassian.net/jira/software/projects/CC/list?atlOrigin=eyJpIjoiZDYyYTU1NDI5MDFkNGJiM2E3ZDYwMTkxNjA4YmUyYmMiLCJwIjoiaiJ9) | ||
- [Jira Timeline](https://cityconnect-tqs.atlassian.net/jira/software/projects/CC/boards/1/timeline?shared=&atlOrigin=eyJpIjoiZTdjMmZiMWY0YjU1NDk3N2IzZWRiNTAxMWRiYWE1OWMiLCJwIjoiaiJ9) | ||
|
||
# Cherry-pick several commits | ||
git cherry-pick <commit_hash1>^..<commit_hash2> | ||
#### CI/CD Pipeline | ||
- [Link to actions workflow files on backend](https://github.com/CityConnect-TQS/staff-portal/tree/main/.github/workflows) | ||
- [Link to actions workflow files on staff portal](https://github.com/CityConnect-TQS/client-portal/tree/main/.github/workflows) | ||
- [Link to actions workflow files on client portal](https://github.com/CityConnect-TQS/digital-signage/tree/main/.github/workflows) | ||
- [Link to actions workflow files on digital signage](https://github.com/CityConnect-TQS/digital-signage/tree/main/.github/workflows) | ||
|
||
# Remove other repo, if applicable | ||
git remote remove cherry | ||
``` | ||
#### SonarCloud | ||
|
||
## Project Bookmarks | ||
- [Backend](https://sonarcloud.io/summary/overall?id=CityConnect-TQS_backend) | ||
- [Staff Portal](https://sonarcloud.io/summary/overall?id=CityConnect-TQS_staff-portal) | ||
- [Client Portal](https://sonarcloud.io/summary/overall?id=CityConnect-TQS_client-portal) | ||
- [Digital Signage](https://sonarcloud.io/summary/overall?id=CityConnect-TQS_digital-signage) | ||
|
||
- [Project Backlog](https://cityconnect-tqs.atlassian.net/jira/software/projects/CC/boards/1/backlog) | ||
- [API Documentation](http://api.localhost/api/docs/swagger-ui/index.html) | ||
- [Static Analysis](https://sonarcloud.io/project/overview?id=CityConnect-TQS_backend) | ||
#### Deployment | ||
|
||
- CI/CD enviroment: Check the [backend](https://github.com/CityConnect-TQS/backend) submodule on how CI/CD is used for testing and Sonar analysis | ||
- [Staff Portal](http://deti-tqs-16.ua.pt/staff/) | ||
- [Client Portal](http://deti-tqs-16.ua.pt) | ||
- [Digital Signage](http://deti-tqs-16.ua.pt/digital/) | ||
- [API Documentation](http://deti-tqs-16.ua.pt/api/docs/swagger-ui/index.html) | ||
|
||
## Credentials for testing | ||
#### Demo | ||
|
||
- <b>Email</b>: [email protected] | ||
- <b>Password</b>: admin123 | ||
- [Videos](https://github.com/CityConnect-TQS/control-room/tree/main/docs/demo) | ||
|
||
## Project Team | ||
|
||
|
Submodule backend
updated
20 files
Submodule client-portal
updated
11 files
+88 −0 | .github/workflows/lightHouse.yaml | |
+32 −1 | .github/workflows/submodule.yaml | |
+2 −1 | Dockerfile.prod | |
+2 −0 | src/components/navbar.tsx | |
+22 −2 | src/components/reservationcard.tsx | |
+65 −12 | src/routes/reservation/myreservations.lazy.tsx | |
+24 −15 | src/routes/trips/index.lazy.tsx | |
+2 −1 | src/service/config.ts | |
+15 −3 | src/service/reservationService.ts | |
+12 −5 | src/service/userService.ts | |
+5 −1 | src/types/reservation.ts |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule digital-signage
updated
9 files
+86 −0 | .github/workflows/lightHouse.yaml | |
+32 −1 | .github/workflows/submodule.yaml | |
+2 −1 | Dockerfile.prod | |
+7 −5 | nginx.conf | |
+3 −3 | src/app.tsx | |
+9 −8 | src/components/TripCard.tsx | |
+3 −2 | src/services/config.ts | |
+1 −0 | src/types/trip.ts | |
+2 −1 | vite.config.ts |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Submodule staff-portal
updated
26 files
+87 −0 | .github/workflows/lightHouse.yaml | |
+32 −1 | .github/workflows/submodule.yaml | |
+2 −1 | Dockerfile.prod | |
+ − | bun.lockb | |
+7 −5 | nginx.conf | |
+2 −0 | package.json | |
+1 −0 | src/app.tsx | |
+106 −0 | src/components/busTable.tsx | |
+204 −0 | src/components/modalCreateBus.tsx | |
+383 −219 | src/components/modalCreateTrip.tsx | |
+130 −0 | src/components/modalDeleteBus.tsx | |
+87 −26 | src/components/modalDeleteTrip.tsx | |
+10 −8 | src/components/navbar.tsx | |
+21 −16 | src/components/themeSwitcher.tsx | |
+134 −22 | src/components/tripDetails.tsx | |
+285 −166 | src/components/tripsTable.tsx | |
+23 −23 | src/routeTree.gen.ts | |
+0 −9 | src/routes/about.lazy.tsx | |
+91 −0 | src/routes/bus.lazy.tsx | |
+0 −0 | src/routes/index.lazy.tsx | |
+1 −1 | src/routes/login.lazy.tsx | |
+0 −0 | src/routes/tripDetails.lazy.tsx | |
+2 −2 | src/services/busService.ts | |
+3 −2 | src/services/config.ts | |
+4 −1 | src/types/trip.ts | |
+2 −1 | vite.config.ts |