diff --git a/.github/workflows/devdeploy.yml b/.github/workflows/devdeploy.yml new file mode 100644 index 0000000..da5e6b6 --- /dev/null +++ b/.github/workflows/devdeploy.yml @@ -0,0 +1,48 @@ +name: Deploy to Cloudflare Pages + +on: + push: + branches: + - nadiem/feat-add-metrics-page # or the branch you want to deploy from + +jobs: + build: + runs-on: ubuntu-latest + environment: devdeploy + + steps: + - name: Checkout repository + uses: actions/checkout@v2 + + - name: Set up Node.js + uses: actions/setup-node@v2 + with: + node-version: '20' # Use the Node.js version compatible with your project + + - name: Install pnpm + run: npm install -g pnpm + + - name: Install Doppler CLI + run: | + (curl -Ls --tlsv1.2 --proto "=https" --retry 3 https://cli.doppler.com/install.sh || wget -t 3 -qO- https://cli.doppler.com/install.sh) | sudo sh + + - name: Set up Doppler + run: doppler configure set token ${{ secrets.DOPPLER_TOKEN }} + + - name: Fetch secrets from Doppler and boot + run: doppler run -- npm run boot + env: + DOPPLER_TOKEN: ${{ secrets.DOPPLER_TOKEN }} + + - name: Clean up build output + working-directory: ./apps/info-dashboard/.next + run: | + rm -rf cache + + - name: Deploy to Cloudflare Pages + env: + CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} + CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + CLOUDFLARE_PROJECT_NAME: ${{ secrets.CLOUDFLARE_PROJECT_NAME }} + run: | + npx wrangler pages deploy ./apps/info-dashboard/out --project-name=$CLOUDFLARE_PROJECT_NAME --branch=main