mirror of
https://github.com/jimeh/homebrew-emacs-builds.git
synced 2026-02-19 06:26:38 +00:00
112 lines
3.6 KiB
YAML
112 lines
3.6 KiB
YAML
---
|
|
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-10.15
|
|
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-10.15
|
|
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
|