Skip to content
Snippets Groups Projects
Commit 74f67c7b authored by Yaroslav Lobankov's avatar Yaroslav Lobankov Committed by Yaroslav Lobankov
Browse files

ci: add Ubuntu Hirsute/Impish aarch64 workflows

Add the ubuntu_21_04_aarch64.yml and ubuntu_21_10_aarch64.yml workflow
files to build Tarantool packages for the aarch64 system.

Follows-up tarantool/tarantool#5825
Follows-up tarantool/tarantool#6566

NO_DOC=ci
NO_TEST=ci
NO_CHANGELOG=ci
parent abd9bbf0
No related branches found
No related tags found
No related merge requests found
name: ubuntu_21_04_aarch64
on:
push:
branches:
- 'master'
- '[0-9].[0-9]+'
tags:
- '**'
pull_request:
types: [opened, reopened, synchronize, labeled]
workflow_dispatch:
concurrency:
# Update of a developer branch cancels the previously scheduled workflow
# run for this branch. However, the 'master' branch, release branch (1.10,
# 2.8, etc.), 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' ||
github.ref == 'refs/heads/1.10' ||
startsWith(github.ref, 'refs/heads/2.') ||
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:
ubuntu_21_04_aarch64:
# Run on push to the 'master' and release branches of tarantool/tarantool
# or on pull request if the 'full-ci' label is set.
if: github.repository == 'tarantool/tarantool' &&
( github.event_name != 'pull_request' ||
contains(github.event.pull_request.labels.*.name, 'full-ci') )
runs-on: graviton
steps:
- uses: actions/checkout@v2.3.4
with:
fetch-depth: 0
submodules: recursive
- uses: ./.github/actions/environment
- name: packaging
env:
RWS_AUTH: ${{ secrets.RWS_AUTH }}
OS: 'ubuntu'
DIST: 'hirsute'
uses: ./.github/actions/pack_and_deploy
- name: call action to send Telegram message on failure
env:
TELEGRAM_TOKEN: ${{ secrets.TELEGRAM_CORE_TOKEN }}
TELEGRAM_TO: ${{ secrets.TELEGRAM_CORE_TO }}
uses: ./.github/actions/send-telegram-notify
if: failure()
- name: artifacts
uses: actions/upload-artifact@v2
if: failure()
with:
name: ubuntu-hirsute
retention-days: 21
path: ${{ env.VARDIR }}/artifacts
name: ubuntu_21_10_aarch64
on:
push:
branches:
- 'master'
- '[0-9].[0-9]+'
tags:
- '**'
pull_request:
types: [opened, reopened, synchronize, labeled]
workflow_dispatch:
concurrency:
# Update of a developer branch cancels the previously scheduled workflow
# run for this branch. However, the 'master' branch, release branch (1.10,
# 2.8, etc.), 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' ||
github.ref == 'refs/heads/1.10' ||
startsWith(github.ref, 'refs/heads/2.') ||
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:
ubuntu_21_10_aarch64:
# Run on push to the 'master' and release branches of tarantool/tarantool
# or on pull request if the 'full-ci' label is set.
if: github.repository == 'tarantool/tarantool' &&
( github.event_name != 'pull_request' ||
contains(github.event.pull_request.labels.*.name, 'full-ci') )
runs-on: graviton
steps:
- uses: actions/checkout@v2.3.4
with:
fetch-depth: 0
submodules: recursive
- uses: ./.github/actions/environment
- name: packaging
env:
RWS_AUTH: ${{ secrets.RWS_AUTH }}
OS: 'ubuntu'
DIST: 'impish'
uses: ./.github/actions/pack_and_deploy
- name: call action to send Telegram message on failure
env:
TELEGRAM_TOKEN: ${{ secrets.TELEGRAM_CORE_TOKEN }}
TELEGRAM_TO: ${{ secrets.TELEGRAM_CORE_TO }}
uses: ./.github/actions/send-telegram-notify
if: failure()
- name: artifacts
uses: actions/upload-artifact@v2
if: failure()
with:
name: ubuntu-impish
retention-days: 21
path: ${{ env.VARDIR }}/artifacts
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment