Skip to content

Commit

Permalink
ci: move osx testing from per-commit to nightly
Browse files Browse the repository at this point in the history
It has been decided to move osx testing to the nightly basis due to lack
of human and hardware resources to support per-commit testing.

Part of tarantool/infra#187

NO_DOC=ci
NO_TEST=ci
NO_CHANGELOG=ci
  • Loading branch information
ylobankov committed Dec 29, 2023
1 parent aa55ad5 commit fec1972
Show file tree
Hide file tree
Showing 5 changed files with 102 additions and 398 deletions.
102 changes: 102 additions & 0 deletions .github/workflows/osx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
name: osx

on:
schedule:
- cron: '0 1 * * *'
workflow_dispatch:

jobs:
osx:
# Run for tarantool/tarantool repository only.
if: github.repository == 'tarantool/tarantool'

runs-on:
- 'macos-${{ matrix.osx-version }}-self-hosted'
- '${{ matrix.machine-arch }}'

strategy:
fail-fast: false
matrix:
osx-version: [ 13 ]
machine-arch: [ x86_64, aarch64 ]
tarantool-branch:
- 'master'
- 'release/3.0'
- 'release/2.11'
- 'release/2.10'
build-type: [ debug, release, release-lto, static-cmake ]
include:
- osx-version: 12
machine-arch: x86_64
tarantool-branch: 'master'
build-type: release
- osx-version: 12
machine-arch: x86_64
tarantool-branch: 'release/3.0'
build-type: release
- osx-version: 12
machine-arch: x86_64
tarantool-branch: 'release/2.11'
build-type: release
- osx-version: 12
machine-arch: x86_64
tarantool-branch: 'release/2.10'
build-type: release

env:
BUILD_TYPE: ${{ matrix.build-type }}

steps:
- name: Prepare checkout
uses: tarantool/actions/prepare-checkout@master

- name: Sources checkout
uses: actions/checkout@v3
with:
ref: ${{ matrix.tarantool-branch }}
fetch-depth: 0
submodules: recursive

- uses: ./.github/actions/environment

- name: Install deps
uses: ./.github/actions/install-deps-osx

- name: Enable LTO for build
if: endsWith(matrix.build-type, '-lto')
run: |
echo "BUILD_TYPE=${BUILD_TYPE/-lto/}" >> $GITHUB_ENV
echo "CMAKE_EXTRA_PARAMS=-DENABLE_LTO=ON" >> $GITHUB_ENV
- name: Run testing
run: make -f .test.mk test-osx-${{ env.BUILD_TYPE }}

- name: Send VK Teams message on failure
if: failure()
uses: ./.github/actions/report-job-status
with:
bot-token: ${{ secrets.VKTEAMS_BOT_TOKEN }}

- name: Upload artifacts
uses: actions/upload-artifact@v3
if: failure()
with:
name: ${{ format(
'osx-{0}-{1}-{2}-{3}',
matrix.osx-version,
matrix.machine-arch,
matrix.tarantool-branch,
matrix.build-type) }}
retention-days: 21
path: ${{ env.VARDIR }}/artifacts

- name: Upload artifacts to S3
uses: ./.github/actions/s3-upload-artifact
if: ( success() || failure() ) && ( github.ref == 'refs/heads/master' ||
startsWith(github.ref, 'refs/heads/release/') ||
startsWith(github.ref, 'refs/tags/') )
with:
job-name: ${{ github.job }} (${{ join(matrix.*, ', ') }})
access-key-id: ${{ secrets.MULTIVAC_S3_ACCESS_KEY_ID }}
secret-access-key: ${{ secrets.MULTIVAC_S3_SECRET_ACCESS_KEY }}
source: ${{ env.VARDIR }}/artifacts
98 changes: 0 additions & 98 deletions .github/workflows/osx_debug.yml

This file was deleted.

101 changes: 0 additions & 101 deletions .github/workflows/osx_release.yml

This file was deleted.

0 comments on commit fec1972

Please sign in to comment.