From 885c038fad82ed970d515ce3373f8646df6942bb Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EB=B0=B1=EC=A2=85=EB=AF=BC/Tizen=20Platform=20Lab=28SR=29/?= =?utf8?q?=EC=82=BC=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Thu, 20 Jul 2023 10:10:14 +0900 Subject: [PATCH] ci: create aarch64 build checker --- .github/workflows/gbs-build-p4-aarch64 | 70 ++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 .github/workflows/gbs-build-p4-aarch64 diff --git a/.github/workflows/gbs-build-p4-aarch64 b/.github/workflows/gbs-build-p4-aarch64 new file mode 100644 index 0000000..bbbb8ad --- /dev/null +++ b/.github/workflows/gbs-build-p4-aarch64 @@ -0,0 +1,70 @@ +# 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 -- 2.7.4