From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 2FAE97189B; Thu, 11 Aug 2022 14:31:10 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 2FAE97189B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1660217470; bh=zy8/5C4t7MWNo6wvAd0ykgGyyqxJoGduAy2QemEc99w=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=CGKZrbdy7ra9AvojcR7ZYDzYTGQo3I8kOpJxqfc8fSPL3hWMJ8ihJfzhHBG3rSfGU RiCwdgBJ/NzNCbEOf4svyCsM881VCRrR+oKvMlXzHc+AekLd9R4rBiJXoXQUZBxV2+ aF9C80OreDxn6P9VbHWxyZ7mkLxTnJ+pVtVRa5B4= Received: from smtpng2.i.mail.ru (smtpng2.i.mail.ru [94.100.179.3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 987787189B for ; Thu, 11 Aug 2022 14:27:43 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 987787189B Received: by smtpng2.m.smailru.net with esmtpa (envelope-from ) id 1oM6Lm-0002YE-J0; Thu, 11 Aug 2022 14:27:43 +0300 To: Sergey Kaplun , Sergey Bronnikov Date: Thu, 11 Aug 2022 14:17:46 +0300 Message-Id: X-Mailer: git-send-email 2.34.0 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: 646B95376F6C166E X-77F55803: 4F1203BC0FB41BD999D8F08CF16C6CA7AE777BCDF00156E450145138C04977EA00894C459B0CD1B9BA7F70EE31B00C35C7B8DFB720834A331C9930A848CFA68EB6BD4AB1FA1FD6A3 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE75DF2B1F23425CAE5EA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637D919B403F35891598638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D86294F2A201E15D2FF39EDEDA35601299117882F4460429724CE54428C33FAD305F5C1EE8F4F765FCD0C25F7D68B3B8A1389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC8EDCF5861DED71B2F389733CBF5DBD5E9B5C8C57E37DE458B9E9CE733340B9D5F3BBE47FD9DD3FB595F5C1EE8F4F765FC72CEEB2601E22B093A03B725D353964B0B7D0EA88DDEDAC722CA9DD8327EE4930A3850AC1BE2E735BA6625F88748EAEFC4224003CC83647689D4C264860C145E X-C1DE0DAB: C20DE7B7AB408E4181F030C43753B8186998911F362727C41E93BD56E7067354307CAA32FF218580205367B2BCC23E5B0D53CE0FDF8446B28329FE0B6AC8C886CFC4036BBF6A4EA9BF8C51168CD8EBDB73EEC7B84CCB0707EA2342758AE768C2AA817B2FB80CBF9EDBE8DEE28BC9005C3A30E66D1DC534FE8859CA687ABA27BA6A01DEE375AD0E05D93E5820C87E9D5F589120F7DAE46353205367B2BCC23E5B01D2833353C8CBA3638A446BE3E5C627BF0CFE790FC11A7261332C5CB50AE517886A5961035A09600383DAD389E261318FB05168BE4CE3AF X-C8649E89: 4E36BF7865823D7055A7F0CF078B5EC49A30900B95165D344E332383F80D58BBCF8303C9CB00BF61D9D31FEBE813AD7DE966A6434CC9F600D0798D12BEE1387C1D7E09C32AA3244CBF0AEF13235B5E8891BB4895D31898B6B038C9161EF167A1927AC6DF5659F194 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojfXJM3siCnCl5hMdPM4nYYQ== X-Mailru-Sender: 689FA8AB762F7393CC2E0F076E87284ECBAE9B3EDAD62D06F4A275EB2A6E9D35A7C8D0F45F857DBFE9F1EFEE2F478337FB559BB5D741EB964C8C2C849690F8E70A04DAD6CC59E3365FEEDEB644C299C0ED14614B50AE0675 X-Mras: Ok Subject: [Tarantool-patches] [PATCH luajit 7/8] ci: merge x86_64 and ARM64 workflows X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Igor Munkin via Tarantool-patches Reply-To: Igor Munkin Cc: tarantool-patches@dev.tarantool.org Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" As a result of the previous commit, there is no difference left between x86_64 and ARM64 workflows except the runner where workflow is run. Hence there is no reason to have a separate workflow file for each hardware architecture. Signed-off-by: Igor Munkin --- .github/workflows/linux-aarch64.yml | 83 ----------------- .../workflows/{linux-x86_64.yml => linux.yml} | 52 ++++++++--- .github/workflows/macos-m1.yml | 92 ------------------- .../workflows/{macos-x86_64.yml => macos.yml} | 52 ++++++++--- 4 files changed, 82 insertions(+), 197 deletions(-) delete mode 100644 .github/workflows/linux-aarch64.yml rename .github/workflows/{linux-x86_64.yml => linux.yml} (69%) delete mode 100644 .github/workflows/macos-m1.yml rename .github/workflows/{macos-x86_64.yml => macos.yml} (73%) diff --git a/.github/workflows/linux-aarch64.yml b/.github/workflows/linux-aarch64.yml deleted file mode 100644 index 21d86764..00000000 --- a/.github/workflows/linux-aarch64.yml +++ /dev/null @@ -1,83 +0,0 @@ -name: "Linux/aarch64 test workflow" - -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-luajit: - runs-on: graviton - strategy: - fail-fast: false - matrix: - BUILDTYPE: [Debug, Release] - include: - - BUILDTYPE: Debug - CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON - - BUILDTYPE: Release - CMAKEFLAGS: -DCMAKE_BUILD_TYPE=RelWithDebInfo - name: LuaJIT ${{ matrix.BUILDTYPE }} GC64:ON - steps: - - uses: actions/checkout@v2.3.4 - with: - fetch-depth: 0 - submodules: recursive - - name: environment - uses: ./.github/actions/environment - - name: setup - run: | - sudo apt -y update - sudo apt -y install cmake gcc make perl - - name: configure - run: > - cmake -S . -B ${{ env.BUILDDIR }} - ${{ matrix.CMAKEFLAGS }} - - name: build - run: cmake --build . --parallel - working-directory: ${{ env.BUILDDIR }} - - name: test - run: cmake --build . --parallel --target test - working-directory: ${{ env.BUILDDIR }} - - test-tarantool-debug-w-GC64: - name: Tarantool Debug GC64:ON - needs: test-luajit - uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master - with: - GC64: ON - buildtype: Debug - host: graviton - revision: ${{ github.sha }} - test-tarantool-release-w-GC64: - name: Tarantool Release GC64:ON - needs: test-luajit - uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master - with: - GC64: ON - buildtype: RelWithDebInfo - host: graviton - revision: ${{ github.sha }} diff --git a/.github/workflows/linux-x86_64.yml b/.github/workflows/linux.yml similarity index 69% rename from .github/workflows/linux-x86_64.yml rename to .github/workflows/linux.yml index 4c3ad4c7..125c8708 100644 --- a/.github/workflows/linux-x86_64.yml +++ b/.github/workflows/linux.yml @@ -1,4 +1,4 @@ -name: "Linux/x86_64 test workflow" +name: "Linux test workflow" on: push: @@ -30,18 +30,30 @@ concurrency: jobs: test-luajit: - runs-on: ubuntu-20.04-self-hosted strategy: fail-fast: false matrix: + ARCH: [aarch64, x86_64] BUILDTYPE: [Debug, Release] GC64: [ON, OFF] include: + - ARCH: aarch64 + RUNNER: graviton + - ARCH: x86_64 + RUNNER: ubuntu-20.04-self-hosted - BUILDTYPE: Debug CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON - BUILDTYPE: Release CMAKEFLAGS: -DCMAKE_BUILD_TYPE=RelWithDebInfo - name: LuaJIT ${{ matrix.BUILDTYPE }} GC64:${{ matrix.GC64 }} + exclude: + - ARCH: aarch64 + GC64: OFF + runs-on: ${{ matrix.RUNNER }} + name: > + LuaJIT + ${{ matrix.ARCH }} + ${{ matrix.BUILDTYPE }} + GC64:${{ matrix.GC64 }} steps: - uses: actions/checkout@v2.3.4 with: @@ -65,8 +77,8 @@ jobs: run: cmake --build . --parallel --target test working-directory: ${{ env.BUILDDIR }} - test-tarantool-debug-wo-GC64: - name: Tarantool Debug GC64:OFF + test-tarantool-x86_64-debug-wo-GC64: + name: Tarantool x86_64 Debug GC64:OFF needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -74,8 +86,8 @@ jobs: buildtype: Debug host: ubuntu-20.04-self-hosted revision: ${{ github.sha }} - test-tarantool-debug-w-GC64: - name: Tarantool Debug GC64:ON + test-tarantool-x86_64-debug-w-GC64: + name: Tarantool x86_64 Debug GC64:ON needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -83,8 +95,8 @@ jobs: buildtype: Debug host: ubuntu-20.04-self-hosted revision: ${{ github.sha }} - test-tarantool-release-wo-GC64: - name: Tarantool Release GC64:OFF + test-tarantool-x86_64-release-wo-GC64: + name: Tarantool x86_64 Release GC64:OFF needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -92,8 +104,8 @@ jobs: buildtype: RelWithDebInfo host: ubuntu-20.04-self-hosted revision: ${{ github.sha }} - test-tarantool-release-w-GC64: - name: Tarantool Release GC64:ON + test-tarantool-x86_64-release-w-GC64: + name: Tarantool x86_64 Release GC64:ON needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -101,3 +113,21 @@ jobs: buildtype: RelWithDebInfo host: ubuntu-20.04-self-hosted revision: ${{ github.sha }} + test-tarantool-aarch64-debug-w-GC64: + name: Tarantool aarch64 Debug GC64:ON + needs: test-luajit + uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master + with: + GC64: ON + buildtype: Debug + host: graviton + revision: ${{ github.sha }} + test-tarantool-aarch64-release-w-GC64: + name: Tarantool aarch64 Release GC64:ON + needs: test-luajit + uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master + with: + GC64: ON + buildtype: RelWithDebInfo + host: graviton + revision: ${{ github.sha }} diff --git a/.github/workflows/macos-m1.yml b/.github/workflows/macos-m1.yml deleted file mode 100644 index 4e1275f7..00000000 --- a/.github/workflows/macos-m1.yml +++ /dev/null @@ -1,92 +0,0 @@ -name: "macOS/m1 test workflow" - -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-luajit: - runs-on: macos-11-m1 - strategy: - fail-fast: false - matrix: - BUILDTYPE: [Debug, Release] - include: - - BUILDTYPE: Debug - CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON - - BUILDTYPE: Release - CMAKEFLAGS: -DCMAKE_BUILD_TYPE=RelWithDebInfo - name: LuaJIT ${{ matrix.BUILDTYPE }} GC64:ON - steps: - - uses: actions/checkout@v2.3.4 - with: - fetch-depth: 0 - submodules: recursive - - name: environment - uses: ./.github/actions/environment - - name: setup - run: | - # Install brew using the command from Homebrew repository - # instructions: https://github.com/Homebrew/install. - # XXX: 'echo' command below is required since brew installation - # script obliges the one to enter a newline for confirming the - # installation via Ruby script. - brew update || - echo | /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - # Try to install the packages either upgrade it to avoid of fails - # if the package already exists with the previous version. - brew install --force cmake gcc make perl || - brew upgrade cmake gcc make perl - - name: configure - run: > - cmake -S . -B ${{ env.BUILDDIR }} - ${{ matrix.CMAKEFLAGS }} - - name: build - run: cmake --build . --parallel - working-directory: ${{ env.BUILDDIR }} - - name: test - run: cmake --build . --parallel --target test - working-directory: ${{ env.BUILDDIR }} - - test-tarantool-debug-w-GC64: - name: Tarantool Debug GC64:ON - needs: test-luajit - uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master - with: - GC64: ON - buildtype: Debug - host: macos-11-m1 - revision: ${{ github.sha }} - test-tarantool-release-w-GC64: - name: Tarantool Release GC64:ON - needs: test-luajit - uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master - with: - GC64: ON - buildtype: RelWithDebInfo - host: macos-11-m1 - revision: ${{ github.sha }} diff --git a/.github/workflows/macos-x86_64.yml b/.github/workflows/macos.yml similarity index 73% rename from .github/workflows/macos-x86_64.yml rename to .github/workflows/macos.yml index 3d2cf581..2fa97f1e 100644 --- a/.github/workflows/macos-x86_64.yml +++ b/.github/workflows/macos.yml @@ -1,4 +1,4 @@ -name: "macOS/x86_64 test workflow" +name: "macOS test workflow" on: push: @@ -30,18 +30,30 @@ concurrency: jobs: test-luajit: - runs-on: macos-11 strategy: fail-fast: false matrix: + ARCH: [M1, x86_64] BUILDTYPE: [Debug, Release] GC64: [ON, OFF] include: + - ARCH: M1 + RUNNER: macos-11-m1 + - ARCH: x86_64 + RUNNER: macos-11 - BUILDTYPE: Debug CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON - BUILDTYPE: Release CMAKEFLAGS: -DCMAKE_BUILD_TYPE=RelWithDebInfo - name: LuaJIT ${{ matrix.BUILDTYPE }} GC64:${{ matrix.GC64 }} + exclude: + - ARCH: M1 + GC64: OFF + runs-on: ${{ matrix.RUNNER }} + name: > + LuaJIT + ${{ matrix.ARCH }} + ${{ matrix.BUILDTYPE }} + GC64:${{ matrix.GC64 }} steps: - uses: actions/checkout@v2.3.4 with: @@ -74,8 +86,8 @@ jobs: run: cmake --build . --parallel --target test working-directory: ${{ env.BUILDDIR }} - test-tarantool-debug-wo-GC64: - name: Tarantool Debug GC64:OFF + test-tarantool-x86_64-debug-wo-GC64: + name: Tarantool x86_64 Debug GC64:OFF needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -83,8 +95,8 @@ jobs: buildtype: Debug host: macos-11 revision: ${{ github.sha }} - test-tarantool-debug-w-GC64: - name: Tarantool Debug GC64:ON + test-tarantool-x86_64-debug-w-GC64: + name: Tarantool x86_64 Debug GC64:ON needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -92,8 +104,8 @@ jobs: buildtype: Debug host: macos-11 revision: ${{ github.sha }} - test-tarantool-release-wo-GC64: - name: Tarantool Release GC64:OFF + test-tarantool-x86_64-release-wo-GC64: + name: Tarantool x86_64 Release GC64:OFF needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -101,8 +113,8 @@ jobs: buildtype: RelWithDebInfo host: macos-11 revision: ${{ github.sha }} - test-tarantool-release-w-GC64: - name: Tarantool Release GC64:ON + test-tarantool-x86_64-release-w-GC64: + name: Tarantool x86_64 Release GC64:ON needs: test-luajit uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master with: @@ -110,3 +122,21 @@ jobs: buildtype: RelWithDebInfo host: macos-11 revision: ${{ github.sha }} + test-tarantool-m1-debug-w-GC64: + name: Tarantool M1 Debug GC64:ON + needs: test-luajit + uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master + with: + GC64: ON + buildtype: Debug + host: macos-11-m1 + revision: ${{ github.sha }} + test-tarantool-m1-release-w-GC64: + name: Tarantool M1 Release GC64:ON + needs: test-luajit + uses: tarantool/tarantool/.github/workflows/luajit-integration.yml@master + with: + GC64: ON + buildtype: RelWithDebInfo + host: macos-11-m1 + revision: ${{ github.sha }} -- 2.34.0