Skip to content

chore: move websocket proxy #203

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

Open
wants to merge 31 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
32d0759
Setup repo
danyalprout Feb 23, 2025
0ee30a2
feat: initial project setup
danyalprout Feb 23, 2025
1a8b4a1
Refactor rate limiting
danyalprout Feb 23, 2025
3852ce7
Fix e2e test
danyalprout Feb 24, 2025
6b7f093
Merge pull request #1 from base/setup-project
danyalprout Feb 24, 2025
52779d0
chore: require 1.85
danyalprout Feb 24, 2025
c8476d2
Fix actions
danyalprout Feb 24, 2025
b8e2dfd
fix formatting
danyalprout Feb 24, 2025
6ffe679
Merge pull request #2 from base/require-1.85
danyalprout Feb 24, 2025
c7f5bef
chore: add readme
danyalprout Feb 25, 2025
78fa1ba
Merge pull request #3 from base/add-readme
danyalprout Feb 25, 2025
bc09363
chore: add support for hostname prometheus tag and global tags
danyalprout Feb 26, 2025
1460721
Merge pull request #4 from base/global-tags
danyalprout Feb 26, 2025
04d600a
Support Multiple Upstream WebSocket Connections for HA Setups
angel-ding-cb Mar 13, 2025
3623ae2
fix CI
angel-ding-cb Mar 17, 2025
db33f91
update dependencies
angel-ding-cb Mar 17, 2025
c496b2b
address CI issues
angel-ding-cb Mar 17, 2025
e1c995b
add tests
angel-ding-cb Mar 19, 2025
23b82c6
clean up comments
angel-ding-cb Mar 19, 2025
4976b4f
Merge pull request #5 from base/clean-branch
danyalprout Mar 19, 2025
b1b5792
feat(PROTO-945): implement Redis-based rate limiting (#6)
jowparks Mar 19, 2025
05fafb8
fix: parse multiple upstream url
danyalprout Apr 29, 2025
d72b5fd
Fix formatting
danyalprout Apr 29, 2025
54987af
Update deps for audit
danyalprout Apr 29, 2025
bd269b4
Merge pull request #8 from base/fix-rbuilder
danyalprout Apr 29, 2025
3135bb9
fix: gracefully handle redis counters via heartbeat (#9)
jowparks May 5, 2025
ef85a96
Add 'websocket-proxy/' from commit '3135bb984ed04dd7e3de65c630173b13a…
danyalprout May 6, 2025
2615ec4
chore: combine GHA and gitignores
danyalprout May 6, 2025
7e9bdfc
chore: fix clippy warning
danyalprout May 6, 2025
f31bc7f
chore: update gitignore/ci names
danyalprout May 6, 2025
a5de621
Merge branch 'main' into move-websocket-proxy
danyalprout May 7, 2025
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
67 changes: 67 additions & 0 deletions .github/workflows/websocket-proxy-ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Websocket Proxy CI

on:
push:
branches: [main]
pull_request:

Comment on lines +6 to +7
Copy link
Collaborator

@0xKitsune 0xKitsune May 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a benefit to run this workflow on all PRs or can we update to only run on PRs to main?

env:
CARGO_TERM_COLOR: always

jobs:
check:
name: Check
runs-on: ubuntu-latest
defaults:
run:
working-directory: "./websocket-proxy"
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Install Redis for tests
run: |
sudo apt-get update
sudo apt-get install -y redis

- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt

- name: Cache dependencies
uses: Swatinem/rust-cache@v2

- name: Run build
run: cargo build

- name: Check formatting
run: cargo fmt --all -- --check

- name: Run clippy
run: cargo clippy -- -D warnings

- name: Run tests
run: cargo test --all-features

- name: Check for common mistakes
run: cargo check

docker:
name: Docker Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Build Docker image
uses: docker/build-push-action@v5
with:
context: .
push: false
cache-from: type=gha
cache-to: type=gha,mode=max
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
/target
/.idea/
/.vscode/
.env
websocket-proxy/.env
websocket-proxy/target
integration_logs
.vscode
.vscode
5 changes: 5 additions & 0 deletions websocket-proxy/.dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
target/
.git/
.github/
.gitignore
README.md
3 changes: 3 additions & 0 deletions websocket-proxy/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
UPSTREAM_WS=ws://upstreamurl.com/rs
MAXIMUM_CONCURRENT_CONNECTIONS=2
LOG_LEVEL=debug
Loading
Loading