name: Docker Build And Push To Docker Hub on: push: branches: - main jobs: deploy: steps: - name: checkout code uses: actions/checkout@v5.0.0 - name: Create .ghaymah.json with environment variables run: | # Read the existing .ghaymah.json or create base structure if [ -f .ghaymah.json ]; then cat .ghaymah.json > /tmp/ghaymah.json else echo '{ "id": "a778f1cb-2075-4132-b91b-13d29f1b06e3", "name": "saif-lp", "projectId": "277f4c56-dfd7-4dff-81a2-7e7c28c763c3", "ports": [ { "expose": true, "number": 80 } ], "publicAccess": { "enabled": true, "domain": "syriaaifoundation.org" }, "resourceTier": "t4", "dockerFileName": "Dockerfile" }' > /tmp/ghaymah.json fi # Create env object with all secrets jq '.env = { "SMTP_CC": "${{ secrets.SMTP_CC }}", "SMTP_FROM": "${{ secrets.SMTP_FROM }}", "SMTP_HOST": "${{ secrets.SMTP_HOST }}", "SMTP_PASS": "${{ secrets.SMTP_PASS }}", "SMTP_PORT": "${{ secrets.SMTP_PORT }}", "SMTP_TO": "${{ secrets.SMTP_TO }}", "SMTP_USER": "${{ secrets.SMTP_USER }}", "SUPABASE_SECRET_KEY": "${{ secrets.SUPABASE_SECRET_KEY }}", "SUPABASE_SERVICE_ROLE_KEY": "${{ secrets.SUPABASE_SERVICE_ROLE_KEY }}", "SUPABASE_ANON_KEY": "${{ secrets.SUPABASE_ANON_KEY }}", "SUPABASE_URL": "${{ secrets.SUPABASE_URL }}", "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