Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 26 additions & 24 deletions .github/workflows/backend-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,27 +15,29 @@ jobs:
working-directory: backend

steps:
- name: SSH deploy
uses: appleboy/ssh-action@v1.2.0
with:
host: ${{ secrets.EC2_HOST }}
username: ${{ secrets.EC2_USER }}
key: ${{ secrets.EC2_SSH_KEY }}
port: ${{ secrets.EC2_PORT || 22 }}
script: |
set -e

# Adjust if your repo path is different
cd /home/deploy/Stratus

git fetch --all
git reset --hard origin/main

cd backend
npm ci
npm run build

pm2 restart stratus-api
pm2 save

pm2 status
- run: exit 0 # no-op

# - name: SSH deploy
# uses: appleboy/ssh-action@v1.2.0
# with:
# host: ${{ secrets.EC2_HOST }}
# username: ${{ secrets.EC2_USER }}
# key: ${{ secrets.EC2_SSH_KEY }}
# port: ${{ secrets.EC2_PORT || 22 }}
# script: |
# set -e
#
# # Adjust if your repo path is different
# cd /home/deploy/Stratus
#
# git fetch --all
# git reset --hard origin/main
#
# cd backend
# npm ci
# npm run build
#
# pm2 restart stratus-api
# pm2 save
#
# pm2 status
26 changes: 13 additions & 13 deletions .github/workflows/games.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,16 +32,16 @@ jobs:
./games/build-supertuxkart.sh games/build/c3770c11-ecaf-4852-96b0-37269736a6fc
rm games/build/sleep -f

- name: Setup AWS CLI
if: github.ref == 'refs/heads/main'
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}

- name: Upload games to S3 bucket
if: github.ref == 'refs/heads/main'
run: aws s3 sync games/build 's3://${{ vars.AWS_GAMES_BUCKET }}'
# Note: we don't pass --delete, so manually-uploaded games will not be
# removed from the bucket
# - name: Setup AWS CLI
# if: github.ref == 'refs/heads/main'
# uses: aws-actions/configure-aws-credentials@v1
# with:
# aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
# aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
# aws-region: ${{ secrets.AWS_REGION }}
#
# - name: Upload games to S3 bucket
# if: github.ref == 'refs/heads/main'
# run: aws s3 sync games/build 's3://${{ vars.AWS_GAMES_BUCKET }}'
# # Note: we don't pass --delete, so manually-uploaded games will not be
# # removed from the bucket
22 changes: 11 additions & 11 deletions .github/workflows/os.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,14 +48,14 @@ jobs:
cp os/install.sh os/repo
repo-add os/repo/stratus.db.tar.zst os/repo/*.pkg.tar.zst

- name: Setup AWS CLI
if: github.ref == 'refs/heads/main'
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}

- name: Upload stratus Arch repository to S3 bucket
if: github.ref == 'refs/heads/main'
run: aws s3 sync os/repo 's3://${{ vars.AWS_OS_BUCKET }}' --delete
# - name: Setup AWS CLI
# if: github.ref == 'refs/heads/main'
# uses: aws-actions/configure-aws-credentials@v1
# with:
# aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
# aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
# aws-region: ${{ secrets.AWS_REGION }}
#
# - name: Upload stratus Arch repository to S3 bucket
# if: github.ref == 'refs/heads/main'
# run: aws s3 sync os/repo 's3://${{ vars.AWS_OS_BUCKET }}' --delete
18 changes: 10 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,15 @@ architecture of Stratus.

## Deployment

To deploy an entire fully-featured Stratus instance from scratch, follow the
instructions below. Alternatively, it is possible to run just the Stratus
streaming server and connect via our [Direct Connect][direct-connect] page
without any additional setup (no Google OAuth, AWS DynamoDB, coordination
server, etc) by following the instructions [here][stratusd-setup].

[direct-connect]: https://www.playstratus.io/direct-connect
[stratusd-setup]: https://github.com/PlayStratus/Stratus/blob/main/stratusd/README.md#development-setup

1. **Google OAuth:** Register a Google OAuth client and obtain the access
credentials (client ID and secret).

Expand Down Expand Up @@ -101,15 +110,8 @@ architecture of Stratus.
a stream session.


## Project Authors

Stratus was developed by a team of Oregon State University students as a
capstone project.

<!--
## Project Status

Stratus was developed by a team of Oregon State University students as a
Stratus was developed by a team of Oregon State University students as a senior
capstone project. It was released in May 2026, and is no longer actively
developed or hosted publicly.
-->
2 changes: 1 addition & 1 deletion frontend/src/app/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ export default async function Home() {
>
Play now!
<span className='-mt-3 text-xs text-muted/70'>
(closed beta)
(unavailable)
</span>
</button>
) : (
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/components/landingPage/Faq.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ const faqs = [
{
question: "Is Stratus available to the public?",
answer:
"Stratus is currently only available to students at Oregon State University. We unfortunately have no plans to expand access due to hosting costs and complexities.",
"Stratus is no longer hosted publicly due to various costs and complexities. However, you can still run a Stratus server locally and connect via the Direct Connect page."
},
]

Expand Down
Loading