|
|
@@ -0,0 +1,46 @@
|
|
|
+name: Deploy to production
|
|
|
+on:
|
|
|
+ push:
|
|
|
+ branches:
|
|
|
+ - dev
|
|
|
+jobs:
|
|
|
+ deploy:
|
|
|
+ runs-on: ubuntu-latest
|
|
|
+ steps:
|
|
|
+ - name: Set up Cloud SDK
|
|
|
+ uses: google-github-actions/setup-gcloud@master
|
|
|
+ with:
|
|
|
+ project_id: ${{ secrets.GCP_PROJECT_ID }}
|
|
|
+ service_account_key: ${{ secrets.GCP_SA_KEY }}
|
|
|
+ export_default_credentials: true
|
|
|
+ - name: Install kubectl
|
|
|
+ run: |
|
|
|
+ sudo apt-get install kubectl
|
|
|
+ - name: Log in to gcloud CLI
|
|
|
+ run: gcloud auth configure-docker
|
|
|
+ - name: Checkout
|
|
|
+ uses: actions/checkout@v2.3.4
|
|
|
+ - name: Write Dashboard Environment Variables
|
|
|
+ run: |
|
|
|
+ cat >./dashboard/.env <<EOL
|
|
|
+ NODE_ENV=development
|
|
|
+ API_SERVER=dashboard.dev.getporter.dev
|
|
|
+ FULLSTORY_ORG_ID=${{secrets.FULLSTORY_ORG_ID}}
|
|
|
+ DISCORD_KEY=${{secrets.DISCORD_KEY}}
|
|
|
+ DISCORD_CID=${{secrets.DISCORD_CID}}
|
|
|
+ FEEDBACK_ENDPOINT=${{secrets.FEEDBACK_ENDPOINT}}
|
|
|
+ POSTHOG_API_KEY=${{secrets.POSTHOG_API_KEY}}
|
|
|
+ POSTHOG_HOST=${{secrets.POSTHOG_HOST}}
|
|
|
+ EOL
|
|
|
+ - name: Build
|
|
|
+ run: |
|
|
|
+ DOCKER_BUILDKIT=1 docker build . -t gcr.io/porter-dev-273614/porter:dev -f ./docker/Dockerfile
|
|
|
+ - name: Push
|
|
|
+ run: |
|
|
|
+ docker push gcr.io/porter-dev-273614/porter:dev
|
|
|
+ - name: Deploy to cluster
|
|
|
+ run: |
|
|
|
+ gcloud container clusters get-credentials \
|
|
|
+ dev --region us-central1 --project ${{ secrets.GCP_PROJECT_ID }}
|
|
|
+
|
|
|
+ kubectl rollout restart deployment/porter
|