name: Deploy To Ghaymah on: push: branches: - main jobs: deploy: steps: - name: Checkout code uses: actions/checkout@v4 - name: Create .ghaymah.json with environment variables run: | if [ -f .ghaymah.json ]; then cat .ghaymah.json > /tmp/ghaymah.json else echo '{ "name": "oudelaa-api", "ports": [ { "expose": true, "number": 80 } ], "publicAccess": { "enabled": true }, "resourceTier": "t4", "dockerFileName": "Dockerfile" }' > /tmp/ghaymah.json fi jq '.env = { "EMAIL_SMTP_HOST": "${{ secrets.EMAIL_SMTP_HOST }}", "EMAIL_SMTP_PASS": "${{ secrets.EMAIL_SMTP_PASS }}", "EMAIL_SMTP_PORT": "${{ secrets.EMAIL_SMTP_PORT }}", "EMAIL_SMTP_USER": "${{ secrets.EMAIL_SMTP_USER }}", "SUPERADMIN_ACCESS_EXPIRES_IN": "${{ secrets.SUPERADMIN_ACCESS_EXPIRES_IN }}", "SUPERADMIN_ACCESS_SECRET": "${{ secrets.SUPERADMIN_ACCESS_SECRET }}", "SUPERADMIN_EMAIL": "${{ secrets.SUPERADMIN_EMAIL }}", "SUPERADMIN_PASSWORD": "${{ secrets.SUPERADMIN_PASSWORD }}", "SUPERADMIN_REFRESH_EXPIRES_IN": "${{ secrets.SUPERADMIN_REFRESH_EXPIRES_IN }}", "SUPERADMIN_REFRESH_SECRET": "${{ secrets.SUPERADMIN_REFRESH_SECRET }}", "PUBLIC_BUILD_SHA": "${{ github.sha }}" }' /tmp/ghaymah.json > .ghaymah.json - name: Install Ghaymah CLI run: curl -sSl https://cli.ghaymah.systems/install.sh | bash - name: Login to Ghaymah run: $HOME/ghaymah/bin/gy auth login --email "${{ secrets.GHAYMAH_EMAIL }}" --password "${{ secrets.GHAYMAH_PW }}" - name: Deploy run: $HOME/ghaymah/bin/gy resource app launch