Commit graph

189 commits

Author SHA1 Message Date
Nathan.fooo
f1dad07caa
feat: http init sync (#151)
* fix: bugs

* chore: support message type

* refactor: ws message

* feat: post realtime message

* feat: use proto to reduce message size

* ci: update

* ci: install protoc

* ci: update docker

* chore: update ci

* ci: update docker

* ci: fix

* ci: fix

* ci: fix
2023-11-08 15:41:39 +08:00
Nathan.fooo
f5fd264309
feat: support discord and github (#136)
* feat: support discord and github

* feat: enable discord and github oauth

* chore: update dev.env
2023-10-24 13:05:24 +08:00
Fu Zi Xiang
08967b8091
fix: deploy to test 2023-10-18 14:59:49 +08:00
nathan
7b77805d8d chore: add logs 2023-10-13 10:37:28 +08:00
Nathan.fooo
a02da07627
Test deploy docker log (#105)
* chore: try to fix logs in docker

* ci: test deploy

* ci: log level
2023-10-08 21:42:25 +08:00
Fu Zi Xiang
375c463566
feat: remove unneeded sudo 2023-10-06 22:42:42 +08:00
Fu Zi Xiang
096cfb8d2e
feat: upgrade to use docker with compose plugin 2023-10-06 22:31:25 +08:00
Nathan.fooo
926da912ea
chore: log level (#104) 2023-10-06 21:34:14 +08:00
Nathan.fooo
9918a6fe43
chore: ws nginx config (#100) 2023-10-05 22:32:19 +08:00
Zack
3de367c8fe
ci: fix (#98)
* feat: use self hosted runner

* fix: bash syntax

* fix: debug github runner user

* fix: debug github runner user - 2

* fix: try again

* fix: add clean up and upgrade rust toolchain

* fix: debug PATH

* fix: temporary disable docker build

* fix: try export path

* fix: resume build

* fix: add LANG env

* fix: use the compose plugin instead

* feat: upgrade to use docker compose plugin insead

* fix: add locale to dockerfile build

* feat: revert back to github actions

* fix: upgrade to use docker compose plugin

* fix: try revert to 1.69.0
2023-10-05 17:45:08 +08:00
Nathan.fooo
c0aea377d0
test: test with dev client (#91)
* test: test with dev client

* chore: add nginx conf

* chore: fix clippy

* chore: disable docker in lint
2023-10-04 21:43:21 +08:00
Nathan.fooo
cf84557ebe
feat: oauth provider (#86)
* chore: remove opener

* chore: rename method

* chore: add docs

* chore: modify env
2023-10-03 22:06:07 +08:00
Nathan.fooo
b8bd53ff5c
feat: create collab sync crate (#79)
* feat: create collab sync crate

* test: add tst

* test: add test

* test: update tests

* chore: clippy

* chore: clippy

* chore: clippy

* chore: add retry when subscribe group

* chore: disable realtime test
2023-09-28 09:28:46 +08:00
Nathan.fooo
b729e3529d
chore: bump collab version (#78)
* chore: bump collab version

* chore: bump collab version

* chore: update

* chore: update

* chore: update

* chore: update tests

* chore: clippy

* chore: clippy

* chore: clippy
2023-09-26 22:52:41 +08:00
Zack
f1a16058ce
feat: Gotrue admin api (#73)
* feat: set up admin account and auto confirm during appflowy start

* feat: client auth against gotrue whenever possible

* feat: admin add user

* feat: implement admin add user

* feat: generate registered user

* fix: enable cloud feature for client_api

* fix: test same user fix
2023-09-23 17:07:02 +08:00
Zack
df9c71edb2
feat: returns if user is new for both oauth and password login (#67)
* feat: returns if user is new for both oauth and password login

* test: add test for firt time sign_in and subsequent

* chore: remove uneeded use

* fix: compile

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-09-21 14:05:25 +08:00
Nathan.fooo
ca0813e265
refactor: ws ping (#66)
* chore: ws client

* chore: update ws ping

* chore: fix test

* chore: public funcs

* chore: fix test

* chore: check clent-api compile
2023-09-20 20:53:39 +08:00
Zack
0676db7ed6
feat: Workspace members (#63)
* fix: create user if they sign up with oauth

* feat: add workspaces_members add and remove operations

* feat: add insert workspace members

* feat: attach db ops to api ops

* refactor: separate user and workspace scope

* chore: add sqx query metadata

* chore: add 2nd registered user for testing

* ci: use valid email

* ci: fix registered password invalid

* fix: use email instead of uid

* fix: use email instead of uid sqlx query metadata

* feat: add test for workspace member

* test: added workspace add and delete with checking

* ci: fix email
2023-09-19 20:59:16 +08:00
Zack
6c4bbbbf7f
feat: Nginx (#57)
* feat: added nginx to docker-compose

* ci: base64 decode for cert and key

* test: fix: wrap secert with double quote

* fix: revert previous cert dir

* feat: use 443 for default https port in nginx

* fix: correct 443 (from 433)

* fix: use correct github action secrets

* fix: use docker compose force recreate

* fix: use another crt and key

* fix: use appflowy cloud crt and key
2023-09-18 11:42:18 +08:00
Zack
3c598f178e
ci: test env docker-compose deployment (#48)
* ci: test env docker-compose deployment

* ci: test deployment

* fix: replace delimiter with pipe to avoid conflict

* fix: API_EXTERNAL_URL_TEST from secrets

* chore: remove unneeded deploy when pull request

* fix: cloud public host name/address

* chore: trigger: change to push

* chore: add ext_url for exposed gotrue auth server
2023-09-15 21:13:43 +08:00
Nathan.fooo
939ea29c3b
feat: Realtime multiple conn test(#45)
* chore: multiple connection with same user

* chore: connect with device id

* fix: multiple connection

* test: add more test

* chore: fmt
2023-09-15 09:59:37 +08:00
Nathan.fooo
e03a6ce587
test: fix collab edit test (#42)
* test: fix

* chore: cargo sqlx check workspce

* chore: remove rocksdb deps
2023-09-14 14:05:15 +08:00
Zack
da03009004
feat: use apply server migration when server starts (#30)
* feat: use apply server migration when server starts

* fix: add docs and fix local run

* feat: refactor migration

* feat: local build server wait on gotrue

* fix: add back sqlx commands

* fix: add migrations directory

* fix: try SQLX_OFFLINE=true

* test: fix rustlint

* chore: clippy fmt

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-09-12 15:12:08 +08:00
Zack
853f089ca0
feat: test gotrue when app start, use state for gotrue client, use go… (#24)
* feat: test gotrue when app start, use state for gotrue client, use gotrue UUID instead of BIGINT for user uid

* feat: backward compatibility with native authetication

* fix: native auth use uuid instead

* fix: sqlx preparation

* fix: sqlx metadata and unused variable

* fix: clippy

* fix: create workspace if not exist after sign in

* chore: update .sqlx with new query

* feat: query workspace

* revert: revert using i64 for user id

* fix: update sqlx queries

* fix: update .sqlx metadata

* feat: only use uuid from sqlx types, select user_profile view

* ci: add version check

* ci: add missing sqlx files

* chore: cargo fmt
2023-09-11 17:16:41 +08:00
Nathan.fooo
63c992602f
tests: fix realtime tests (#27)
* tests: fix realtime tests

* chore: update collab rev

* ci: fix realtime ci

* ci: update test path
2023-09-11 15:14:58 +08:00
Nathan.fooo
7a09e1b860
chore: remove redundant sqlx command (#22)
* chore: remove redundant sqlx command

* chore: remove docker_env.sh

* chore: copy sqlx to docker

* chore update
2023-09-08 22:51:16 +08:00
Zack
36499be26c
docs: test + deploy + environmental variables (#14)
* doc: test + deploy + environmental variables

* doc: local dev and testing(WIP)

* dev: set up local testing

* fix: ci: add DATABASE_URL env

* chore: update .env

* ci: fix

* dev: docker-compose-dev.yml

* ci: update

* ci: test env

* ci: add services

* ci: add services

* ci: update port

* ci: rename ci.yaml to rustlint.yaml

* ci: test

* ci: simplify tests

* ci: use cargo sqlx commands directly

* ci: fix: registered user

* ci: fix: test registered user creation

* ci: fix: test registered user creation - 2

* ci: fix: debug docker ci

* ci: fix: docker integration registered user

* ci: fix: docker integration registered user

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-09-07 15:29:39 +08:00
Nathan.fooo
e2e6d79cb0
chore: create tables (#16)
* chore: create tables

* ci: remove postgres service

* chore: separate ci

* chore: run cargo clippy with sqlx offline mode

* refactor: create docker action

* chore: rename

* chore: update table

* chore: update supabase_admin

* chore: update supabase_admin

* chore: remove create auth.jwt function
2023-09-07 10:43:10 +08:00
Nathan.fooo
f9825d4221
feat: refactor server collab (#15)
* refactor: collab storage

* chore: fix test

* chore: update sqlx version

* chore: disable realtime test

* chore: sqlx prepare

* chore: remove init.sql
2023-09-06 18:22:40 +08:00
Zack
b28d5dda4c
feat: ci: dockerize gotrue auth server (#13)
* feat: ci: dockerize gotrue auth server

* feat: build: add gotrue to docker-compose

* fix: build: docker-compose + test

* feat: ci: simplify tests

* feat: ci: add back needed services for compilation

* fix: ci: github secrets

* fix: ci: use signup

* fix: ci: add export

* fix: test: generate unique email for registration to avoid conflict
2023-09-06 14:12:39 +08:00
Zack
c8ae099e90
feat: Auth server integration (#9)
* feat: integrate signup with gotrue auth server

* feat: added email and password sign in via auth server

* feat: added sign in scenarios and client handling

* fix: added missing files

* feat: refine api and store access token in client

* feat: impl token decode and placeholder for signout

* feat: added impl for logout with auth server

* feat: auth server dependency injection, client sign_out impl

* feat: abstract verify token, add placeholder for update endpoint

* feat: make authorization as a param of http handler request

* feat: add update_user to client of auth server

* feat: add client code and test cases for password change

* chore: rename appflowy-server to appflowy-cloud

* ci: upgrade reqwest version to fix audit issue

* ci: fix again

* ci: added gotrue env secrets

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-09-04 11:23:40 +08:00
Zack
58f0cdd235
feat: Client API and Integration test (#7)
* feat: change to client from test_server

* feat: change to client from test_server: register_success

* fix: use time in email for indempotency

* added rest of register test case

* feat: added client impl for login

* feat: Client: store logged token

* feat: added password change impl

* feat: remove test api, move to using Client

* chore: remove unneeded code

* chore: add client's integration test

* chore: try fix github workflow

* chore: try fix github workflow

* chore: try fix github actions - 2

* chore: try fix github actions - change rust toolchain

* chore: try fix github actions - remove name field

* chore: ci: fixed missing run key

* chore: ci: fixed missing Checkout

* chore: ci: added env settings for docker-compose

* chore: ci: added env BACKEND_VERSION for docker-compose

* chore: ci: added context . to docker-compose.yml

* chore: ci: added old dockerfiles to archive, default values in docker-compose.yml

* chore: github workflow: build server with env SQLX_OFFLINE true

* chore: remove unneeded deps

* chore: ci: try SQLX_OFFLINE export

* fix: ci: remove unneeded integration test ci, spawn server while cargo test

* fix: lint and github workflow

* fix: lint

* fix: github workflows: use workspaces instead of key

* fix: lint: use as_deref instead
2023-08-10 09:49:47 +08:00
nathan
920e7f9564 ci: fix audit 2023-03-16 21:33:11 +08:00
nathan
4adfd1a75f ci: fix test 2023-03-14 14:45:53 +08:00
nathan
aca7e8737e ci: add audit 2023-03-14 10:01:05 +08:00
nathan
a8ea270547 ci: update ci 2023-03-14 09:50:01 +08:00
nathan
690ea42d85 refactor: config log 2023-03-12 09:18:06 +08:00
appflowy
3012acce30 refactor: use cargo workspace 2022-02-07 15:08:49 +08:00
appflowy
0bda429d93 init appflowy server 2022-02-06 10:55:48 +08:00