name: AIO App CI

on:
  release:
    types: [released]
jobs:
  deploy:
    name: Deploy to Prod
    runs-on: ${{ matrix.os }}
    environment: production
    strategy:
      max-parallel: 1
      matrix:
        node-version: ['20']
        os: [ubuntu-latest]
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Use Node.js ${{ matrix.node-version }}
        uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.node-version }}
      - name: npm install
        run: npm i
      - name: Setup CLI
        uses: adobe/aio-cli-setup-action@1.3.0
        with:
          os: ${{ matrix.os }}
          version: 11.x.x
      - name: Auth
        uses: adobe/aio-apps-action@4.1.0
        with:
          os: ${{ matrix.os }}
          command: oauth_sts
          CLIENTID: ${{ secrets.CLIENTID }}
          CLIENTSECRET: ${{ secrets.CLIENTSECRET }}
          TECHNICALACCOUNTID: ${{ secrets.TECHNICALACCID }}
          TECHNICALACCOUNTEMAIL: ${{ secrets.TECHNICALACCEMAIL }}
          IMSORGID: ${{ secrets.IMSORGID }}
          SCOPES: ${{ secrets.SCOPES }}
      - name: Build
        env:
          AIO_RUNTIME_NAMESPACE: ${{ secrets.AIO_RUNTIME_NAMESPACE }}
        uses: adobe/aio-apps-action@4.1.0
        with:
          os: ${{ matrix.os }}
          command: build
      - name: Deploy
        env:
          AIO_RUNTIME_NAMESPACE: ${{ secrets.AIO_RUNTIME_NAMESPACE }}
          AIO_RUNTIME_AUTH: ${{ secrets.AIO_RUNTIME_AUTH }}
          AIO_PROJECT_ID: ${{ secrets.AIO_PROJECT_ID }}
          AIO_PROJECT_NAME: ${{ secrets.AIO_PROJECT_NAME }}
          AIO_PROJECT_ORG_ID: ${{ secrets.AIO_PROJECT_ORG_ID }}
          AIO_PROJECT_WORKSPACE_ID: ${{ secrets.AIO_PROJECT_WORKSPACE_ID }}
          AIO_PROJECT_WORKSPACE_NAME: ${{ secrets.AIO_PROJECT_WORKSPACE_NAME }}
          AIO_PROJECT_WORKSPACE_DETAILS_SERVICES: ${{ secrets.AIO_PROJECT_WORKSPACE_DETAILS_SERVICES }}
        uses: adobe/aio-apps-action@4.1.0
        with:
          os: ${{ matrix.os }}
          command: deploy
