Browse Source

Merge pull request #2426 from zbeekman/nightly-homebrew-check

Nightly homebrew check
tags/v0.3.9
Martin Kroeker GitHub 6 years ago
parent
commit
8f782f0673
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 78 additions and 0 deletions
  1. +78
    -0
      .github/workflows/nightly-Homebrew-build.yml

+ 78
- 0
.github/workflows/nightly-Homebrew-build.yml View File

@@ -0,0 +1,78 @@
# Only the "head" branch of the OpenBLAS package is tested

on:
push:
paths:
- '**/nightly-Homebrew-build.yml'
pull_request:
branches:
- develop
paths:
- '**/nightly-Homebrew-build.yml'
schedule:
- cron: 45 7 * * *
# This is 7:45 AM UTC daily, late at night in the USA

# Since push and pull_request will still always be building and testing the `develop` branch,
# it only makes sense to test if this file has been changed

name: Nightly-Homebrew-Build
jobs:
build-OpenBLAS-with-Homebrew:
runs-on: macos-latest
env:
HOMEBREW_DEVELOPER: "ON"
HOMEBREW_DISPLAY_INSTALL_TIMES: "ON"
HOMEBREW_NO_ANALYTICS: "ON"
HOMEBREW_NO_AUTO_UPDATE: "ON"
HOMEBREW_NO_BOTTLE_SOURCE_FALLBACK: "ON"
HOMEBREW_NO_INSTALL_CLEANUP: "ON"

steps:
- name: Random delay for cron job
run: |
delay=$(( RANDOM % 600 ))
printf 'Delaying for %s seconds on event %s' ${delay} "${{ github.event_name }}"
sleep ${delay}
if: github.event_name == 'schedule'

- uses: actions/checkout@v2
# This isn't even needed, technically. Homebrew will get `develop` via git

- name: Update Homebrew
if: github.event_name != 'pull_request'
run: brew update || true

- name: Install prerequisites
run: brew install --fetch-HEAD --HEAD --only-dependencies --keep-tmp openblas

- name: Install and bottle OpenBLAS
run: brew install --fetch-HEAD --HEAD --build-bottle --keep-tmp openblas
# the HEAD flags tell Homebrew to build the develop branch fetch via git

- name: Create bottle
run: |
brew bottle -v openblas
mkdir bottles
mv *.bottle.tar.gz bottles

- name: Upload bottle
uses: actions/upload-artifact@v1
with:
name: openblas--HEAD.catalina.bottle.tar.gz
path: bottles

- name: Show linkage
run: brew linkage -v openblas

- name: Test openblas
run: brew test --HEAD --verbose openblas

- name: Audit openblas formula
run: |
brew audit --strict openblas
brew cat openblas

- name: Post logs on failure
if: failure()
run: brew gist-logs --with-hostname -v openblas

Loading…
Cancel
Save