fix github action version resolution (#6114)

* pin to sha

* note
This commit is contained in:
Matt Fiddaman
2025-11-11 23:26:07 +00:00
committed by GitHub
parent 914cc6503e
commit e64a042f0c
26 changed files with 98 additions and 92 deletions

View File

@@ -15,7 +15,7 @@ runs:
using: composite using: composite
steps: steps:
- name: Install node - name: Install node
uses: actions/setup-node@v6 uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with: with:
node-version: 22 node-version: 22
- name: Install yarn - name: Install yarn
@@ -27,7 +27,7 @@ runs:
run: echo "version=$(node -v)" >> "$GITHUB_OUTPUT" run: echo "version=$(node -v)" >> "$GITHUB_OUTPUT"
shell: bash shell: bash
- name: Cache - name: Cache
uses: actions/cache@v4 uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
id: cache id: cache
with: with:
path: ${{ format('{0}/**/node_modules', inputs.working-directory) }} path: ${{ format('{0}/**/node_modules', inputs.working-directory) }}
@@ -36,7 +36,7 @@ runs:
run: mkdir -p ${{ format('{0}/.lage', inputs.working-directory) }} run: mkdir -p ${{ format('{0}/.lage', inputs.working-directory) }}
shell: bash shell: bash
- name: Cache Lage - name: Cache Lage
uses: actions/cache@v4 uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with: with:
path: ${{ format('{0}/.lage', inputs.working-directory) }} path: ${{ format('{0}/.lage', inputs.working-directory) }}
key: lage-${{ runner.os }}-${{ github.sha }} key: lage-${{ runner.os }}-${{ github.sha }}
@@ -48,7 +48,7 @@ runs:
shell: bash shell: bash
if: steps.cache.outputs.cache-hit != 'true' if: steps.cache.outputs.cache-hit != 'true'
- name: Download translations - name: Download translations
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
repository: actualbudget/translations repository: actualbudget/translations
path: ${{ inputs.working-directory }}/packages/desktop-client/locale path: ${{ inputs.working-directory }}/packages/desktop-client/locale

View File

@@ -17,7 +17,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup

View File

@@ -15,7 +15,7 @@ jobs:
autofix: autofix:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Format code - name: Format code

View File

@@ -21,7 +21,7 @@ jobs:
api: api:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -31,7 +31,7 @@ jobs:
- name: Create package tgz - name: Create package tgz
run: cd packages/api && yarn pack && mv package.tgz actual-api.tgz run: cd packages/api && yarn pack && mv package.tgz actual-api.tgz
- name: Upload Build - name: Upload Build
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-api name: actual-api
path: packages/api/actual-api.tgz path: packages/api/actual-api.tgz
@@ -39,7 +39,7 @@ jobs:
crdt: crdt:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -49,7 +49,7 @@ jobs:
- name: Create package tgz - name: Create package tgz
run: cd packages/crdt && yarn pack && mv package.tgz actual-crdt.tgz run: cd packages/crdt && yarn pack && mv package.tgz actual-crdt.tgz
- name: Upload Build - name: Upload Build
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-crdt name: actual-crdt
path: packages/crdt/actual-crdt.tgz path: packages/crdt/actual-crdt.tgz
@@ -57,18 +57,18 @@ jobs:
web: web:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Build Web - name: Build Web
run: yarn build:browser run: yarn build:browser
- name: Upload Build - name: Upload Build
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-web name: actual-web
path: packages/desktop-client/build path: packages/desktop-client/build
- name: Upload Build Stats - name: Upload Build Stats
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: build-stats name: build-stats
path: packages/desktop-client/build-stats path: packages/desktop-client/build-stats
@@ -76,7 +76,7 @@ jobs:
server: server:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -84,7 +84,7 @@ jobs:
- name: Build Server - name: Build Server
run: yarn workspace @actual-app/sync-server build run: yarn workspace @actual-app/sync-server build
- name: Upload Build - name: Upload Build
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: sync-server name: sync-server
path: packages/sync-server/build path: packages/sync-server/build

View File

@@ -14,7 +14,7 @@ jobs:
lint: lint:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -24,7 +24,7 @@ jobs:
typecheck: typecheck:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -34,7 +34,7 @@ jobs:
validate-cli: validate-cli:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -46,7 +46,7 @@ jobs:
test: test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
with: with:
@@ -58,8 +58,8 @@ jobs:
if: github.event_name == 'pull_request' if: github.event_name == 'pull_request'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- uses: actions/setup-node@v6 - uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with: with:
node-version: 22 node-version: 22
- name: Check migrations - name: Check migrations

View File

@@ -22,7 +22,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@v3 uses: github/codeql-action/init@v3

View File

@@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Count points - name: Count points

View File

@@ -36,17 +36,17 @@ jobs:
matrix: matrix:
os: [ubuntu, alpine] os: [ubuntu, alpine]
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
- name: Docker meta - name: Docker meta
id: meta id: meta
uses: docker/metadata-action@v5 uses: docker/metadata-action@318604b99e75e41977312d83839a89be02ca4893 # v5.9.0
with: with:
# Push to both Docker Hub and Github Container Registry # Push to both Docker Hub and Github Container Registry
images: ${{ env.IMAGES }} images: ${{ env.IMAGES }}
@@ -54,14 +54,14 @@ jobs:
tags: ${{ env.TAGS }} tags: ${{ env.TAGS }}
- name: Login to Docker Hub - name: Login to Docker Hub
uses: docker/login-action@v3 uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
if: github.event_name != 'pull_request' && !github.event.repository.fork if: github.event_name != 'pull_request' && !github.event.repository.fork
with: with:
username: ${{ secrets.DOCKERHUB_USERNAME }} username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry - name: Login to GitHub Container Registry
uses: docker/login-action@v3 uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
with: with:
registry: ghcr.io registry: ghcr.io
@@ -76,7 +76,7 @@ jobs:
run: yarn build:server run: yarn build:server
- name: Build image for testing - name: Build image for testing
uses: docker/build-push-action@v6 uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with: with:
context: . context: .
push: false push: false
@@ -93,7 +93,7 @@ jobs:
# This will use the cache from the earlier build step and not rebuild the image # This will use the cache from the earlier build step and not rebuild the image
# https://docs.docker.com/build/ci/github-actions/test-before-push/ # https://docs.docker.com/build/ci/github-actions/test-before-push/
- name: Build and push images - name: Build and push images
uses: docker/build-push-action@v6 uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with: with:
context: . context: .
push: ${{ github.event_name != 'pull_request' }} push: ${{ github.event_name != 'pull_request' }}

View File

@@ -28,17 +28,17 @@ jobs:
name: Build Docker image name: Build Docker image
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
- name: Docker meta - name: Docker meta
id: meta id: meta
uses: docker/metadata-action@v5 uses: docker/metadata-action@318604b99e75e41977312d83839a89be02ca4893 # v5.9.0
with: with:
# Push to both Docker Hub and Github Container Registry # Push to both Docker Hub and Github Container Registry
images: ${{ env.IMAGES }} images: ${{ env.IMAGES }}
@@ -48,7 +48,7 @@ jobs:
- name: Docker meta for Alpine image - name: Docker meta for Alpine image
id: alpine-meta id: alpine-meta
uses: docker/metadata-action@v5 uses: docker/metadata-action@318604b99e75e41977312d83839a89be02ca4893 # v5.9.0
with: with:
images: ${{ env.IMAGES }} images: ${{ env.IMAGES }}
# Automatically update :latest # Automatically update :latest
@@ -58,13 +58,13 @@ jobs:
tags: ${{ env.TAGS }} tags: ${{ env.TAGS }}
- name: Login to Docker Hub - name: Login to Docker Hub
uses: docker/login-action@v3 uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with: with:
username: ${{ secrets.DOCKERHUB_USERNAME }} username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }} password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry - name: Login to GitHub Container Registry
uses: docker/login-action@v3 uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with: with:
registry: ghcr.io registry: ghcr.io
username: ${{ github.repository_owner }} username: ${{ github.repository_owner }}
@@ -78,7 +78,7 @@ jobs:
run: yarn build:server run: yarn build:server
- name: Build and push ubuntu image - name: Build and push ubuntu image
uses: docker/build-push-action@v6 uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with: with:
context: . context: .
push: true push: true
@@ -87,7 +87,7 @@ jobs:
tags: ${{ steps.meta.outputs.tags }} tags: ${{ steps.meta.outputs.tags }}
- name: Build and push alpine image - name: Build and push alpine image
uses: docker/build-push-action@v6 uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with: with:
context: . context: .
push: true push: true

