From 20698842da374a0007396302ae5833486e4b9171 Mon Sep 17 00:00:00 2001 From: Cole Date: Mon, 10 Aug 2020 11:51:26 -0700 Subject: [PATCH 1/2] Add action to build and deploy Adds an action config that will build and deploy the web assets. --- .github/workflows/main.yml | 56 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000000000..619fb25adb186 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,56 @@ +# This is a basic workflow to help you get started with Actions + +name: Build and Deploy + +# Controls when the action will run. Triggers the workflow on push or pull request +# events but only for the master branch +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + # The type of runner that the job will run on + runs-on: ubuntu-16.04 + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + + # Installs node + - name: Setup Node + uses: actions/setup-node@v1 + with: + node-version: '14.x' + + # Installs Cloudflare CLI, requires sudo because it writes to a root owned + # folder + - name: Setup Cloudflare CLI + run: sudo pip3 install cloudflare + + - name: Configure AWS Credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: us-east-1 + + # Install node modules + - name: Install dependenices + run: npm install + + - name: Build web + run: npm run build + + - name: Deploy to S3 + run: aws s3 --recursive --acl public-read $GITHUB_WORKSPACE/dist s3://chat-test-expensify-com/ + + - name: Purge Cloudflare cache + run: cli4 --delete hosts=["chat.expensify.com"] /zones/:9ee042e6cfc7fd45e74aa7d2f78d617b/purge_cache + env: + CLOUDFLARE_TOKEN: ${{ secrets.CLOUDFLARE_TOKEN }} From c4fd94477093740a691bbf65ed50fb2225127b22 Mon Sep 17 00:00:00 2001 From: Cole Eason Date: Mon, 10 Aug 2020 12:33:06 -0700 Subject: [PATCH 2/2] Fix running only on merge to master, fix pip error --- .github/workflows/main.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 619fb25adb186..deae67c8cbc84 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -7,8 +7,6 @@ name: Build and Deploy on: push: branches: [ master ] - pull_request: - branches: [ master ] # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: @@ -31,7 +29,7 @@ jobs: # Installs Cloudflare CLI, requires sudo because it writes to a root owned # folder - name: Setup Cloudflare CLI - run: sudo pip3 install cloudflare + run: pip3 install cloudflare - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v1