# Azure Pipelines — React Native (JS CI)
# https://learn.microsoft.com/azure/devops/pipelines/yaml-schema
#
# Same self-hosted pool as other repos — if this pipeline stays Queued or ignores your agent:
# 1) Pipelines → this pipeline → Edit → ⋯ → Triggers → YAML file path must be THIS file
#    (repo root: /azure-pipelines.yml).
# 2) Project Settings → Agent pools → PerformicsCICD → Security → grant this pipeline access
#    (or enable "Grant access permission to all pipelines").
#
# Run on every push directly to main (and when merging into main via PR).
name: PerformicsDevOps-$(Date:yyyyMMdd)$(Rev:.r)

trigger:
  branches:
    include:
      - main

pr:
  branches:
    include:
      - main

variables:
  NODE_VERSION: '22.x'

jobs:
  - job: BuildAndTest
    displayName: Performics DevOps Pipeline
    # Self-hosted pool "PerformicsCICD" (same pattern as working Deeplink/azure-pipelines.yml).
    pool:
      name: PerformicsCICD
    steps:
      - checkout: self
        displayName: Checkout
        continueOnError: false

      - task: NodeTool@0
        displayName: Use Node.js
        continueOnError: false
        inputs:
          versionSpec: $(NODE_VERSION)

      - script: |
          set -euo pipefail
          node -v
          npm -v
          pwd
        displayName: Diagnostics
        continueOnError: false

      - script: |
          set -euo pipefail
          npm ci
        displayName: npm ci
        continueOnError: false

      # - script: |
      #     set -euo pipefail
      #     npm run lint
      #   displayName: ESLint
      #   continueOnError: false

      - script: |
          set -euo pipefail
          cd android
          ./gradlew assembleRelease
        displayName: Android assembleRelease
        continueOnError: false

      # - script: npm test -- --ci --coverage
      #   displayName: Jest
