chore: prettier and lint #84
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
check-env: | |
runs-on: self-hosted | |
steps: | |
- name: Check Environment Variables | |
run: | | |
if [ -z "${{ secrets.VITE_AUTH0_CLIENT_ID_WEB }}" ]; then | |
echo "VITE_AUTH0_CLIENT_ID_WEB is not set" | |
exit 1 | |
fi | |
if [ -z "${{ secrets.VITE_AUTH0_DOMAIN }}" ]; then | |
echo "VITE_AUTH0_DOMAIN is not set" | |
exit 1 | |
fi | |
if [ -z "${{ secrets.POSTGRES_USER }}" ]; then | |
echo "POSTGRES_USER is not set" | |
exit 1 | |
fi | |
if [ -z "${{ secrets.POSTGRES_PASSWORD }}" ]; then | |
echo "POSTGRES_PASSWORD is not set" | |
exit 1 | |
fi | |
if [ -z "${{ secrets.CORS_WHITELIST }}" ]; then | |
echo "CORS_WHITELIST is not set" | |
exit 1 | |
fi | |
docker-prune: | |
needs: check-env | |
runs-on: self-hosted | |
steps: | |
- name: Prune Docker | |
run: docker system prune -af | |
deploy: | |
needs: docker-prune | |
runs-on: self-hosted | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Write env-file | |
run: | | |
echo "VITE_AUTH0_CLIENT_ID_WEB=${{ secrets.VITE_AUTH0_CLIENT_ID_WEB }}" >> .env | |
echo "VITE_AUTH0_DOMAIN=${{ secrets.VITE_AUTH0_DOMAIN }}" >> .env | |
- name: Deploy | |
env: | |
POSTGRES_USER: ${{ secrets.POSTGRES_USER }} | |
POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }} | |
CORS_WHITELIST: ${{ secrets.CORS_WHITELIST }} | |
AUTH0_CLIENT_ID_API: ${{ secrets.AUTH0_CLIENT_ID_API }} | |
AUTH0_CLIENT_SECRET_API: ${{ secrets.AUTH0_CLIENT_SECRET_API }} | |
run: docker compose up -d --build | |
migrate-db: | |
needs: deploy | |
runs-on: self-hosted | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: '.nvmrc' | |
- name: Install Dependencies | |
run: npm clean-install | |
- name: Migrate Database | |
env: | |
DATABASE_URL: postgresql://${{ secrets.POSTGRES_USER }}:${{ secrets.POSTGRES_PASSWORD }}@localhost:5432/postgres?schema=jobber | |
run: npm run db:migrate | |
release: | |
needs: migrate-db | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: '.nvmrc' | |
- name: Install Dependencies | |
run: npm clean-install | |
- name: Semantic-Release | |
run: npm run release |