# Copyright (c) 2020 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 - Linux Standalone

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:
    linux_standalone:
        name: Linux Standalone
        timeout-minutes: 90

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

        container:
            image: connectedhomeip/chip-build: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 linux

            - 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: 10
              run: bash scripts/bootstrap.sh
            - name: Uploading bootstrap logs
              uses: actions/upload-artifact@v3
              if: ${{ always() && !env.ACT }}
              with:
                  name: bootstrap-logs
                  path: |
                      .environment/gn_out/.ninja_log
                      .environment/pigweed-venv/*.log

            - name: Build Standalone cert tool
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-chip-cert \
                        build"
            - name: Build minmdns example with platform dns
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-address-resolve-tool-platform-mdns-ipv6only \
                        build"
            - name: Build example Standalone Echo Client
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-chip-tool \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug chip-tool \
                    out/linux-x64-chip-tool/chip-tool \
                    /tmp/bloat_reports/
            - name: Build example Standalone Shell
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-shell \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug shell \
                    out/linux-x64-shell/chip-shell \
                    /tmp/bloat_reports/
            - name: Build example Standalone All Clusters Server
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-all-clusters \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug all-clusters-app \
                    out/linux-x64-all-clusters/chip-all-clusters-app \
                    /tmp/bloat_reports/
            - name: Build example Standalone All Clusters Minimal Server
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-all-clusters-minimal \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug all-clusters-minimal-app \
                    out/linux-x64-all-clusters-minimal/chip-all-clusters-minimal-app \
                    /tmp/bloat_reports/
            - name: Build example TV app
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-tv-app \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug tv-app \
                    out/linux-x64-tv-app/chip-tv-app \
                    /tmp/bloat_reports/
            - name: Build example Standalone TV Casting App
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-tv-casting-app \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug tv-casting-app \
                    out/linux-x64-tv-casting-app/chip-tv-casting-app \
                    /tmp/bloat_reports/
            - name: Build example lighting app with RPCs and UI
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-light-rpc-with-ui \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug+rpc+ui lighting-app \
                    out/linux-x64-light-rpc-with-ui/chip-lighting-app \
                    /tmp/bloat_reports/
            - name: Build example Standalone Bridge
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-bridge \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug bridge-app \
                    out/linux-x64-bridge/chip-bridge-app \
                    /tmp/bloat_reports/
            - name: Build example Dynamic Bridge
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-dynamic-bridge-ipv6only \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug dynamic-bridge-app-ipv6only \
                    out/linux-x64-dynamic-bridge-ipv6only/dynamic-chip-bridge-app \
                    /tmp/bloat_reports/
            - name: Build example OTA Provider
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-ota-provider \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug ota-provider-app \
                    out/linux-x64-ota-provider/chip-ota-provider-app \
                    /tmp/bloat_reports/
            - name: Build example OTA Requestor
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-ota-requestor \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug ota-requestor-app \
                    out/linux-x64-ota-requestor/chip-ota-requestor-app \
                    /tmp/bloat_reports/
            - name: Build example Standalone Lock App
              timeout-minutes: 10
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-lock \
                        build"
                  .environment/pigweed-venv/bin/python3 scripts/tools/memory/gh_sizes.py \
                    linux debug lock-app \
                    out/linux-x64-lock/chip-lock-app \
                    /tmp/bloat_reports/
            - name: Build example contact sensor with UI
              run: |
                  ./scripts/run_in_build_env.sh \
                     "./scripts/build/build_examples.py \
                        --target linux-x64-contact-sensor-no-ble-with-ui \
                        build"
            - name: Uploading Size Reports
              uses: actions/upload-artifact@v3
              if: ${{ !env.ACT }}
              with:
                  name: Size,Linux-Examples,${{ env.GH_EVENT_PR }},${{ env.GH_EVENT_HASH }},${{ env.GH_EVENT_PARENT }},${{ github.event_name }}
                  path: |
                      /tmp/bloat_reports/
