This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [DeterminateSystems/update-flake-lock](https://redirect.github.com/DeterminateSystems/update-flake-lock) | action | major | `v24` -> `v25` | --- ### Release Notes <details> <summary>DeterminateSystems/update-flake-lock (DeterminateSystems/update-flake-lock)</summary> ### [`v25`](https://redirect.github.com/DeterminateSystems/update-flake-lock/releases/tag/v25) [Compare Source](https://redirect.github.com/DeterminateSystems/update-flake-lock/compare/v24...v25) #### What's Changed - build(deps-dev): bump vite from 5.2.12 to 5.4.6 by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/131](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/131) - Update `detsys-ts`: Merge pull request [#​67](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/67) from DeterminateSystems/allow-obliterating-id-token-privs by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/139](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/139) - action.yml: expose pull-request-url from create-pr action by [@​colemickens](https://redirect.github.com/colemickens) in [https://github.com/DeterminateSystems/update-flake-lock/pull/141](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/141) - Update `detsys-ts`: Merge pull request [#​69](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/69) from DeterminateSystems/update-deps by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/144](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/144) - Update `detsys-ts`: Merge pull request [#​71](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/71) from DeterminateSystems/updates by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/146](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/146) - Update the text with much simpler 'run ci' instructions. by [@​grahamc](https://redirect.github.com/grahamc) in [https://github.com/DeterminateSystems/update-flake-lock/pull/148](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/148) - Update `detsys-ts`: Merge pull request [#​72](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/72) from DeterminateSystems/dependabot by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/149](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/149) - build(deps): bump crazy-max/ghaction-import-gpg from 6.1.0 to 6.2.0 by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/138](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/138) - Update `detsys-ts`: Merge pull request [#​74](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/74) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-eb3d92718e by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/152](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/152) - Update `detsys-ts`: Merge pull request [#​78](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/78) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-0af3b8ec11 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/156](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/156) - flake.lock: Update by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/DeterminateSystems/update-flake-lock/pull/155](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/155) - Switch to flakehub-cache-action by [@​lucperkins](https://redirect.github.com/lucperkins) in [https://github.com/DeterminateSystems/update-flake-lock/pull/157](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/157) - Update `detsys-ts`: Merge pull request [#​79](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/79) from DeterminateSystems/dependabot/npm_and_yarn/npm_and_yarn-14f44f5325 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/158](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/158) - pnpm update, vitest by [@​grahamc](https://redirect.github.com/grahamc) in [https://github.com/DeterminateSystems/update-flake-lock/pull/159](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/159) - Update `detsys-ts`: Merge pull request [#​80](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/80) from DeterminateSystems/fixup-traces by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/160](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/160) - Update `detsys-ts`: Merge pull request [#​81](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/81) from DeterminateSystems/dont-capture-some-crashes by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/161](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/161) - Update `detsys-ts`: Merge pull request [#​82](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/82) from DeterminateSystems/even-more-crashes by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/162](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/162) - Update `detsys-ts`: Ignore hyphen-sep'd diags ([#​83](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/83)) by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/163](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/163) - build(deps): bump crazy-max/ghaction-import-gpg from 6.2.0 to 6.3.0 by [@​dependabot](https://redirect.github.com/dependabot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/164](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/164) - Update `detsys-ts`: Merge pull request [#​84](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/84) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-73588cc3c5 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/165](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/165) - Update `detsys-ts`: Bump vite from 6.2.3 to 6.2.4 in the npm_and_yarn group ([#​85](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/85)) by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/166](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/166) - Update `detsys-ts`: Merge pull request [#​86](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/86) from DeterminateSystems/dependabot/npm_and_yarn/npm_and_yarn-2bd33993d4 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/167](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/167) - Update `detsys-ts`: Merge pull request [#​87](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/87) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-2f3c1638ee by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/168](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/168) - Update `detsys-ts`: Merge pull request [#​88](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/88) from DeterminateSystems/dependabot/npm_and_yarn/npm_and_yarn-b7c6efa8f1 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/169](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/169) - Update `detsys-ts`: Merge pull request [#​89](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/89) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-0b8d2803d6 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/171](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/171) - flake.lock: Update by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/DeterminateSystems/update-flake-lock/pull/170](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/170) - Use Determinate Nix in examples by [@​lucperkins](https://redirect.github.com/lucperkins) in [https://github.com/DeterminateSystems/update-flake-lock/pull/172](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/172) - flake.lock: Update by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/DeterminateSystems/update-flake-lock/pull/173](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/173) - flake.lock: Update by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/DeterminateSystems/update-flake-lock/pull/175](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/175) - Update `detsys-ts`: Update Nix and JS dependencies ([#​91](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/91)) by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/176](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/176) - Update `detsys-ts`: Merge pull request [#​92](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/92) from DeterminateSystems/dependabot/npm_and_yarn/npm_and_yarn-de653eece3 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/177](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/177) - flake.lock: Update by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/DeterminateSystems/update-flake-lock/pull/179](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/179) - Update `detsys-ts`: Merge pull request [#​93](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/93) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-a403fbca50 by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/180](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/180) - Update `detsys-ts`: Merge pull request [#​94](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/94) from DeterminateSystems/dependabot/npm_and_yarn/npm-deps-dde80b0a8d by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/182](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/182) - Don't except if nix flake update fails by [@​grahamc](https://redirect.github.com/grahamc) in [https://github.com/DeterminateSystems/update-flake-lock/pull/183](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/183) - Update to use our new nix action by [@​grahamc](https://redirect.github.com/grahamc) in [https://github.com/DeterminateSystems/update-flake-lock/pull/184](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/184) - Update `detsys-ts`: Merge pull request [#​95](https://redirect.github.com/DeterminateSystems/update-flake-lock/issues/95) from DeterminateSystems/graham/fh-813-create-a-determinate-nix-action-with-pinned-releases by [@​detsys-pr-bot](https://redirect.github.com/detsys-pr-bot) in [https://github.com/DeterminateSystems/update-flake-lock/pull/185](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/185) - flake.lock: Update by [@​github-actions](https://redirect.github.com/github-actions) in [https://github.com/DeterminateSystems/update-flake-lock/pull/181](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/181) #### New Contributors - [@​colemickens](https://redirect.github.com/colemickens) made their first contribution in [https://github.com/DeterminateSystems/update-flake-lock/pull/141](https://redirect.github.com/DeterminateSystems/update-flake-lock/pull/141) **Full Changelog**: https://github.com/DeterminateSystems/update-flake-lock/compare/v24...v25 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xNC4zIiwidXBkYXRlZEluVmVyIjoiNDAuMTQuMyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsicmVub3ZhdGUiXX0=--> Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
151 lines
5.1 KiB
YAML
151 lines
5.1 KiB
YAML
name: Update Flake and Validate Build
|
|
|
|
on:
|
|
schedule:
|
|
- cron: "30 00 * * 1"
|
|
workflow_dispatch: # Allow manual triggering
|
|
|
|
# Set default permissions as read only
|
|
permissions: read-all
|
|
|
|
jobs:
|
|
update-flake:
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
# Only need contents write to update the flake lock file
|
|
contents: write
|
|
outputs:
|
|
update_available: ${{ steps.check_updates.outputs.update_available }}
|
|
|
|
steps:
|
|
- name: Repository Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install Nix
|
|
uses: DeterminateSystems/nix-installer-action@v16
|
|
|
|
- name: Check for Updates
|
|
id: check_updates
|
|
run: |
|
|
# Create a temporary copy of flake.lock
|
|
cp flake.lock flake.lock.backup
|
|
|
|
# Try to update flake.lock
|
|
nix flake update
|
|
|
|
# Check if there are differences
|
|
if ! cmp -s flake.lock flake.lock.backup; then
|
|
echo "update_available=true" >> "$GITHUB_OUTPUT"
|
|
# Restore original flake.lock
|
|
mv flake.lock.backup flake.lock
|
|
else
|
|
echo "update_available=false" >> "$GITHUB_OUTPUT"
|
|
fi
|
|
|
|
- name: Update flake.lock
|
|
if: steps.check_updates.outputs.update_available == 'true'
|
|
uses: DeterminateSystems/update-flake-lock@v25
|
|
with:
|
|
nix-options: --debug --log-format raw
|
|
token: ${{ secrets.FLAKE_TOKEN }}
|
|
pr-title: "deps: update flake.lock"
|
|
pr-labels: |
|
|
dependencies
|
|
automated
|
|
|
|
build-and-check:
|
|
needs: update-flake
|
|
permissions:
|
|
# Needed for checking out code
|
|
contents: read
|
|
# Needed for creating issues
|
|
issues: write
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest]
|
|
fail-fast: false # Continue with other jobs even if one fails
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- name: Repository Checkout
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ref: update_flake_lock_action
|
|
|
|
- name: Install Nix
|
|
uses: DeterminateSystems/nix-installer-action@v16
|
|
|
|
- name: Build and Test Configuration
|
|
id: build
|
|
continue-on-error: true # Continue to next steps even if build fails
|
|
run: |
|
|
set +e # Don't exit immediately on error
|
|
# Run the build and capture output
|
|
OUTPUT=$(nix build .# 2>&1)
|
|
BUILD_EXIT_CODE=$?
|
|
echo "build_output<<EOF" >> $GITHUB_ENV
|
|
echo "$OUTPUT" >> $GITHUB_ENV
|
|
echo "EOF" >> $GITHUB_ENV
|
|
|
|
# Check if build succeeded
|
|
if [ $BUILD_EXIT_CODE -eq 0 ]; then
|
|
echo "build_status=success" >> $GITHUB_ENV
|
|
else
|
|
echo "build_status=failure" >> $GITHUB_ENV
|
|
# Ensure the error is visible in the logs
|
|
echo "::error::Build failed with exit code $BUILD_EXIT_CODE"
|
|
echo "$OUTPUT"
|
|
fi
|
|
|
|
- name: Create Issue on Build Failure
|
|
if: env.build_status == 'failure'
|
|
uses: actions/github-script@v7
|
|
with:
|
|
script: |
|
|
const os = '${{ matrix.os }}';
|
|
const buildOutput = process.env.build_output;
|
|
const isUpdate = '${{ needs.update-flake.outputs.update_available }}' === 'true';
|
|
|
|
// Extract warnings and errors from build output
|
|
const warnings = buildOutput.match(/evaluation warning:[^\n]+/g) || [];
|
|
const errors = buildOutput.match(/error:[^\n]+/g) || [];
|
|
|
|
// Create a summary section
|
|
const summary = [
|
|
warnings.length > 0 ? `${warnings.length} evaluation warnings` : '',
|
|
errors.length > 0 ? `${errors.length} errors` : ''
|
|
].filter(Boolean).join(' and ');
|
|
|
|
// Get repository information from context
|
|
const [owner, repo] = process.env.GITHUB_REPOSITORY.split('/');
|
|
|
|
await github.rest.issues.create({
|
|
owner,
|
|
repo,
|
|
title: `🔨 Build Failed on ${os}: ${summary}${isUpdate ? ' (Dependency Update)' : ''}`,
|
|
body: `Build failed during automated validation on ${os}${isUpdate ? ' while testing dependency updates.' : '.'}\n
|
|
${isUpdate ? 'This failure occurred on the dependency update branch `deps/update-flake-lock`.' : 'This failure occurred on the main branch.'}\n
|
|
|
|
### Summary
|
|
${summary}\n
|
|
|
|
${warnings.length > 0 ? `### Warnings\n\`\`\`\n${warnings.join('\n')}\n\`\`\`\n` : ''}
|
|
${errors.length > 0 ? `### Errors\n\`\`\`\n${errors.join('\n')}\n\`\`\`\n` : ''}
|
|
|
|
<details>
|
|
<summary>Build Output</summary>
|
|
|
|
\`\`\`
|
|
${buildOutput}
|
|
\`\`\`
|
|
</details>
|
|
|
|
Please review the build output and fix any issues.`,
|
|
labels: [
|
|
'build-failure',
|
|
'bug',
|
|
...(warnings.length > 0 ? ['has-warnings'] : []),
|
|
...(errors.length > 0 ? ['has-errors'] : [])
|
|
]
|
|
});
|