Skip to content
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

Multiplayer + Teams (a-team) #718

Merged
merged 1,157 commits into from
Jan 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1157 commits
Select commit Hold shift + click to select a range
984a8de
rename startup script to dev
davidfig Jan 19, 2024
6833ec4
Merge remote-tracking branch 'origin/a-team' into mp-local-dev-setup
ddimaria Jan 19, 2024
197d74a
change spill indicator text
davidfig Jan 19, 2024
50594cc
Merge branch 'a-team-node-script' into better-spill-ui-2
davidfig Jan 19, 2024
727393e
cleaning up
davidfig Jan 19, 2024
6527d8e
Merge pull request #992 from quadratichq/a-team-node-script
davidfig Jan 19, 2024
0ebe4ac
Merge branch 'a-team' into a-team-fix-nits
davidfig Jan 19, 2024
051b03c
respond to PR comments
davidfig Jan 19, 2024
21a8f77
Merge pull request #979 from quadratichq/a-team-fix-nits
davidfig Jan 19, 2024
57fdbc6
Merge branch 'a-team' into better-spill-ui-2
davidfig Jan 19, 2024
901d469
WIP diallog updates
davidfig Jan 19, 2024
bd23c62
exclude current owner from possible invite emails
jimniels Jan 19, 2024
7331043
support emails
jimniels Jan 19, 2024
ae29220
Reset connections when room is not found
ddimaria Jan 19, 2024
a60cd16
Merge remote-tracking branch 'origin/a-team' into mp-local-dev-setup
ddimaria Jan 19, 2024
30f356d
Remove connections when removing stale users from a room
ddimaria Jan 20, 2024
9e428bf
Update files.$uuid.invites.POST.ts
jimniels Jan 20, 2024
d126bbf
Merge branch 'a-team' into release-items
davidkircos Jan 20, 2024
2e22730
Merge pull request #973 from quadratichq/release-items
davidkircos Jan 20, 2024
3b7fd40
Fix most of the broken tests in mp
ddimaria Jan 20, 2024
3ed768a
Comment out some broken tests in mp
ddimaria Jan 20, 2024
36ceb6d
better CodeError cards
davidfig Jan 20, 2024
0960366
Update package-lock.json
jimniels Jan 20, 2024
22d94d8
Update files.$uuid.invites.POST.ts
jimniels Jan 20, 2024
f96a703
fixing opening multiple CodeError dialog experience
davidfig Jan 20, 2024
5d7eeab
fix bug with undo and spills by tracking ordering of code_runs
davidfig Jan 20, 2024
9ac247e
remove extra console.log
davidfig Jan 20, 2024
af5bb8b
Merge branch 'a-team' into better-spill-ui-2
davidfig Jan 20, 2024
289053e
Merge pull request #984 from quadratichq/better-spill-ui-2
davidfig Jan 20, 2024
038468b
fix api/package.json typo
davidfig Jan 20, 2024
fc32fdd
remove wrong code
davidfig Jan 20, 2024
b551236
code triangles; peek code
davidfig Jan 20, 2024
e9dbbe5
change it to lines
davidfig Jan 20, 2024
00d1c1b
add optional triangles view
davidfig Jan 20, 2024
caf7bef
move killPort to dev script
davidfig Jan 20, 2024
42d4b2d
fix inadvertent merge
davidfig Jan 20, 2024
ad2555f
reverted to old behavior when code cells are on
davidfig Jan 21, 2024
09bc67d
updated development.md with non-docker flow
davidfig Jan 21, 2024
8cccd59
improved display of CodeInfo boxes
davidfig Jan 21, 2024
d7f7f42
code box properly positions between top/bottom and left/right of cell
davidfig Jan 21, 2024
6252fa9
improve spill error messaging
davidfig Jan 21, 2024
ad65b27
Merge branch 'a-team' into code-triangles
davidfig Jan 21, 2024
1af612d
added test for edit_code_cell_value w/spill
davidfig Jan 21, 2024
0c910f7
add better locking for cells or code cells being edited in multiplayer
davidfig Jan 21, 2024
eb3b707
cell edit messaging
davidfig Jan 21, 2024
681e594
node dev - show help after error in options
davidfig Jan 21, 2024
0412986
fix duplicate sheet name bug
davidfig Jan 21, 2024
858a429
updating node dev script to make it fancier
davidfig Jan 22, 2024
632fb56
Update package-lock.json
jimniels Jan 22, 2024
bfac02e
Merge remote-tracking branch 'origin/a-team' into mp-local-dev-setup
ddimaria Jan 22, 2024
4e1c066
create internal route for emails
jimniels Jan 22, 2024
38a04b8
Fix test user_leaves_a_room
ddimaria Jan 22, 2024
be3880c
fix heroku
davidkircos Jan 22, 2024
76cd5fc
Get remaining tests working in multiplayer
ddimaria Jan 22, 2024
bdd2158
Fix lints
ddimaria Jan 22, 2024
cb6acf4
Merge branch 'a-team' into code-triangles
jimniels Jan 22, 2024
c97317d
Merge branch 'a-team' into mp-local-dev-setup
davidfig Jan 22, 2024
14bd0d4
Merge pull request #994 from quadratichq/mp-local-dev-setup
davidkircos Jan 22, 2024
4ac7d96
improved node dev
davidfig Jan 22, 2024
b8a2c31
Merge branch 'a-team' of https://github.com/quadratichq/quadratic int…
davidfig Jan 22, 2024
3435a11
Merge branch 'a-team' into code-triangles
davidfig Jan 22, 2024
53172c9
add tooltip message for code cell outlines
davidfig Jan 22, 2024
5648225
fix python and formula language highlighting
davidfig Jan 22, 2024
25dd8a3
fixed bug with code editor's console not updating
davidfig Jan 22, 2024
a3cac1e
Merge pull request #997 from quadratichq/code-triangles
davidfig Jan 22, 2024
6baa2cf
Create the idle scenario in a test
ddimaria Jan 22, 2024
5c1f060
use setInterval instead of RAF
davidfig Jan 22, 2024
77b5ae9
fix: permissions
jimniels Jan 22, 2024
8609932
preparing for deployment
davidfig Jan 22, 2024
a6377f8
Update FileRoute.tsx
jimniels Jan 22, 2024
4cd158e
merge latest from a-team
jimniels Jan 22, 2024
872a2d4
Update package-lock.json
jimniels Jan 22, 2024
3761b39
Merge pull request #1006 from quadratichq/multiplayer-interval
ddimaria Jan 22, 2024
de06ac8
Refine idle test and speed up removes_stale_users_in_room test
ddimaria Jan 22, 2024
481c684
Run docker in CI tests for multiplayer
ddimaria Jan 22, 2024
ee0515f
Merge remote-tracking branch 'origin/a-team' into mp-fix-user-not-fou…
ddimaria Jan 22, 2024
9864f60
Ignore docker in codecov
ddimaria Jan 22, 2024
050c076
update file loading
jimniels Jan 22, 2024
f066854
Update templates.ts
jimniels Jan 22, 2024
c757b22
Add nod installation to test_rust in CI
ddimaria Jan 23, 2024
cadee1e
Run docker compose down beforehand since they are still active on sel…
ddimaria Jan 23, 2024
e360e17
Update sendEmail.ts
jimniels Jan 23, 2024
5f93899
Docker compose kill before testing
ddimaria Jan 23, 2024
2591e9c
Rename conflicting postgres container name in quadratic-api
ddimaria Jan 23, 2024
b889220
Enable `npm run prisma:migrate` from root dir
HactarCE Jan 18, 2024
b9ddb9d
fix bug with node dev
davidfig Jan 23, 2024
70f64bb
cleaning up and improving script
davidfig Jan 23, 2024
dbfc42d
added upgrades to the system
davidfig Jan 23, 2024
2b0cfbf
fix tests
davidfig Jan 23, 2024
0692a2f
Successfully remove users from rooms and connections and broadcast wh…
ddimaria Jan 23, 2024
d10287b
adding core build to TS tests
davidfig Jan 23, 2024
97f0a11
used npm script for wasm build
davidfig Jan 23, 2024
1561b7c
adding wasm-pack
davidfig Jan 23, 2024
08e680a
Merge branch 'a-team' into node-dev-cleanup
davidfig Jan 23, 2024
807e7a1
more upgrade scripts
davidfig Jan 23, 2024
c95ad8f
Small refactors
ddimaria Jan 23, 2024
7231212
Remove unwrap
ddimaria Jan 23, 2024
94c2d1a
Merge branch 'a-team' into a-team-emails
jimniels Jan 23, 2024
399f9ae
Merge pull request #993 from quadratichq/a-team-emails
jimniels Jan 23, 2024
8cff213
Prefer destructured assignment
ddimaria Jan 23, 2024
67efad5
Add .env.docker files for relevant services
ddimaria Jan 23, 2024
1c1879b
Ignore docker dir in code coverage
ddimaria Jan 23, 2024
155ba94
Ignore docker dir in code coverage v2
ddimaria Jan 23, 2024
3f83445
Remove docker data dirs before collecting test coverage
ddimaria Jan 23, 2024
09edf66
Change pathing of docker
ddimaria Jan 23, 2024
273b586
Add write permissions for checks in test_rust
ddimaria Jan 23, 2024
14ff910
Add additional ignores
ddimaria Jan 23, 2024
5c3dbb2
Merge pull request #1005 from quadratichq/mp-fix-user-not-found-issue…
ddimaria Jan 23, 2024
ee8b878
support adding two people with same email
jimniels Jan 23, 2024
4208d22
Merge branch 'a-team' of github.com:quadratichq/quadratic into a-team
jimniels Jan 23, 2024
7ffff3c
Update ShareDialog.tsx
jimniels Jan 24, 2024
d1023a9
Update ShareDialog.tsx
jimniels Jan 24, 2024
1f722ec
finally fixed the scrolling issue for reals
davidfig Jan 24, 2024
5f6284f
improved help system
davidfig Jan 24, 2024
982ca29
added rest of features
davidfig Jan 24, 2024
a87e96a
fixing text
davidfig Jan 24, 2024
7ce4664
Merge branch 'node-dev-cleanup' into a-team
davidfig Jan 24, 2024
9fe6bdd
adding dark mode to node dev
davidfig Jan 24, 2024
a30a3d0
react success shows as normal color instead of error
davidfig Jan 24, 2024
d3a1317
tweaks to node dev
davidfig Jan 24, 2024
64d8576
better documentation for node dev
davidfig Jan 24, 2024
0846a11
listen for internet disconnect; provide better messaging when connected
davidfig Jan 24, 2024
265e50a
fix error with sendgrid client and API key
jimniels Jan 24, 2024
b7dbd85
fix error with duplicate emails
jimniels Jan 24, 2024
b1ff7f3
losing connection to the socket also clears users
davidfig Jan 24, 2024
fa76e59
Merge branch 'a-team' of https://github.com/quadratichq/quadratic int…
davidfig Jan 24, 2024
d2bb461
added kill/resurrect files and multiplayer to node dev
davidfig Jan 24, 2024
0bb1ca1
warning is redis or postgres is not running
davidfig Jan 24, 2024
edc9425
adding checks for close and error to websockets
davidfig Jan 24, 2024
c75dedc
fix bug with multiplayer
davidfig Jan 24, 2024
0edee87
Remove volumes on docker down for mp
ddimaria Jan 24, 2024
956b7b5
Remove perms from ci
ddimaria Jan 24, 2024
edc0cda
Temp remove ci jobs
ddimaria Jan 24, 2024
39a4f94
Remove build step in ci
ddimaria Jan 24, 2024
445a0b0
Add Data Dog Agent to EC2
davidkircos Jan 24, 2024
2facf7c
Try docker-compose down -v
ddimaria Jan 24, 2024
78219c0
fix preview branch cleanup
davidkircos Jan 24, 2024
a9b2e86
Try docker compose down -v
ddimaria Jan 24, 2024
f14d92c
Try changing owners
ddimaria Jan 24, 2024
37ef842
update invite handling
jimniels Jan 24, 2024
55fedc7
m2m auth in api uses real token from env
davidkircos Jan 24, 2024
ce9a22d
set dd host name
davidkircos Jan 24, 2024
dc35157
add M2M_AUTH_TOKEN to env files in API
davidkircos Jan 24, 2024
c2e581c
update DD_HOSTNAME
davidkircos Jan 24, 2024
7b321b3
Merge pull request #1019 from quadratichq/add-dd-agent-to-infra
davidkircos Jan 24, 2024
1aae03d
Use named docker volume
ddimaria Jan 25, 2024
da507ab
Comment out more in ci
ddimaria Jan 25, 2024
75f4f74
Use composer inheritance to isolate volumes
ddimaria Jan 25, 2024
67d82c6
Use docker-compose.base.yml
ddimaria Jan 25, 2024
7b8f4c5
Use only dependent services in the base compose file
ddimaria Jan 25, 2024
a9d6285
Uncomment out serices in CI, remove build steps for rust services in CI
ddimaria Jan 25, 2024
b3d7086
Merge branch 'a-team' into mp-fix-docker-in-ci
davidkircos Jan 25, 2024
e853fd0
Update ShareDialog.tsx
jimniels Jan 25, 2024
7d20ec6
fix crash when redis-cli or postgres cli not in path
davidfig Jan 25, 2024
2b8dfde
cleaning up package.json
davidfig Jan 25, 2024
0dd9c59
removing forced bug
davidfig Jan 25, 2024
5c29f15
compiled without forced bug in node dev
davidfig Jan 25, 2024
8e33c20
removed extra space in node dev menu
davidfig Jan 25, 2024
7e8851d
Update sendEmail.ts
jimniels Jan 25, 2024
c5f0b1b
Update app.ts
jimniels Jan 25, 2024
6e7d6e9
Fix logic error in permission checking
ddimaria Jan 25, 2024
12f7d11
Downgrade permission logging
ddimaria Jan 25, 2024
6c22a74
Merge pull request #1021 from quadratichq/mp-allow-anonymous-access-i…
ddimaria Jan 25, 2024
ab95b66
fix: sending emails
jimniels Jan 25, 2024
582cb29
remove the correct .vite directory in node dev
davidfig Jan 25, 2024
ee5a8cd
Merge branch 'a-team' of https://github.com/quadratichq/quadratic int…
davidfig Jan 25, 2024
6d4d69c
Merge pull request #1018 from quadratichq/mp-fix-docker-in-ci
ddimaria Jan 25, 2024
2bfd23b
properly clean vite directory in node dev
davidfig Jan 25, 2024
5a2bd42
add sender to email
jimniels Jan 25, 2024
36a3415
update email template
jimniels Jan 25, 2024
3d37513
update email previews
jimniels Jan 25, 2024
a946f39
just don't truncate
jimniels Jan 25, 2024
4101d9a
Change quadratic-api app token env var to M2M_AUTH_TOKEN
ddimaria Jan 25, 2024
193ef55
Update config value in files and mp to match new env var
ddimaria Jan 25, 2024
006d813
revert offsets when drawing labels
davidfig Jan 25, 2024
1e3b068
mouse over code editor no longer sends to other users
davidfig Jan 25, 2024
112ea45
fix bug with chrome mobile mode (probably only dev mode)
davidfig Jan 25, 2024
2088090
fixed bug where sheet would sometimes not render on initial load
davidfig Jan 25, 2024
e3f54b8
removed console.log
davidfig Jan 25, 2024
ab6f490
initial commit
jimniels Jan 25, 2024
f282a13
add beta logo
jimniels Jan 25, 2024
374cfdd
Merge branch 'a-team' into a-team-minor-fixes
davidkircos Jan 25, 2024
4a58f4c
Merge pull request #1022 from quadratichq/a-team-minor-fixes
davidkircos Jan 25, 2024
2b669f8
Remove names
jimniels Jan 25, 2024
672036b
Merge branch 'a-team' into a-team-avatars
jimniels Jan 26, 2024
642170d
Merge pull request #1023 from quadratichq/a-team-avatars
jimniels Jan 26, 2024
d55724d
Update TopBarUsers.tsx
jimniels Jan 26, 2024
24957c2
mobile resize
davidfig Jan 26, 2024
2ad7d2a
Update TopBarUsers.tsx
jimniels Jan 26, 2024
582afaa
Merge pull request #1025 from quadratichq/a-team-following
jimniels Jan 26, 2024
6ae108d
remove console.log
davidfig Jan 26, 2024
9294c74
Merge branch 'a-team' into fix-mobile-resize
davidfig Jan 26, 2024
365a4a3
Merge pull request #1024 from quadratichq/fix-mobile-resize
davidfig Jan 26, 2024
21540ef
remove version from bottom bar for mobile
davidfig Jan 26, 2024
d09b5af
fix: bug with file location in app header
jimniels Jan 26, 2024
2c16e19
Merge remote-tracking branch 'origin/main' into a-team
davidkircos Jan 26, 2024
85adba7
remove unused scripts
davidkircos Jan 26, 2024
9c95499
fix quit/kill for node dev
davidfig Jan 26, 2024
3484680
ui tweaks
jimniels Jan 26, 2024
110abad
Npm install at root for testing api
ddimaria Jan 26, 2024
ea938da
Reenable commented out ci jobs
ddimaria Jan 26, 2024
7b5e923
fix tests
jimniels Jan 26, 2024
9ad00a8
Merge pull request #1029 from quadratichq/mp-fix-api-tests-in-ci
jimniels Jan 26, 2024
2dc8a65
pull the follow box outside the hierarchy
davidfig Jan 26, 2024
1ee23fb
Merge branch 'a-team' into follow-better-box
davidfig Jan 26, 2024
4b9f95c
hide teams UI
jimniels Jan 26, 2024
282d24a
Merge branch 'a-team' of github.com:quadratichq/quadratic into a-team
jimniels Jan 26, 2024
18d64c9
Merge pull request #1031 from quadratichq/follow-better-box
davidkircos Jan 26, 2024
9448875
wip prod infra
davidkircos Jan 26, 2024
722e00a
code switch
jimniels Jan 26, 2024
7170053
tweak switch
jimniels Jan 26, 2024
e558c79
switch tweak
jimniels Jan 26, 2024
babb62f
pull image and esc from config for files and multiplayer
davidkircos Jan 26, 2024
9149433
fix ci tests
jimniels Jan 26, 2024
4de252f
Update switch.tsx
jimniels Jan 26, 2024
1fb7e68
update prod CI run
davidkircos Jan 27, 2024
2650b4e
update permissions and tests
jimniels Jan 27, 2024
99cbd75
Update permissions.test.ts
jimniels Jan 27, 2024
25dbb92
fixed a bug where multiplayer would not try to reconnect after failing
davidfig Jan 27, 2024
de2da79
fix multiplayer reconnection logic
davidfig Jan 27, 2024
6edde83
working on node dev kill
davidfig Jan 27, 2024
51715c1
much better killing for node dev; kills the entire process tree
davidfig Jan 27, 2024
da2a094
better silencing in node dev
davidfig Jan 27, 2024
dc3a963
Just some TODOs
Jan 26, 2024
cb936a1
Fix a typo for the icon alt
Jan 26, 2024
d14999f
Setup a FDQN for files' health check
tmiller Jan 27, 2024
87790ac
Add ttl
tmiller Jan 27, 2024
bb0b060
Use a number for ttl
tmiller Jan 28, 2024
bbc9255
re-enable ssh
tmiller Jan 28, 2024
078fcdc
Remove SG again
tmiller Jan 28, 2024
c290095
fix dual loader bug in sidebar nav
jimniels Jan 29, 2024
4650f33
email-tester
jimniels Jan 29, 2024
2d90480
Merge pull request #1033 from quadratichq/a-team-dba-2
davidkircos Jan 29, 2024
f9b7830
infra updates
davidkircos Jan 29, 2024
0b3d5c7
Merge remote-tracking branch 'origin/a-team' into a-team-prod-infra
davidkircos Jan 29, 2024
8f6e9bb
clean
davidkircos Jan 29, 2024
9528b72
cleanup
davidkircos Jan 29, 2024
4ca9229
move more config to ESC
davidkircos Jan 29, 2024
6e945d9
test prod stack on pulumi
davidkircos Jan 29, 2024
e65bdd3
test on branch
davidkircos Jan 29, 2024
e8647ff
run on branch
davidkircos Jan 29, 2024
a9a5c1b
point at the correct pulumi esc env
davidkircos Jan 29, 2024
9842c5c
create prod stack on CI
davidkircos Jan 29, 2024
5a85979
fix env ref
davidkircos Jan 29, 2024
0d4ac8d
fix
davidkircos Jan 29, 2024
ae417a9
maker sure dd agent runs on production
davidkircos Jan 29, 2024
e7e34f1
cleanup
davidkircos Jan 29, 2024
5bb569c
fix data dog
davidkircos Jan 29, 2024
496d29d
name docker process
davidkircos Jan 29, 2024
6d4b764
Merge pull request #1034 from quadratichq/a-team-prod-infra
davidkircos Jan 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
target/
**/target/
272 changes: 158 additions & 114 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,139 +12,183 @@ on:

