# This is a basic workflow to help you get started with Actions

name: AWS - CouchbaseServerAndSyncGatewayBYOL

# Controls when the action will run. 
on:
  # Triggers the workflow on push or pull request events but only for the main branch
  push:
    branches: [ main ]
    paths:
      - 'aws/CouchbaseServerAndSyncGateway/**'

  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

# 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"
  ByolNormal:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # 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
      - name: Setup NodeJS
        uses: actions/setup-node@v1
        with:
          node-version: '15.x'
      # Runs a set of commands using the runners shell
      - name: Setup AWS CLI
        run: |
          aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
          aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
          aws configure set default.region $AWS_DEFAULT_REGION
          aws configure get region
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
      - name: Deploy To AWS
        timeout-minutes: 20
        run: |
            bash ${GITHUB_WORKSPACE}/aws/CouchbaseServerAndSyncGateway/deploy.sh cb-sg-mp-byol byol 3 7.1.2 2 2.8.3
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
      - name: Teardown From AWS
        timeout-minutes: 20
        run: |
            bash ${GITHUB_WORKSPACE}/aws/CouchbaseServerAndSyncGateway/backout.sh cb-sg-mp-byol
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
  ByolNoGateway:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # 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
      - name: Setup NodeJS
        uses: actions/setup-node@v1
        with:
          node-version: '15.x'
      # Runs a set of commands using the runners shell
      - name: Setup AWS CLI
        run: |
          aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
          aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
          aws configure set default.region $AWS_DEFAULT_REGION
          aws configure get region
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
      - name: Deploy To AWS
        timeout-minutes: 20
        run: |
            bash ${GITHUB_WORKSPACE}/aws/CouchbaseServerAndSyncGateway/deploy.sh cb-sg-mp-byol-no-sg byol 3 7.2.0 0 2.8.3
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
      - name: Teardown From AWS
        timeout-minutes: 15
        run: |
            bash ${GITHUB_WORKSPACE}/aws/CouchbaseServerAndSyncGateway/backout.sh cb-sg-mp-byol-no-sg
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
  ByolNoServer:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # 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
      - name: Setup NodeJS
        uses: actions/setup-node@v1
        with:
          node-version: '15.x'
      # Runs a set of commands using the runners shell
      - name: Setup AWS CLI
        run: |
          aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
          aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
          aws configure set default.region $AWS_DEFAULT_REGION
          aws configure get region
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
      - name: Deploy To AWS
        timeout-minutes: 15
        run: |
            bash ${GITHUB_WORKSPACE}/aws/CouchbaseServerAndSyncGateway/deploy.sh cb-sg-mp-byol-no-cbs byol 0 7.2.0 2 3.0.3
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'
      - name: Teardown From AWS
        timeout-minutes: 15
        run: |
            bash ${GITHUB_WORKSPACE}/aws/CouchbaseServerAndSyncGateway/backout.sh cb-sg-mp-byol-no-cbs
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          AWS_DEFAULT_REGION: 'us-east-1'
          AWS_REGION: 'us-east-1'