View File

@@ -17,7 +17,7 @@ jobs:
outputs: outputs:
netlify_url: ${{ steps.netlify.outputs.url }} netlify_url: ${{ steps.netlify.outputs.url }}
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Wait for Netlify build to finish - name: Wait for Netlify build to finish
@@ -34,7 +34,7 @@ jobs:
container: container:
image: mcr.microsoft.com/playwright:v1.56.0-jammy image: mcr.microsoft.com/playwright:v1.56.0-jammy
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Trust the repository directory - name: Trust the repository directory
@@ -43,7 +43,7 @@ jobs:
run: yarn e2e run: yarn e2e
env: env:
E2E_START_URL: ${{ needs.netlify.outputs.netlify_url }} E2E_START_URL: ${{ needs.netlify.outputs.netlify_url }}
- uses: actions/upload-artifact@v5 - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
if: always() if: always()
with: with:
name: desktop-client-test-results name: desktop-client-test-results
@@ -57,7 +57,7 @@ jobs:
container: container:
image: mcr.microsoft.com/playwright:v1.56.0-jammy image: mcr.microsoft.com/playwright:v1.56.0-jammy
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Trust the repository directory - name: Trust the repository directory
@@ -65,7 +65,7 @@ jobs:
- name: Run Desktop app E2E Tests - name: Run Desktop app E2E Tests
run: | run: |
xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24" -- yarn e2e:desktop xvfb-run --auto-servernum --server-args="-screen 0 1920x1080x24" -- yarn e2e:desktop
- uses: actions/upload-artifact@v5 - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
if: always() if: always()
with: with:
name: desktop-app-test-results name: desktop-app-test-results
@@ -80,14 +80,14 @@ jobs:
container: container:
image: mcr.microsoft.com/playwright:v1.56.0-jammy image: mcr.microsoft.com/playwright:v1.56.0-jammy
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
- name: Run VRT Tests on Netlify URL - name: Run VRT Tests on Netlify URL
run: yarn vrt run: yarn vrt
env: env:
E2E_START_URL: ${{ needs.netlify.outputs.netlify_url }} E2E_START_URL: ${{ needs.netlify.outputs.netlify_url }}
- uses: actions/upload-artifact@v5 - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
if: always() if: always()
with: with:
name: desktop-client-test-results name: desktop-client-test-results

