diff mbox series

[ovs-dev,v2,6/9] ci: Fix dpdk build cache key generation.

Message ID 170108878169.394857.17291697903737427778.stgit@ebuild
State Changes Requested
Headers show
Series ci: Add remaining check tests to GitHub actions. | expand

Checks

Context Check Description
ovsrobot/apply-robot success apply and check: success
ovsrobot/github-robot-_Build_and_Test success github build: passed
ovsrobot/intel-ovs-compilation success test: success

Commit Message

Eelco Chaudron Nov. 27, 2023, 12:39 p.m. UTC
When new drivers are introduced, the cache key is not accurately computed.
Previously, the dpdk build process was integrated into the main Linux
build script, where specific lines were employed to generate the key.
Since it is now separated into two distinct files, this patch will
compute the key based on the content of these two files.

Fixes: 4e90baca89f0 ("system-dpdk: Run traffic tests.")
Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
---
 .github/workflows/build-and-test.yml |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

David Marchand Nov. 27, 2023, 12:53 p.m. UTC | #1
Hello Eelco,

On Mon, Nov 27, 2023 at 1:39 PM Eelco Chaudron <echaudro@redhat.com> wrote:
>
> When new drivers are introduced, the cache key is not accurately computed.
> Previously, the dpdk build process was integrated into the main Linux
> build script, where specific lines were employed to generate the key.
> Since it is now separated into two distinct files, this patch will
> compute the key based on the content of these two files.

I would rephrase this last sentence, as "two distinct files" and
"these two files" are a bit unclear.
Afaiu, the former refers to .ci/{linux,dpdk}-build.sh, while the
latter refers to .ci/dpdk-{setup,build}.sh

Otherwise the fix lgtm.

>
> Fixes: 4e90baca89f0 ("system-dpdk: Run traffic tests.")
> Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
> ---
>  .github/workflows/build-and-test.yml |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml
> index d74668f61..e9a2714fb 100644
> --- a/.github/workflows/build-and-test.yml
> +++ b/.github/workflows/build-and-test.yml
> @@ -30,7 +30,7 @@ jobs:
>        # This also allows us to use cache from any branch as long as version
>        # and a way we're building DPDK stays the same.
>        run:  |
> -        grep -irE 'RTE_|DPDK|meson|ninja' .ci/dpdk-* > dpdk-ci-signature
> +        cat .ci/dpdk-* > dpdk-ci-signature
>          grep -rwE 'DPDK_GIT|DPDK_VER' .github/ >> dpdk-ci-signature
>          if [ "${DPDK_VER##refs/*/}" != "${DPDK_VER}" ]; then
>              git ls-remote --heads $DPDK_GIT $DPDK_VER >> dpdk-ci-signature
>

Reviewed-by: David Marchand <david.marchand@redhat.com>
Eelco Chaudron Nov. 27, 2023, 2:26 p.m. UTC | #2
On 27 Nov 2023, at 13:53, David Marchand wrote:

> Hello Eelco,
>
> On Mon, Nov 27, 2023 at 1:39 PM Eelco Chaudron <echaudro@redhat.com> wrote:
>>
>> When new drivers are introduced, the cache key is not accurately computed.
>> Previously, the dpdk build process was integrated into the main Linux
>> build script, where specific lines were employed to generate the key.
>> Since it is now separated into two distinct files, this patch will
>> compute the key based on the content of these two files.
>
> I would rephrase this last sentence, as "two distinct files" and
> "these two files" are a bit unclear.
> Afaiu, the former refers to .ci/{linux,dpdk}-build.sh, while the
> latter refers to .ci/dpdk-{setup,build}.sh
>
> Otherwise the fix lgtm.

So what about changing the commit message as follows:

  When new drivers are introduced, the cache key is not accurately computed.
  Previously, the dpdk build process was integrated into the
  .ci/{linux,dpdk}-build.sh scripts, where specific lines were employed to
  generate the key. Since it is now separated into two distinct files,
  .ci/dpdk-{setup,build}.sh, this patch will compute the key based on the
  content of these two files.

If you agree, and there are no other comments we can maybe apply at commit time.

//Eelco


>
>>
>> Fixes: 4e90baca89f0 ("system-dpdk: Run traffic tests.")
>> Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
>> ---
>>  .github/workflows/build-and-test.yml |    2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml
>> index d74668f61..e9a2714fb 100644
>> --- a/.github/workflows/build-and-test.yml
>> +++ b/.github/workflows/build-and-test.yml
>> @@ -30,7 +30,7 @@ jobs:
>>        # This also allows us to use cache from any branch as long as version
>>        # and a way we're building DPDK stays the same.
>>        run:  |
>> -        grep -irE 'RTE_|DPDK|meson|ninja' .ci/dpdk-* > dpdk-ci-signature
>> +        cat .ci/dpdk-* > dpdk-ci-signature
>>          grep -rwE 'DPDK_GIT|DPDK_VER' .github/ >> dpdk-ci-signature
>>          if [ "${DPDK_VER##refs/*/}" != "${DPDK_VER}" ]; then
>>              git ls-remote --heads $DPDK_GIT $DPDK_VER >> dpdk-ci-signature
>>
>
> Reviewed-by: David Marchand <david.marchand@redhat.com>
>
>
> -- 
> David Marchand
David Marchand Nov. 28, 2023, 8:06 a.m. UTC | #3
On Mon, Nov 27, 2023 at 3:26 PM Eelco Chaudron <echaudro@redhat.com> wrote:
> On 27 Nov 2023, at 13:53, David Marchand wrote:
> > On Mon, Nov 27, 2023 at 1:39 PM Eelco Chaudron <echaudro@redhat.com> wrote:
> >>
> >> When new drivers are introduced, the cache key is not accurately computed.
> >> Previously, the dpdk build process was integrated into the main Linux
> >> build script, where specific lines were employed to generate the key.
> >> Since it is now separated into two distinct files, this patch will
> >> compute the key based on the content of these two files.
> >
> > I would rephrase this last sentence, as "two distinct files" and
> > "these two files" are a bit unclear.
> > Afaiu, the former refers to .ci/{linux,dpdk}-build.sh, while the
> > latter refers to .ci/dpdk-{setup,build}.sh
> >
> > Otherwise the fix lgtm.
>
> So what about changing the commit message as follows:
>
>
>   Previously, the dpdk build process was integrated into the
>   .ci/{linux,dpdk}-build.sh scripts, where specific lines were employed to
>   generate the key. Since it is now separated into two distinct files,
>   .ci/dpdk-{setup,build}.sh, this patch will compute the key based on the
>   content of these two files.

