diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4adceabd8..70692b1f0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -56,9 +56,8 @@ jobs: shell: bash run: | go install github.com/mitchellh/gox@latest - $(go env GOPATH)/bin/ziti-ci generate-build-info common/version/info_generated.go version ${ZITI_BASE_VERSION:+--base-version $ZITI_BASE_VERSION} - $(go env GOPATH)/bin/gox -cgo -os=darwin -arch=amd64 -output=$GOX_OUTPUT ./... - $(go env GOPATH)/bin/gox -cgo -os=darwin -arch=arm64 -output=$GOX_OUTPUT ./... + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q go-build-flags -n)" -cgo -os=darwin -arch=amd64 -output=$GOX_OUTPUT ./... + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q go-build-flags -n)" -cgo -os=darwin -arch=arm64 -output=$GOX_OUTPUT ./... - name: Upload artifacts uses: actions/upload-artifact@v4 @@ -90,8 +89,7 @@ jobs: shell: bash run: | go install github.com/mitchellh/gox@latest - $(go env GOPATH)/bin/ziti-ci generate-build-info common/version/info_generated.go version ${ZITI_BASE_VERSION:+--base-version $ZITI_BASE_VERSION} - $(go env GOPATH)/bin/gox -cgo -os=windows -arch=amd64 -output=$GOX_OUTPUT ./... + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q go-build-flags -n)" -cgo -os=windows -arch=amd64 -output=$GOX_OUTPUT ./... - name: Upload artifacts uses: actions/upload-artifact@v4 @@ -125,9 +123,9 @@ jobs: $(go env GOPATH)/bin/ziti-ci configure-git $(go env GOPATH)/bin/ziti-ci generate-build-info common/version/info_generated.go version ${ZITI_BASE_VERSION:+--base-version $ZITI_BASE_VERSION} go install github.com/mitchellh/gox@latest - $(go env GOPATH)/bin/gox -cgo -os=linux -arch=amd64 -output=$GOX_OUTPUT ./... - CC=arm-linux-gnueabihf-gcc $(go env GOPATH)/bin/gox -cgo -os=linux -arch=arm -output=$GOX_OUTPUT ./... - CC=aarch64-linux-gnu-gcc $(go env GOPATH)/bin/gox -cgo -os=linux -arch=arm64 -output=$GOX_OUTPUT ./... + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q go-build-flags -n)" -cgo -os=linux -arch=amd64 -output=$GOX_OUTPUT ./... + CC=arm-linux-gnueabihf-gcc $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q go-build-flags -n)" -cgo -os=linux -arch=arm -output=$GOX_OUTPUT ./... + CC=aarch64-linux-gnu-gcc $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q go-build-flags -n)" -cgo -os=linux -arch=arm64 -output=$GOX_OUTPUT ./... - name: Upload artifacts uses: actions/upload-artifact@v4 @@ -463,21 +461,8 @@ jobs: -path "./release/*/linux/ziti" \ | xargs -0 chmod -c +x - - name: Publish GitHub Release - # forks need to run this step with their own GPG key because ziti-ci creates the GH release - if: env.ziti_ci_gpg_key_id != null && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release-v')) - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - ziti_ci_gpg_key: ${{ secrets.ZITI_CI_GPG_KEY }} - ziti_ci_gpg_key_id: ${{ secrets.ZITI_CI_GPG_KEY_ID }} - shell: bash - run: | - $(go env GOPATH)/bin/ziti-ci configure-git - $(go env GOPATH)/bin/ziti-ci tag -v -f version ${ZITI_BASE_VERSION:+--base-version $ZITI_BASE_VERSION} - $(go env GOPATH)/bin/ziti-ci publish-to-github --prerelease --archive-base "" - # only ziti-ci computed version for release branches and {version}-{run_id} for non-release branches - - name: Compute the Ziti Version String used for Linux Packages and Container Image Tags + - name: Get next version for downstream release candidates id: get_version env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -495,27 +480,17 @@ jobs: echo "DEBUG: GITHUB_REPOSITORY=${GITHUB_REPOSITORY} GITHUB_REF=${GITHUB_REF} GITHUB_RUN_ID=${GITHUB_RUN_ID}" (set -x; git remote -v show;) - if [[ "${GITHUB_REF}" =~ ^refs/heads/(release-v|main$) ]]; then - # Set current tag as semver for release branches - ZITI_VERSION="$($(go env GOPATH)/bin/ziti-ci -q get-current-version)" - - validateSemver "${ZITI_VERSION}" - - # drop the leading 'v', if any - ZITI_VERSION=${ZITI_VERSION#v} - else - # compute next patch level for non-release branches - ZITI_VERSION="$($(go env GOPATH)/bin/ziti-ci -q get-next-version ${ZITI_BASE_VERSION:+--base-version $ZITI_BASE_VERSION})" + # compute next patch level for non-release branches + ZITI_VERSION="$($(go env GOPATH)/bin/ziti-ci -q get-next-version ${ZITI_BASE_VERSION:+--base-version $ZITI_BASE_VERSION})" - validateSemver "${ZITI_VERSION}" + validateSemver "${ZITI_VERSION}" - # drop the leading 'v', if any, and append run id - ZITI_VERSION=${ZITI_VERSION#v}-${GITHUB_RUN_ID} - fi + # drop the leading 'v', if any, and append run id + ZITI_VERSION=${ZITI_VERSION#v}-${GITHUB_RUN_ID} echo ZITI_VERSION="${ZITI_VERSION}" | tee -a $GITHUB_OUTPUT - call-publish-prerelease-docker-images: + call-publish-docker-images: # - !cancelled() allows evaluating further conditional expressions even if # needed jobs were skipped if: ${{ @@ -523,31 +498,13 @@ jobs: && needs.publish.result == 'success' && github.ref == 'refs/heads/release-next' }} - name: Publish Pre-Release Docker Images + name: Publish Release Next Docker Images needs: publish uses: ./.github/workflows/publish-docker-images.yml secrets: inherit with: ziti-tag: release-next - call-publish-release-docker-images: - # - !cancelled() allows evaluating further conditional expressions even if - # needed jobs were skipped - if: ${{ - !cancelled() - && needs.publish.result == 'success' - && ( - github.ref == 'refs/heads/main' - || startsWith(github.ref, 'refs/heads/release-v') - ) - }} - name: Publish Release Docker Images - needs: publish - uses: ./.github/workflows/publish-docker-images.yml - secrets: inherit - with: - ziti-tag: ${{ needs.publish.outputs.ZITI_VERSION }} - # call on release-next and release branches to publish linux packages to # "testing" and "release" package repos in Artifactory call-publish-linux-packages: @@ -556,13 +513,9 @@ jobs: if: ${{ !cancelled() && needs.publish.result == 'success' - && ( - github.ref == 'refs/heads/main' - || startsWith(github.ref, 'refs/heads/release-v') - || github.ref == 'refs/heads/release-next' - ) + && github.ref == 'refs/heads/release-next' }} - name: Publish Linux Packages + name: Publish Release Next Linux Packages needs: publish uses: ./.github/workflows/publish-linux-packages.yml secrets: inherit diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..6d1663604 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,257 @@ +name: release + +on: + push: + tags: + - v* + workflow_dispatch: + +env: + GOFLAGS: "-trimpath" + GOX_OUTPUT: "release/{{.Arch}}/{{.OS}}/{{.Dir}}" + GOX_TEST_OUTPUT: "test/{{.Arch}}/{{.OS}}/bin/{{.Dir}}" + gh_ci_key: ${{ secrets.GH_CI_KEY }} + BUILD_NUMBER: ${{ format('{0}-{1}-{2}', github.run_id, github.run_number, github.run_attempt) }} + ZITI_BASE_VERSION: ${{ vars.ZITI_BASE_VERSION || null }} + +jobs: + mac-os-build: + name: Build Mac OS binaries + # allow fors to opt-out of time-consuming macOS builds + if: vars.ZITI_SKIP_MACOS_BUILD != 'true' + runs-on: macos-11 + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Build and Test + shell: bash + run: | + go install github.com/mitchellh/gox@latest + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q -t go-build-flags)" -cgo -os=darwin -arch=amd64 -output=$GOX_OUTPUT ./... + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q -t go-build-flags)" -cgo -os=darwin -arch=arm64 -output=$GOX_OUTPUT ./... + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: darwin-release-${{ github.run_id }} + path: release/ + retention-days: 5 + + windows-build: + name: Build Windows binaries + # allow fors to opt-out of time-consuming Windows builds + if: vars.ZITI_SKIP_WINDOWS_BUILD != 'true' + runs-on: windows-2019 + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Build and Test + shell: bash + run: | + go install github.com/mitchellh/gox@latest + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q -t go-build-flags)" -cgo -os=windows -arch=amd64 -output=$GOX_OUTPUT ./... + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: windows-release-${{ github.run_id }} + path: release/ + retention-days: 5 + + linux-build: + name: Build Linux binaries + runs-on: ubuntu-20.04 + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Build and Test + shell: bash + run: | + sudo apt-get update + sudo apt-get -yq install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf gcc-aarch64-linux-gnu + $(go env GOPATH)/bin/ziti-ci configure-git + go install github.com/mitchellh/gox@latest + $(go env GOPATH)/bin/ziti-ci -t go-build-flags + $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q -t go-build-flags)" -cgo -os=linux -arch=amd64 -output=$GOX_OUTPUT ./... + CC=arm-linux-gnueabihf-gcc $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q -t go-build-flags)" -cgo -os=linux -arch=arm -output=$GOX_OUTPUT ./... + CC=aarch64-linux-gnu-gcc $(go env GOPATH)/bin/gox -ldflags "$($(go env GOPATH)/bin/ziti-ci -q -t go-build-flags)" -cgo -os=linux -arch=arm64 -output=$GOX_OUTPUT ./... + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + with: + name: linux-release-${{ github.run_id }} + path: release/ + retention-days: 5 + + tests: + name: Run Unit and Integration Tests + runs-on: ubuntu-20.04 + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Run Go Quickstart Test + timeout-minutes: 5 + shell: bash + run: | + go test -v -tags "quickstart automated" ./ziti/cmd/edge/...; + + - name: Run Unit and Integration Tests + timeout-minutes: 10 + shell: bash + run: | + go test ./... --tags apitests + + publish: + name: Publish Binaries + if: ${{ + !cancelled() + && (needs.mac-os-build.result == 'success' || needs.mac-os-build.result == 'skipped') + && (needs.windows-build.result == 'success' || needs.windows-build.result == 'skipped') + }} + needs: [ tests, linux-build, mac-os-build, windows-build ] + runs-on: ubuntu-20.04 + outputs: + ZITI_VERSION: ${{ steps.get_version.outputs.ZITI_VERSION }} + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Python + uses: actions/setup-python@v5 + with: + python-version: '3.7' + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Download linux release artifact + uses: actions/download-artifact@v4 + with: + name: linux-release-${{ github.run_id }} + path: release/ + + - name: Download darwin release artifact + if: needs.mac-os-build.result == 'success' + uses: actions/download-artifact@v4 + with: + name: darwin-release-${{ github.run_id }} + path: release/ + + - name: Download windows release artifact + if: needs.windows-build.result == 'success' + uses: actions/download-artifact@v4 + with: + name: windows-release-${{ github.run_id }} + path: release/ + + - name: List downloaded release artifacts + shell: bash + run: | + ls -lAhR release/ + + - name: Restore execute filemode on macOS and Linux release artifacts before publishing + shell: bash + run: | + find ./release \ + -type f \ + -print0 \ + -path "./release/*/darwin/ziti" \ + -o \ + -path "./release/*/linux/ziti" \ + | xargs -0 chmod -c +x + + - name: Publish GitHub Release + # forks need to run this step with their own GPG key because ziti-ci creates the GH release + if: env.ziti_ci_gpg_key_id != null && startsWith(github.ref, 'refs/tags/v') + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ziti_ci_gpg_key: ${{ secrets.ZITI_CI_GPG_KEY }} + ziti_ci_gpg_key_id: ${{ secrets.ZITI_CI_GPG_KEY_ID }} + shell: bash + run: | + $(go env GOPATH)/bin/ziti-ci configure-git + $(go env GOPATH)/bin/ziti-ci publish-to-github -t --prerelease --archive-base "" + + # only ziti-ci computed version for release branches and {version}-{run_id} for non-release branches + - name: Compute the Ziti Version String used for Linux Packages and Container Image Tags + id: get_version + shell: bash + run: | + # drop the leading 'v', if any + ZITI_VERSION=${GITHUB_REF_NAME#v} + echo ZITI_VERSION="${ZITI_VERSION}" | tee -a $GITHUB_OUTPUT + + call-publish-docker-images: + # - !cancelled() allows evaluating further conditional expressions even if + # needed jobs were skipped + if: ${{ !cancelled() && needs.publish.result == 'success' }} + name: Publish Release Docker Images + needs: publish + uses: ./.github/workflows/publish-docker-images.yml + secrets: inherit + with: + ziti-tag: ${{ needs.publish.outputs.ZITI_VERSION }} + + # call on release-next and release branches to publish linux packages to + # "testing" and "release" package repos in Artifactory + call-publish-linux-packages: + # - !cancelled() allows evaluating further conditional expressions even if + # needed jobs were skipped + if: ${{ !cancelled() && needs.publish.result == 'success' }} + name: Publish Linux Packages + needs: publish + uses: ./.github/workflows/publish-linux-packages.yml + secrets: inherit + with: + ziti-version: ${{ needs.publish.outputs.ZITI_VERSION }} diff --git a/.github/workflows/validation-links.yml b/.github/workflows/validation-links.yml new file mode 100644 index 000000000..88aff2897 --- /dev/null +++ b/.github/workflows/validation-links.yml @@ -0,0 +1,86 @@ +name: validation-links + +on: + workflow_dispatch: + +# cancel older, redundant runs of same workflow on same branch +concurrency: + group: ${{ github.workflow }}-${{github.event_name}}-${{ github.head_ref || github.ref_name }} + cancel-in-progress: true + +env: + GOFLAGS: "-trimpath" + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_DEFAULT_REGION: "us-east-2" + gh_ci_key: ${{ secrets.GH_CI_KEY }} + BUILD_NUMBER: ${{ format('{0}-{1}-{2}', github.run_id, github.run_number, github.run_attempt) }} + + +jobs: + link-validation: + name: Link Validation + # not applicable to forks. shouldn't run on release build + if: github.repository_owner == 'openziti' + runs-on: ubuntu-20.04 + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Build and Test + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ziti_ci_gpg_key: ${{ secrets.ZITI_CI_GPG_KEY }} + ziti_ci_gpg_key_id: ${{ secrets.ZITI_CI_GPG_KEY_ID }} + shell: bash + run: | + $(go env GOPATH)/bin/ziti-ci configure-git + $(go env GOPATH)/bin/ziti-ci generate-build-info common/version/info_generated.go version + pushd zititest && go install ./... && popd + go install -tags=all,tests ./... + + - name: Create Test Environment + shell: bash + run: | + echo "ZITI_ROOT=$(go env GOPATH)/bin" >> "$GITHUB_ENV" + $(go env GOPATH)/bin/links-test create -d links-test-${GITHUB_RUN_NUMBER} -n links-test-${GITHUB_RUN_NUMBER} -l environment=gh-fablab-links-test,ziti_version=$($(go env GOPATH)/bin/ziti-ci -q get-current-version) + $(go env GOPATH)/bin/links-test up + $(go env GOPATH)/bin/links-test exec validateUp + + - name: Run Loop Validation + shell: bash + timeout-minutes: 380 + run: | + echo "ZITI_ROOT=$(go env GOPATH)/bin" >> "$GITHUB_ENV" + $(go env GOPATH)/bin/links-test exec-loop 4h sowChaos validateUp validateLinks + + - name: Create Logs Archive + if: always() + run: | + $(go env GOPATH)/bin/links-test get files '*' "./logs/{{ .Id }}/" ./logs + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + if: always() + with: + name: links-test-logs-${{ github.run_id }} + path: logs/ + compression-level: 7 + retention-days: 5 + + - name: Tear down Test Environment + timeout-minutes: 30 + if: always() + shell: bash + run: | + $(go env GOPATH)/bin/links-test dispose \ No newline at end of file diff --git a/.github/workflows/validation-sdk-terminators.yml b/.github/workflows/validation-sdk-terminators.yml new file mode 100644 index 000000000..26d3f26a9 --- /dev/null +++ b/.github/workflows/validation-sdk-terminators.yml @@ -0,0 +1,87 @@ +name: validation-sdk-terminators + +on: + workflow_dispatch: + +# cancel older, redundant runs of same workflow on same branch +concurrency: + group: ${{ github.workflow }}-${{github.event_name}}-${{ github.head_ref || github.ref_name }} + cancel-in-progress: true + +env: + GOFLAGS: "-trimpath" + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_DEFAULT_REGION: "us-east-2" + gh_ci_key: ${{ secrets.GH_CI_KEY }} + BUILD_NUMBER: ${{ format('{0}-{1}-{2}', github.run_id, github.run_number, github.run_attempt) }} + + +jobs: + sdk-terminator-validation: + name: SDK Terminator Validation + # not applicable to forks. shouldn't run on release build + if: github.repository_owner == 'openziti' + runs-on: ubuntu-20.04 + steps: + - name: Git Checkout + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version-file: ./go.mod + + - name: Install Ziti CI + uses: openziti/ziti-ci@v1 + + - name: Build and Test + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + ziti_ci_gpg_key: ${{ secrets.ZITI_CI_GPG_KEY }} + ziti_ci_gpg_key_id: ${{ secrets.ZITI_CI_GPG_KEY_ID }} + shell: bash + run: | + $(go env GOPATH)/bin/ziti-ci configure-git + $(go env GOPATH)/bin/ziti-ci generate-build-info common/version/info_generated.go version + pushd zititest && go install ./... && popd + go install -tags=all,tests ./... + + - name: Create Test Environment + shell: bash + run: | + echo "ZITI_ROOT=$(go env GOPATH)/bin" >> "$GITHUB_ENV" + $(go env GOPATH)/bin/sdk-hosting-test create -d sdk-hosting-test-${GITHUB_RUN_NUMBER} -n sdk-hosting-test-${GITHUB_RUN_NUMBER} -l environment=gh-fablab-sdk-hosting-test,ziti_version=$($(go env GOPATH)/bin/ziti-ci -q get-current-version) + $(go env GOPATH)/bin/sdk-hosting-test up + $(go env GOPATH)/bin/sdk-hosting-test exec validateUp + + - name: Run SDK Terminator Validation + shell: bash + timeout-minutes: 380 + run: | + echo "ZITI_ROOT=$(go env GOPATH)/bin" >> "$GITHUB_ENV" + $(go env GOPATH)/bin/sdk-hosting-test exec-loop 4h sowChaos validateUp validate + + - name: Create Logs Archive + if: always() + run: | + $(go env GOPATH)/bin/sdk-hosting-test get files '*' "./logs/{{ .Id }}/" ./logs + + - name: Upload artifacts + uses: actions/upload-artifact@v4 + if: always() + with: + name: sdk-hosting-test-logs-${{ github.run_id }} + path: logs/ + compression-level: 7 + retention-days: 5 + + - name: Tear down Test Environment + timeout-minutes: 30 + if: always() + shell: bash + run: | + $(go env GOPATH)/bin/sdk-hosting-test dispose + diff --git a/CHANGELOG.md b/CHANGELOG.md index b45aa4733..5709b4cdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,21 +3,40 @@ ## What's New * Bug fixes +* Controller HA Beta 1 + +## Controller HA Beta 1 + +This release can be run in HA mode. The code is still beta, as we're still finding and fixing bugs. Several bugs +have been fixed since Alpha 3 and c-based SDKs and tunnelers now work in HA mode. The smoketest can now be run +with HA controllers and clients. + +* Initial ZET release support HA control: https://github.com/openziti/ziti-tunnel-sdk-c/releases/tag/v2.0.0-alpha1 +* Windows, Mac and Mobile clients are in the process of being updated + +For more information: + +* HA overview/getting started/migration: [HA Documementation](https://github.com/openziti/ziti/tree/release-next/doc/ha) +* Open Issues: [HA Project Board](https://github.com/orgs/openziti/projects/9/views/1) ## Component Updates and Bug Fixes -* github.com/openziti/channel/v2: [v2.0.130 -> v2.0.131](https://github.com/openziti/channel/compare/v2.0.130...v2.0.131) +* github.com/openziti/channel/v2: [v2.0.130 -> v2.0.132](https://github.com/openziti/channel/compare/v2.0.130...v2.0.132) * github.com/openziti/edge-api: [v0.26.19 -> v0.26.20](https://github.com/openziti/edge-api/compare/v0.26.19...v0.26.20) * [Issue #113](https://github.com/openziti/edge-api/issues/113) - RecoveryCodesEnvelope is wrong * github.com/openziti/foundation/v2: [v2.0.45 -> v2.0.46](https://github.com/openziti/foundation/compare/v2.0.45...v2.0.46) * [Issue #407](https://github.com/openziti/foundation/issues/407) - Remove Branch from build info -* github.com/openziti/identity: [v1.0.77 -> v1.0.78](https://github.com/openziti/identity/compare/v1.0.77...v1.0.78) +* github.com/openziti/identity: [v1.0.77 -> v1.0.79](https://github.com/openziti/identity/compare/v1.0.77...v1.0.79) * github.com/openziti/metrics: [v1.2.54 -> v1.2.55](https://github.com/openziti/metrics/compare/v1.2.54...v1.2.55) * github.com/openziti/runzmd: [v1.0.47 -> v1.0.48](https://github.com/openziti/runzmd/compare/v1.0.47...v1.0.48) -* github.com/openziti/transport/v2: [v2.0.133 -> v2.0.134](https://github.com/openziti/transport/compare/v2.0.133...v2.0.134) +* github.com/openziti/storage: [v0.2.41 -> v0.2.42](https://github.com/openziti/storage/compare/v0.2.41...v0.2.42) + * [Issue #71](https://github.com/openziti/storage/issues/71) - Add AddFkIndexCascadeDelete + +* github.com/openziti/transport/v2: [v2.0.133 -> v2.0.135](https://github.com/openziti/transport/compare/v2.0.133...v2.0.135) * github.com/openziti/ziti: [v1.1.3 -> v1.1.4](https://github.com/openziti/ziti/compare/v1.1.3...v1.1.4) + * [Issue #2084](https://github.com/openziti/ziti/issues/2084) - Bug: Router enrollment is missing its server chain * [Issue #2124](https://github.com/openziti/ziti/issues/2124) - api session certs should be deleted when related api sessions are deleted # Release 1.1.3 diff --git a/RELEASING.md b/RELEASING.md index 171d90bc4..869034d3c 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -2,7 +2,8 @@ ## Release-next Pre-requisites -Perform these steps in PR branches based on release-next (trunk). +Perform these steps in PR branches based on "release-next." This is the default branch and represents a revision that is +a candidate for release. 1. Tidy dependencies. 1. Ensure you have downloaded the `@latest` artifact from the dependency(ies) you are updating in the main Ziti project, e.g., @@ -59,12 +60,22 @@ Perform these steps in PR branches based on release-next (trunk). ) ``` -## Release Pre-requisites +## Pre-Release -Perform these steps in the release-next (trunk) branch which is based on main to release Ziti. +Perform these steps in "release-next" (the default branch based on "main") to create a pre-release Ziti. -1. Create a PR to merge release-next to main. Release happens by merging from the release-next branch to main. -2. Ensure PR checks succeed. +1. Create a PR to merge "release-next" to "main." +1. Ensure "main" checks succeed. Downstreams will not be released if any checks fail on same revision where a release is created. +1. Push a tag like v*, typically on default branch HEAD to trigger the pre-release workflow named `release.yml`. + +## Stable and Latest Release + +Pre-releases are releases, but they're not promoted as "latest" in GitHub or automatically shipped downstream. Marking a +release as not a prerelease makes it a stable release. There can be one stable release that's also marked "latest" +(`isLatest: true`). + +1. After an arbitrary burn-in period, unmark "prerelease" in GitHub Releases (`isPrerelease: false`). This will automatically promote and advertise the downstreams. + Note: the downstreams workflow trigger ignores `isLatest`, can only be triggered once for a release, and waits for all other checks on the same revision. ## Downstreams @@ -145,3 +156,9 @@ The first step is to ensure the GitHub release is not marked "latest," and the h done ) ``` + +### Manually Promoting Downstreams + +If downstream promotion failed for any reason, e.g., a check failure on the same Git revision blocked promotion, then it +is best to create a new release that fixes the problem. Manually promoting downstreams is hypothetically possible, has +never been attempted, is error prone and tedious, and should probably be avoided. diff --git a/go.mod b/go.mod index ff1ed1321..60a6b85d6 100644 --- a/go.mod +++ b/go.mod @@ -48,17 +48,17 @@ require ( github.com/mitchellh/mapstructure v1.5.0 github.com/natefinch/lumberjack v2.0.0+incompatible github.com/openziti/agent v1.0.16 - github.com/openziti/channel/v2 v2.0.131 + github.com/openziti/channel/v2 v2.0.133 github.com/openziti/edge-api v0.26.20 - github.com/openziti/foundation/v2 v2.0.46 - github.com/openziti/identity v1.0.78 + github.com/openziti/foundation/v2 v2.0.47 + github.com/openziti/identity v1.0.80 github.com/openziti/jwks v1.0.3 - github.com/openziti/metrics v1.2.55 - github.com/openziti/runzmd v1.0.48 - github.com/openziti/sdk-golang v0.23.37 - github.com/openziti/secretstream v0.1.20 - github.com/openziti/storage v0.2.42 - github.com/openziti/transport/v2 v2.0.134 + github.com/openziti/metrics v1.2.56 + github.com/openziti/runzmd v1.0.49 + github.com/openziti/sdk-golang v0.23.38 + github.com/openziti/secretstream v0.1.21 + github.com/openziti/storage v0.2.45 + github.com/openziti/transport/v2 v2.0.136 github.com/openziti/x509-claims v1.0.3 github.com/openziti/xweb/v2 v2.1.0 github.com/openziti/ziti-db-explorer v1.1.3 @@ -98,7 +98,7 @@ require ( github.com/MichaelMure/go-term-text v0.3.1 // indirect github.com/alecthomas/chroma v0.10.0 // indirect github.com/andybalholm/brotli v1.0.6 // indirect - github.com/antlr4-go/antlr/v4 v4.13.0 // indirect + github.com/antlr4-go/antlr/v4 v4.13.1 // indirect github.com/armon/go-metrics v0.4.1 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect github.com/biogo/store v0.0.0-20200525035639-8c94ae1e7c9c // indirect diff --git a/go.sum b/go.sum index dec184808..bab84493d 100644 --- a/go.sum +++ b/go.sum @@ -81,8 +81,8 @@ github.com/andybalholm/brotli v1.0.6 h1:Yf9fFpf49Zrxb9NlQaluyE92/+X7UVHlhMNJN2sx github.com/andybalholm/brotli v1.0.6/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= -github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= -github.com/antlr4-go/antlr/v4 v4.13.0/go.mod h1:pfChB/xh/Unjila75QW7+VU4TSnWnnk9UTnmpPaOR2g= +github.com/antlr4-go/antlr/v4 v4.13.1 h1:SqQKkuVZ+zWkMMNkjy5FZe5mr5WURWnlpmOuzYWrPrQ= +github.com/antlr4-go/antlr/v4 v4.13.1/go.mod h1:GKmUxMtwp6ZgGwZSva4eWPC5mS6vUAmOABFgjdkM7Nw= github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= github.com/armon/go-metrics v0.0.0-20190430140413-ec5e00d3c878/go.mod h1:3AMJUQhVx52RsWOnlkpikZr01T/yAVN2gn0861vByNg= @@ -566,30 +566,30 @@ github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b/go.mo github.com/openzipkin/zipkin-go v0.1.1/go.mod h1:NtoC/o8u3JlF1lSlyPNswIbeQH9bJTmOf0Erfk+hxe8= github.com/openziti/agent v1.0.16 h1:9Saji+8hFE1NpzP2XzDhsVJbCrDlhixoLHfOpFt5Z+U= github.com/openziti/agent v1.0.16/go.mod h1:zfm53+PVWoGFzjGGgQdKby5749G6VRYHe+eQJmoVKy4= -github.com/openziti/channel/v2 v2.0.131 h1:BGCL0SatqvSLiwNFTaMUDXuvb9dB8EW61SOWEii/j7o= -github.com/openziti/channel/v2 v2.0.131/go.mod h1:kK5vZW+obIv9T+L9lLTlzf9vKdlok8z1kjJZLty6V9A= +github.com/openziti/channel/v2 v2.0.133 h1:/YuJnnmX6A1f+tdf33pi2c2GdzWYn7Sb4GP8S2zqXpI= +github.com/openziti/channel/v2 v2.0.133/go.mod h1:D8MLoG3UHKtIGSwqk5GJi/y6IirNk5XaK8RW78nbOKc= github.com/openziti/dilithium v0.3.3 h1:PLgQ6PMNLSTzCFbX/h98cmudgz/cU6TmjdSv5NAPD8k= github.com/openziti/dilithium v0.3.3/go.mod h1:vsCjI2AU/hon9e+dLhUFbCNGesJDj2ASgkySOcpmvjo= github.com/openziti/edge-api v0.26.20 h1:r/61qDzU475mTXjZV/t3oGNN5szndzAR4OyhKjXb2jk= github.com/openziti/edge-api v0.26.20/go.mod h1:BQryKiWKvoVn4sZEjVToSW/2tL+M1ylSWsNzRKUfl9Q= -github.com/openziti/foundation/v2 v2.0.46 h1:JoeJ9+Tluy/vbMog/QMf8oekqrjR4ghXc44EDLyko9U= -github.com/openziti/foundation/v2 v2.0.46/go.mod h1:88UifYC+Ia6VBQkGgszao/ixi8ymRME0werGo3fI55g= -github.com/openziti/identity v1.0.78 h1:DqJT8W9HSv4GwtZDJp5oP9OgCL4yzbX6n7Nqf6AKhHU= -github.com/openziti/identity v1.0.78/go.mod h1:2dhNjJIFkGhzv+KrISGafbiZgKqZsz0ySu3jnzo7cLU= +github.com/openziti/foundation/v2 v2.0.47 h1:f2LM6FQOhHXJ9QMTpr4GAKq8qXspNG3EGczMjjyz7uc= +github.com/openziti/foundation/v2 v2.0.47/go.mod h1:pj5nPmVtAdF1QX+aRtALw69hxcsAzrWDpBUe+Zrc73Q= +github.com/openziti/identity v1.0.80 h1:3yzSLw4bSettFmi74nAywuZxPsb9siDQjhmsql/qzNU= +github.com/openziti/identity v1.0.80/go.mod h1:/UKDen2MOw2Kjs0WuKiBloIT2bPrV0jxLAo8eyVy0ic= github.com/openziti/jwks v1.0.3 h1:hf8wkb+Cg4nH/HM0KROFd7u+C3DkRVcFZJ7tDV+4icc= github.com/openziti/jwks v1.0.3/go.mod h1:t4xxq8vlXGsPn29kiQVnZBBDDnEoOFqtJoHibkJunQQ= -github.com/openziti/metrics v1.2.55 h1:g2uIYz7RwgfeGquGdRC+voKD1IvCbpgQtILkPtj6WwY= -github.com/openziti/metrics v1.2.55/go.mod h1:4MjPwits+NmsS50UFPzePF9b9lOiIrrXK/VNe0JHC/0= -github.com/openziti/runzmd v1.0.48 h1:7pw85xA2bRBwB0nLmex36Xyu0vd32aIWENKSwq5UdZg= -github.com/openziti/runzmd v1.0.48/go.mod h1:uCzydrGJf2+yqeyOO3MpHHX42lVUek/uMXyzRGL0smg= -github.com/openziti/sdk-golang v0.23.37 h1:r7bdmSpqv9y2sCS7p7I42kxAGEflp8pahPQsN9ZKAB0= -github.com/openziti/sdk-golang v0.23.37/go.mod h1:FYFDyzApbyuE6Q7W3uqL0RNWdw/PQZsrMT4zoxGY/04= -github.com/openziti/secretstream v0.1.20 h1:9KOgXkUddf9KHur+B805a8wP0J447AO6Pmtz+eanub0= -github.com/openziti/secretstream v0.1.20/go.mod h1:TteVDQqouIoZgkwZhfiVdbnPNP3m87ik7kg/l9ahXzI= -github.com/openziti/storage v0.2.42 h1:u5g/PtFhH0NFPD2Al/kHGHsJNXhkkhkJV+uu+y3TAuk= -github.com/openziti/storage v0.2.42/go.mod h1:FSU6WmVMFHB6Z1NVGx5yxWjrDQbYPNrDmPNTgVDgrcM= -github.com/openziti/transport/v2 v2.0.134 h1:wnZEESmP126I84pA8Aodqg6uhdNwtAG32AcJsmUiM+A= -github.com/openziti/transport/v2 v2.0.134/go.mod h1:Fw8CTXwkWgQTXHHBvXFwtQdkbjeXw7LHkI0BE8kQdGg= +github.com/openziti/metrics v1.2.56 h1:sOX5SCdK2Kx2vci+2PWIXDedbyRDUWylM3xJmmISiUs= +github.com/openziti/metrics v1.2.56/go.mod h1:nATuueUtFF5PDhwBwbq93g8sjpQZmf0yo2rySOnOUEY= +github.com/openziti/runzmd v1.0.49 h1:WAnHH/aNAuGTORtHq146P02e2ZuGQaiyjht13OpgllE= +github.com/openziti/runzmd v1.0.49/go.mod h1:sFSEo3SJOMPdE52WZ6OGHnFTuxS9NqcrGc3VYoR5qzA= +github.com/openziti/sdk-golang v0.23.38 h1:CqA+/YN5rBO5csjQef9Qs5pfrSxk5CqT7e1n8KDm2Wg= +github.com/openziti/sdk-golang v0.23.38/go.mod h1:ZRHgiWVOUpTk9LW2BuvIv8sQP3jPtBctGn9E1s5XoCQ= +github.com/openziti/secretstream v0.1.21 h1:r4xN8/CzSEvxZFFYGSztrlhMtIvk3B+SQcq2zgZ4Tb4= +github.com/openziti/secretstream v0.1.21/go.mod h1:1lfAnS8gBHsKZiPbRRK1sularbAsqizN6tWUEuZSfo0= +github.com/openziti/storage v0.2.45 h1:rCvQzWmGSmx6Ir2zUFO8H48klONGwZQfwFrfrEJuq9k= +github.com/openziti/storage v0.2.45/go.mod h1:v6KddQOjkQmKHnC7hIgFtcm4tdA8l8DbxYHQOIbRWa8= +github.com/openziti/transport/v2 v2.0.136 h1:FkF9DZx/kU9PPHKpz6mpxEqru0JOyCr8JfRReqDHfmk= +github.com/openziti/transport/v2 v2.0.136/go.mod h1:hnu2HvfQ3t7XvA3F9EfdHMGupFQrP38BtbRO7RHr8tA= github.com/openziti/x509-claims v1.0.3 h1:HNdQ8Nf1agB3lBs1gahcO6zfkeS4S5xoQ2/PkY4HRX0= github.com/openziti/x509-claims v1.0.3/go.mod h1:Z0WIpBm6c4ecrpRKrou6Gk2wrLWxJO/+tuUwKh8VewE= github.com/openziti/xweb/v2 v2.1.0 h1:Xhh3C2pZkq/Prr65V+SfFSibLDYteoc4f62KQCcTZF4= diff --git a/zititest/go.mod b/zititest/go.mod index 1b22c1794..73e4a1f28 100644 --- a/zititest/go.mod +++ b/zititest/go.mod @@ -10,17 +10,17 @@ require ( github.com/go-openapi/runtime v0.28.0 github.com/google/go-cmp v0.6.0 github.com/google/uuid v1.6.0 - github.com/gorilla/websocket v1.5.1 + github.com/gorilla/websocket v1.5.2 github.com/michaelquigley/pfxlog v0.6.10 github.com/openziti/agent v1.0.16 - github.com/openziti/channel/v2 v2.0.131 + github.com/openziti/channel/v2 v2.0.133 github.com/openziti/edge-api v0.26.20 github.com/openziti/fablab v0.5.60 - github.com/openziti/foundation/v2 v2.0.46 - github.com/openziti/identity v1.0.78 - github.com/openziti/sdk-golang v0.23.37 - github.com/openziti/storage v0.2.42 - github.com/openziti/transport/v2 v2.0.134 + github.com/openziti/foundation/v2 v2.0.47 + github.com/openziti/identity v1.0.80 + github.com/openziti/sdk-golang v0.23.38 + github.com/openziti/storage v0.2.45 + github.com/openziti/transport/v2 v2.0.136 github.com/openziti/ziti v0.28.3 github.com/orcaman/concurrent-map/v2 v2.0.1 github.com/pkg/errors v0.9.1 @@ -30,7 +30,7 @@ require ( github.com/stretchr/testify v1.9.0 go.etcd.io/bbolt v1.3.10 golang.org/x/net v0.26.0 - google.golang.org/protobuf v1.34.1 + google.golang.org/protobuf v1.34.2 gopkg.in/yaml.v2 v2.4.0 ) @@ -41,7 +41,7 @@ require ( github.com/MichaelMure/go-term-text v0.3.1 // indirect github.com/alecthomas/chroma v0.10.0 // indirect github.com/andybalholm/brotli v1.0.6 // indirect - github.com/antlr4-go/antlr/v4 v4.13.0 // indirect + github.com/antlr4-go/antlr/v4 v4.13.1 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/armon/go-metrics v0.4.1 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect @@ -66,8 +66,8 @@ require ( github.com/fsnotify/fsnotify v1.7.0 // indirect github.com/fullsailor/pkcs7 v0.0.0-20190404230743-d7302db945fa // indirect github.com/gaissmai/extnetip v0.4.0 // indirect - github.com/go-acme/lego/v4 v4.17.3 // indirect - github.com/go-jose/go-jose/v4 v4.0.1 // indirect + github.com/go-acme/lego/v4 v4.17.4 // indirect + github.com/go-jose/go-jose/v4 v4.0.2 // indirect github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.3.0 // indirect @@ -95,7 +95,7 @@ require ( github.com/hashicorp/golang-lru v0.6.0 // indirect github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect github.com/hashicorp/hcl v1.0.0 // indirect - github.com/hashicorp/raft v1.6.1 // indirect + github.com/hashicorp/raft v1.7.0 // indirect github.com/hashicorp/raft-boltdb v0.0.0-20220329195025-15018e9b97e0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/influxdata/influxdb-client-go/v2 v2.13.0 // indirect @@ -138,14 +138,14 @@ require ( github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b // indirect github.com/openziti/dilithium v0.3.3 // indirect github.com/openziti/jwks v1.0.3 // indirect - github.com/openziti/metrics v1.2.55 // indirect - github.com/openziti/runzmd v1.0.48 // indirect - github.com/openziti/secretstream v0.1.20 // indirect + github.com/openziti/metrics v1.2.56 // indirect + github.com/openziti/runzmd v1.0.49 // indirect + github.com/openziti/secretstream v0.1.21 // indirect github.com/openziti/x509-claims v1.0.3 // indirect github.com/openziti/xweb/v2 v2.1.0 // indirect github.com/openziti/ziti-db-explorer v1.1.3 // indirect github.com/parallaxsecond/parsec-client-go v0.0.0-20221025095442-f0a77d263cf9 // indirect - github.com/pelletier/go-toml/v2 v2.1.0 // indirect + github.com/pelletier/go-toml/v2 v2.2.2 // indirect github.com/pkg/sftp v1.13.6 // indirect github.com/pkg/term v1.2.0-beta.2 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect @@ -157,7 +157,7 @@ require ( github.com/russross/blackfriday v1.6.0 // indirect github.com/sagikazarmark/locafero v0.4.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect - github.com/shirou/gopsutil/v3 v3.24.4 // indirect + github.com/shirou/gopsutil/v3 v3.24.5 // indirect github.com/shoenig/go-m1cpu v0.1.6 // indirect github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e // indirect github.com/sourcegraph/conc v0.3.0 // indirect @@ -165,7 +165,7 @@ require ( github.com/spf13/afero v1.11.0 // indirect github.com/spf13/cast v1.6.0 // indirect github.com/spf13/pflag v1.0.5 // indirect - github.com/spf13/viper v1.18.2 // indirect + github.com/spf13/viper v1.19.0 // indirect github.com/subosito/gotenv v1.6.0 // indirect github.com/teris-io/shortid v0.0.0-20201117134242-e59966efd125 // indirect github.com/tklauser/go-sysconf v0.3.14 // indirect @@ -188,13 +188,13 @@ require ( golang.org/x/crypto v0.24.0 // indirect golang.org/x/exp v0.0.0-20240506185415-9bf2ced13842 // indirect golang.org/x/image v0.13.0 // indirect - golang.org/x/mod v0.17.0 // indirect - golang.org/x/oauth2 v0.20.0 // indirect + golang.org/x/mod v0.18.0 // indirect + golang.org/x/oauth2 v0.21.0 // indirect golang.org/x/sync v0.7.0 // indirect golang.org/x/sys v0.21.0 // indirect golang.org/x/term v0.21.0 // indirect golang.org/x/text v0.16.0 // indirect - golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect + golang.org/x/tools v0.22.0 // indirect gopkg.in/AlecAivazis/survey.v1 v1.8.8 // indirect gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/resty.v1 v1.12.0 // indirect diff --git a/zititest/go.sum b/zititest/go.sum index 8e37ae794..fd52d66ef 100644 --- a/zititest/go.sum +++ b/zititest/go.sum @@ -48,8 +48,8 @@ github.com/AlecAivazis/survey/v2 v2.0.5/go.mod h1:WYBhg6f0y/fNYUuesWQc0PKbJcEliG github.com/AppsFlyer/go-sundheit v0.5.0 h1:/VxpyigCfJrq1r97mn9HPiAB2qrhcTFHwNIIDr15CZM= github.com/AppsFlyer/go-sundheit v0.5.0/go.mod h1:2ZM0BnfqT/mljBQO224VbL5XH06TgWuQ6Cn+cTtCpTY= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8= -github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ= +github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= +github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= github.com/DataDog/datadog-go v2.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= @@ -82,8 +82,8 @@ github.com/andybalholm/brotli v1.0.6 h1:Yf9fFpf49Zrxb9NlQaluyE92/+X7UVHlhMNJN2sx github.com/andybalholm/brotli v1.0.6/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig= github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239/go.mod h1:2FmKhYUyUczH0OGQWaF5ceTx0UBShxjsH6f8oGKYe2c= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= -github.com/antlr4-go/antlr/v4 v4.13.0 h1:lxCg3LAv+EUK6t1i0y1V6/SLeUi0eKEKdhQAlS8TVTI= -github.com/antlr4-go/antlr/v4 v4.13.0/go.mod h1:pfChB/xh/Unjila75QW7+VU4TSnWnnk9UTnmpPaOR2g= +github.com/antlr4-go/antlr/v4 v4.13.1 h1:SqQKkuVZ+zWkMMNkjy5FZe5mr5WURWnlpmOuzYWrPrQ= +github.com/antlr4-go/antlr/v4 v4.13.1/go.mod h1:GKmUxMtwp6ZgGwZSva4eWPC5mS6vUAmOABFgjdkM7Nw= github.com/apapsch/go-jsonmerge/v2 v2.0.0 h1:axGnT1gRIfimI7gJifB699GoE/oq+F2MU7Dml6nw9rQ= github.com/apapsch/go-jsonmerge/v2 v2.0.0/go.mod h1:lvDnEdqiQrp0O42VQGgmlKpxL1AP2+08jFMw88y4klk= github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= @@ -203,15 +203,15 @@ github.com/gaissmai/extnetip v0.4.0/go.mod h1:M3NWlyFKaVosQXWXKKeIPK+5VM4U85Dahd github.com/getkin/kin-openapi v0.13.0/go.mod h1:WGRs2ZMM1Q8LR1QBEwUxC6RJEfaBcD0s+pcEVXFuAjw= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/gliderlabs/ssh v0.1.1/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0= -github.com/go-acme/lego/v4 v4.17.3 h1:5our7Qdyik0abag40abdmQuytq97iweaNHFMT4pYDnQ= -github.com/go-acme/lego/v4 v4.17.3/go.mod h1:Ol6l04hnmavqVHKYS/ByhXXqE64x8yVYhomha82uAUk= +github.com/go-acme/lego/v4 v4.17.4 h1:h0nePd3ObP6o7kAkndtpTzCw8shOZuWckNYeUQwo36Q= +github.com/go-acme/lego/v4 v4.17.4/go.mod h1:dU94SvPNqimEeb7EVilGGSnS0nU1O5Exir0pQ4QFL4U= github.com/go-chi/chi v4.0.2+incompatible/go.mod h1:eB3wogJHnLi3x/kFX2A+IbTBlXxmMeXJVKy9tTv1XzQ= github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= -github.com/go-jose/go-jose/v4 v4.0.1 h1:QVEPDE3OluqXBQZDcnNvQrInro2h0e4eqNbnZSWqS6U= -github.com/go-jose/go-jose/v4 v4.0.1/go.mod h1:WVf9LFMHh/QVrmqrOfqun0C45tMe3RoiKJMPvgWwLfY= +github.com/go-jose/go-jose/v4 v4.0.2 h1:R3l3kkBds16bO7ZFAEEcofK0MkrAJt3jlJznWZG0nvk= +github.com/go-jose/go-jose/v4 v4.0.2/go.mod h1:WVf9LFMHh/QVrmqrOfqun0C45tMe3RoiKJMPvgWwLfY= github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= @@ -306,8 +306,6 @@ github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-github v17.0.0+incompatible/go.mod h1:zLgOLi98H3fifZn+44m+umXrS52loVEgC2AApnigrVQ= @@ -347,8 +345,8 @@ github.com/gorilla/schema v1.3.0/go.mod h1:Dg5SSm5PV60mhF2NFaTV1xuYYj8tV8NOPRo4F github.com/gorilla/securecookie v1.1.2 h1:YCIWL56dvtr73r6715mJs5ZvhtnY73hBvEF8kXD8ePA= github.com/gorilla/securecookie v1.1.2/go.mod h1:NfCASbcHqRSY+3a8tlWJwsQap2VX5pwzwo4h3eOamfo= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= -github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY= -github.com/gorilla/websocket v1.5.1/go.mod h1:x3kM2JMyaluk02fnUJpQuwD2dCS5NDG2ZHL0uE0tcaY= +github.com/gorilla/websocket v1.5.2 h1:qoW6V1GT3aZxybsbC6oLnailWnB+qTMVwMreOso9XUw= +github.com/gorilla/websocket v1.5.2/go.mod h1:0n9H61RBAcf5/38py2MCYbxzPIY9rOkpvvMT24Rqs30= github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/go-grpc-middleware v1.0.0/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= @@ -393,8 +391,8 @@ github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= github.com/hashicorp/memberlist v0.1.3/go.mod h1:ajVTdAv/9Im8oMAAj5G31PhhMCZJV2pPBoIllUwCN7I= github.com/hashicorp/raft v1.1.0/go.mod h1:4Ak7FSPnuvmb0GV6vgIAJ4vYT4bek9bb6Q+7HVbyzqM= -github.com/hashicorp/raft v1.6.1 h1:v/jm5fcYHvVkL0akByAp+IDdDSzCNCGhdO6VdB56HIM= -github.com/hashicorp/raft v1.6.1/go.mod h1:N1sKh6Vn47mrWvEArQgILTyng8GoDRNYlgKyK7PMjs0= +github.com/hashicorp/raft v1.7.0 h1:4u24Qn6lQ6uwziM++UgsyiT64Q8GyRn43CV41qPiz1o= +github.com/hashicorp/raft v1.7.0/go.mod h1:N1sKh6Vn47mrWvEArQgILTyng8GoDRNYlgKyK7PMjs0= github.com/hashicorp/raft-boltdb v0.0.0-20220329195025-15018e9b97e0 h1:CO8dBMLH6dvE1jTn/30ZZw3iuPsNfajshWoJTnVc5cc= github.com/hashicorp/raft-boltdb v0.0.0-20220329195025-15018e9b97e0/go.mod h1:nTakvJ4XYq45UXtn0DbwR4aU9ZdjlnIenpbs6Cd+FM0= github.com/hashicorp/serf v0.8.2/go.mod h1:6hOLApaqBFA1NXqRQAsxw9QxuDEvNxSQRwA/JwenrHc= @@ -474,7 +472,6 @@ github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69 github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= github.com/lucsky/cuid v1.2.1 h1:MtJrL2OFhvYufUIn48d35QGXyeTC8tn0upumW9WwTHg= github.com/lucsky/cuid v1.2.1/go.mod h1:QaaJqckboimOmhRSJXSx/+IT+VTfxfPGSo/6mfgUfmE= -github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I= github.com/lufia/plan9stats v0.0.0-20240408141607-282e7b5d6b74 h1:1KuuSOy4ZNgW0KA2oYIngXVFhQcXxhLqCVK7cBcldkk= github.com/lufia/plan9stats v0.0.0-20240408141607-282e7b5d6b74/go.mod h1:ilwx/Dta8jXAgpFYFvSWEMwxmbWXyiUHkd5FwyKhb5k= github.com/lunixbochs/vtclean v1.0.0/go.mod h1:pHhQNgMf3btfWnGBVipUOjRYhoOsdGqdm/+2c2E2WMI= @@ -591,32 +588,32 @@ github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b/go.mo github.com/openzipkin/zipkin-go v0.1.1/go.mod h1:NtoC/o8u3JlF1lSlyPNswIbeQH9bJTmOf0Erfk+hxe8= github.com/openziti/agent v1.0.16 h1:9Saji+8hFE1NpzP2XzDhsVJbCrDlhixoLHfOpFt5Z+U= github.com/openziti/agent v1.0.16/go.mod h1:zfm53+PVWoGFzjGGgQdKby5749G6VRYHe+eQJmoVKy4= -github.com/openziti/channel/v2 v2.0.131 h1:BGCL0SatqvSLiwNFTaMUDXuvb9dB8EW61SOWEii/j7o= -github.com/openziti/channel/v2 v2.0.131/go.mod h1:kK5vZW+obIv9T+L9lLTlzf9vKdlok8z1kjJZLty6V9A= +github.com/openziti/channel/v2 v2.0.133 h1:/YuJnnmX6A1f+tdf33pi2c2GdzWYn7Sb4GP8S2zqXpI= +github.com/openziti/channel/v2 v2.0.133/go.mod h1:D8MLoG3UHKtIGSwqk5GJi/y6IirNk5XaK8RW78nbOKc= github.com/openziti/dilithium v0.3.3 h1:PLgQ6PMNLSTzCFbX/h98cmudgz/cU6TmjdSv5NAPD8k= github.com/openziti/dilithium v0.3.3/go.mod h1:vsCjI2AU/hon9e+dLhUFbCNGesJDj2ASgkySOcpmvjo= github.com/openziti/edge-api v0.26.20 h1:r/61qDzU475mTXjZV/t3oGNN5szndzAR4OyhKjXb2jk= github.com/openziti/edge-api v0.26.20/go.mod h1:BQryKiWKvoVn4sZEjVToSW/2tL+M1ylSWsNzRKUfl9Q= github.com/openziti/fablab v0.5.60 h1:RsqrEb3LV6asK5N97uZKyNSDhcNOeDcAuT4OAD/hY9Y= github.com/openziti/fablab v0.5.60/go.mod h1:B/ib+GOtozEIytv2aXSFl9+dL7AiGfbpGS/VjnNduU8= -github.com/openziti/foundation/v2 v2.0.46 h1:JoeJ9+Tluy/vbMog/QMf8oekqrjR4ghXc44EDLyko9U= -github.com/openziti/foundation/v2 v2.0.46/go.mod h1:88UifYC+Ia6VBQkGgszao/ixi8ymRME0werGo3fI55g= -github.com/openziti/identity v1.0.78 h1:DqJT8W9HSv4GwtZDJp5oP9OgCL4yzbX6n7Nqf6AKhHU= -github.com/openziti/identity v1.0.78/go.mod h1:2dhNjJIFkGhzv+KrISGafbiZgKqZsz0ySu3jnzo7cLU= +github.com/openziti/foundation/v2 v2.0.47 h1:f2LM6FQOhHXJ9QMTpr4GAKq8qXspNG3EGczMjjyz7uc= +github.com/openziti/foundation/v2 v2.0.47/go.mod h1:pj5nPmVtAdF1QX+aRtALw69hxcsAzrWDpBUe+Zrc73Q= +github.com/openziti/identity v1.0.80 h1:3yzSLw4bSettFmi74nAywuZxPsb9siDQjhmsql/qzNU= +github.com/openziti/identity v1.0.80/go.mod h1:/UKDen2MOw2Kjs0WuKiBloIT2bPrV0jxLAo8eyVy0ic= github.com/openziti/jwks v1.0.3 h1:hf8wkb+Cg4nH/HM0KROFd7u+C3DkRVcFZJ7tDV+4icc= github.com/openziti/jwks v1.0.3/go.mod h1:t4xxq8vlXGsPn29kiQVnZBBDDnEoOFqtJoHibkJunQQ= -github.com/openziti/metrics v1.2.55 h1:g2uIYz7RwgfeGquGdRC+voKD1IvCbpgQtILkPtj6WwY= -github.com/openziti/metrics v1.2.55/go.mod h1:4MjPwits+NmsS50UFPzePF9b9lOiIrrXK/VNe0JHC/0= -github.com/openziti/runzmd v1.0.48 h1:7pw85xA2bRBwB0nLmex36Xyu0vd32aIWENKSwq5UdZg= -github.com/openziti/runzmd v1.0.48/go.mod h1:uCzydrGJf2+yqeyOO3MpHHX42lVUek/uMXyzRGL0smg= -github.com/openziti/sdk-golang v0.23.37 h1:r7bdmSpqv9y2sCS7p7I42kxAGEflp8pahPQsN9ZKAB0= -github.com/openziti/sdk-golang v0.23.37/go.mod h1:FYFDyzApbyuE6Q7W3uqL0RNWdw/PQZsrMT4zoxGY/04= -github.com/openziti/secretstream v0.1.20 h1:9KOgXkUddf9KHur+B805a8wP0J447AO6Pmtz+eanub0= -github.com/openziti/secretstream v0.1.20/go.mod h1:TteVDQqouIoZgkwZhfiVdbnPNP3m87ik7kg/l9ahXzI= -github.com/openziti/storage v0.2.42 h1:u5g/PtFhH0NFPD2Al/kHGHsJNXhkkhkJV+uu+y3TAuk= -github.com/openziti/storage v0.2.42/go.mod h1:FSU6WmVMFHB6Z1NVGx5yxWjrDQbYPNrDmPNTgVDgrcM= -github.com/openziti/transport/v2 v2.0.134 h1:wnZEESmP126I84pA8Aodqg6uhdNwtAG32AcJsmUiM+A= -github.com/openziti/transport/v2 v2.0.134/go.mod h1:Fw8CTXwkWgQTXHHBvXFwtQdkbjeXw7LHkI0BE8kQdGg= +github.com/openziti/metrics v1.2.56 h1:sOX5SCdK2Kx2vci+2PWIXDedbyRDUWylM3xJmmISiUs= +github.com/openziti/metrics v1.2.56/go.mod h1:nATuueUtFF5PDhwBwbq93g8sjpQZmf0yo2rySOnOUEY= +github.com/openziti/runzmd v1.0.49 h1:WAnHH/aNAuGTORtHq146P02e2ZuGQaiyjht13OpgllE= +github.com/openziti/runzmd v1.0.49/go.mod h1:sFSEo3SJOMPdE52WZ6OGHnFTuxS9NqcrGc3VYoR5qzA= +github.com/openziti/sdk-golang v0.23.38 h1:CqA+/YN5rBO5csjQef9Qs5pfrSxk5CqT7e1n8KDm2Wg= +github.com/openziti/sdk-golang v0.23.38/go.mod h1:ZRHgiWVOUpTk9LW2BuvIv8sQP3jPtBctGn9E1s5XoCQ= +github.com/openziti/secretstream v0.1.21 h1:r4xN8/CzSEvxZFFYGSztrlhMtIvk3B+SQcq2zgZ4Tb4= +github.com/openziti/secretstream v0.1.21/go.mod h1:1lfAnS8gBHsKZiPbRRK1sularbAsqizN6tWUEuZSfo0= +github.com/openziti/storage v0.2.45 h1:rCvQzWmGSmx6Ir2zUFO8H48klONGwZQfwFrfrEJuq9k= +github.com/openziti/storage v0.2.45/go.mod h1:v6KddQOjkQmKHnC7hIgFtcm4tdA8l8DbxYHQOIbRWa8= +github.com/openziti/transport/v2 v2.0.136 h1:FkF9DZx/kU9PPHKpz6mpxEqru0JOyCr8JfRReqDHfmk= +github.com/openziti/transport/v2 v2.0.136/go.mod h1:hnu2HvfQ3t7XvA3F9EfdHMGupFQrP38BtbRO7RHr8tA= github.com/openziti/x509-claims v1.0.3 h1:HNdQ8Nf1agB3lBs1gahcO6zfkeS4S5xoQ2/PkY4HRX0= github.com/openziti/x509-claims v1.0.3/go.mod h1:Z0WIpBm6c4ecrpRKrou6Gk2wrLWxJO/+tuUwKh8VewE= github.com/openziti/xweb/v2 v2.1.0 h1:Xhh3C2pZkq/Prr65V+SfFSibLDYteoc4f62KQCcTZF4= @@ -632,8 +629,8 @@ github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0Mw github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= github.com/pelletier/go-toml v1.9.3/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= -github.com/pelletier/go-toml/v2 v2.1.0 h1:FnwAJ4oYMvbT/34k9zzHuZNrhlz48GB3/s6at6/MHO4= -github.com/pelletier/go-toml/v2 v2.1.0/go.mod h1:tJU2Z3ZkXwnxa4DPO899bsyIoywizdUvyaeZurnPPDc= +github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= +github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= @@ -648,7 +645,6 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/posener/complete v1.1.1/go.mod h1:em0nMJCgc9GFtwrmVmEMR/ZL6WyhyjMBndrE9hABlRI= -github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 h1:o4JXh1EVt9k/+g42oCprj/FisM4qX9L3sZB3upGN2ZU= github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= github.com/prometheus/client_golang v0.8.0/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= @@ -703,8 +699,8 @@ github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6g github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= -github.com/shirou/gopsutil/v3 v3.24.4 h1:dEHgzZXt4LMNm+oYELpzl9YCqV65Yr/6SfrvgRBtXeU= -github.com/shirou/gopsutil/v3 v3.24.4/go.mod h1:lTd2mdiOspcqLgAnr9/nGi71NkeMpWKdmhuxm9GusH8= +github.com/shirou/gopsutil/v3 v3.24.5 h1:i0t8kL+kQTvpAYToeuiVk3TgDeKOFioZO3Ztz/iZ9pI= +github.com/shirou/gopsutil/v3 v3.24.5/go.mod h1:bsoOS1aStSs9ErQ1WWfxllSeS1K5D+U30r2NfcubMVk= github.com/shoenig/go-m1cpu v0.1.6 h1:nxdKQNcEB6vzgA2E2bvzKIYRuNj7XNJ4S/aRSwKzFtM= github.com/shoenig/go-m1cpu v0.1.6/go.mod h1:1JJMcUBvfNwpq05QDQVAnx3gUHr9IYF7GNg9SUEw2VQ= github.com/shoenig/test v0.6.4 h1:kVTaSd7WLz5WZ2IaoM0RSzRsUD+m8wRR+5qvntpn4LU= @@ -769,8 +765,8 @@ github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= github.com/spf13/viper v1.8.1/go.mod h1:o0Pch8wJ9BVSWGQMbra6iw0oQ5oktSIBaujf1rJH9Ns= -github.com/spf13/viper v1.18.2 h1:LUXCnvUvSM6FXAsj6nnfc8Q2tp1dIgUfY9Kc8GsSOiQ= -github.com/spf13/viper v1.18.2/go.mod h1:EKmWIqdnk5lOcmR72yw6hS+8OPYcwD0jteitLMVB+yk= +github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI= +github.com/spf13/viper v1.19.0/go.mod h1:GQUN9bilAbhU/jgc1bKs99f/suXKeUMct8Adx5+Ntkg= github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad/go.mod h1:qLr4V1qq6nMqFKkMo8ZTx3f+BZEkzsRUY10Xsm2mwU0= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= @@ -798,10 +794,8 @@ github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSW github.com/tarm/serial v0.0.0-20180830185346-98f6abe2eb07/go.mod h1:kDXzergiv9cbyO7IOYJZWg1U88JhDg3PB6klq9Hg2pA= github.com/teris-io/shortid v0.0.0-20201117134242-e59966efd125 h1:3SNcvBmEPE1YlB1JpVZouslJpI3GBNoiqW7+wb0Rz7w= github.com/teris-io/shortid v0.0.0-20201117134242-e59966efd125/go.mod h1:M8agBzgqHIhgj7wEn9/0hJUZcrvt9VY+Ln+S1I5Mha0= -github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI= github.com/tklauser/go-sysconf v0.3.14 h1:g5vzr9iPFFz24v2KZXs/pvpvh8/V9Fw6vQK5ZZb78yU= github.com/tklauser/go-sysconf v0.3.14/go.mod h1:1ym4lWMLUOhuBOPGtRcJm7tEGX4SCYNEEEtghGG/8uY= -github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY= github.com/tklauser/numcpus v0.8.0 h1:Mx4Wwe/FjZLeQsK/6kt2EOepwwSl7SmJrK5bV/dXYgY= github.com/tklauser/numcpus v0.8.0/go.mod h1:ZJZlAY+dmR4eut8epnzf0u/VwodKmryxR8txiloSqBE= github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= @@ -939,8 +933,8 @@ golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= -golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA= -golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.18.0 h1:5+9lSbEzPSdWkH32vYPBwEpX8KwDbM52Ud9xBUvNlb0= +golang.org/x/mod v0.18.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1010,8 +1004,8 @@ golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210402161424-2e8d93401602/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.20.0 h1:4mQdhULixXKP1rwYBW0vAijoXnkTG0BLCDRzfe1idMo= -golang.org/x/oauth2 v0.20.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= +golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/perf v0.0.0-20180704124530-6e6d33e29852/go.mod h1:JLpeXjPJfIyPr5TlbXLkXWLhP8nz10XfvxElABhCtcw= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -1105,9 +1099,7 @@ golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= @@ -1198,8 +1190,8 @@ golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0= golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= -golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg= -golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= +golang.org/x/tools v0.22.0 h1:gqSGLZqv+AI9lIQzniJ0nZDRG5GBPsSi+DRNHWNz6yA= +golang.org/x/tools v0.22.0/go.mod h1:aCwcsjqvq7Yqt6TNyX7QMU2enbQ/Gt0bo6krSeEri+c= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -1318,8 +1310,8 @@ google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGj google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg= -google.golang.org/protobuf v1.34.1/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/AlecAivazis/survey.v1 v1.8.8 h1:5UtTowJZTz1j7NxVzDGKTz6Lm9IWm8DDF6b7a2wq9VY= gopkg.in/AlecAivazis/survey.v1 v1.8.8/go.mod h1:CaHjv79TCgAvXMSFJSVgonHXYWxnhzI3eoHtnX5UgUo= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=