Skip to content

Update Casks

Update Casks #1917

Workflow file for this run

---
name: Update Casks
concurrency: jimeh/homebrew-emacs-builds/update-casks
on:
schedule:
- cron: "0 3 * * *"
workflow_dispatch:
inputs:
cask:
description: "Specific cask to update (all if empty)"
required: false
default: ""
extraArgs:
description: "Extra arguments passed to emacs-builder cask update"
required: false
default: ""
jobs:
update-casks:
runs-on: macos-11
steps:
- name: Checkout tap repository
uses: actions/checkout@v2
with:
ref: main
path: tap
- name: Symlink homebrew tap
run: |
mkdir -p "$(brew --repo)/Library/Taps/jimeh"
ln -s "${{ github.workspace }}/tap" \
"$(brew --repo)/Library/Taps/jimeh/homebrew-emacs-builds"
- name: brew livecheck (all casks)
if: ${{ github.event.inputs.cask == '' }}
run: >-
brew livecheck --json --quiet --tap jimeh/emacs-builds
| tee livecheck-results.json
- name: brew livecheck (specific cask)
if: ${{ github.event.inputs.cask != '' }}
run: >-
brew livecheck --json --quiet
jimeh/emacs-builds/${{ github.event.inputs.cask }}
| tee livecheck-results.json
- name: Upload livecheck-results.json artifact
uses: actions/upload-artifact@v2
with:
name: livecheck-results.json
path: livecheck-results.json
if-no-files-found: error
- name: Checkout build-emacs-for-macos for emacs-builder tool
uses: actions/checkout@v2
with:
repository: jimeh/build-emacs-for-macos
ref: "v0.6.30"
path: builder
- uses: actions/setup-go@v2
with:
go-version: 1.16
- uses: actions/cache@v2
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('builder/**/go.sum') }}
restore-keys: ${{ runner.os }}-go-
- name: Build emacs-builder tool
run: make build
working-directory: builder
- name: Update casks
run: >-
builder/bin/emacs-builder
cask --builds-repository jimeh/emacs-builds
update --templates-dir tap/templates
${{ github.event.inputs.extraArgs }}
livecheck-results.json
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
update-meta:
runs-on: macos-11
needs: [update-casks]
steps:
- name: Checkout tap repository main branch
uses: actions/checkout@v2
with:
ref: main
path: tap
- name: Symlink homebrew tap
run: |
mkdir -p "$(brew --repo)/Library/Taps/jimeh"
ln -s "${{ github.workspace }}/tap" \
"$(brew --repo)/Library/Taps/jimeh/homebrew-emacs-builds"
- name: Checkout tap repository meta branch
uses: actions/checkout@v2
with:
ref: meta
path: meta
- name: Install meta dependencies
run: brew bundle
working-directory: meta
- name: Update meta files
run: make update
working-directory: meta
- name: commit and push changes to meta branch
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: "chore(meta): update meta files"
repository: meta
branch: meta
commit_user_name: github-actions[bot]
commit_user_email: github-actions[bot]@users.noreply.github.com
commit_author: >-
github-actions[bot] <github-actions[bot]@users.noreply.github.com>
skip_dirty_check: false