jobs:
test_rust:
runs-on: ubuntu-latest-8-cores
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4

- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
components: clippy, llvm-tools-preview
cache: false
channel: 'nightly'

- name: install grcov
run: if ! which grcov; then cargo install grcov; fi

- name: Build Rust
env:
RUSTFLAGS: -Cinstrument-coverage
run: |
cd quadratic-core
cargo build

- name: Test
env:
LLVM_PROFILE_FILE: grcov-%p-%m.profraw
RUSTFLAGS: -Cinstrument-coverage
run: |
cd quadratic-core
cargo test

- name: Generate coverage
run: |
grcov $(find . -name "grcov-*.profraw" -print) \
--branch \
--ignore-not-existing \
--binary-path ./quadratic-core/target/debug/ \
-s . \
-t lcov \
--ignore "/*" \
--ignore "./quadratic-core/src/wasm_bindings/*" \
--ignore "./quadratic-core/src/bin/*" \
-o lcov.info

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18

- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
components: clippy, llvm-tools-preview
cache: false
channel: "nightly"

- name: Install grcov
run: if ! which grcov; then cargo install grcov; fi

- name: Install llvm-tools-preview
run: if ! which llvm-tools-preview; then rustup component add llvm-tools-preview; fi

- name: Install pkg-config
if: github.runner.isHosted == true
run: |
sudo apt-get update
sudo apt-get install -y pkg-config

