# Copyright (c) 2022 Project CHIP Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

name: Build example - Telink

on:
    push:
    pull_request:
    merge_group:

concurrency:
    group: ${{ github.ref }}-${{ github.workflow }}-${{ (github.event_name == 'pull_request' && github.event.number) || (github.event_name == 'workflow_dispatch' && github.run_number) || github.sha }}
    cancel-in-progress: true

env:
    CHIP_NO_LOG_TIMESTAMPS: true
    # XXX: Workaround for https://github.com/actions/cache/issues/1141
    SEGMENT_DOWNLOAD_TIMEOUT_MINS: 3

jobs:
    telink:
        name: Telink
        env:
            BUILD_TYPE: telink

        runs-on: ubuntu-latest
        if: github.actor != 'restyled-io[bot]'

        container:
            image: connectedhomeip/chip-build-telink:0.7.3
            volumes:
                - "/tmp/bloat_reports:/tmp/bloat_reports"

        steps:
            - uses: Wandalen/wretry.action@v1.0.36
              name: Checkout
              with:
                  action: actions/checkout@v3
                  with: |
                      token: ${{ github.token }}
                  attempt_limit: 3
                  attempt_delay: 2000
            - name: Checkout submodules
              run: scripts/checkout_submodules.py --allow-changing-global-git-config --shallow --platform telink

            - name: Set up environment for size reports
              if: ${{ !env.ACT }}
              env:
                  GH_CONTEXT: ${{ toJson(github) }}
              run: scripts/tools/memory/gh_sizes_environment.py "${GH_CONTEXT}"

            - name: Bootstrap cache
              uses: actions/cache@v3
              timeout-minutes: 10
              with:
                  key: ${{ runner.os }}-env-${{ hashFiles('scripts/setup/*', 'third_party/pigweed/**') }}
                  path: |
                      .environment
                      build_overrides/pigweed_environment.gni
            - name: Bootstrap
              timeout-minutes: 25
              run: bash scripts/bootstrap.sh

            - name: Build example Telink All Clusters App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-all-clusters' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d all-clusters-app \
                    out/telink-tlsr9518adk80d-all-clusters/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink All Clusters Minimal App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-all-clusters-minimal' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d all-clusters-minimal-app \
                    out/telink-tlsr9518adk80d-all-clusters-minimal/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Bridge App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-bridge' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d bridge-app \
                    out/telink-tlsr9518adk80d-bridge/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Contact Sensor App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-contact-sensor' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d contact-sensor-app \
                    out/telink-tlsr9518adk80d-contact-sensor/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Lighting App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-light' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d lighting-app \
                    out/telink-tlsr9518adk80d-light/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Lighting App with RPC
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-light-rpc' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d lighting-app-rpc \
                    out/telink-tlsr9518adk80d-light-rpc/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Lighting App with Factory Data
              run: |
                  ./scripts/checkout_submodules.py --allow-changing-global-git-config --shallow --platform linux
                  ./scripts/build/gn_gen.sh
                  ./scripts/run_in_build_env.sh "ninja -C ./out/$BUILD_TYPE chip-cert chip-tool spake2p"
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-light-factory-data' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d lighting-app-factory-data \
                    out/telink-tlsr9518adk80d-light-factory-data/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Light Switch App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-light-switch' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d light-switch-app \
                    out/telink-tlsr9518adk80d-light-switch/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Lock App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-lock' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d lock-app \
                    out/telink-tlsr9518adk80d-lock/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink OTA Requestor App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-ota-requestor' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d ota-requestor-app \
                    out/telink-tlsr9518adk80d-ota-requestor/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Pump App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-pump' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d pump-app \
                    out/telink-tlsr9518adk80d-pump/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Pump Controller App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-pump-controller' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d pump-controller-app \
                    out/telink-tlsr9518adk80d-pump-controller/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Temperature Measurement App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-temperature-measurement' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d temperature-measurement-app \
                    out/telink-tlsr9518adk80d-temperature-measurement/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Thermostat App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-thermostat' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d thermostat \
                    out/telink-tlsr9518adk80d-thermostat/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Build example Telink Window Covering App
              run: |
                  ./scripts/run_in_build_env.sh \
                    "./scripts/build/build_examples.py --target 'telink-tlsr9518adk80d-window-covering' build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    telink tlsr9518adk80d window-covering \
                    out/telink-tlsr9518adk80d-window-covering/zephyr/zephyr.elf \
                    /tmp/bloat_reports/

            - name: clean out build output
              run: rm -rf ./out

            - name: Uploading Size Reports
              uses: actions/upload-artifact@v3
              if: ${{ !env.ACT }}
              with:
                  name: Size,Telink-Examples,${{ env.GH_EVENT_PR }},${{ env.GH_EVENT_HASH }},${{ env.GH_EVENT_PARENT }},${{ github.event_name }}
                  path: |
                      /tmp/bloat_reports/
