mirror of
https://github.com/netbirdio/netbird.git
synced 2026-08-26 09:31:30 +02:00
Bumps the actions group with 13 updates in the / directory: | Package | From | To | | --- | --- | --- | | [actions/checkout](https://github.com/actions/checkout) | `6.0.2` | `7.0.1` | | [actions/setup-go](https://github.com/actions/setup-go) | `5` | `7` | | [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) | `4.1.0` | `4.3.0` | | [actions/cache](https://github.com/actions/cache) | `4` | `6` | | [actions/setup-node](https://github.com/actions/setup-node) | `4` | `7` | | [pnpm/action-setup](https://github.com/pnpm/action-setup) | `3.0.0` | `6.0.10` | | [vmactions/freebsd-vm](https://github.com/vmactions/freebsd-vm) | `1.4.8` | `1.5.4` | | [dorny/paths-filter](https://github.com/dorny/paths-filter) | `4.0.1` | `4.0.3` | | [actions/cache/restore](https://github.com/actions/cache) | `6.0.0` | `6.1.0` | | [docker/login-action](https://github.com/docker/login-action) | `4.2.0` | `4.6.0` | | [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) | `9.2.1` | `9.3.0` | | [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) | `4.1.0` | `4.2.0` | | [goreleaser/goreleaser-action](https://github.com/goreleaser/goreleaser-action) | `7.2.2` | `7.2.3` | Updates `actions/checkout` from 6.0.2 to 7.0.1 - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v6.0.2...3d3c42e5aac5ba805825da76410c181273ba90b1) Updates `actions/setup-go` from 5 to 7 - [Release notes](https://github.com/actions/setup-go/releases) - [Commits](https://github.com/actions/setup-go/compare/v5...v7) Updates `docker/setup-buildx-action` from 4.1.0 to 4.3.0 - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](d7f5e7f509...37fe631027) Updates `actions/cache` from 4 to 6 - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v4...v6) Updates `actions/setup-node` from 4 to 7 - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4...v7) Updates `pnpm/action-setup` from 3.0.0 to 6.0.10 - [Release notes](https://github.com/pnpm/action-setup/releases) - [Commits](a3252b78c4...0977fd9972) Updates `vmactions/freebsd-vm` from 1.4.8 to 1.5.4 - [Release notes](https://github.com/vmactions/freebsd-vm/releases) - [Commits](b84ab5559b...d0518f9125) Updates `dorny/paths-filter` from 4.0.1 to 4.0.3 - [Release notes](https://github.com/dorny/paths-filter/releases) - [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md) - [Commits](fbd0ab8f3e...ceb8a2b8f2) Updates `actions/cache/restore` from 6.0.0 to 6.1.0 - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](2c8a9bd745...55cc834586) Updates `docker/login-action` from 4.2.0 to 4.6.0 - [Release notes](https://github.com/docker/login-action/releases) - [Commits](650006c6eb...dbcb813823) Updates `golangci/golangci-lint-action` from 9.2.1 to 9.3.0 - [Release notes](https://github.com/golangci/golangci-lint-action/releases) - [Commits](82606bf257...ba0d7d2ec0) Updates `docker/setup-qemu-action` from 4.1.0 to 4.2.0 - [Release notes](https://github.com/docker/setup-qemu-action/releases) - [Commits](06116385d9...96fe6ef7f3) Updates `goreleaser/goreleaser-action` from 7.2.2 to 7.2.3 - [Release notes](https://github.com/goreleaser/goreleaser-action/releases) - [Commits](5daf1e915a...f06c13b6b1) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: actions/setup-go dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: docker/setup-buildx-action dependency-version: 4.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: actions/cache dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: actions/setup-node dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: pnpm/action-setup dependency-version: 6.0.10 dependency-type: direct:production update-type: version-update:semver-major dependency-group: actions - dependency-name: vmactions/freebsd-vm dependency-version: 1.5.4 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: dorny/paths-filter dependency-version: 4.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions - dependency-name: actions/cache/restore dependency-version: 6.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: docker/login-action dependency-version: 4.6.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: golangci/golangci-lint-action dependency-version: 9.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: docker/setup-qemu-action dependency-version: 4.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions - dependency-name: goreleaser/goreleaser-action dependency-version: 7.2.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com>
79 lines
2.9 KiB
YAML
79 lines
2.9 KiB
YAML
name: No New Replace Directives
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- "go.mod"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref || github.actor_id }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
check-replace-directives:
|
|
name: check-replace-directives
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
with:
|
|
persist-credentials: false
|
|
fetch-depth: 0
|
|
|
|
- name: Install Go
|
|
uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0
|
|
with:
|
|
go-version-file: go.mod
|
|
|
|
- name: Compare replace directives against the base branch
|
|
env:
|
|
BASE_SHA: ${{ github.event.pull_request.base.sha }}
|
|
run: |
|
|
set -euo pipefail
|
|
|
|
# A replace directive only applies when this module is the main
|
|
# module. Anything importing netbird as a library, the embedded
|
|
# clients among them, resolves the replaced path upstream instead and
|
|
# fails to build against whatever the replacement provides. Requiring
|
|
# a fork under its own module path avoids that; a replace does not.
|
|
#
|
|
# go.mod is parsed rather than diffed so that reordering, comments and
|
|
# single-line versus block syntax do not register as changes.
|
|
#
|
|
# Versions are part of the key because a replace can be scoped to one
|
|
# version of a module. Keyed on paths alone, retargeting such a
|
|
# directive at a different version would read as unchanged.
|
|
list_replaces() {
|
|
go mod edit -json "$1" \
|
|
| jq -r '
|
|
def ref: .Path + (if (.Version // "") == "" then "" else " " + .Version end);
|
|
(.Replace // [])[] | "\(.Old | ref) => \(.New | ref)"
|
|
' \
|
|
| sort
|
|
}
|
|
|
|
git show "${BASE_SHA}:go.mod" > /tmp/base-go.mod
|
|
list_replaces /tmp/base-go.mod > /tmp/base-replaces
|
|
list_replaces go.mod > /tmp/head-replaces
|
|
|
|
added=$(comm -13 /tmp/base-replaces /tmp/head-replaces)
|
|
if [ -n "$added" ]; then
|
|
echo "::error::This PR adds a replace directive to go.mod:"
|
|
echo "$added" | sed 's/^/ /'
|
|
echo ""
|
|
echo "A replace directive applies only to the main module, so it does not"
|
|
echo "reach anything that imports netbird as a library. Require the module"
|
|
echo "under a path you control instead, as done for github.com/netbirdio/go-nat."
|
|
exit 1
|
|
fi
|
|
|
|
removed=$(comm -23 /tmp/base-replaces /tmp/head-replaces)
|
|
if [ -n "$removed" ]; then
|
|
echo "This PR removes replace directives:"
|
|
echo "$removed" | sed 's/^/ /'
|
|
fi
|
|
echo "No new replace directives."
|