- name: Test quadratic-core
env:
LLVM_PROFILE_FILE: grcov-%p-%m.profraw
RUSTFLAGS: -Cinstrument-coverage
run: |
cd quadratic-core
cargo test

- name: Generate coverage for quadratic-core
run: |
grcov $(find . -name "grcov-*.profraw" -print) \
--branch \
--ignore-not-existing \
--binary-path ./target/debug/ \
-s . \
-t lcov \
--ignore "/*" \
--ignore "./src/wasm_bindings/*" \
--ignore "./src/bin/*" \
--ignore "./docker/*" \
-o lcov.info

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

- name: Test quadratic-multiplayer
env:
LLVM_PROFILE_FILE: grcov-%p-%m.profraw
RUSTFLAGS: -Cinstrument-coverage
run: |
cd quadratic-multiplayer
npm run docker:test

- name: Generate coverage quadratic-multiplayer
run: |
grcov $(find . -name "grcov-*.profraw" -print) \
--branch \
--ignore-not-existing \
--binary-path ./target/debug/ \
-s . \
-t lcov \
--ignore "/*" \
--ignore "./src/wasm_bindings/*" \
--ignore "./src/bin/*" \
--ignore "./docker/*" \
--ignore "./../docker/*" \
-o lcov.info

- name: Upload coverage reports to Codecov quadratic-multiplayer
uses: codecov/codecov-action@v3
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

