add ghostty terminal config #62
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Build and publish Docker image | |
on: | |
push: | |
branches: ['master'] | |
env: | |
REGISTRY: ghcr.io | |
IMAGE_NAME: mgnsk/ide | |
permissions: | |
contents: read | |
packages: write | |
attestations: write | |
id-token: write | |
jobs: | |
build: | |
name: Build and publish Docker image | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
# - name: Set up Docker Buildx | |
# uses: docker/setup-buildx-action@v3 | |
- name: Copy dotfiles to build context | |
run: mkdir -p ide/dotfiles; git archive --format=tar HEAD | tar Cx ide/dotfiles | |
- name: Log in to the Container registry | |
uses: docker/login-action@v3 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Extract metadata (tags, labels) for Docker | |
id: meta | |
uses: docker/metadata-action@v5 | |
with: | |
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} | |
tags: | | |
# set edge tag | |
type=edge | |
# set last commit tag | |
type=sha,enable=true,priority=100,prefix=sha-,suffix=,format=short | |
- name: Build and push Docker image | |
id: push | |
uses: docker/build-push-action@v6 | |
with: | |
context: ide | |
push: true | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} | |
build-args: | | |
"uid=1000" | |
"gid=1000" | |
"user=ide" | |
"group=ide" | |
# cache-from: type=gha | |
# cache-to: type=gha,mode=max | |
# Commented out to avoid creating extra images in registry. | |
# - name: Generate artifact attestation | |
# uses: actions/attest-build-provenance@v1 | |
# with: | |
# subject-name: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME}} | |
# subject-digest: ${{ steps.push.outputs.digest }} | |
# push-to-registry: true | |
clean: | |
runs-on: ubuntu-latest | |
name: Prune old images | |
needs: build | |
steps: | |
- uses: snok/[email protected] | |
with: | |
account: user | |
token: ${{ secrets.GITHUB_TOKEN }} | |
image-names: ide | |
cut-off: 1s | |
keep-n-most-recent: 2 |