From 00197e971f8e6a873703860aed86c89c0e070629 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 10:40:35 -0800 Subject: [PATCH 01/14] feat: deploy dev image --- .github/workflows/docker.yml | 16 +++++++++++----- docker-compose.yml | 2 +- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 7833230a..68b1fb70 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -43,10 +43,16 @@ jobs: - name: Run Docker-Compose run: | - docker compose up -d + # docker compose up -d + docker compose build appflowy_cloud - - name: Run tests + # - name: Run tests + # run: | + # cargo install sqlx-cli --version=${{ env.SQLX_VERSION }} --features ${{ env.SQLX_FEATURES }} --no-default-features --locked + # RUST_LOG=debug cargo test + + - name: Release image to docker hub run: | - cargo install sqlx-cli --version=${{ env.SQLX_VERSION }} --features ${{ env.SQLX_FEATURES }} --no-default-features --locked - RUST_LOG=debug cargo test - + docker tag appflowy-cloud-appflowy_cloud appflowyinc/appflowy_cloud:dev + echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin + docker push appflowyinc/appflowy_cloud:dev diff --git a/docker-compose.yml b/docker-compose.yml index 2f6864eb..2a954b77 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -119,7 +119,7 @@ services: build: context: . dockerfile: Dockerfile - image: appflowyinc/appflowy_cloud:${BACKEND_VERSION:-latest} + #image: appflowyinc/appflowy_cloud:${BACKEND_VERSION:-latest} depends_on: - redis - postgres From fc54769632b32f50c433a923ad409c83061f5f9d Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 11:12:40 -0800 Subject: [PATCH 02/14] feat: test deploy kube --- .github/workflows/deploy.test.yml | 59 ++++++------------------------- .github/workflows/docker.yml | 15 +++----- docker-compose.yml | 2 +- 3 files changed, 15 insertions(+), 61 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 77f8a81e..32b20e9b 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -1,4 +1,4 @@ -name: Deployment for Test Environment +name: Deployment AppFlowy Cloud and Admin Frontend for Kube Environment on: push: branches: @@ -7,55 +7,16 @@ on: jobs: deploy: - environment: test.appflowy.cloud - runs-on: [self-hosted, test-deploy] + runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - - name: Set up env vars + - name: build docker images run: | - cp dev.env .env - - # log level - sed -i 's|RUST_LOG=.*|RUST_LOG=trace|' .env - - # jwt secret - sed -i 's|GOTRUE_JWT_SECRET=.*|GOTRUE_JWT_SECRET=${{ secrets.GOTRUE_JWT_SECRET_TEST }}|' .env - # smtp settings - sed -i 's|GOTRUE_SMTP_HOST=.*|GOTRUE_SMTP_HOST=smtp.gmail.com|' .env - sed -i 's|GOTRUE_SMTP_PORT=.*|GOTRUE_SMTP_PORT=465|' .env - sed -i 's|GOTRUE_SMTP_USER=.*|GOTRUE_SMTP_USER=${{ secrets.GOTRUE_SMTP_USER_TEST }}|' .env - sed -i 's|GOTRUE_SMTP_PASS=.*|GOTRUE_SMTP_PASS=${{ secrets.GOTRUE_SMTP_PASS_TEST }}|' .env - sed -i 's|GOTRUE_SMTP_ADMIN_EMAIL=.*|GOTRUE_SMTP_ADMIN_EMAIL=${{ secrets.GOTRUE_SMTP_ADMIN_EMAIL_TEST }}|' .env - sed -i 's|GOTRUE_MAILER_AUTOCONFIRM=.*|GOTRUE_MAILER_AUTOCONFIRM=false|' .env - # Google OAuth - sed -i 's|GOTRUE_EXTERNAL_GOOGLE_ENABLED=.*|GOTRUE_EXTERNAL_GOOGLE_ENABLED=true|' .env - sed -i 's|GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID=.*|GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID=${{ secrets.GOTRUE_EXTERNAL_GOOGLE_CLIENT_ID }}|' .env - sed -i 's|GOTRUE_EXTERNAL_GOOGLE_SECRET=.*|GOTRUE_EXTERNAL_GOOGLE_SECRET=${{ secrets.GOTRUE_EXTERNAL_GOOGLE_SECRET }}|' .env - sed -i 's|GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI=.*|GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI=${{ secrets.GOTRUE_EXTERNAL_GOOGLE_REDIRECT_URI }}|' .env - # GitHub OAuth - sed -i 's|GOTRUE_EXTERNAL_GITHUB_ENABLED=.*|GOTRUE_EXTERNAL_GITHUB_ENABLED=true|' .env - sed -i 's|GOTRUE_EXTERNAL_GITHUB_CLIENT_ID=.*|GOTRUE_EXTERNAL_GITHUB_CLIENT_ID=${{ secrets.GOTRUE_EXTERNAL_GITHUB_CLIENT_ID }}|' .env - sed -i 's|GOTRUE_EXTERNAL_GITHUB_SECRET=.*|GOTRUE_EXTERNAL_GITHUB_SECRET=${{ secrets.GOTRUE_EXTERNAL_GITHUB_SECRET }}|' .env - sed -i 's|GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI=.*|GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI=${{ secrets.GOTRUE_EXTERNAL_GITHUB_REDIRECT_URI }}|' .env - # Discord OAuth - sed -i 's|GOTRUE_EXTERNAL_DISCORD_ENABLED=.*|GOTRUE_EXTERNAL_DISCORD_ENABLED=true|' .env - sed -i 's|GOTRUE_EXTERNAL_DISCORD_CLIENT_ID=.*|GOTRUE_EXTERNAL_DISCORD_CLIENT_ID=${{ secrets.GOTRUE_EXTERNAL_DISCORD_CLIENT_ID }}|' .env - sed -i 's|GOTRUE_EXTERNAL_DISCORD_SECRET=.*|GOTRUE_EXTERNAL_DISCORD_SECRET=${{ secrets.GOTRUE_EXTERNAL_DISCORD_SECRET }}|' .env - sed -i 's|GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI=.*|GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI=${{ secrets.GOTRUE_EXTERNAL_DISCORD_REDIRECT_URI }}|' .env - # Server Host - sed -i 's|API_EXTERNAL_URL=.*|API_EXTERNAL_URL=${{ secrets.API_EXTERNAL_URL_TEST }}|' .env - - # SSL - echo "${{ secrets.APPFLOWY_CLOUD_CRT }}" | base64 --decode > ./nginx/ssl/certificate.crt - echo "${{ secrets.APPFLOWY_CLOUD_KEY }}" | base64 --decode > ./nginx/ssl/private_key.key - - - name: Disable appflowyinc images + docker compose build appflowy_cloud admin_frontend + - name: push docker images to docker hub run: | - sed -i '/image: appflowyinc\/appflowy_cloud:/d' docker-compose.yml - sed -i '/image: appflowyinc\/admin_frontend:/d' docker-compose.yml - - - name: Deploy docker-compose - run: | - docker compose up -d --build --force-recreate - docker system prune --force + docker tag appflowy-cloud-appflowy_cloud appflowyinc/appflowy_cloud:dev + docker tag appflowy-cloud-admin_frontend appflowyinc/appflowy_cloud:dev + echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin + docker push appflowyinc/appflowy_cloud:dev + docker push appflowyinc/admin_frontend:dev diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 68b1fb70..1ddc8375 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -43,16 +43,9 @@ jobs: - name: Run Docker-Compose run: | - # docker compose up -d - docker compose build appflowy_cloud + docker compose up -d - # - name: Run tests - # run: | - # cargo install sqlx-cli --version=${{ env.SQLX_VERSION }} --features ${{ env.SQLX_FEATURES }} --no-default-features --locked - # RUST_LOG=debug cargo test - - - name: Release image to docker hub + - name: Run tests run: | - docker tag appflowy-cloud-appflowy_cloud appflowyinc/appflowy_cloud:dev - echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin - docker push appflowyinc/appflowy_cloud:dev + cargo install sqlx-cli --version=${{ env.SQLX_VERSION }} --features ${{ env.SQLX_FEATURES }} --no-default-features --locked + RUST_LOG=debug cargo test diff --git a/docker-compose.yml b/docker-compose.yml index 2a954b77..2f6864eb 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -119,7 +119,7 @@ services: build: context: . dockerfile: Dockerfile - #image: appflowyinc/appflowy_cloud:${BACKEND_VERSION:-latest} + image: appflowyinc/appflowy_cloud:${BACKEND_VERSION:-latest} depends_on: - redis - postgres From 654d510afc45a92cc0ac56f8a09bb7e69019f1ac Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 12:20:00 -0800 Subject: [PATCH 03/14] fix: debug docker images --- .github/workflows/deploy.test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 32b20e9b..754979e5 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -13,8 +13,10 @@ jobs: - name: build docker images run: | docker compose build appflowy_cloud admin_frontend + docker images - name: push docker images to docker hub run: | + docker images docker tag appflowy-cloud-appflowy_cloud appflowyinc/appflowy_cloud:dev docker tag appflowy-cloud-admin_frontend appflowyinc/appflowy_cloud:dev echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin From f5ea1d3a3430bd5a2f202b4719d4e0ec6b295432 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 12:32:56 -0800 Subject: [PATCH 04/14] fix: docker image name --- .github/workflows/deploy.test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 754979e5..db22655c 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -17,8 +17,8 @@ jobs: - name: push docker images to docker hub run: | docker images - docker tag appflowy-cloud-appflowy_cloud appflowyinc/appflowy_cloud:dev - docker tag appflowy-cloud-admin_frontend appflowyinc/appflowy_cloud:dev + docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:dev + docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:dev echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin docker push appflowyinc/appflowy_cloud:dev docker push appflowyinc/admin_frontend:dev From 444f974cf20aea62af0f5848dcd298249a460bb1 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 12:51:09 -0800 Subject: [PATCH 05/14] fix: test deploy after image build --- .github/workflows/deploy.test.yml | 43 ++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 15 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index db22655c..56cecc8c 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -6,19 +6,32 @@ on: - 'test_deploy_*' jobs: - deploy: - runs-on: ubuntu-latest + #image_build: + # runs-on: ubuntu-latest + # steps: + # - uses: actions/checkout@v3 + # - name: build docker images + # run: | + # docker compose build appflowy_cloud admin_frontend + # docker images + # - name: push docker images to docker hub + # run: | + # docker images + # docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:dev + # docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:dev + # echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin + # docker push appflowyinc/appflowy_cloud:dev + # docker push appflowyinc/admin_frontend:dev + + image_deploy: + runs-on: [test-kube-worker] steps: - - uses: actions/checkout@v3 - - name: build docker images - run: | - docker compose build appflowy_cloud admin_frontend - docker images - - name: push docker images to docker hub - run: | - docker images - docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:dev - docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:dev - echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin - docker push appflowyinc/appflowy_cloud:dev - docker push appflowyinc/admin_frontend:dev + - name: Checkout Deployment + uses: actions/checkout@v4 + with: + repository: AppFlowy-IO/AppFlowy-Cloud-Deployment + token: ${{ secrets.GH_PAT }} # `GH_PAT` is a secret that contains your PAT + - name: apply images + run: | + pwd + ls From 0347260028885ccd0091b143e114b2ff242579ea Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 13:02:57 -0800 Subject: [PATCH 06/14] fix: debug 1 --- .github/workflows/deploy.test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 56cecc8c..a611d7fb 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -35,3 +35,4 @@ jobs: run: | pwd ls + exit 1 From 237cd785dc2dfe16aa15c71f04e5670e26361993 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 15:41:41 -0800 Subject: [PATCH 07/14] feat: add deploy kube --- .github/workflows/deploy.test.yml | 34 +++++++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index a611d7fb..39ed5745 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -30,9 +30,35 @@ jobs: uses: actions/checkout@v4 with: repository: AppFlowy-IO/AppFlowy-Cloud-Deployment - token: ${{ secrets.GH_PAT }} # `GH_PAT` is a secret that contains your PAT + token: ${{ secrets.GH_PAT }} - name: apply images run: | - pwd - ls - exit 1 + # export env var + + source environments/base.env + source environments/test.env + + export APPFLOWY_GOTRUE_JWT_SECRET=${{ secrets.TEST_GOTRUE_JWT_SECRET }} + export APPFLOWY_S3_ACCESS_KEY=${{ secrets.TEST_APPFLOWY_S3_ACCESS_KEY }} + export APPFLOWY_S3_SECRET_KEY=${{ secrets.TEST_APPFLOWY_S3_SECRET_KEY }} + export APPFLOWY_GOTRUE_ADMIN_PASSWORD=${{ secrets.TEST_APPFLOWY_GOTRUE_ADMIN_PASSWORD }} + + export ADMIN_FRONTEND_IMAGE=appflowyinc/admin_frontend:dev + export APPFLOWY_IMAGE=appflowyinc/appflowy_cloud:dev + + # keep track of final env deployment files + mkdir deployed + + # dump all env var + env > deployed/.env + + # create config map + kubernetes/scripts/env_to_configmap.sh < deployed/.env | tee deployed/appflowy-configmap.yaml | kubectl apply -f - + + # deploy appflowy cloud + envsubst < kubernetes/templates/appflowy-cloud-deployment.yaml | tee deployed/appflowy-cloud-deployment.yaml | kubectl apply -f - + envsubst < kubernetes/templates/appflowy-cloud-service.yaml | tee deployed/appflowy-cloud-service.yaml | kubectl apply -f - + + # deploy admin_frontend + envsubst < kubernetes/templates/admin-frontend-deployment.yaml | tee deployed/admin-frontend-deployment.yaml | kubectl apply -f - + envsubst < kubernetes/templates/admin-frontend-service.yaml | tee deployed/admin-frontend-service.yaml | kubectl apply -f - From bcc10984249128224ec83553b5eea8b0e8548c4e Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Wed, 20 Dec 2023 15:45:21 -0800 Subject: [PATCH 08/14] feat: add back image build --- .github/workflows/deploy.test.yml | 32 +++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 39ed5745..eefdf325 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -6,22 +6,22 @@ on: - 'test_deploy_*' jobs: - #image_build: - # runs-on: ubuntu-latest - # steps: - # - uses: actions/checkout@v3 - # - name: build docker images - # run: | - # docker compose build appflowy_cloud admin_frontend - # docker images - # - name: push docker images to docker hub - # run: | - # docker images - # docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:dev - # docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:dev - # echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin - # docker push appflowyinc/appflowy_cloud:dev - # docker push appflowyinc/admin_frontend:dev + image_build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: build docker images + run: | + docker compose build appflowy_cloud admin_frontend + docker images + - name: push docker images to docker hub + run: | + docker images + docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:dev + docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:dev + echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin + docker push appflowyinc/appflowy_cloud:dev + docker push appflowyinc/admin_frontend:dev image_deploy: runs-on: [test-kube-worker] From 134082da3e6af03eeaca5b0f658ada9d7a54b9a3 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Mon, 25 Dec 2023 17:11:25 +0800 Subject: [PATCH 09/14] fix: needs image build before deplo --- .github/workflows/deploy.test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index eefdf325..46a4f17e 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -24,6 +24,7 @@ jobs: docker push appflowyinc/admin_frontend:dev image_deploy: + needs: image_build runs-on: [test-kube-worker] steps: - name: Checkout Deployment From 43780630361945eeb1ac560b552af3324b949757 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Mon, 25 Dec 2023 17:51:32 +0800 Subject: [PATCH 10/14] feat: use github sha instead of dev --- .github/workflows/deploy.test.yml | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 46a4f17e..9129bc31 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -13,15 +13,13 @@ jobs: - name: build docker images run: | docker compose build appflowy_cloud admin_frontend - docker images - name: push docker images to docker hub run: | - docker images - docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:dev - docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:dev + docker tag appflowyinc/appflowy_cloud appflowyinc/appflowy_cloud:${GITHUB_SHA} + docker tag appflowyinc/admin_frontend appflowyinc/admin_frontend:${GITHUB_SHA} echo ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | docker login --username appflowyinc --password-stdin - docker push appflowyinc/appflowy_cloud:dev - docker push appflowyinc/admin_frontend:dev + docker push appflowyinc/appflowy_cloud:${GITHUB_SHA} + docker push appflowyinc/admin_frontend:${GITHUB_SHA} image_deploy: needs: image_build @@ -44,8 +42,8 @@ jobs: export APPFLOWY_S3_SECRET_KEY=${{ secrets.TEST_APPFLOWY_S3_SECRET_KEY }} export APPFLOWY_GOTRUE_ADMIN_PASSWORD=${{ secrets.TEST_APPFLOWY_GOTRUE_ADMIN_PASSWORD }} - export ADMIN_FRONTEND_IMAGE=appflowyinc/admin_frontend:dev - export APPFLOWY_IMAGE=appflowyinc/appflowy_cloud:dev + export ADMIN_FRONTEND_IMAGE=appflowyinc/admin_frontend:${GITHUB_SHA} + export APPFLOWY_IMAGE=appflowyinc/appflowy_cloud:${GITHUB_SHA} # keep track of final env deployment files mkdir deployed @@ -63,3 +61,9 @@ jobs: # deploy admin_frontend envsubst < kubernetes/templates/admin-frontend-deployment.yaml | tee deployed/admin-frontend-deployment.yaml | kubectl apply -f - envsubst < kubernetes/templates/admin-frontend-service.yaml | tee deployed/admin-frontend-service.yaml | kubectl apply -f - + + - name: delete built images + run: | + TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d '{"username": "appflowyinc", "password": "${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}"}' https://hub.docker.com/v2/users/login/ | jq -r .token) + curl -s -X DELETE -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/appflowyinc/tags/${GITHUB_SHA}/ + curl -s -X DELETE -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/appflowyinc/tags/${GITHUB_SHA}/ From e356e19d2ca7d7339e134a096267691f02e557db Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Mon, 25 Dec 2023 18:11:50 +0800 Subject: [PATCH 11/14] fix: delete uploaded images --- .github/workflows/deploy.test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 9129bc31..206cd773 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -65,5 +65,5 @@ jobs: - name: delete built images run: | TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d '{"username": "appflowyinc", "password": "${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}"}' https://hub.docker.com/v2/users/login/ | jq -r .token) - curl -s -X DELETE -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/appflowyinc/tags/${GITHUB_SHA}/ - curl -s -X DELETE -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/appflowyinc/tags/${GITHUB_SHA}/ + curl -s -X DELETE -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/appflowyinc/appflowy_cloud/tags/${GITHUB_SHA}/ + curl -s -X DELETE -H "Authorization: JWT ${TOKEN}" https://hub.docker.com/v2/repositories/appflowyinc/admin_frontend/tags/${GITHUB_SHA}/ From a00b867db54d557894da71c6f9c0fac3bae1f8f2 Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Mon, 25 Dec 2023 19:19:42 +0800 Subject: [PATCH 12/14] fix: wait for pods to be ready before deletion --- .github/workflows/deploy.test.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index 206cd773..a22ab3ae 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -62,6 +62,29 @@ jobs: envsubst < kubernetes/templates/admin-frontend-deployment.yaml | tee deployed/admin-frontend-deployment.yaml | kubectl apply -f - envsubst < kubernetes/templates/admin-frontend-service.yaml | tee deployed/admin-frontend-service.yaml | kubectl apply -f - + # wait until + kubectl get pods --field-selector=status.phase!=Running | grep -v "STATUS" | wc -l + + # wait for all pods to be ready + tried=0 + while true; do + if [ $tried -eq 5 ]; then + echo "Waited too long for all pods to be ready" + exit 1 + fi + + non_running_pods=$(kubectl get pods --field-selector=status.phase!=Running | grep -v STATUS | wc -l) + if [ $non_running_pods -eq 0 ]; then + echo "All pods are ready." + exit 0 + else + echo "Waiting for all pods to be ready ..." + kubectl get pods + tried=$((tried + 1)) + sleep 5 + fi + done + - name: delete built images run: | TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d '{"username": "appflowyinc", "password": "${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}"}' https://hub.docker.com/v2/users/login/ | jq -r .token) From b69ea10df0e003554e4a70a8448a0119f1b59a0c Mon Sep 17 00:00:00 2001 From: Fu Zi Xiang Date: Mon, 25 Dec 2023 19:33:20 +0800 Subject: [PATCH 13/14] fix: wait for pods to be ready before deletion - 2 --- .github/workflows/deploy.test.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/deploy.test.yml b/.github/workflows/deploy.test.yml index a22ab3ae..07d96610 100644 --- a/.github/workflows/deploy.test.yml +++ b/.github/workflows/deploy.test.yml @@ -62,13 +62,10 @@ jobs: envsubst < kubernetes/templates/admin-frontend-deployment.yaml | tee deployed/admin-frontend-deployment.yaml | kubectl apply -f - envsubst < kubernetes/templates/admin-frontend-service.yaml | tee deployed/admin-frontend-service.yaml | kubectl apply -f - - # wait until - kubectl get pods --field-selector=status.phase!=Running | grep -v "STATUS" | wc -l - # wait for all pods to be ready tried=0 while true; do - if [ $tried -eq 5 ]; then + if [ $tried -eq 10 ]; then echo "Waited too long for all pods to be ready" exit 1 fi From 80d4048c69a22c0af77b2f2e9b13b1004b2156e2 Mon Sep 17 00:00:00 2001 From: "Nathan.fooo" <86001920+appflowy@users.noreply.github.com> Date: Mon, 25 Dec 2023 23:50:50 +0800 Subject: [PATCH 14/14] chore: bump collab (#235) * chore: bump collab * chore: collab id --- Cargo.lock | 12 ++++++------ Cargo.toml | 8 ++++---- libs/workspace-template/src/lib.rs | 1 + 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4ead858f..54b165bb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1282,7 +1282,7 @@ dependencies = [ [[package]] name = "collab" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=0e117f568bd2465762582f6aeb8d9c11fe714e63#0e117f568bd2465762582f6aeb8d9c11fe714e63" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d5324139e6450e32246520416af768202f544869#d5324139e6450e32246520416af768202f544869" dependencies = [ "anyhow", "async-trait", @@ -1301,7 +1301,7 @@ dependencies = [ [[package]] name = "collab-derive" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=0e117f568bd2465762582f6aeb8d9c11fe714e63#0e117f568bd2465762582f6aeb8d9c11fe714e63" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d5324139e6450e32246520416af768202f544869#d5324139e6450e32246520416af768202f544869" dependencies = [ "proc-macro2", "quote", @@ -1313,7 +1313,7 @@ dependencies = [ [[package]] name = "collab-document" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=0e117f568bd2465762582f6aeb8d9c11fe714e63#0e117f568bd2465762582f6aeb8d9c11fe714e63" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d5324139e6450e32246520416af768202f544869#d5324139e6450e32246520416af768202f544869" dependencies = [ "anyhow", "collab", @@ -1332,7 +1332,7 @@ dependencies = [ [[package]] name = "collab-entity" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=0e117f568bd2465762582f6aeb8d9c11fe714e63#0e117f568bd2465762582f6aeb8d9c11fe714e63" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d5324139e6450e32246520416af768202f544869#d5324139e6450e32246520416af768202f544869" dependencies = [ "anyhow", "bytes", @@ -1346,7 +1346,7 @@ dependencies = [ [[package]] name = "collab-folder" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=0e117f568bd2465762582f6aeb8d9c11fe714e63#0e117f568bd2465762582f6aeb8d9c11fe714e63" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d5324139e6450e32246520416af768202f544869#d5324139e6450e32246520416af768202f544869" dependencies = [ "anyhow", "chrono", @@ -1366,7 +1366,7 @@ dependencies = [ [[package]] name = "collab-persistence" version = "0.1.0" -source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=0e117f568bd2465762582f6aeb8d9c11fe714e63#0e117f568bd2465762582f6aeb8d9c11fe714e63" +source = "git+https://github.com/AppFlowy-IO/AppFlowy-Collab?rev=d5324139e6450e32246520416af768202f544869#d5324139e6450e32246520416af768202f544869" dependencies = [ "anyhow", "async-trait", diff --git a/Cargo.toml b/Cargo.toml index 89d03207..69a3a6be 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -156,10 +156,10 @@ lto = false opt-level = 3 [patch.crates-io] -collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "0e117f568bd2465762582f6aeb8d9c11fe714e63" } -collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "0e117f568bd2465762582f6aeb8d9c11fe714e63" } -collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "0e117f568bd2465762582f6aeb8d9c11fe714e63" } -collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "0e117f568bd2465762582f6aeb8d9c11fe714e63" } +collab = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d5324139e6450e32246520416af768202f544869" } +collab-entity = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d5324139e6450e32246520416af768202f544869" } +collab-folder = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d5324139e6450e32246520416af768202f544869" } +collab-document = { git = "https://github.com/AppFlowy-IO/AppFlowy-Collab", rev = "d5324139e6450e32246520416af768202f544869" } # Comment the above and uncomment the below to use local version of collab by cloning the repo and placing it in libs folder #collab = { path = "libs/AppFlowy-Collab/collab" } diff --git a/libs/workspace-template/src/lib.rs b/libs/workspace-template/src/lib.rs index 801d7b6b..77617533 100644 --- a/libs/workspace-template/src/lib.rs +++ b/libs/workspace-template/src/lib.rs @@ -94,6 +94,7 @@ impl WorkspaceTemplateBuilder { views: FlattedViews::flatten_views(views), favorites: Default::default(), recent: Default::default(), + trash: Default::default(), }; let collab = Arc::new(MutexCollab::new(CollabOrigin::Empty, &workspace_id, vec![]));