"""
When new drivers are introduced, the cache key is not accurately computed.

Before the commit 1a1b3106d90e ("ci: Separate DPDK from OVS build."),
the DPDK build
process was integrated in .ci/linux-{setup,build}.sh scripts, where
specific lines were
employed to generate the key.
Since it is now separated in .ci/dpdk-{setup,build}.sh, this patch
computes the key based on the
content of those dedicated scripts.
"""

Deal?
Eelco Chaudron Nov. 28, 2023, 8:36 a.m. UTC | #4
On 28 Nov 2023, at 9:06, David Marchand wrote:

> On Mon, Nov 27, 2023 at 3:26 PM Eelco Chaudron <echaudro@redhat.com> wrote:
>> On 27 Nov 2023, at 13:53, David Marchand wrote:
>>> On Mon, Nov 27, 2023 at 1:39 PM Eelco Chaudron <echaudro@redhat.com> wrote:
>>>>
>>>> When new drivers are introduced, the cache key is not accurately computed.
>>>> Previously, the dpdk build process was integrated into the main Linux
>>>> build script, where specific lines were employed to generate the key.
>>>> Since it is now separated into two distinct files, this patch will
>>>> compute the key based on the content of these two files.
>>>
>>> I would rephrase this last sentence, as "two distinct files" and
>>> "these two files" are a bit unclear.
>>> Afaiu, the former refers to .ci/{linux,dpdk}-build.sh, while the
>>> latter refers to .ci/dpdk-{setup,build}.sh
>>>
>>> Otherwise the fix lgtm.
>>
>> So what about changing the commit message as follows:
>>
>>
>>   Previously, the dpdk build process was integrated into the
>>   .ci/{linux,dpdk}-build.sh scripts, where specific lines were employed to
>>   generate the key. Since it is now separated into two distinct files,
>>   .ci/dpdk-{setup,build}.sh, this patch will compute the key based on the
>>   content of these two files.
>
> """
> When new drivers are introduced, the cache key is not accurately computed.
>
> Before the commit 1a1b3106d90e ("ci: Separate DPDK from OVS build."),
> the DPDK build
> process was integrated in .ci/linux-{setup,build}.sh scripts, where
> specific lines were
> employed to generate the key.
> Since it is now separated in .ci/dpdk-{setup,build}.sh, this patch
> computes the key based on the
> content of those dedicated scripts.
> """
>
> Deal?

Deal! Should we seal with a handshake?
⠀⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾
⠀⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⣿⣿⣿
⠀⣿⣿⣿⣿⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣿⣿⣿⣿
⠀⣿⣿⣿⣿⡟⢀⣾⣿⣷⡖⠒⣀⣀⣤⣶⣾⣿⣷⣶⣤⣤⣴⣾⣆⠘⣿⣿⣿
⠀⣿⣿⣿⡿⠁⣾⣿⣿⣿⣧⣀⠙⠛⠛⠛⠋⣈⠻⢿⣿⣿⣿⣿⣿⣧⠈⢿⣿
⠀⣿⣿⣿⠁⣼⣿⠟⠻⠿⣿⣿⣿⣷⣶⣾⣿⠿⣷⣄⡉⠻⣿⣿⣿⣿⣧⠈⢿
⠀⠛⠛⠃⠀⠻⠋⣠⣶⠄⠙⠛⢻⣿⣿⣿⣷⣦⣈⠛⢿⣦⣄⠙⠻⠛⠁⠀⠀⠀
⠀⠀⠀⠀⠀⢠⣾⠟⠁⣠⣿⠇⠈⠛⣿⣿⣈⠙⠿⣷⣦⡈⠛⠛⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠁⢠⣾⡿⠁⣠⣾⠆⠸⠉⠻⣷⣤⡈⠙⠿⠃⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠉⠀⣾⠟⢁⣴⡶⠀⣤⡀⠙⠟⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⣿⠟⠁⠀⠛⠟
>
>
> -- 
> David Marchand
diff mbox series

Patch

diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml
index d74668f61..e9a2714fb 100644
--- a/.github/workflows/build-and-test.yml
+++ b/.github/workflows/build-and-test.yml
@@ -30,7 +30,7 @@  jobs:
       # This also allows us to use cache from any branch as long as version
       # and a way we're building DPDK stays the same.
       run:  |
-        grep -irE 'RTE_|DPDK|meson|ninja' .ci/dpdk-* > dpdk-ci-signature
+        cat .ci/dpdk-* > dpdk-ci-signature
         grep -rwE 'DPDK_GIT|DPDK_VER' .github/ >> dpdk-ci-signature
         if [ "${DPDK_VER##refs/*/}" != "${DPDK_VER}" ]; then
             git ls-remote --heads $DPDK_GIT $DPDK_VER >> dpdk-ci-signature