* [dpdk-dev] [PATCH v1 0/1] ci: enable DPDK GHA for arm64 with self-hosted runners @ 2021-10-13 8:03 Serena He 2021-10-13 8:03 ` [dpdk-dev] [PATCH v1 1/1] " Serena He 0 siblings, 1 reply; 9+ messages in thread From: Serena He @ 2021-10-13 8:03 UTC (permalink / raw) To: aconole, maicolgabriel, david.marchand, thomas Cc: dev, nd, honnappa.nagarahalli, ruifeng.wang, Dean.Arnold, Serena He This is to enable DPDK GitHub Actions on arm64 and CI jobs are triggered only for repos installed with given GHApp and runners. Serena He (1): ci: enable DPDK GHA for arm64 with self-hosted runners .github/workflows/build-arm64.yml | 118 ++++++++++++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 .github/workflows/build-arm64.yml -- 2.17.1 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-13 8:03 [dpdk-dev] [PATCH v1 0/1] ci: enable DPDK GHA for arm64 with self-hosted runners Serena He @ 2021-10-13 8:03 ` Serena He 2021-10-13 9:47 ` Thomas Monjalon 2021-10-13 11:32 ` Michael Santana 0 siblings, 2 replies; 9+ messages in thread From: Serena He @ 2021-10-13 8:03 UTC (permalink / raw) To: aconole, maicolgabriel, david.marchand, thomas Cc: dev, nd, honnappa.nagarahalli, ruifeng.wang, Dean.Arnold, Serena He, stable CI jobs are triggered only for repos installed with given GHApp and runners Cc: stable@dpdk.org Signed-off-by: Serena He <serena.he@arm.com> --- .github/workflows/build-arm64.yml | 118 ++++++++++++++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 .github/workflows/build-arm64.yml diff --git a/.github/workflows/build-arm64.yml b/.github/workflows/build-arm64.yml new file mode 100644 index 0000000000..570563f7c8 --- /dev/null +++ b/.github/workflows/build-arm64.yml @@ -0,0 +1,118 @@ +name: build-arm64 + +on: + push: + schedule: + - cron: '0 0 * * 1' + +defaults: + run: + shell: bash --noprofile --norc -exo pipefail {0} + +jobs: + build: + # Here, runners for arm64 are accessed by installed GitHub APP, thus will not be available by fork. + # you can change the following 'if' and 'runs-on' if you have your own runners installed. + # or request to get your repo on the whitelist to use GitHub APP and delete this 'if'. + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == 'ovsrobot/dpdk' }} + name: ${{ join(matrix.config.*, '-') }} + runs-on: ${{ matrix.config.os }} + env: + ABI_CHECKS: ${{ contains(matrix.config.checks, 'abi') }} + BUILD_DOCS: ${{ contains(matrix.config.checks, 'doc') }} + CL: ${{ matrix.config.compiler == 'clang' }} + CC: ccache ${{ matrix.config.compiler }} + DEF_LIB: ${{ matrix.config.library }} + LIBABIGAIL_VERSION: libabigail-1.8 + REF_GIT_TAG: none + + strategy: + fail-fast: false + matrix: + config: + - os: [self-hosted,arm-ubuntu-20.04] + compiler: gcc + library: static + - os: [self-hosted,arm-ubuntu-20.04] + compiler: gcc + library: shared + checks: doc+tests + - os: [self-hosted,arm-ubuntu-20.04] + compiler: clang + library: static + - os: [self-hosted,arm-ubuntu-20.04] + compiler: clang + library: shared + checks: doc+tests + + steps: + - name: Checkout sources + uses: actions/checkout@v2 + - name: Generate cache keys + id: get_ref_keys + run: | + echo -n '::set-output name=ccache::' + echo 'ccache-${{ matrix.config.os }}-${{ matrix.config.compiler }}-${{ matrix.config.cross }}-'$(date -u +%Y-w%W) + echo -n '::set-output name=libabigail::' + echo 'libabigail-${{ matrix.config.os }}' + echo -n '::set-output name=abi::' + echo 'abi-${{ matrix.config.os }}-${{ matrix.config.compiler }}-${{ matrix.config.cross }}-${{ env.LIBABIGAIL_VERSION }}-${{ env.REF_GIT_TAG }}' + - name: Retrieve ccache cache + uses: actions/cache@v2 + with: + path: ~/.ccache + key: ${{ steps.get_ref_keys.outputs.ccache }}-${{ github.ref }} + restore-keys: | + ${{ steps.get_ref_keys.outputs.ccache }}-refs/heads/main + - name: Retrieve libabigail cache + id: libabigail-cache + uses: actions/cache@v2 + if: env.ABI_CHECKS == 'true' + with: + path: libabigail + key: ${{ steps.get_ref_keys.outputs.libabigail }} + - name: Retrieve ABI reference cache + uses: actions/cache@v2 + if: env.ABI_CHECKS == 'true' + with: + path: reference + key: ${{ steps.get_ref_keys.outputs.abi }} + - name: Update APT cache + run: sudo apt update || true + - name: Install packages + run: sudo apt install -y ccache libnuma-dev python3-setuptools + python3-wheel python3-pip python3-pyelftools ninja-build libbsd-dev + libpcap-dev libibverbs-dev libcrypto++-dev libfdt-dev libjansson-dev + libarchive-dev zlib1g-dev pkgconf + - name: Install libabigail build dependencies if no cache is available + if: env.ABI_CHECKS == 'true' && steps.libabigail-cache.outputs.cache-hit != 'true' + run: sudo apt install -y autoconf automake libtool pkg-config libxml2-dev + libdw-dev + + - name: Install test tools packages + run: sudo apt install -y gdb + - name: Install doc generation packages + if: env.BUILD_DOCS == 'true' + run: sudo apt install -y doxygen graphviz python3-sphinx + python3-sphinx-rtd-theme + - name: Run setup + run: | + .ci/linux-setup.sh + # Workaround on $HOME permissions as EAL checks them for plugin loading + chmod o-w $HOME + - name: Install clang + if: env.CL == 'true' + run: sudo apt install -y clang + - name: Build and test + run: .ci/linux-build.sh + - name: Upload logs on failure + if: failure() + uses: actions/upload-artifact@v2 + with: + name: meson-logs-${{ join(matrix.config.*, '-') }} + path: | + build/meson-logs/testlog.txt + build/.ninja_log + build/meson-logs/meson-log.txt + build/gdb.log + -- 2.17.1 ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-13 8:03 ` [dpdk-dev] [PATCH v1 1/1] " Serena He @ 2021-10-13 9:47 ` Thomas Monjalon 2021-10-14 4:20 ` Serena He 2021-10-13 11:32 ` Michael Santana 1 sibling, 1 reply; 9+ messages in thread From: Thomas Monjalon @ 2021-10-13 9:47 UTC (permalink / raw) To: Serena He Cc: aconole, maicolgabriel, david.marchand, dev, honnappa.nagarahalli, ruifeng.wang, Dean.Arnold 13/10/2021 10:03, Serena He: > CI jobs are triggered only for repos installed with given GHApp and runners [...] > + # Here, runners for arm64 are accessed by installed GitHub APP, thus will not be available by fork. > + # you can change the following 'if' and 'runs-on' if you have your own runners installed. > + # or request to get your repo on the whitelist to use GitHub APP and delete this 'if'. > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == 'ovsrobot/dpdk' }} What is this "GitHub APP"? ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-13 9:47 ` Thomas Monjalon @ 2021-10-14 4:20 ` Serena He 2021-10-14 6:36 ` Thomas Monjalon 0 siblings, 1 reply; 9+ messages in thread From: Serena He @ 2021-10-14 4:20 UTC (permalink / raw) To: thomas Cc: aconole, maicolgabriel, david.marchand, dev, Honnappa Nagarahalli, Ruifeng Wang, Dean Arnold, nd Hi Thomas, thanks for the feedback. > -----Original Message----- > From: Thomas Monjalon <thomas@monjalon.net> > Sent: Wednesday, October 13, 2021 5:47 PM > To: Serena He <Serena.He@arm.com> > Cc: aconole@redhat.com; maicolgabriel@hotmail.com; > david.marchand@redhat.com; dev@dpdk.org; Honnappa Nagarahalli > <Honnappa.Nagarahalli@arm.com>; Ruifeng Wang > <Ruifeng.Wang@arm.com>; Dean Arnold <Dean.Arnold@arm.com> > Subject: Re: [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted > runners > > 13/10/2021 10:03, Serena He: > > CI jobs are triggered only for repos installed with given GHApp and runners > [...] > > + # Here, runners for arm64 are accessed by installed GitHub APP, thus > will not be available by fork. > > + # you can change the following 'if' and 'runs-on' if you have your own > runners installed. > > + # or request to get your repo on the whitelist to use GitHub APP and > delete this 'if'. > > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == > 'ovsrobot/dpdk' }} > > What is this "GitHub APP"? > Apps on GitHub are integrations with the GitHub APIs. This "GitHub APP" should be installed on repository and it will enable requests for arm-based runners . Sorry for not specifying this APP in the above comment. It is to avoid unnecessary access from public. The installation link will be provided, as well as document, after release. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-14 4:20 ` Serena He @ 2021-10-14 6:36 ` Thomas Monjalon 2021-10-14 8:18 ` Serena He 0 siblings, 1 reply; 9+ messages in thread From: Thomas Monjalon @ 2021-10-14 6:36 UTC (permalink / raw) To: Serena He Cc: aconole, maicolgabriel, david.marchand, dev, Honnappa Nagarahalli, Ruifeng Wang, Dean Arnold, nd 14/10/2021 06:20, Serena He: > From: Thomas Monjalon <thomas@monjalon.net> > > 13/10/2021 10:03, Serena He: > > > CI jobs are triggered only for repos installed with given GHApp and runners > > [...] > > > + # Here, runners for arm64 are accessed by installed GitHub APP, thus > > will not be available by fork. > > > + # you can change the following 'if' and 'runs-on' if you have your own > > runners installed. > > > + # or request to get your repo on the whitelist to use GitHub APP and > > delete this 'if'. > > > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == > > 'ovsrobot/dpdk' }} > > > > What is this "GitHub APP"? > > > > Apps on GitHub are integrations with the GitHub APIs. > This "GitHub APP" should be installed on repository So GitHub has no native Arm support? > and it will enable requests for arm-based runners. Where it will run? Which servers? > Sorry for not specifying this APP in the above comment. > It is to avoid unnecessary access from public. You want to control who can run on these servers? There is no access control other than app installation? > The installation link will be provided, as well as document, after release. After release of the app? You mean it is not ready yet? In current state of assumptions, it is a nack. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-14 6:36 ` Thomas Monjalon @ 2021-10-14 8:18 ` Serena He 2021-10-14 8:28 ` Thomas Monjalon 0 siblings, 1 reply; 9+ messages in thread From: Serena He @ 2021-10-14 8:18 UTC (permalink / raw) To: thomas Cc: aconole, maicolgabriel, david.marchand, dev, Honnappa Nagarahalli, Ruifeng Wang, Dean Arnold, nd, Dharmik Thakkar > 14/10/2021 06:20, Serena He: > > From: Thomas Monjalon <thomas@monjalon.net> > > > 13/10/2021 10:03, Serena He: > > > > CI jobs are triggered only for repos installed with given GHApp and > runners > > > [...] > > > > + # Here, runners for arm64 are accessed by installed GitHub APP, > thus > > > will not be available by fork. > > > > + # you can change the following 'if' and 'runs-on' if you have your > own > > > runners installed. > > > > + # or request to get your repo on the whitelist to use GitHub APP and > > > delete this 'if'. > > > > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == > > > 'ovsrobot/dpdk' }} > > > > > > What is this "GitHub APP"? > > > > > > > Apps on GitHub are integrations with the GitHub APIs. > > This "GitHub APP" should be installed on repository > > So GitHub has no native Arm support? No, GitHub has no native Arm support. > > and it will enable requests for arm-based runners. > > Where it will run? Which servers? Runners will run in AWS EC2 on Graviton2. > > Sorry for not specifying this APP in the above comment. > > It is to avoid unnecessary access from public. > > You want to control who can run on these servers? > There is no access control other than app installation? Whitelist mentioned in the comment is for access control, but we hope the link is not shared with anyone who has no repo get whitelisted. > > The installation link will be provided, as well as document, after release. > > After release of the app? You mean it is not ready yet? The APP has been ready. It's waiting for a release date. > > In current state of assumptions, it is a nack. > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-14 8:18 ` Serena He @ 2021-10-14 8:28 ` Thomas Monjalon 0 siblings, 0 replies; 9+ messages in thread From: Thomas Monjalon @ 2021-10-14 8:28 UTC (permalink / raw) To: Serena He Cc: aconole, maicolgabriel, david.marchand, dev, Honnappa Nagarahalli, Ruifeng Wang, Dean Arnold, nd, Dharmik Thakkar 14/10/2021 10:18, Serena He: > > 14/10/2021 06:20, Serena He: > > > From: Thomas Monjalon <thomas@monjalon.net> > > > > 13/10/2021 10:03, Serena He: > > > > > CI jobs are triggered only for repos installed with given GHApp and > > runners > > > > [...] > > > > > + # Here, runners for arm64 are accessed by installed GitHub APP, > > thus > > > > will not be available by fork. > > > > > + # you can change the following 'if' and 'runs-on' if you have your > > own > > > > runners installed. > > > > > + # or request to get your repo on the whitelist to use GitHub APP and > > > > delete this 'if'. > > > > > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == > > > > 'ovsrobot/dpdk' }} > > > > > > > > What is this "GitHub APP"? > > > > > > > > > > Apps on GitHub are integrations with the GitHub APIs. > > > This "GitHub APP" should be installed on repository > > > > So GitHub has no native Arm support? > > No, GitHub has no native Arm support. > > > > and it will enable requests for arm-based runners. > > > > Where it will run? Which servers? > > Runners will run in AWS EC2 on Graviton2. > > > > Sorry for not specifying this APP in the above comment. > > > It is to avoid unnecessary access from public. > > > > You want to control who can run on these servers? > > There is no access control other than app installation? > > Whitelist mentioned in the comment is for access control, but we hope the link is not shared with anyone who has no repo get whitelisted. You mean the link is enough to run on your AWS instance? There is no key control when running? It looks really weak, and I don't want to merge anything in DPDK related to some secret app. > > > The installation link will be provided, as well as document, after release. > > > > After release of the app? You mean it is not ready yet? > > The APP has been ready. It's waiting for a release date. > > In current state of assumptions, it is a nack. So I confirm the nack for now. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-13 8:03 ` [dpdk-dev] [PATCH v1 1/1] " Serena He 2021-10-13 9:47 ` Thomas Monjalon @ 2021-10-13 11:32 ` Michael Santana 2021-10-14 7:04 ` Serena He 1 sibling, 1 reply; 9+ messages in thread From: Michael Santana @ 2021-10-13 11:32 UTC (permalink / raw) To: Serena He, aconole, maicolgabriel, david.marchand, thomas Cc: dev, nd, honnappa.nagarahalli, ruifeng.wang, Dean.Arnold, stable On 10/13/21 4:03 AM, Serena He wrote: > CI jobs are triggered only for repos installed with given GHApp and runners > > Cc: stable@dpdk.org > > Signed-off-by: Serena He <serena.he@arm.com> > > --- > .github/workflows/build-arm64.yml | 118 ++++++++++++++++++++++++++++++ > 1 file changed, 118 insertions(+) > create mode 100644 .github/workflows/build-arm64.yml > > diff --git a/.github/workflows/build-arm64.yml b/.github/workflows/build-arm64.yml > new file mode 100644 > index 0000000000..570563f7c8 > --- /dev/null > +++ b/.github/workflows/build-arm64.yml Adding a new workflow should work on our 0-day-bot. We now support having multiple workflows so this looks good > @@ -0,0 +1,118 @@ > +name: build-arm64 > + > +on: > + push: > + schedule: > + - cron: '0 0 * * 1' nit: Please add a comment for when this is scheduled so we dont have to do cron math :) > + > +defaults: > + run: > + shell: bash --noprofile --norc -exo pipefail {0} > + > +jobs: > + build: > + # Here, runners for arm64 are accessed by installed GitHub APP, thus will not be available by fork. > + # you can change the following 'if' and 'runs-on' if you have your own runners installed. > + # or request to get your repo on the whitelist to use GitHub APP and delete this 'if'. I think I understand. I think you mean s/GitHub APP/GitHub/ . otherwise I dont know what that is. From my understanding you had to request special arm-based runners from github Are DPDK/dpdk and ovsrobot/dpdk whitelisted to use the arm-based runners? Maybe there was a thread about this in the past that I missed, but where and how do you get these arm-based runners from github? > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == 'ovsrobot/dpdk' }} > + name: ${{ join(matrix.config.*, '-') }} > + runs-on: ${{ matrix.config.os }} > + env: > + ABI_CHECKS: ${{ contains(matrix.config.checks, 'abi') }} > + BUILD_DOCS: ${{ contains(matrix.config.checks, 'doc') }} > + CL: ${{ matrix.config.compiler == 'clang' }} > + CC: ccache ${{ matrix.config.compiler }} > + DEF_LIB: ${{ matrix.config.library }} > + LIBABIGAIL_VERSION: libabigail-1.8 > + REF_GIT_TAG: none > + > + strategy: > + fail-fast: false > + matrix: > + config: > + - os: [self-hosted,arm-ubuntu-20.04] > + compiler: gcc > + library: static > + - os: [self-hosted,arm-ubuntu-20.04] > + compiler: gcc > + library: shared > + checks: doc+tests > + - os: [self-hosted,arm-ubuntu-20.04] > + compiler: clang > + library: static > + - os: [self-hosted,arm-ubuntu-20.04] > + compiler: clang > + library: shared > + checks: doc+tests > + > + steps: > + - name: Checkout sources > + uses: actions/checkout@v2 > + - name: Generate cache keys > + id: get_ref_keys > + run: | > + echo -n '::set-output name=ccache::' > + echo 'ccache-${{ matrix.config.os }}-${{ matrix.config.compiler }}-${{ matrix.config.cross }}-'$(date -u +%Y-w%W) > + echo -n '::set-output name=libabigail::' > + echo 'libabigail-${{ matrix.config.os }}' > + echo -n '::set-output name=abi::' > + echo 'abi-${{ matrix.config.os }}-${{ matrix.config.compiler }}-${{ matrix.config.cross }}-${{ env.LIBABIGAIL_VERSION }}-${{ env.REF_GIT_TAG }}' > + - name: Retrieve ccache cache > + uses: actions/cache@v2 > + with: > + path: ~/.ccache > + key: ${{ steps.get_ref_keys.outputs.ccache }}-${{ github.ref }} > + restore-keys: | > + ${{ steps.get_ref_keys.outputs.ccache }}-refs/heads/main > + - name: Retrieve libabigail cache > + id: libabigail-cache > + uses: actions/cache@v2 > + if: env.ABI_CHECKS == 'true' > + with: > + path: libabigail > + key: ${{ steps.get_ref_keys.outputs.libabigail }} > + - name: Retrieve ABI reference cache > + uses: actions/cache@v2 > + if: env.ABI_CHECKS == 'true' > + with: > + path: reference > + key: ${{ steps.get_ref_keys.outputs.abi }} > + - name: Update APT cache > + run: sudo apt update || true > + - name: Install packages > + run: sudo apt install -y ccache libnuma-dev python3-setuptools > + python3-wheel python3-pip python3-pyelftools ninja-build libbsd-dev > + libpcap-dev libibverbs-dev libcrypto++-dev libfdt-dev libjansson-dev > + libarchive-dev zlib1g-dev pkgconf > + - name: Install libabigail build dependencies if no cache is available > + if: env.ABI_CHECKS == 'true' && steps.libabigail-cache.outputs.cache-hit != 'true' > + run: sudo apt install -y autoconf automake libtool pkg-config libxml2-dev > + libdw-dev Lots of caching stuff. All of it needed? > + > + - name: Install test tools packages > + run: sudo apt install -y gdb > + - name: Install doc generation packages > + if: env.BUILD_DOCS == 'true' > + run: sudo apt install -y doxygen graphviz python3-sphinx > + python3-sphinx-rtd-theme > + - name: Run setup > + run: | > + .ci/linux-setup.sh > + # Workaround on $HOME permissions as EAL checks them for plugin loading > + chmod o-w $HOME > + - name: Install clang > + if: env.CL == 'true' > + run: sudo apt install -y clang > + - name: Build and test > + run: .ci/linux-build.sh > + - name: Upload logs on failure > + if: failure() > + uses: actions/upload-artifact@v2 > + with: > + name: meson-logs-${{ join(matrix.config.*, '-') }} > + path: | > + build/meson-logs/testlog.txt > + build/.ninja_log > + build/meson-logs/meson-log.txt > + build/gdb.log LGTM! > + > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] [PATCH v1 1/1] ci: enable DPDK GHA for arm64 with self-hosted runners 2021-10-13 11:32 ` Michael Santana @ 2021-10-14 7:04 ` Serena He 0 siblings, 0 replies; 9+ messages in thread From: Serena He @ 2021-10-14 7:04 UTC (permalink / raw) To: Michael Santana Cc: dev, nd, Honnappa Nagarahalli, Ruifeng Wang, Dean Arnold, stable, aconole, maicolgabriel, david.marchand, thomas Hi Michael, thanks for the feedback, and here are some comments below. > On 10/13/21 4:03 AM, Serena He wrote: > > CI jobs are triggered only for repos installed with given GHApp and > > runners > > > > Cc: stable@dpdk.org > > > > Signed-off-by: Serena He <serena.he@arm.com> > > > > --- > > .github/workflows/build-arm64.yml | 118 > ++++++++++++++++++++++++++++++ > > 1 file changed, 118 insertions(+) > > create mode 100644 .github/workflows/build-arm64.yml > > > > diff --git a/.github/workflows/build-arm64.yml > > b/.github/workflows/build-arm64.yml > > new file mode 100644 > > index 0000000000..570563f7c8 > > --- /dev/null > > +++ b/.github/workflows/build-arm64.yml > Adding a new workflow should work on our 0-day-bot. We now support > having multiple workflows so this looks good Great! > > @@ -0,0 +1,118 @@ > > +name: build-arm64 > > + > > +on: > > + push: > > + schedule: > > + - cron: '0 0 * * 1' > nit: Please add a comment for when this is scheduled so we dont have to do > cron math :) Sure, I will add that. > > + > > +defaults: > > + run: > > + shell: bash --noprofile --norc -exo pipefail {0} > > + > > +jobs: > > + build: > > + # Here, runners for arm64 are accessed by installed GitHub APP, thus > will not be available by fork. > > + # you can change the following 'if' and 'runs-on' if you have your own > runners installed. > > + # or request to get your repo on the whitelist to use GitHub APP and > delete this 'if'. > I think I understand. I think you mean s/GitHub APP/GitHub/ . otherwise I > dont know what that is. From my understanding you had to request special > arm-based runners from github > > Are DPDK/dpdk and ovsrobot/dpdk whitelisted to use the arm-based > runners? > > Maybe there was a thread about this in the past that I missed, but where and > how do you get these arm-based runners from github? GitHub APPs are integrations with the GitHub APIs and this one provided here will send requests for arm-based runners from AWS cloud. Document will be provided along with the APP to make better understanding after release. DPDK/dpdk and ovsrobot/dpdk are both whitelisted to use. > > + if: ${{ github.repository == 'DPDK/dpdk' || github.repository == > 'ovsrobot/dpdk' }} [...] > > + - name: Generate cache keys > > + id: get_ref_keys > > + run: | > > + echo -n '::set-output name=ccache::' > > + echo 'ccache-${{ matrix.config.os }}-${{ matrix.config.compiler }}- > ${{ matrix.config.cross }}-'$(date -u +%Y-w%W) > > + echo -n '::set-output name=libabigail::' > > + echo 'libabigail-${{ matrix.config.os }}' > > + echo -n '::set-output name=abi::' > > + echo 'abi-${{ matrix.config.os }}-${{ matrix.config.compiler }}- > ${{ matrix.config.cross }}-${{ env.LIBABIGAIL_VERSION }}- > ${{ env.REF_GIT_TAG }}' > > + - name: Retrieve ccache cache > > + uses: actions/cache@v2 > > + with: > > + path: ~/.ccache > > + key: ${{ steps.get_ref_keys.outputs.ccache }}-${{ github.ref }} > > + restore-keys: | > > + ${{ steps.get_ref_keys.outputs.ccache }}-refs/heads/main > > + - name: Retrieve libabigail cache > > + id: libabigail-cache > > + uses: actions/cache@v2 > > + if: env.ABI_CHECKS == 'true' > > + with: > > + path: libabigail > > + key: ${{ steps.get_ref_keys.outputs.libabigail }} > > + - name: Retrieve ABI reference cache > > + uses: actions/cache@v2 > > + if: env.ABI_CHECKS == 'true' > > + with: > > + path: reference > > + key: ${{ steps.get_ref_keys.outputs.abi }} > > + - name: Update APT cache > > + run: sudo apt update || true > > + - name: Install packages > > + run: sudo apt install -y ccache libnuma-dev python3-setuptools > > + python3-wheel python3-pip python3-pyelftools ninja-build libbsd-dev > > + libpcap-dev libibverbs-dev libcrypto++-dev libfdt-dev libjansson-dev > > + libarchive-dev zlib1g-dev pkgconf > > + - name: Install libabigail build dependencies if no cache is available > > + if: env.ABI_CHECKS == 'true' && steps.libabigail-cache.outputs.cache- > hit != 'true' > > + run: sudo apt install -y autoconf automake libtool pkg-config libxml2- > dev > > + libdw-dev > Lots of caching stuff. All of it needed? All these caching stuff is in consistence with the build workflow on GitHub provided runners, so should be needed. ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2021-10-14 8:28 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-10-13 8:03 [dpdk-dev] [PATCH v1 0/1] ci: enable DPDK GHA for arm64 with self-hosted runners Serena He 2021-10-13 8:03 ` [dpdk-dev] [PATCH v1 1/1] " Serena He 2021-10-13 9:47 ` Thomas Monjalon 2021-10-14 4:20 ` Serena He 2021-10-14 6:36 ` Thomas Monjalon 2021-10-14 8:18 ` Serena He 2021-10-14 8:28 ` Thomas Monjalon 2021-10-13 11:32 ` Michael Santana 2021-10-14 7:04 ` Serena He
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).