test_unit:
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18

- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
channel: "nightly"

- uses: jetli/wasm-pack-action@v0.4.0

- name: Run npm test:unit:ci in quadratic-client
run: |
cd quadratic-client
npm install
npm run test:unit:ci
- name: Build quadratic-core
run: |
npm run build:wasm:javascript

- name: Run npm test:ts in quadratic-client
run: |
npm install
npm run test:ts

test_python:
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- uses: actions/setup-python@v4
with:
python-version: '3.11.3'
cache: 'pip'

- name: Test python
run: |
pip install -r requirements.txt
cd quadratic-client
npm run test:python
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- uses: actions/setup-python@v4
with:
python-version: "3.11.3"
cache: "pip"

- name: Test python
run: |
pip install -r requirements.txt
cd quadratic-client
npm run test:python

test_api:
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18

- name: Run npm test:ci in quadratic-api
run: |
cd quadratic-api
npm install
npm run docker:test:ci
- name: Run npm test:ci in quadratic-api
run: |
npm install
cd quadratic-api
npm run docker:test:ci

lint_rust:
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
components: clippy
cache: false

- name: Run cargo clippy in quadratic-core
run: |
cd quadratic-core
cargo clippy -- -D warnings
- uses: actions/checkout@v4
- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
components: clippy
cache: false