View File

@@ -29,7 +29,7 @@ jobs:
- macos-latest - macos-latest
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- if: ${{ startsWith(matrix.os, 'windows') }} - if: ${{ startsWith(matrix.os, 'windows') }}
run: pip.exe install setuptools run: pip.exe install setuptools
- if: ${{ ! startsWith(matrix.os, 'windows') }} - if: ${{ ! startsWith(matrix.os, 'windows') }}
@@ -62,7 +62,7 @@ jobs:
if: ${{ ! startsWith(matrix.os, 'macos') }} if: ${{ ! startsWith(matrix.os, 'macos') }}
run: ./bin/package-electron run: ./bin/package-electron
- name: Upload Build - name: Upload Build
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-electron-${{ matrix.os }} name: actual-electron-${{ matrix.os }}
path: | path: |
@@ -73,7 +73,7 @@ jobs:
packages/desktop-electron/dist/*.flatpak packages/desktop-electron/dist/*.flatpak
- name: Upload Windows Store Build - name: Upload Windows Store Build
if: ${{ startsWith(matrix.os, 'windows') }} if: ${{ startsWith(matrix.os, 'windows') }}
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-electron-${{ matrix.os }}-appx name: actual-electron-${{ matrix.os }}-appx
path: | path: |
@@ -83,7 +83,7 @@ jobs:
run: | run: |
echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT" echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT"
- name: Add to new release - name: Add to new release
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@5be0e66d93ac7ed76da52eca8bb058f665c3a5fe # v2.4.2
with: with:
draft: true draft: true
body: | body: |
@@ -113,7 +113,7 @@ jobs:
Install-Module -Name StoreBroker -AcceptLicense -Force -Scope CurrentUser -Verbose Install-Module -Name StoreBroker -AcceptLicense -Force -Scope CurrentUser -Verbose
- name: Download Microsoft Store artifacts - name: Download Microsoft Store artifacts
uses: actions/download-artifact@v6 uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
with: with:
name: actual-electron-windows-latest-appx name: actual-electron-windows-latest-appx

View File

@@ -24,7 +24,7 @@ jobs:
- macos-latest - macos-latest
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- if: ${{ startsWith(matrix.os, 'windows') }} - if: ${{ startsWith(matrix.os, 'windows') }}
run: pip.exe install setuptools run: pip.exe install setuptools
- if: ${{ ! startsWith(matrix.os, 'windows') }} - if: ${{ ! startsWith(matrix.os, 'windows') }}
@@ -47,7 +47,7 @@ jobs:
- name: Build Electron - name: Build Electron
run: ./bin/package-electron run: ./bin/package-electron
- name: Upload Build - name: Upload Build
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-electron-${{ matrix.os }} name: actual-electron-${{ matrix.os }}
path: | path: |
@@ -58,7 +58,7 @@ jobs:
packages/desktop-electron/dist/*.flatpak packages/desktop-electron/dist/*.flatpak
- name: Upload Windows Store Build - name: Upload Windows Store Build
if: ${{ startsWith(matrix.os, 'windows') }} if: ${{ startsWith(matrix.os, 'windows') }}
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: actual-electron-${{ matrix.os }}-appx name: actual-electron-${{ matrix.os }}-appx
path: | path: |

View File

@@ -17,7 +17,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
ref: ${{ github.event.inputs.ref }} ref: ${{ github.event.inputs.ref }}
- name: Bump package versions - name: Bump package versions
@@ -48,7 +48,7 @@ jobs:
echo "version=$NEW_WEB_VERSION" >> "$GITHUB_OUTPUT" echo "version=$NEW_WEB_VERSION" >> "$GITHUB_OUTPUT"
- name: Create PR - name: Create PR
uses: peter-evans/create-pull-request@v7 uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
with: with:
commit-message: '🔖 (${{ steps.bump_package_versions.outputs.version }})' commit-message: '🔖 (${{ steps.bump_package_versions.outputs.version }})'
title: '🔖 (${{ steps.bump_package_versions.outputs.version }})' title: '🔖 (${{ steps.bump_package_versions.outputs.version }})'

View File

@@ -12,7 +12,7 @@ jobs:
if: github.repository == 'actualbudget/actual' if: github.repository == 'actualbudget/actual'
steps: steps:
- name: Check out main repository - name: Check out main repository
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
path: actual path: actual
- name: Set up environment - name: Set up environment
@@ -44,7 +44,7 @@ jobs:
push \ push \
actualbudget/actual actualbudget/actual
- name: Check out updated translations - name: Check out updated translations
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
ssh-key: ${{ secrets.STRING_IMPORT_DEPLOY_KEY }} ssh-key: ${{ secrets.STRING_IMPORT_DEPLOY_KEY }}
repository: actualbudget/translations repository: actualbudget/translations

View File

@@ -9,16 +9,16 @@ jobs:
if: ${{ github.event.label.name == 'feature' }} if: ${{ github.event.label.name == 'feature' }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions-ecosystem/action-add-labels@v1 - uses: actions-ecosystem/action-add-labels@bd52874380e3909a1ac983768df6976535ece7f8 # v1.1.0
with: with:
labels: needs votes labels: needs votes
- name: Add reactions - name: Add reactions
uses: aidan-mundy/react-to-issue@v1 uses: aidan-mundy/react-to-issue@109392cac5159c2df6c47c8ab3b5d6b708852fe5 # v1.1.2
with: with:
issue-number: ${{ github.event.issue.number }} issue-number: ${{ github.event.issue.number }}
reactions: '+1' reactions: '+1'
- name: Create comment - name: Create comment
uses: peter-evans/create-or-update-comment@v5 uses: peter-evans/create-or-update-comment@e8674b075228eee787fea43ef493e45ece1004c9 # v5.0.0
with: with:
issue-number: ${{ github.event.issue.number }} issue-number: ${{ github.event.issue.number }}
body: | body: |

View File

@@ -24,8 +24,8 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
# This is not a security concern because we have approved & merged the PR # This is not a security concern because we have approved & merged the PR
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- uses: actions/setup-node@v6 - uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with: with:
node-version: 22 node-version: 22
- name: Handle feature requests - name: Handle feature requests

View File

@@ -9,6 +9,6 @@ jobs:
if: ${{ !contains(github.event.issue.labels.*.name, 'feature') && contains(github.event.issue.labels.*.name, 'help wanted') }} if: ${{ !contains(github.event.issue.labels.*.name, 'feature') && contains(github.event.issue.labels.*.name, 'help wanted') }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions-ecosystem/action-remove-labels@v1 - uses: actions-ecosystem/action-remove-labels@2ce5d41b4b6aa8503e285553f75ed56e0a40bae0 # v1.3.0
with: with:
labels: help wanted labels: help wanted

View File

@@ -21,7 +21,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Repository Checkout - name: Repository Checkout
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup

View File

@@ -12,7 +12,7 @@ jobs:
name: Build and pack npm packages name: Build and pack npm packages
if: github.event.repository.fork == false if: github.event.repository.fork == false
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
@@ -49,7 +49,7 @@ jobs:
yarn workspace @actual-app/api pack --filename @actual-app/api.tgz yarn workspace @actual-app/api pack --filename @actual-app/api.tgz
- name: Upload package artifacts - name: Upload package artifacts
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: npm-packages name: npm-packages
path: | path: |
@@ -66,12 +66,12 @@ jobs:
packages: write packages: write
steps: steps:
- name: Download the artifacts - name: Download the artifacts
uses: actions/download-artifact@v6 uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
with: with:
name: npm-packages name: npm-packages
- name: Setup node and npm registry - name: Setup node and npm registry
uses: actions/setup-node@v6 uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with: with:
node-version: 22 node-version: 22
registry-url: 'https://registry.npmjs.org' registry-url: 'https://registry.npmjs.org'

View File

@@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build and pack npm packages name: Build and pack npm packages
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up environment - name: Set up environment
uses: ./.github/actions/setup uses: ./.github/actions/setup
@@ -32,7 +32,7 @@ jobs:
yarn workspace @actual-app/api pack --filename @actual-app/api.tgz yarn workspace @actual-app/api pack --filename @actual-app/api.tgz
- name: Upload package artifacts - name: Upload package artifacts
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: npm-packages name: npm-packages
path: | path: |
@@ -49,12 +49,12 @@ jobs:
packages: write packages: write
steps: steps:
- name: Download the artifacts - name: Download the artifacts
uses: actions/download-artifact@v6 uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
with: with:
name: npm-packages name: npm-packages
- name: Setup node and npm registry - name: Setup node and npm registry
uses: actions/setup-node@v6 uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v6.0.0
with: with:
node-version: 22 node-version: 22
registry-url: 'https://registry.npmjs.org' registry-url: 'https://registry.npmjs.org'

View File

@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Check release notes - name: Check release notes
if: startsWith(github.head_ref, 'release/') == false if: startsWith(github.head_ref, 'release/') == false
uses: actualbudget/actions/release-notes/check@main uses: actualbudget/actions/release-notes/check@main

View File

@@ -28,7 +28,7 @@ jobs:
pull-requests: write pull-requests: write
steps: steps:
- name: Wait for ${{github.base_ref}} build to succeed - name: Wait for ${{github.base_ref}} build to succeed
uses: fountainhead/action-wait-for-check@v1.2.0 uses: fountainhead/action-wait-for-check@5a908a24814494009c4bb27c242ea38c93c593be # v1.2.0
id: master-build id: master-build
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
@@ -36,7 +36,7 @@ jobs:
ref: ${{github.base_ref}} ref: ${{github.base_ref}}
- name: Wait for PR build to succeed - name: Wait for PR build to succeed
uses: fountainhead/action-wait-for-check@v1.2.0 uses: fountainhead/action-wait-for-check@5a908a24814494009c4bb27c242ea38c93c593be # v1.2.0
id: wait-for-build id: wait-for-build
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
@@ -49,7 +49,7 @@ jobs:
echo "Build failed on PR branch or ${{github.base_ref}}" echo "Build failed on PR branch or ${{github.base_ref}}"
exit 1 exit 1
- name: Download build artifact from ${{github.base_ref}} - name: Download build artifact from ${{github.base_ref}}
uses: dawidd6/action-download-artifact@v11 uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
id: pr-build id: pr-build
with: with:
branch: ${{github.base_ref}} branch: ${{github.base_ref}}
@@ -59,7 +59,7 @@ jobs:
path: base path: base
- name: Download build artifact from PR - name: Download build artifact from PR
uses: dawidd6/action-download-artifact@v11 uses: dawidd6/action-download-artifact@ac66b43f0e6a346234dd65d4d0c8fbb31cb316e5 # v11
with: with:
pr: ${{github.event.pull_request.number}} pr: ${{github.event.pull_request.number}}
workflow: build.yml workflow: build.yml
@@ -76,14 +76,14 @@ jobs:
sed -i -E 's/index\.[0-9a-zA-Z_-]{8,}\./index./g' ./base/web-stats.json sed -i -E 's/index\.[0-9a-zA-Z_-]{8,}\./index./g' ./base/web-stats.json
sed -i -E 's/\.[0-9a-zA-Z_-]{8,}\.chunk\././g' ./base/web-stats.json sed -i -E 's/\.[0-9a-zA-Z_-]{8,}\.chunk\././g' ./base/web-stats.json
sed -i -E 's/\.[0-9a-f]{8,}\././g' ./base/*.json sed -i -E 's/\.[0-9a-f]{8,}\././g' ./base/*.json
- uses: twk3/rollup-size-compare-action@v1.2.0 - uses: twk3/rollup-size-compare-action@a1f8628fee0e40899ab2b46c1b6e14552b99281e # v1.2.0
with: with:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
current-stats-json-path: ./head/web-stats.json current-stats-json-path: ./head/web-stats.json
base-stats-json-path: ./base/web-stats.json base-stats-json-path: ./base/web-stats.json
title: desktop-client title: desktop-client
- uses: twk3/rollup-size-compare-action@v1.2.0 - uses: twk3/rollup-size-compare-action@a1f8628fee0e40899ab2b46c1b6e14552b99281e # v1.2.0
with: with:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
current-stats-json-path: ./head/loot-core-stats.json current-stats-json-path: ./head/loot-core-stats.json

View File

@@ -8,7 +8,7 @@ jobs:
stale: stale:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/stale@v10 - uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 # v10.1.0
with: with:
stale-pr-message: 'This PR is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.' stale-pr-message: 'This PR is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.'
close-pr-message: 'This PR was closed because it has been stalled for 5 days with no activity.' close-pr-message: 'This PR was closed because it has been stalled for 5 days with no activity.'
@@ -18,7 +18,7 @@ jobs:
stale-wip: stale-wip:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/stale@v10 - uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 # v10.1.0
with: with:
stale-pr-message: ':wave: Hi! It looks like this PR has not had any changes for a week now. Would you like someone to review this PR? If so - please remove the "[WIP]" prefix from the PR title. That will let the community know that this PR is open for a review.' stale-pr-message: ':wave: Hi! It looks like this PR has not had any changes for a week now. Would you like someone to review this PR? If so - please remove the "[WIP]" prefix from the PR title. That will let the community know that this PR is open for a review.'
days-before-stale: 7 days-before-stale: 7
@@ -29,7 +29,7 @@ jobs:
stale-needs-info: stale-needs-info:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/stale@v10 - uses: actions/stale@5f858e3efba33a5ca4407a664cc011ad407f2008 # v10.1.0
with: with:
stale-issue-label: 'needs info' stale-issue-label: 'needs info'
days-before-stale: -1 days-before-stale: -1

View File

@@ -19,7 +19,7 @@ jobs:
if: ${{ github.event.workflow_run.conclusion == 'success' }} if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps: steps:
- name: Download patch artifact - name: Download patch artifact
uses: actions/download-artifact@v6 uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
with: with:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }} run-id: ${{ github.event.workflow_run.id }}
@@ -27,7 +27,7 @@ jobs:
path: /tmp/artifacts path: /tmp/artifacts
- name: Download metadata artifact - name: Download metadata artifact
uses: actions/download-artifact@v6 uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0
with: with:
github-token: ${{ secrets.GITHUB_TOKEN }} github-token: ${{ secrets.GITHUB_TOKEN }}
run-id: ${{ github.event.workflow_run.id }} run-id: ${{ github.event.workflow_run.id }}
@@ -57,7 +57,7 @@ jobs:
- name: Checkout fork branch - name: Checkout fork branch
if: steps.metadata.outputs.pr_number != '' if: steps.metadata.outputs.pr_number != ''
uses: actions/checkout@v5 uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
repository: ${{ steps.metadata.outputs.head_repo }} repository: ${{ steps.metadata.outputs.head_repo }}
ref: ${{ steps.metadata.outputs.head_ref }} ref: ${{ steps.metadata.outputs.head_ref }}
@@ -132,7 +132,7 @@ jobs:
- name: Comment on PR - Success - name: Comment on PR - Success
if: steps.apply.outputs.applied == 'true' if: steps.apply.outputs.applied == 'true'
uses: actions/github-script@v8 uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with: with:
script: | script: |
await github.rest.issues.createComment({ await github.rest.issues.createComment({
@@ -144,7 +144,7 @@ jobs:
- name: Comment on PR - Failure - name: Comment on PR - Failure
if: failure() && steps.metadata.outputs.pr_number != '' if: failure() && steps.metadata.outputs.pr_number != ''
uses: actions/github-script@v8 uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with: with:
script: | script: |
const error = `${{ steps.apply.outputs.error }}` || 'Unknown error occurred'; const error = `${{ steps.apply.outputs.error }}` || 'Unknown error occurred';

View File

@@ -22,7 +22,7 @@ jobs:
container: container:
image: mcr.microsoft.com/playwright:v1.56.0-jammy image: mcr.microsoft.com/playwright:v1.56.0-jammy
steps: steps:
- uses: actions/checkout@v5 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with: with:
ref: ${{ github.event.pull_request.head.sha }} ref: ${{ github.event.pull_request.head.sha }}
@@ -82,7 +82,7 @@ jobs:
- name: Upload patch artifact - name: Upload patch artifact
if: steps.create-patch.outputs.has_changes == 'true' if: steps.create-patch.outputs.has_changes == 'true'
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: vrt-patch-${{ github.event.pull_request.number }} name: vrt-patch-${{ github.event.pull_request.number }}
path: vrt-update.patch path: vrt-update.patch
@@ -98,7 +98,7 @@ jobs:
- name: Upload PR metadata - name: Upload PR metadata
if: steps.create-patch.outputs.has_changes == 'true' if: steps.create-patch.outputs.has_changes == 'true'
uses: actions/upload-artifact@v5 uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with: with:
name: vrt-metadata-${{ github.event.pull_request.number }} name: vrt-metadata-${{ github.event.pull_request.number }}
path: pr-metadata/ path: pr-metadata/

View File

@@ -0,0 +1,6 @@
---
category: Maintenance
authors: [matt-fidd]
---
Fix broken GitHub Action version resolutions