Tarantool development patches archive
 help / color / mirror / Atom feed
From: Sergey Bronnikov via Tarantool-patches <tarantool-patches@dev.tarantool.org>
To: Sergey Kaplun <skaplun@tarantool.org>, Igor Munkin <imun@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [v2][PATCH 5/5] ci: add job with build using Ninja on linux-x86_64
Date: Wed, 15 Jun 2022 17:09:32 +0300	[thread overview]
Message-ID: <a8094fd5-686a-237b-5bb8-36e13f29ebe5@tarantool.org> (raw)
In-Reply-To: <YqmmBoRx2ad6yzfC@root>

Hi, Sergey

thanks for review!

On 15.06.2022 12:27, Sergey Kaplun wrote:
> Hi, Sergey!
>
> Thanks for the patch!
>
> LGTM, after fixes mentioned by Igor below and my 2 cents below.
>
> On 15.06.22, Igor Munkin via Tarantool-patches wrote:
>> Sergey,
>>
>> Thanks for the patch! LGTM as trivial, but please consider nits below.
>>
>> On 06.06.22, Sergey Bronnikov wrote:
>>> ---
>>>   .github/workflows/linux-x86_64-ninja.yml | 51 ++++++++++++++++++++++++
>>>   1 file changed, 51 insertions(+)
>>>   create mode 100644 .github/workflows/linux-x86_64-ninja.yml
>>>
>>> diff --git a/.github/workflows/linux-x86_64-ninja.yml b/.github/workflows/linux-x86_64-ninja.yml
>>> new file mode 100644
>>> index 00000000..833d36d9
>>> --- /dev/null
>>> +++ b/.github/workflows/linux-x86_64-ninja.yml
>>> @@ -0,0 +1,51 @@
>>> +name: "LuaJIT test workflow with Ninja (Linux/x86_64)"
>>> +
>>> +on:
>>> +  push:
>>> +    branches-ignore:
>>> +      - '**-notest'
>>> +      - 'upstream-**'
>>> +    tags-ignore:
>>> +      - '**'
>>> +
>>> +concurrency:
>>> +  # An update of a developer branch cancels the previously
>>> +  # scheduled workflow run for this branch. However, the default
>>> +  # branch, and long-term branch (tarantool-1.10, tarantool-2.8,
>>> +  # etc.) workflow runs are never canceled.
>>> +  #
>>> +  # We use a trick here: define the concurrency group as 'workflow
>>> +  # run ID' + # 'workflow run attempt' because it is a unique
>>> +  # combination for any run. So it effectively discards grouping.
>>> +  #
>>> +  # XXX: we cannot use `github.sha` as a unique identifier because
>>> +  # pushing a tag may cancel a run that works on a branch push
>>> +  # event.
>>> +  group: ${{ (
>>> +    github.ref == 'refs/heads/tarantool' ||
>>> +    startsWith(github.ref, 'refs/heads/tarantool-')) &&
>>> +    format('{0}-{1}', github.run_id, github.run_attempt) ||
>>> +    format('{0}-{1}', github.workflow, github.ref) }}
>>> +  cancel-in-progress: true
>>> +
>>> +jobs:
>>> +  test-linux-x86_64:
> Nit: May be `test-linux-ninja-x86_64` is better?
> To be different from the same name for make target building?

Agree, fixed:

--- a/.github/workflows/linux-x86_64-ninja.yml
+++ b/.github/workflows/linux-x86_64-ninja.yml
@@ -29,10 +29,8 @@ concurrency:
    cancel-in-progress: true

  jobs:
-  test-linux-x86_64:
+  test-linux-ninja-x86_64:
      runs-on: ubuntu-20.04-self-hosted

>
>>> +    runs-on: ubuntu-20.04-self-hosted
>>> +    strategy:
>>> +      fail-fast: false
> Nit: As far as there is no testing matrix we can omit strategy for it.

Seems so [1].

Fixed with patch below:

--- a/.github/workflows/linux-x86_64-ninja.yml
+++ b/.github/workflows/linux-x86_64-ninja.yml
@@ -31,8 +31,6 @@ concurrency:
  jobs:
    test-linux-x86_64:
      runs-on: ubuntu-20.04-self-hosted
-    strategy:
-      fail-fast: false
      name: Linux/x86_64 ${{ matrix.BUILDTYPE }}
      steps:
        - uses: actions/checkout@v2.3.4

1. 
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategyfail-fast

