Skip to content

Commit e9b28a1

Browse files
gloriajwtunguyentkUpstage system userjenkins-fansmister-teddy
authored
Anchor Steam 2.0.3 (#1052)
* Update devapp1.yml * Update playwright-dev.yml * Make audio in scenes (#1053) * Adjust email notification display time (#1062) * Fixed the display of dropmenu at the bottom of the users table (#1063) * Make filter of stage on foyer page (#1064) * Display total file size of stage media (#1065) * email corrections, text corrections * yarn.lock changes * remove empty strings emebedded by front end * make the email address table completely clear after sending mail (#1067) * Issue 1068 Foyer stage list took so long to load (#1069) * resolve yarn packages * update python requirements * strict package version * optimize foyer stage load * redo code formating for easier diff * prettier studio and dashboard for easier diffing pull requests * fix the blocking blank dashboard (#1070) * Issue 1068 performance issue (#1071) * fix the blocking blank dashboard * migrate things to studio * refactor imports base url * upgrade antd version * stage table in studio * change backstage entrance * new stage button in studio * requirements.freeze * version * Issue 1075 Cannot set attr on saving stage (#1076) * cannot set hybrid attribute * check instance on exist key only * Refactoring project structure (#1077) * refactoring project structure * updates docs & pre-commit hook * reduce docs resources size * move all .env * fix git guardian security checks * migrate event archive & email token service --------- Co-authored-by: tunguyentk <117065175+tunguyentk@users.noreply.github.com> Co-authored-by: Upstage system user <upstage@app1.upstage.org.nz-1621696771938-s-2vcpu-4gb-nyc1-01> Co-authored-by: gloriajw <aagg@comcast.net> Co-authored-by: Hồng Phát <hongphat.js@gmail.com> Co-authored-by: Willadsen, Gloria (CNTR) <Gloria.Willadsen@Intelsat.com>
1 parent fc477e4 commit e9b28a1

File tree

769 files changed

+17197
-13337
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

769 files changed

+17197
-13337
lines changed

.github/workflows/devapp1.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ name: DEVAPP1 CI
66
on:
77
# Triggers the workflow on push or approved pull request on R1-2021 branch
88
push:
9-
branches: [ BlueMoon-2.0.2 ]
9+
branches: [ AnchorSteam-2.0.3 ]
1010

1111
# Allows you to run this workflow manually from the Actions tab
1212
workflow_dispatch:
@@ -30,13 +30,13 @@ jobs:
3030
key: ${{ secrets.DEVAPP1_KEY }}
3131
port: ${{ secrets.DEVAPP1_PORT }}
3232
script: |
33-
cd /home/upstage/upstage/ui/dashboard/
33+
cd /home/upstage/upstage/dashboard/
3434
git fetch
35-
git checkout BlueMoon-2.0.2
35+
git checkout AnchorSteam-2.0.3
3636
git pull
3737
yarn
3838
yarn build:dev
39-
cd /home/upstage/upstage/ui/studio/
39+
cd /home/upstage/upstage/studio/
4040
yarn
4141
yarn build:dev
4242
systemctl restart upstage.service
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
name: Playwright Tests
22
on:
33
push:
4-
branches: [ Stiegl-22 ]
4+
branches: [ AnchorSteam-2.0.3 ]
55
pull_request:
6-
branches: [ Stiegl-22 ]
6+
branches: [ AnchorSteam-2.0.3 ]
77
jobs:
88
test:
99
timeout-minutes: 60
@@ -14,17 +14,17 @@ jobs:
1414
with:
1515
node-version: '14.x'
1616
- name: Install dependencies
17-
working-directory: ./ui/dashboard
17+
working-directory: ./dashboard
1818
run: yarn
1919
- name: Install Playwright Browsers
20-
working-directory: ./ui/dashboard
20+
working-directory: ./dashboard
2121
run: npx playwright install --with-deps
2222
- name: Run Playwright tests
23-
working-directory: ./ui/dashboard
23+
working-directory: ./dashboard
2424
run: yarn playwright test
2525
- uses: actions/upload-artifact@v2
2626
if: always()
2727
with:
2828
name: playwright-report
29-
path: ui/dashboard/playwright-report/
29+
path: dashboard/playwright-report/
3030
retention-days: 30

.github/workflows/playwright.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,17 @@ jobs:
1414
with:
1515
node-version: '14.x'
1616
- name: Install dependencies
17-
working-directory: ./ui/dashboard
17+
working-directory: ./dashboard
1818
run: yarn
1919
- name: Install Playwright Browsers
20-
working-directory: ./ui/dashboard
20+
working-directory: ./dashboard
2121
run: npx playwright install --with-deps
2222
- name: Run Playwright tests
23-
working-directory: ./ui/dashboard
23+
working-directory: ./dashboard
2424
run: yarn playwright test
2525
- uses: actions/upload-artifact@v2
2626
if: always()
2727
with:
2828
name: playwright-report
29-
path: ui/dashboard/playwright-report/
29+
path: dashboard/playwright-report/
3030
retention-days: 30

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
__pycache__/
22
*.pyc
33
.vscode/
4+
.fleet/
45
.env/
56
.venv/
67
.virtualenv/
78
*.log
89
.idea/
910
uploads/
10-
ui/static/assets/*
1111

1212
.DS_Store
1313
node_modules

README.md

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ For more information, visit https://mobilise-demobilise.eu and https://upstage.o
1717
## Infrastructure
1818

1919
A complete instance of UpStage should consist of:
20+
2021
- **Upstage Service**: backend code written in Python, Flask, Graphene, SQLAlchemy. This service provides the necessary API Endpoint, mainly in GraphQL to manage stages/media/players and configurations such as foyer, permissions and notifications.
2122
- **Dashboard**: frontend code written in Vue 3, Anime.js, Moveable, Bulma and many canvas operations. This is where most of the user interactions took place, such as the foyer, live stage, backstage and the admin section.
2223
- **MQTT Broker**: this is the magic behind UpStage's performance work. The broker has many topics to be subscribed, such as `meta/demo/chat` can be used to deliveries chat messages between players and audiences in Demo Stage at the `meta` instance. The same broker can also be used for multiple instance of UpStage.
@@ -32,17 +33,19 @@ A complete instance of UpStage should consist of:
3233
`PostgresSQL`, `MongoDB`, `Nginx` and `MQTT Broker` can be installed using the system package manager, we don't cover them in this section. For a mqtt broker, we recommend using [Mosquitto](https://github.com/eclipse/mosquitto).
3334

3435
1. Clone the repository
36+
3537
```bash
3638
git clone https://github.com/upstage-org/upstage.git
3739
```
3840

3941
2. Setup `UpStage Service`:
42+
4043
```bash
4144
# Install dependencies
4245
pip install -r requirements.pip
4346

4447
# Create the systemd service using our example configuration
45-
cp system/prod/upstage.service /etc/systemd/system/upstage.service
48+
cp config/prod/upstage.service /etc/systemd/system/upstage.service
4649

4750
# Start the service
4851
systemctl start upstage.service
@@ -52,8 +55,9 @@ systemctl enable upstage.service
5255
```
5356

5457
3. Setup `Dashboard`:
58+
5559
```bash
56-
cd ui/dashboard
60+
cd dashboard
5761

5862
# Install dependencies
5963
yarn
@@ -65,21 +69,24 @@ yarn build
6569
The compiled source code will be stored in the `dist` folder. Later we will set up `Nginx` to serve these content on our root path.
6670

6771
4. Setup `Studio` (very similar to Dashboard):
72+
6873
```bash
69-
cd ui/studio
74+
cd studio
7075

7176
# Install dependencies
7277
yarn
7378

7479
# Build source
7580
yarn build
7681
```
82+
7783
Studio will be served at `/studio` path of our instance.
7884

7985
5. Setup `Event Archive Service`:
86+
8087
```bash
8188
# Create the systemd service using our example configuration
82-
cp system/prod/event_archive.service /etc/systemd/system/event_archive.service
89+
cp config/prod/event_archive.service /etc/systemd/system/event_archive.service
8390

8491
# Start the service
8592
systemctl start event_archive.service
@@ -89,12 +96,13 @@ systemctl enable event_archive.service
8996
```
9097

9198
6. Setup `Streaming Service`:
99+
92100
```bash
93101
# Clone the Node-Media-Server repository
94102
git clone https://github.com/illuspas/Node-Media-Server.git
95103

96104
# Create the systemd service using our example configuration
97-
cp system/dev/streaming.service /etc/systemd/system/upstage-streaming.service
105+
cp config/dev/streaming.service /etc/systemd/system/upstage-streaming.service
98106

99107
# Start the service
100108
systemctl start upstage-streaming.service
@@ -104,18 +112,20 @@ systemctl enable upstage-streaming.service
104112
```
105113

106114
7. Setup `Upstage Send Email Token To Cient Server`:
115+
107116
```bash
108117

109118
# Only setup on Upstage Prod
110119
# Create the systemd service using our example configuration
111-
cp system/prod/upstage_email_token.service /etc/systemd/system/upstage_email_token.service
120+
cp config/prod/upstage_email_token.service /etc/systemd/system/upstage_email_token.service
112121

113122
# Start the service
114123
systemctl start upstage_email_token.service
115124

116125
# Enable the service if you want it start automatically on boot
117126
systemctl enable upstage_email_token.service
118127
```
128+
119129
## Configurations
120130

121131
UpStage was designed to have multiple instances of it working independently. Each instance could have its own configurations set to get worked.
@@ -141,7 +151,7 @@ DB_PORT=5432
141151
```
142152

143153
```python
144-
# MongoDB connection. Event Archive won't be able to put messages in queue without this configuration setup properly, which can lead to inconsistent stage behavior
154+
# MongoDB connection. Event Archive won't be able to put messages in queue without this configuration setup properly, which can lead to inconsistent stage behavior
145155
MONGO_HOST = ""
146156
MONGO_PORT = 27018
147157
MONGO_DB = "upstage"
@@ -165,14 +175,14 @@ SECRET_KEY='' # Paste the result from running __init__.py
165175
```
166176

167177
```python
168-
# When setup Send Email Service, only the Upstage server has permission to send the email. The Client-server has to call the external API of the Upstage server.
178+
# When setup Send Email Service, only the Upstage server has permission to send the email. The Client-server has to call the external API of the Upstage server.
169179
# Upstage server will generate and send a token to each client server every 10 minutes. That token has expired in 10 minutes. Client-server stores that token in MongoDB and uses that token to call the sendEmailExternal API of the Upstage server
170180
EMAIL_USE_TLS = True
171181
EMAIL_HOST = 'mail.gandi.net'
172182
EMAIL_HOST_USER = ''
173183
EMAIL_HOST_PASSWORD = ''
174184
EMAIL_PORT = 465
175-
ADMIN_EMAIL = '' # A list admin email always in bcc
185+
SUPPORT_EMAILS = '' # A list admin email always in bcc
176186
EMAIL_HOST_DISPLAY_NAME = 'UpStage Support'
177187
ACCEPT_SERVER_SEND_EMAIL_EXTERNAL = ['http://127.0.0.1:8000/'] # This is setup only in app1 server, All client server endpoint having permission using Upstage Send Email service
178188
```
@@ -235,7 +245,7 @@ Serve `Dashboard` on root path of our instance
235245

236246
```nginx
237247
        location / {
238-
            alias /home/upstage/upstage/ui/dashboard/dist/;
248+
            alias /home/upstage/upstage/dashboard/dist/;
239249
            try_files $uri $uri/ /index.html;
240250
        }
241251
```
@@ -244,7 +254,7 @@ Serve `Studio` on `/studio` path of our instance. If you change the path, rememb
244254

245255
```nginx
246256
        location /studio {
247-
            alias /home/upstage/upstage/ui/studio/dist/;
257+
            alias /home/upstage/upstage/studio/dist/;
248258
            try_files $uri $uri/ /V4.0/studio/index.html;
249259
        }
250260
```
@@ -253,7 +263,7 @@ Serve user uploaded media in `/static` path. Caching is important in this config
253263

254264
```nginx
255265
       location /static {
256-
            alias /home/upstage/upstage/ui/static;
266+
            alias /home/upstage/upstage/uploads;
257267
            expires off;
258268
            add_header Cache-Control 'no-cache, must-revalidate';
259269
        }
@@ -315,11 +325,13 @@ Type=simple
315325
ExecStart=
316326
ExecStart=/usr/local/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
317327
```
328+
318329
Finally restart the service
319330

320331
```bash
321332
sudo systemctl restart mosquitto.service
322333
```
323334

324335
## License
336+
325337
[GPL-3.0 License](https://github.com/upstage-org/upstage/blob/main/LICENSE)

asset/unittests/crud_tests.py

Lines changed: 0 additions & 26 deletions
This file was deleted.

auth/__init__.py

Lines changed: 0 additions & 30 deletions
This file was deleted.

0 commit comments

Comments
 (0)