Skip to content

chore: cirrus typo

chore: cirrus typo #37

Workflow file for this run

name: macOS
on:
push:
branches: [ master, ci_test ]
pull_request:
branches: [ master, ci_test ]
workflow_dispatch:
env:
REPO: you54f/ruby-packer
PKG_DATE: 20230812
NEXT_TAG: rel-20230812
PUBLISH_BRANCH: next
jobs:
make:
strategy:
matrix:
os: [macos-11]
# os: [macos-latest]
# ruby: ['2.4','2.6','2.7', '3.0', '3.1', '3.2']
ruby: ['3.2']
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: "[Enclose.IO] Install dependencies"
run: |
brew install squashfs automake bison openssl@1.1
echo "$(brew --prefix bison)/bin" >>$GITHUB_PATH
echo "$(brew --prefix openssl@1.1)/bin" >>$GITHUB_PATH
- name: "[Enclose.IO] Check dependencies"
run: |
sw_vers
uname -a
uname -p
uname -m
sysctl -n machdep.cpu.brand_string
which mksquashfs
mksquashfs -version
- name: "[Enclose.IO] Set up Ruby"
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
- name: "[Enclose.IO] Install rubocop"
run: gem install rubocop
- name: "[Enclose.IO] Run rubocop"
run: rubocop
# - name: "[Enclose.IO] Install dependencies"
# run: bundle install
# - name: "[Enclose.IO] Rake"
# run: bundle exec rake
# - name: "[Enclose.IO] Rake"
# run: bundle exec rake
- name: "Install bundle"
run: bundle install
- name: "Download and Patch ruby source"
run: bundle exec rake patch_ruby_source
# - name: "Unlink openssl" # this is unlinked after downloading the patch as curl needs openssl@3
# run: brew unlink openssl
- name: "Build rubyc"
run: bundle exec rake rubyc
- name: "Package rubyc"
run: |
mkdir -p pkg
export RUBYC_FILENAME=rubyc-$(uname -s)-$(uname -m)
export RUBYC_ARCHIVE_FILENAME=${RUBYC_FILENAME}.tar.gz
cp rubyc pkg/$RUBYC_FILENAME
cd pkg
tar -czvf $RUBYC_ARCHIVE_FILENAME $RUBYC_FILENAME
echo "RUBYC_FILENAME=$RUBYC_FILENAME" >> $GITHUB_ENV
echo "RUBYC_ARCHIVE_FILENAME=$RUBYC_ARCHIVE_FILENAME" >> $GITHUB_ENV
ls -l
- name: "[Enclose.IO] Create MacOS Test run upload"
uses: actions/upload-artifact@v3
with:
name: rubyc ${{ matrix.os }} ${{ matrix.ruby }}
path: pkg/${{ github.env.RUBYC_ARCHIVE_FILENAME }}
upload:
defaults:
run:
shell: sh
needs: [make]
permissions:
contents: write
strategy:
fail-fast: false
matrix:
os: ["macos-latest"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Download all workflow run artifacts
uses: actions/download-artifact@v3
- name: test ${{ matrix.os }} package
run: |
export RUBYC_FILENAME=rubyc-$(uname -s)-$(uname -m)
export RUBYC_ARCHIVE_FILENAME=${RUBYC_FILENAME}.tar.gz
ls
if [[ $GITHUB_REF == "refs/heads/$PUBLISH_BRANCH" ]]; then
gh release upload $NEXT_TAG $RUBYC_ARCHIVE_FILENAME --repo $REPO --clobber
else
echo "Not on $PUBLISH_BRANCH branch, skipping upload"
fi
env: # note move publishing to a seperate job, token doesnt have perms for release upload
GITHUB_TOKEN: ${{ github.token }}