--- /dev/null
+# This is a basic workflow to help you get started with Actions
+
+name: gbs-build-p4-aarch64
+
+# Controls when the workflow will run
+on:
+ pull_request:
+ push:
+ branches:
+ - main
+
+ # 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:
+ gbs-build-p4-aarch64:
+ runs-on: [code-default]
+ container:
+ image: actions-docker.bart.sec.samsung.net/docker-gbs-base
+ options: --user root --privileged
+
+ # environmental variables to access VD P4. It needs to be updated when the accoung info is changed (e.g. password reset).
+ env:
+ P4PORT: ${{ secrets.P4PORT }}
+ P4USER: ${{ secrets.P4USER }}
+ P4PASSWD: ${{ secrets.P4PASSWD }}
+
+ # Steps represent a sequence of tasks that will be executed as part of the job
+ steps:
+ - name: Check out ESPP code
+ uses: code-actions/checkout@v2
+
+ - name: P4 setup
+ uses: code-actions/perforce-setup-p4@v1
+ with:
+ command: login
+ global_options: '-p ${{ secrets.P4PORT }} -u ${{ secrets.P4USER }}'
+
+ # pull down codes (VD TrackRenderer DEV) from VD P4
+ # note that if P4USER is changed, new VD P4 workspace should be created before running this workflow.
+ # If the location of TrackRenderer DEV is changed, the P4 workspace should be updated too.
+ - name: p4 sync TrackRenderer
+ uses: code-actions/perforce-setup-p4@v1
+ env:
+ P4CLIENT: DEV-TZTV-GithubAction-${{ secrets.P4USER }}
+ with:
+ command: sync
+ arguments: -f
+
+ # VD TrackRenderer DEV is built first for the ESPP repository build, to avoid compile error due to header dependency.
+ - name: Build TrackRenderer
+ run: |
+ cd /tmp/p4ws/TIZEN/ONEMAIN/DEV/PLATFORM/MMP_PPI_SRCN/PPI/capi-trackrenderer-tv
+ wget http://repos.vd.sec.samsung.net/tools/vbs/archive/0.25.2/Ubuntu_20.04/vbs-0.25.2.deb
+ sudo dpkg -i vbs-0.25.2.deb
+ export BASE_TIZEN_VER=$(echo ${{ secrets.BASE_REPO_URL_AARCH64 }} | cut --delimiter='/' --fields=5)
+ export BASE_TIZEN_REL_VER=$(echo ${{ secrets.BASE_REPO_URL_AARCH64 }} | cut --delimiter='/' --fields=7)
+ echo "base info: [$BASE_TIZEN_VER][$BASE_TIZEN_REL_VER]"
+ export PROD_YEAR=$(echo ${{ secrets.PROD_REPO_URL_AARCH64 }} | cut --delimiter='/' --fields=7)
+ export PROD_BRANCH=$(echo ${{ secrets.PROD_REPO_URL_AARCH64 }} | cut --delimiter='/' --fields=8)
+ export PROD_CHIP=$(echo ${{ secrets.PROD_REPO_URL_AARCH64 }} | cut --delimiter='/' --fields=9)
+ export PROD_REL_VER=$(echo ${{ secrets.PROD_REPO_URL_AARCH64 }} | cut --delimiter='/' --fields=10)
+ echo "prod info: [$PROD_YEAR][$PROD_BRANCH][$PROD_CHIP][$PROD_REL_VER]"
+ vbs build -A aarch64 -R ${{ secrets.BASE_REPO_URL_AARCH64 }} -R ${{ secrets.PROD_REPO_URL_AARCH64 }} --include-all --skip-p4check --clean
+ # Finally, build this repository's ESPP code. No need of --clean option, we reuse previously built GBS-ROOT for speed-up
+ - name: Build ESPP
+ run: |
+ cd -
+ gbs build -A aarch64 -R ${{ secrets.BASE_REPO_URL_AARCH64 }} -R ${{ secrets.PROD_REPO_URL_AARCH64 }} --include-all