>
>>> +    name: Linux/x86_64 ${{ matrix.BUILDTYPE }}
>> There is no testing matrix, so you can just name the workflow kinda
>> "Linux/x86_64 Ninja".
Fixed too.
>>
>>> +    steps:
>>> +      - uses: actions/checkout@v2.3.4
>>> +        with:
>>> +          fetch-depth: 0
>>> +          submodules: recursive
>>> +      - name: setup
>>> +        run: |
>>> +          sudo apt -y update
>>> +          sudo apt -y install cmake ninja-build gcc perl
>>> +      - name: configure
>>> +        run: cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -G Ninja
>>> +      - name: build
>>> +        run: cmake --build . -j $(nproc)
>>> +      - name: test
>>> +        run: cmake --build . -j $(nproc) -t test
>> Please, use long options, as we discussed here[1].

Fixed:

--- a/.github/workflows/linux-x86_64-ninja.yml
+++ b/.github/workflows/linux-x86_64-ninja.yml
@@ -44,6 +44,6 @@ jobs:
        - name: configure
          run: cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -G Ninja
        - name: build
-        run: cmake --build . -j $(nproc)
+        run: cmake --build . --parallel $(($(nproc) + 1))
        - name: test
-        run: cmake --build . -j $(nproc) -t test
+        run: cmake --build . --parallel $(($(nproc) + 1)) --target test

>>
>>> -- 
>>> 2.25.1
>>>
>> [1]: https://lists.tarantool.org/tarantool-patches/YpjeijSClWO0v82Y@tarantool.org/
>>
>> -- 
>> Best regards,
>> IM

  reply	other threads:[~2022-06-15 14:09 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-02 13:22 [Tarantool-patches] [v2][PATCH 0/5] Support building with Ninja Sergey Bronnikov via Tarantool-patches
2022-06-02 13:22 ` [Tarantool-patches] [v2][PATCH 1/5] build/ninja: refactoring Sergey Bronnikov via Tarantool-patches
2022-06-15  8:56   ` Sergey Kaplun via Tarantool-patches
2022-06-02 13:22 ` [Tarantool-patches] [v2][PATCH 2/5] build/ninja: create target with cli binary only once Sergey Bronnikov via Tarantool-patches
2022-06-15  9:10   ` Sergey Kaplun via Tarantool-patches
2022-06-15 16:03     ` Sergey Bronnikov via Tarantool-patches
2022-06-02 13:22 ` [Tarantool-patches] [v2][PATCH 3/5] build/ninja: rename default target Sergey Bronnikov via Tarantool-patches
2022-06-15  9:11   ` Sergey Kaplun via Tarantool-patches
2022-06-02 13:22 ` [Tarantool-patches] [v2][PATCH 4/5] build/ninja: create file lists outside of cmake commands Sergey Bronnikov via Tarantool-patches
2022-06-15  8:48   ` Igor Munkin via Tarantool-patches
2022-06-15  9:19   ` Sergey Kaplun via Tarantool-patches
2022-06-15 14:31     ` Sergey Bronnikov via Tarantool-patches
2022-06-03 13:29 ` [Tarantool-patches] [v2][PATCH 0/5] Support building with Ninja Sergey Bronnikov via Tarantool-patches
2022-06-06 11:24 ` [Tarantool-patches] [v2][PATCH 5/5] ci: add job with build using Ninja on linux-x86_64 Sergey Bronnikov via Tarantool-patches
2022-06-15  8:48   ` Igor Munkin via Tarantool-patches
2022-06-15  9:27     ` Sergey Kaplun via Tarantool-patches
2022-06-15 14:09       ` Sergey Bronnikov via Tarantool-patches [this message]
2022-06-15 14:15     ` Sergey Bronnikov via Tarantool-patches
2022-06-15  8:47 ` [Tarantool-patches] [v2][PATCH 0/5] Support building with Ninja Igor Munkin via Tarantool-patches
2022-06-15 14:57   ` Sergey Bronnikov via Tarantool-patches
2022-06-20 12:48 ` Igor Munkin via Tarantool-patches
2022-06-20 13:04   ` Sergey Bronnikov via Tarantool-patches

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a8094fd5-686a-237b-5bb8-36e13f29ebe5@tarantool.org \
    --to=tarantool-patches@dev.tarantool.org \
    --cc=imun@tarantool.org \
    --cc=sergeyb@tarantool.org \
    --cc=skaplun@tarantool.org \
    --subject='Re: [Tarantool-patches] [v2][PATCH 5/5] ci: add job with build using Ninja on linux-x86_64' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox