2
0

dev.yaml 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  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. EOL
  44. - name: Build
  45. run: |
  46. DOCKER_BUILDKIT=1 docker build . -t gcr.io/porter-dev-273614/porter:dev -f ./ee/docker/ee.Dockerfile
  47. - name: Push
  48. run: |
  49. docker push gcr.io/porter-dev-273614/porter:dev
  50. - name: Deploy to cluster
  51. run: |
  52. aws eks --region ${{ secrets.AWS_REGION }} update-kubeconfig --name dev
  53. kubectl rollout restart deployment/porter
  54. deploy-provisioner:
  55. runs-on: ubuntu-latest
  56. steps:
  57. - name: Set up Cloud SDK
  58. uses: google-github-actions/setup-gcloud@v0
  59. with:
  60. project_id: ${{ secrets.GCP_PROJECT_ID }}
  61. service_account_key: ${{ secrets.GCP_SA_KEY }}
  62. export_default_credentials: true
  63. - name: Configure AWS Credentials
  64. uses: aws-actions/configure-aws-credentials@v1
  65. with:
  66. aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
  67. aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
  68. aws-region: ${{ secrets.AWS_REGION }}
  69. - name: Install kubectl
  70. uses: azure/setup-kubectl@v2.0
  71. with:
  72. version: "v1.19.15"
  73. - name: Log in to gcloud CLI
  74. run: gcloud auth configure-docker
  75. - name: Checkout
  76. uses: actions/checkout@v2.3.4
  77. - name: Build
  78. run: |
  79. DOCKER_BUILDKIT=1 docker build . -t gcr.io/porter-dev-273614/provisioner-service:dev -f ./ee/docker/provisioner.Dockerfile
  80. - name: Push
  81. run: |
  82. docker push gcr.io/porter-dev-273614/provisioner-service:dev
  83. - name: Deploy to cluster
  84. run: |
  85. aws eks --region ${{ secrets.AWS_REGION }} update-kubeconfig --name dev
  86. kubectl rollout restart deployment/provisioner
  87. build-push-ecr-server:
  88. runs-on: ubuntu-latest
  89. steps:
  90. - name: Checkout code
  91. uses: actions/checkout@v2.3.4
  92. - name: Set Github tag
  93. id: vars
  94. run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
  95. - name: Configure AWS credentials
  96. uses: aws-actions/configure-aws-credentials@v1
  97. with:
  98. aws-access-key-id: ${{ secrets.ECR_DEV_AWS_ACCESS_KEY_ID }}
  99. aws-secret-access-key: ${{ secrets.ECR_DEV_AWS_ACCESS_SECRET_KEY }}
  100. aws-region: us-east-2
  101. - name: Login to ECR
  102. id: login-ecr
  103. run: |
  104. aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 801172602658.dkr.ecr.us-east-2.amazonaws.com
  105. - name: Write Dashboard Environment Variables
  106. run: |
  107. cat >./dashboard/.env <<EOL
  108. NODE_ENV=development
  109. API_SERVER=dashboard.dev.getporter.dev
  110. DISCORD_KEY=${{secrets.DISCORD_KEY}}
  111. DISCORD_CID=${{secrets.DISCORD_CID}}
  112. FEEDBACK_ENDPOINT=${{secrets.FEEDBACK_ENDPOINT}}
  113. APPLICATION_CHART_REPO_URL=https://charts.dev.getporter.dev
  114. ADDON_CHART_REPO_URL=https://chart-addons.dev.getporter.dev
  115. ENABLE_SENTRY=true
  116. SENTRY_DSN=${{secrets.SENTRY_DSN}}
  117. SENTRY_ENV=frontend-development
  118. EOL
  119. - name: Build
  120. run: |
  121. 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
  122. - name: Push to ECR
  123. run: |
  124. docker push 801172602658.dkr.ecr.us-east-2.amazonaws.com/porter:${{ steps.vars.outputs.sha_short }}
  125. build-push-ecr-provisioner:
  126. runs-on: ubuntu-latest
  127. steps:
  128. - name: Checkout code
  129. uses: actions/checkout@v2.3.4
  130. - name: Set Github tag
  131. id: vars
  132. run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
  133. - name: Configure AWS credentials
  134. uses: aws-actions/configure-aws-credentials@v1
  135. with:
  136. aws-access-key-id: ${{ secrets.ECR_DEV_AWS_ACCESS_KEY_ID }}
  137. aws-secret-access-key: ${{ secrets.ECR_DEV_AWS_ACCESS_SECRET_KEY }}
  138. aws-region: us-east-2
  139. - name: Login to ECR
  140. id: login-ecr
  141. run: |
  142. aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 801172602658.dkr.ecr.us-east-2.amazonaws.com
  143. - name: Build
  144. run: |
  145. 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
  146. - name: Push to ECR
  147. run: |
  148. docker push 801172602658.dkr.ecr.us-east-2.amazonaws.com/provisioner-service:${{ steps.vars.outputs.sha_short }}
  149. build-push-worker-pool:
  150. runs-on: ubuntu-latest
  151. steps:
  152. - name: Checkout code
  153. uses: actions/checkout@v2.3.4
  154. - name: Set Github tag
  155. id: vars
  156. run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
  157. - name: Configure AWS credentials
  158. uses: aws-actions/configure-aws-credentials@v1
  159. with:
  160. aws-access-key-id: ${{ secrets.ECR_DEV_AWS_ACCESS_KEY_ID }}
  161. aws-secret-access-key: ${{ secrets.ECR_DEV_AWS_ACCESS_SECRET_KEY }}
  162. aws-region: us-east-2
  163. - name: Set up Cloud SDK
  164. uses: google-github-actions/setup-gcloud@v0
  165. with:
  166. project_id: ${{ secrets.GCP_PROJECT_ID }}
  167. service_account_key: ${{ secrets.GCP_SA_KEY }}
  168. export_default_credentials: true
  169. - name: Log in to gcloud CLI
  170. run: gcloud auth configure-docker
  171. - name: Login to ECR
  172. id: login-ecr
  173. run: |
  174. aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 801172602658.dkr.ecr.us-east-2.amazonaws.com
  175. - name: Build
  176. run: |
  177. DOCKER_BUILDKIT=1 docker build . -t 801172602658.dkr.ecr.us-east-2.amazonaws.com/worker-pool:${{ steps.vars.outputs.sha_short }} -t gcr.io/porter-dev-273614/worker-pool:dev -f ./workers/Dockerfile
  178. - name: Push to ECR
  179. run: |
  180. docker push 801172602658.dkr.ecr.us-east-2.amazonaws.com/worker-pool:${{ steps.vars.outputs.sha_short }}
  181. docker push gcr.io/porter-dev-273614/worker-pool:dev