Skip to content

iproto: introduce IS_SYNC feature #2

iproto: introduce IS_SYNC feature

iproto: introduce IS_SYNC feature #2

Workflow file for this run

name: distrib
on:
push:
branches:
- 'master'
- 'release/**'
tags:
- '**'
pull_request:
types: [ opened, reopened, synchronize, labeled ]
workflow_dispatch:
workflow_call:
inputs:
submodule:
description: Name of submodule to bump.
required: true
type: string
revision:
description: Git revision from submodule repository
required: true
type: string
concurrency:
# Update of a developer branch cancels the previously scheduled workflow
# run for this branch. However, the 'master' branch, release branch, and
# tag 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.
#
# Important: 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/master' ||
startsWith(github.ref, 'refs/heads/release/') ||
startsWith(github.ref, 'refs/tags/')) &&
format('{0}-{1}', github.run_id, github.run_attempt) ||
format('{0}-{1}', github.workflow, github.ref) }}
cancel-in-progress: true
jobs:
packaging-x86_64:
# Run on push to the 'master' and release branches of tarantool/tarantool
# or on pull request if the 'full-ci' or 'static-build-ci' label is set.
if: github.repository == 'tarantool/tarantool' &&
( github.event_name != 'pull_request' ||
contains(github.event.pull_request.labels.*.name, 'full-ci') ||
contains(github.event.pull_request.labels.*.name, 'static-build-ci') )
uses: ./.github/workflows/packaging_build_test_deploy.yml
with:
arch: x86_64
test-matrix: '{
"include": [
{"os": "debian-buster"}, {"os": "debian-bullseye"},
{"os": "centos-8"},
{"os": "fedora-35"}, {"os": "fedora-36"},
{"os": "ubuntu-focal"}, {"os": "ubuntu-jammy"}
]
}'
secrets: inherit
packaging-aarch64:
# Run on push to the 'master' and release branches of tarantool/tarantool
# or on pull request if the 'full-ci' or 'static-build-ci' label is set.
if: github.repository == 'tarantool/tarantool' &&
( github.event_name != 'pull_request' ||
contains(github.event.pull_request.labels.*.name, 'full-ci') ||
contains(github.event.pull_request.labels.*.name, 'static-build-ci') )
uses: ./.github/workflows/packaging_build_test_deploy.yml
with:
arch: aarch64
test-matrix: '{
"include": [
{"os": "debian-buster"}, {"os": "debian-bullseye"},
{"os": "centos-8"},
{"os": "fedora-35"}, {"os": "fedora-36"},
{"os": "ubuntu-focal"}, {"os": "ubuntu-jammy"}
]
}'
secrets: inherit
docker:
# Run on push of a tag except '*-entrypoint' to tarantool/tarantool.
if: github.repository == 'tarantool/tarantool' &&
startsWith(github.ref, 'refs/tags/') &&
!endsWith(github.ref, '-entrypoint')
needs: [ packaging-x86_64, packaging-aarch64 ]
uses: ./.github/workflows/docker_build_push.yml
secrets: inherit