- name: Run cargo clippy in quadratic-core
run: |
cd quadratic-core
cargo clippy -- -D warnings

lint:
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
cache: false
- uses: jetli/wasm-pack-action@v0.4.0
with:
version: 'latest'

- name: Build wasm core
run: |
cd quadratic-client
npm run build:wasm:javascript:dev
npm run build:wasm:types

- name: Lint quadratic-client
run: |
cd quadratic-client
npm install
npm run lint:prettier
npm run lint:eslint
npm run lint:ts
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Set up Rust
uses: moonrepo/setup-rust@v1
with:
cache: false
- uses: jetli/wasm-pack-action@v0.4.0
with:
version: "latest"

- name: Build wasm core
run: |
cd quadratic-client
npm run build:wasm:javascript:dev
npm run build:wasm:types

- name: Lint quadratic-client
run: |
npm install
cd quadratic-client
npm run lint:prettier
npm run lint:eslint
npm run lint:ts
35 changes: 35 additions & 0 deletions .github/workflows/preview-branches-close.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Destroy Preview Branch

on:
pull_request:
types: [closed]

jobs:
teardown:
name: Destroy Pulumi Infrastructure Stack
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
- uses: pulumi/actions@v4

- name: Destroy Infrastructure Stack
working-directory: infra
run: |
npm ci

pulumi org set-default quadratic

STACK_NAME="preview-pr-${{ env.PR_ID }}"
pulumi stack select $STACK_NAME
pulumi config set aws:region us-west-2

pulumi destroy -y --remove

env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID_DEVELOPMENT }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY_DEVELOPMENT }}
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
PR_ID: ${{ github.event.pull_request.number }}
Loading
Loading