AppFlowy-Cloud/.github/workflows/docker.yml

65 lines
2.1 KiB
YAML

name: AppFlowy-Cloud Integrations
on:
push:
branches: [ main ]
pull_request:
types: [ opened, synchronize, reopened ]
branches: [ main ]
env:
GOTRUE_REGISTERED_EMAIL: zack@appflowy.io
GOTRUE_REGISTERED_PASSWORD: Hello123!
SQLX_VERSION: 0.7.1
SQLX_FEATURES: "rustls,postgres"
jobs:
test:
name: Docker
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
workspaces: |
AppFlowy-Cloud
- name: Copy and rename dev.env to .env
run: cp dev.env .env
- name: Replace values in .env
run: |
sed -i 's/GOTRUE_SMTP_USER=.*/GOTRUE_SMTP_USER=${{ secrets.GOTRUE_SMTP_USER }}/' .env
sed -i 's/GOTRUE_SMTP_PASS=.*/GOTRUE_SMTP_PASS=${{ secrets.GOTRUE_SMTP_PASS }}/' .env
sed -i 's/GOTRUE_SMTP_ADMIN_EMAIL=.*/GOTRUE_SMTP_ADMIN_EMAIL=${{ secrets.GOTRUE_SMTP_ADMIN_EMAIL }}/' .env
sed -i 's/GOTRUE_REGISTERED_EMAIL=.*/GOTRUE_REGISTERED_EMAIL=$GOTRUE_REGISTERED_EMAIL/' .env
sed -i 's/GOTRUE_REGISTERED_PASSWORD=.*/GOTRUE_REGISTERED_PASSWORD=$GOTRUE_REGISTERED_PASSWORD/' .env
sed -i 's/GOTRUE_MAILER_AUTOCONFIRM=.*/GOTRUE_MAILER_AUTOCONFIRM=true/' .env
- name: Run Docker-Compose
run: |
docker-compose up -d
- name: Add registered user
run: |
# temporary allow signup without email verification
export GOTRUE_MAILER_AUTOCONFIRM=true
docker-compose up -d
sleep 5 # sometimes the gotrue server may not be ready yet
source .env
curl localhost:9998/signup \
--data-raw '{"email":"'"$GOTRUE_REGISTERED_EMAIL"'","password":"'"$GOTRUE_REGISTERED_PASSWORD"'"}' \
--header 'Content-Type: application/json'
# revert to require signup email verification
export GOTRUE_MAILER_AUTOCONFIRM=false
docker-compose up -d
- name: Run tests
run: |
cargo install sqlx-cli --version=${{ env.SQLX_VERSION }} --features ${{ env.SQLX_FEATURES }} --no-default-features --locked
cargo test