dev.yaml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. name: Deploy to dev
  2. on:
  3. push:
  4. branches:
  5. - dev
  6. jobs:
  7. deploy:
  8. runs-on: ubuntu-latest
  9. steps:
  10. - name: Set up Cloud SDK
  11. uses: google-github-actions/setup-gcloud@v0
  12. with:
  13. project_id: ${{ secrets.GCP_PROJECT_ID }}
  14. service_account_key: ${{ secrets.GCP_SA_KEY }}
  15. export_default_credentials: true
  16. - name: Configure AWS Credentials
  17. uses: aws-actions/configure-aws-credentials@v1
  18. with:
  19. aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
  20. aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
  21. aws-region: ${{ secrets.AWS_REGION }}
  22. - name: Install kubectl
  23. uses: azure/setup-kubectl@v2.0
  24. with:
  25. version: 'v1.19.15'
  26. - name: Log in to gcloud CLI
  27. run: gcloud auth configure-docker
  28. - name: Checkout
  29. uses: actions/checkout@v2.3.4
  30. - name: Write Dashboard Environment Variables
  31. run: |
  32. cat >./dashboard/.env <<EOL
  33. NODE_ENV=development
  34. API_SERVER=dashboard.dev.getporter.dev
  35. DISCORD_KEY=${{secrets.DISCORD_KEY}}
  36. DISCORD_CID=${{secrets.DISCORD_CID}}
  37. FEEDBACK_ENDPOINT=${{secrets.FEEDBACK_ENDPOINT}}
  38. APPLICATION_CHART_REPO_URL=https://charts.dev.getporter.dev
  39. ADDON_CHART_REPO_URL=https://chart-addons.dev.getporter.dev
  40. ENABLE_SENTRY=true
  41. SENTRY_DSN=${{secrets.SENTRY_DSN}}
  42. SENTRY_ENV=frontend-development
  43. ENABLE_GITLAB=true
  44. EOL
  45. - name: Build
  46. run: |
  47. DOCKER_BUILDKIT=1 docker build . -t gcr.io/porter-dev-273614/porter:dev -f ./ee/docker/ee.Dockerfile
  48. - name: Push
  49. run: |
  50. docker push gcr.io/porter-dev-273614/porter:dev
  51. - name: Deploy to cluster
  52. run: |
  53. aws eks --region ${{ secrets.AWS_REGION }} update-kubeconfig --name dev
  54. kubectl rollout restart deployment/porter
  55. deploy-provisioner:
  56. runs-on: ubuntu-latest
  57. steps:
  58. - name: Set up Cloud SDK
  59. uses: google-github-actions/setup-gcloud@v0
  60. with:
  61. project_id: ${{ secrets.GCP_PROJECT_ID }}
  62. service_account_key: ${{ secrets.GCP_SA_KEY }}
  63. export_default_credentials: true
  64. - name: Configure AWS Credentials
  65. uses: aws-actions/configure-aws-credentials@v1
  66. with:
  67. aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
  68. aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
  69. aws-region: ${{ secrets.AWS_REGION }}
  70. - name: Install kubectl
  71. uses: azure/setup-kubectl@v2.0
  72. with:
  73. version: 'v1.19.15'
  74. - name: Log in to gcloud CLI
  75. run: gcloud auth configure-docker
  76. - name: Checkout
  77. uses: actions/checkout@v2.3.4
  78. - name: Build
  79. run: |
  80. DOCKER_BUILDKIT=1 docker build . -t gcr.io/porter-dev-273614/provisioner-service:dev -f ./ee/docker/provisioner.Dockerfile
  81. - name: Push
  82. run: |
  83. docker push gcr.io/porter-dev-273614/provisioner-service:dev
  84. - name: Deploy to cluster
  85. run: |
  86. aws eks --region ${{ secrets.AWS_REGION }} update-kubeconfig --name dev
  87. kubectl rollout restart deployment/provisioner
  88. build-push-ecr-server:
  89. runs-on: ubuntu-latest
  90. steps:
  91. - name: Checkout code
  92. uses: actions/checkout@v2.3.4
  93. - name: Set Github tag
  94. id: vars
  95. run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
  96. - name: Configure AWS credentials
  97. uses: aws-actions/configure-aws-credentials@v1
  98. with:
  99. aws-access-key-id: ${{ secrets.ECR_DEV_AWS_ACCESS_KEY_ID }}
  100. aws-secret-access-key: ${{ secrets.ECR_DEV_AWS_ACCESS_SECRET_KEY }}
  101. aws-region: us-east-2
  102. - name: Login to ECR
  103. id: login-ecr
  104. run: |
  105. aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 801172602658.dkr.ecr.us-east-2.amazonaws.com
  106. - name: Write Dashboard Environment Variables
  107. run: |
  108. cat >./dashboard/.env <<EOL
  109. NODE_ENV=development
  110. API_SERVER=dashboard.dev.getporter.dev
  111. DISCORD_KEY=${{secrets.DISCORD_KEY}}
  112. DISCORD_CID=${{secrets.DISCORD_CID}}
  113. FEEDBACK_ENDPOINT=${{secrets.FEEDBACK_ENDPOINT}}
  114. APPLICATION_CHART_REPO_URL=https://charts.dev.getporter.dev
  115. ADDON_CHART_REPO_URL=https://chart-addons.dev.getporter.dev
  116. ENABLE_SENTRY=true
  117. SENTRY_DSN=${{secrets.SENTRY_DSN}}
  118. SENTRY_ENV=frontend-development
  119. ENABLE_GITLAB=true
  120. EOL
  121. - name: Build
  122. run: |
  123. DOCKER_BUILDKIT=1 docker build . -t 801172602658.dkr.ecr.us-east-2.amazonaws.com/porter:${{ steps.vars.outputs.sha_short }} -f ./ee/docker/ee.Dockerfile
  124. - name: Push to ECR
  125. run: |
  126. docker push 801172602658.dkr.ecr.us-east-2.amazonaws.com/porter:${{ steps.vars.outputs.sha_short }}
  127. build-push-ecr-provisioner:
  128. runs-on: ubuntu-latest
  129. steps:
  130. - name: Checkout code
  131. uses: actions/checkout@v2.3.4
  132. - name: Set Github tag
  133. id: vars
  134. run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
  135. - name: Configure AWS credentials
  136. uses: aws-actions/configure-aws-credentials@v1
  137. with:
  138. aws-access-key-id: ${{ secrets.ECR_DEV_AWS_ACCESS_KEY_ID }}
  139. aws-secret-access-key: ${{ secrets.ECR_DEV_AWS_ACCESS_SECRET_KEY }}
  140. aws-region: us-east-2
  141. - name: Login to ECR
  142. id: login-ecr
  143. run: |
  144. aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 801172602658.dkr.ecr.us-east-2.amazonaws.com
  145. - name: Build
  146. run: |
  147. DOCKER_BUILDKIT=1 docker build . -t 801172602658.dkr.ecr.us-east-2.amazonaws.com/provisioner-service:${{ steps.vars.outputs.sha_short }} -f ./ee/docker/provisioner.Dockerfile
  148. - name: Push to ECR
  149. run: |
  150. docker push 801172602658.dkr.ecr.us-east-2.amazonaws.com/provisioner-service:${{ steps.vars.outputs.sha_short }}