Skip to content

ci: container img update #209

ci: container img update

ci: container img update #209

Workflow file for this run

name: Build
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch: {}
pull_request:
paths-ignore:
- "**/README.md"
types: [opened, synchronize, reopened]
release:
types: [published]
jobs:
build_appimage:
permissions:
actions: read
security-events: write
contents: write
name: 👻 Build Ghostty (${{ matrix.arch }})
runs-on: ${{ matrix.runs-on }}
strategy:
matrix:
include:
- arch: aarch64
platform: linux/arm64
runs-on: ubuntu-24.04-arm
- arch: x86_64
platform: linux/amd64
runs-on: ubuntu-24.04
container:
image: ghcr.io/psadi/ghostty-appimage:latest
steps:
- name: Checkout ghostty-appimage
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Cache dependencies
id: cache-ghostty
uses: actions/cache@v4
with:
path: |
/tmp/offline-cache
key: ${{ runner.os }}-${{ matrix.arch }}-ghostty-${{ hashFiles('**/setup.sh') }}
restore-keys: |
${{ runner.os }}-${{ matrix.arch }}-ghostty-
- name: Build Ghostty AppImage
run: |
if [ "${{ github.event_name }}" == "schedule" ]; then
sed -i 's/GHOSTTY_VERSION="$(cat VERSION)"/GHOSTTY_VERSION="tip"/' build.sh
fi
./build.sh
- name: Upload AppImage Artifacts
uses: actions/upload-artifact@v4
with:
name: ghostty-appimage-${{ matrix.arch }}
retention-days: 7
path: /tmp/ghostty-build/Ghostty-*-${{ matrix.arch }}.AppImage*
release_appimage:
name: 👻 Release Ghostty AppImage
needs:
- build_appimage
permissions:
actions: read
security-events: write
contents: write
runs-on: ubuntu-latest
if: ${{ github.event_name == 'release' || github.event_name == 'schedule' }}
steps:
- uses: actions/download-artifact@v4
with:
name: ghostty-appimage-aarch64
- uses: actions/download-artifact@v4
with:
name: ghostty-appimage-x86_64
- name: Ghostty stable
if: ${{ github.event_name == 'release' }}
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: "*.AppImage*"
tag: ${{ github.ref }}
overwrite: true
file_glob: true
- name: Ghostty Tip ("Nightly")
uses: marvinpinto/[email protected]
if: ${{ github.event_name == 'schedule' }}
with:
title: Ghostty Tip ("Nightly")
automatic_release_tag: tip
prerelease: true
draft: false
files: |
*.AppImage*
repo_token: ${{ secrets.GITHUB_TOKEN }}