Commit Graph

2286 Commits

Author SHA1 Message Date
Ben McClelland
a152f29113 feat: option to host webui on s3 port
This adds the webui-s3-prefix option to specify a prefix and host
the webui on the same port as the s3 service. Like the health
endpoint, this will mask any bucket with the same name as the
webui prefix.

The benefit of hosting this on the same interface as the s3
service is no longer needing the CORS headers for the browser
access if the webui and s3 access are on the same IP:PORT.
2026-03-10 08:20:19 -07:00
Ben McClelland
aebe09182b Merge pull request #1943 from versity/ben/webui-prefix
feat: add option to change webui path prefix
2026-03-09 17:05:54 -07:00
Ben McClelland
9a3ccf68f3 feat: add option to change webui path prefix
New option webui-path-prefix that specifies a prefix for the
webui endpoint. The default is the old behavior at the root.
2026-03-09 16:45:16 -07:00
Ben McClelland
ea46d52715 Merge pull request #1942 from versity/ben/webui-template
feat: remove /api/gateways webserver endpoint
2026-03-09 16:37:37 -07:00
Ben McClelland
24a431af80 Merge pull request #1954 from versity/dependabot/go_modules/dev-dependencies-802d6cb15e
chore(deps): bump the dev-dependencies group with 25 updates
2026-03-09 16:37:13 -07:00
Ben McClelland
b4414b943b Merge pull request #1953 from versity/dependabot/github_actions/docker/metadata-action-6
chore(deps): bump docker/metadata-action from 5 to 6
2026-03-09 16:36:45 -07:00
Ben McClelland
e023f00923 feat: remove /api/gateways webserver endpoint
Refactor webui so that we have a template,
webui/web/js/config.js.tmpl, instead of the /api/gateways to
retrieve the gateways listing. This also restructures the
css theme into separate common files for easier maintenance.
2026-03-09 15:43:03 -07:00
dependabot[bot]
8351970c2d chore(deps): bump docker/metadata-action from 5 to 6
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 5 to 6.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:38:01 +00:00
Ben McClelland
a080840ba1 Merge pull request #1952 from versity/dependabot/github_actions/actions/checkout-6
chore(deps): bump actions/checkout from 4 to 6
2026-03-09 15:37:35 -07:00
Ben McClelland
e32d79591d Merge pull request #1951 from versity/dependabot/github_actions/docker/build-push-action-7
chore(deps): bump docker/build-push-action from 6 to 7
2026-03-09 15:37:14 -07:00
Ben McClelland
b573aeecc3 Merge pull request #1950 from versity/dependabot/github_actions/sigstore/cosign-installer-4.1.0
chore(deps): bump sigstore/cosign-installer from 4.0.0 to 4.1.0
2026-03-09 15:36:52 -07:00
Ben McClelland
a066966945 Merge pull request #1949 from versity/dependabot/github_actions/docker/setup-qemu-action-4
chore(deps): bump docker/setup-qemu-action from 3 to 4
2026-03-09 15:36:32 -07:00
dependabot[bot]
85b40a6514 chore(deps): bump the dev-dependencies group with 25 updates
Bumps the dev-dependencies group with 25 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/aws/aws-sdk-go-v2](https://github.com/aws/aws-sdk-go-v2) | `1.41.2` | `1.41.3` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.32.10` | `1.32.11` |
| [github.com/aws/aws-sdk-go-v2/credentials](https://github.com/aws/aws-sdk-go-v2) | `1.19.10` | `1.19.11` |
| [github.com/aws/aws-sdk-go-v2/feature/s3/transfermanager](https://github.com/aws/aws-sdk-go-v2) | `0.1.6` | `0.1.8` |
| [github.com/aws/aws-sdk-go-v2/service/s3](https://github.com/aws/aws-sdk-go-v2) | `1.96.2` | `1.96.4` |
| [golang.org/x/sync](https://github.com/golang/sync) | `0.19.0` | `0.20.0` |
| [golang.org/x/sys](https://github.com/golang/sys) | `0.41.0` | `0.42.0` |
| [github.com/AzureAD/microsoft-authentication-library-for-go](https://github.com/AzureAD/microsoft-authentication-library-for-go) | `1.6.0` | `1.7.0` |
| [github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream](https://github.com/aws/aws-sdk-go-v2) | `1.7.5` | `1.7.6` |
| [github.com/aws/aws-sdk-go-v2/feature/ec2/imds](https://github.com/aws/aws-sdk-go-v2) | `1.18.18` | `1.18.19` |
| [github.com/aws/aws-sdk-go-v2/internal/configsources](https://github.com/aws/aws-sdk-go-v2) | `1.4.18` | `1.4.19` |
| [github.com/aws/aws-sdk-go-v2/internal/endpoints/v2](https://github.com/aws/aws-sdk-go-v2) | `2.7.18` | `2.7.19` |
| [github.com/aws/aws-sdk-go-v2/internal/ini](https://github.com/aws/aws-sdk-go-v2) | `1.8.4` | `1.8.5` |
| [github.com/aws/aws-sdk-go-v2/internal/v4a](https://github.com/aws/aws-sdk-go-v2) | `1.4.18` | `1.4.20` |
| [github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding](https://github.com/aws/aws-sdk-go-v2) | `1.13.5` | `1.13.6` |
| [github.com/aws/aws-sdk-go-v2/service/internal/checksum](https://github.com/aws/aws-sdk-go-v2) | `1.9.10` | `1.9.11` |
| [github.com/aws/aws-sdk-go-v2/service/internal/presigned-url](https://github.com/aws/aws-sdk-go-v2) | `1.13.18` | `1.13.19` |
| [github.com/aws/aws-sdk-go-v2/service/internal/s3shared](https://github.com/aws/aws-sdk-go-v2) | `1.19.18` | `1.19.19` |
| [github.com/aws/aws-sdk-go-v2/service/signin](https://github.com/aws/aws-sdk-go-v2) | `1.0.6` | `1.0.7` |
| [github.com/aws/aws-sdk-go-v2/service/sso](https://github.com/aws/aws-sdk-go-v2) | `1.30.11` | `1.30.12` |
| [github.com/aws/aws-sdk-go-v2/service/ssooidc](https://github.com/aws/aws-sdk-go-v2) | `1.35.15` | `1.35.16` |
| [github.com/aws/aws-sdk-go-v2/service/sts](https://github.com/aws/aws-sdk-go-v2) | `1.41.7` | `1.41.8` |
| [github.com/mattn/go-runewidth](https://github.com/mattn/go-runewidth) | `0.0.20` | `0.0.21` |
| [github.com/pierrec/lz4/v4](https://github.com/pierrec/lz4) | `4.1.25` | `4.1.26` |
| [golang.org/x/time](https://github.com/golang/time) | `0.14.0` | `0.15.0` |


Updates `github.com/aws/aws-sdk-go-v2` from 1.41.2 to 1.41.3
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/v1.41.2...v1.41.3)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.32.10 to 1.32.11
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.32.10...config/v1.32.11)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.19.10 to 1.19.11
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/iam/v1.19.10...credentials/v1.19.11)

Updates `github.com/aws/aws-sdk-go-v2/feature/s3/transfermanager` from 0.1.6 to 0.1.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/feature/s3/transfermanager/v0.1.6...feature/s3/transfermanager/v0.1.8)

Updates `github.com/aws/aws-sdk-go-v2/service/s3` from 1.96.2 to 1.96.4
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/s3/v1.96.2...service/s3/v1.96.4)

Updates `golang.org/x/sync` from 0.19.0 to 0.20.0
- [Commits](https://github.com/golang/sync/compare/v0.19.0...v0.20.0)

Updates `golang.org/x/sys` from 0.41.0 to 0.42.0
- [Commits](https://github.com/golang/sys/compare/v0.41.0...v0.42.0)

Updates `github.com/AzureAD/microsoft-authentication-library-for-go` from 1.6.0 to 1.7.0
- [Release notes](https://github.com/AzureAD/microsoft-authentication-library-for-go/releases)
- [Changelog](https://github.com/AzureAD/microsoft-authentication-library-for-go/blob/main/changelog.md)
- [Commits](https://github.com/AzureAD/microsoft-authentication-library-for-go/compare/v1.6.0...v1.7.0)

Updates `github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream` from 1.7.5 to 1.7.6
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/m2/v1.7.5...service/m2/v1.7.6)

Updates `github.com/aws/aws-sdk-go-v2/feature/ec2/imds` from 1.18.18 to 1.18.19
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/config/v1.18.18...config/v1.18.19)

Updates `github.com/aws/aws-sdk-go-v2/internal/configsources` from 1.4.18 to 1.4.19
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/internal/v4a/v1.4.18...internal/v4a/v1.4.19)

Updates `github.com/aws/aws-sdk-go-v2/internal/endpoints/v2` from 2.7.18 to 2.7.19
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/internal/endpoints/v2.7.18...internal/endpoints/v2.7.19)

Updates `github.com/aws/aws-sdk-go-v2/internal/ini` from 1.8.4 to 1.8.5
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/drs/v1.8.4...service/tnb/v1.8.5)

Updates `github.com/aws/aws-sdk-go-v2/internal/v4a` from 1.4.18 to 1.4.20
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/internal/v4a/v1.4.18...internal/v4a/v1.4.20)

Updates `github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding` from 1.13.5 to 1.13.6
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/mq/v1.13.5...service/mq/v1.13.6)

Updates `github.com/aws/aws-sdk-go-v2/service/internal/checksum` from 1.9.10 to 1.9.11
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/grafana/v1.9.10...service/grafana/v1.9.11)

Updates `github.com/aws/aws-sdk-go-v2/service/internal/presigned-url` from 1.13.18 to 1.13.19
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/mq/v1.13.18...credentials/v1.13.19)

Updates `github.com/aws/aws-sdk-go-v2/service/internal/s3shared` from 1.19.18 to 1.19.19
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/docdb/v1.19.18...service/codebuild/v1.19.19)

Updates `github.com/aws/aws-sdk-go-v2/service/signin` from 1.0.6 to 1.0.7
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/m2/v1.0.6...service/m2/v1.0.7)

Updates `github.com/aws/aws-sdk-go-v2/service/sso` from 1.30.11 to 1.30.12
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/acm/v1.30.11...service/acm/v1.30.12)

Updates `github.com/aws/aws-sdk-go-v2/service/ssooidc` from 1.35.15 to 1.35.16
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/pi/v1.35.15...service/pi/v1.35.16)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.41.7 to 1.41.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Commits](https://github.com/aws/aws-sdk-go-v2/compare/service/sts/v1.41.7...service/ecs/v1.41.8)

Updates `github.com/mattn/go-runewidth` from 0.0.20 to 0.0.21
- [Commits](https://github.com/mattn/go-runewidth/compare/v0.0.20...v0.0.21)

Updates `github.com/pierrec/lz4/v4` from 4.1.25 to 4.1.26
- [Release notes](https://github.com/pierrec/lz4/releases)
- [Commits](https://github.com/pierrec/lz4/compare/v4.1.25...v4.1.26)

Updates `golang.org/x/time` from 0.14.0 to 0.15.0
- [Commits](https://github.com/golang/time/compare/v0.14.0...v0.15.0)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go-v2
  dependency-version: 1.41.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.32.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-version: 1.19.11
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/s3/transfermanager
  dependency-version: 0.1.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/s3
  dependency-version: 1.96.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/sync
  dependency-version: 0.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/sys
  dependency-version: 0.42.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/AzureAD/microsoft-authentication-library-for-go
  dependency-version: 1.7.0
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream
  dependency-version: 1.7.6
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/ec2/imds
  dependency-version: 1.18.19
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/internal/configsources
  dependency-version: 1.4.19
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/internal/endpoints/v2
  dependency-version: 2.7.19
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/internal/ini
  dependency-version: 1.8.5
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/internal/v4a
  dependency-version: 1.4.20
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding
  dependency-version: 1.13.6
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/internal/checksum
  dependency-version: 1.9.11
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/internal/presigned-url
  dependency-version: 1.13.19
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/internal/s3shared
  dependency-version: 1.19.19
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/signin
  dependency-version: 1.0.7
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sso
  dependency-version: 1.30.12
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/ssooidc
  dependency-version: 1.35.16
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-version: 1.41.8
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/mattn/go-runewidth
  dependency-version: 0.0.21
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/pierrec/lz4/v4
  dependency-version: 4.1.26
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/time
  dependency-version: 0.15.0
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:19:16 +00:00
dependabot[bot]
464a82d117 chore(deps): bump actions/checkout from 4 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [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/v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:01:49 +00:00
dependabot[bot]
d4c0e6b743 chore(deps): bump docker/build-push-action from 6 to 7
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6 to 7.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6...v7)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:01:32 +00:00
dependabot[bot]
d2152b0c7a chore(deps): bump sigstore/cosign-installer from 4.0.0 to 4.1.0
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](https://github.com/sigstore/cosign-installer/compare/v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:01:28 +00:00
dependabot[bot]
b27e42b2ee chore(deps): bump docker/setup-qemu-action from 3 to 4
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:01:25 +00:00
Ben McClelland
5f9e62dd04 Merge pull request #1933 from versity/ben/noop-plugin
feat: noop plugin for gateway load testing
2026-03-09 11:17:02 -07:00
Ben McClelland
b220eeb27d Merge pull request #1946 from versity/ben/helm-lint-action
chore: add helm lint to pr tests
2026-03-09 09:23:09 -07:00
Ben McClelland
73730d9f6d feat: noop plugin for gateway load testing
This adds an example plugin that can be useful for benchmarking
the gateway frontend without adding any storage I/O on the
backend. This can also be a useful template for developers
looking to implement a new plugin for the gateway.

Also add a build verification to the go workflow for every plugin
in the plugins directory.
2026-03-09 09:08:49 -07:00
Ben McClelland
c3add18215 Merge pull request #1932 from versity/ben/uds-listener
feat: add unix domain socket listener support to port option
2026-03-09 09:06:47 -07:00
Ben McClelland
ff873ce18f Merge pull request #1947 from aclerici38/fix-login
fix(chart): use docker login for helm and cosign
2026-03-09 09:06:24 -07:00
Ben McClelland
7f9c943b8e chore: add helm lint to pr tests 2026-03-09 08:21:34 -07:00
Anthony Clerici
53ce309719 fix(chart): use docker login for helm and cosign 2026-03-09 00:03:30 -07:00
Ben McClelland
710003f341 feat: add unix domain socket listener support to port option
This adds the ability to specify unix domain socket paths for the
service listener with the --port <path> option. Where <path> can
be either a path to a file in a filesystem or prefixed with @ for
an abstract socket name.

Anything not matching the <host>:<port> pattern in the --port
option will be considered a socket filename.
2026-03-07 22:05:41 -08:00
Ben McClelland
dde4cac1fa Merge pull request #1944 from aclerici38/cosign-version 2026-03-07 16:44:35 -08:00
Anthony Clerici
604848b0f3 fix(chart): fix cosign-installer tag 2026-03-07 12:51:21 -08:00
Ben McClelland
204d349110 Merge pull request #1941 from aclerici38/fix-routes 2026-03-06 22:23:04 -08:00
Anthony Clerici
b15470732d fix(chart): fix multidoc separator when 2 routes are enabled 2026-03-06 21:21:49 -08:00
Ben McClelland
dbc3e23eb3 Merge pull request #1940 from aclerici38/fix-cosign
fix(chart): replace buggy chart-releaser action
2026-03-06 13:59:22 -08:00
Ben McClelland
6c79f26625 Merge pull request #1931 from versity/sis/object-metadata-limits
fix: add request headers and metadata headers limit
2026-03-06 13:17:14 -08:00
Anthony Clerici
47af907203 fix(chart): replace buggy chart-releaser action 2026-03-06 12:52:27 -08:00
Ben McClelland
e435f3a495 Merge pull request #1938 from versity/ben/systemd
fix: update deprecated StandardOutput/StandardError type
2026-03-06 11:37:02 -08:00
niksis02
21a636b3b5 fix: add request headers and metadata headers limit
Fixes #1606

According to AWS documentation:
> *“The PUT request header is limited to 8 KB in size. Within the PUT request header, the user-defined metadata is limited to 2 KB in size. The size of user-defined metadata is measured by taking the sum of the number of bytes in the UTF-8 encoding of each key and value.”*

Based on this, object metadata size is now limited to **2 KB** for all object upload operations (`PutObject`, `CopyObject`, and `CreateMultipartUpload`).

Fixes handling of metadata HTTP headers when the same header appears multiple times with different casing or even if they are identical. According to S3 behavior, these headers must be merged into a single lower-cased metadata key, with values concatenated using commas.

Example:

```
x-amz-meta-Key: value1
x-amz-meta-kEy: value2
x-amz-meta-keY: value3
```

Translated to:

```
key: value1,value2,value3
```

This PR also introduces an **8 KB limit for request headers**. Although the S3 documentation explicitly mentions the 8 KB limit only for **PUT requests**, in practice this limit applies to **all requests**.

To enforce the header size limit, the Fiber configuration option `ReadBufferSize` is used. This parameter defines the maximum number of bytes read when parsing an incoming request. Note that this limit does not apply strictly to request headers only, since request parsing also includes other parts of the request line (e.g., the HTTP method, protocol string, and version such as `HTTP/1.1`). So `ReadBufferSize` is effectively a limit for request headers size, but not the exact limit.
2026-03-06 23:25:49 +04:00
Ben McClelland
92db3b6f26 Merge pull request #1939 from jacksgt/fix-helm-chart-updates
feat(chart): enable persistence by default, discuss more in README
2026-03-06 09:30:05 -08:00
Ben McClelland
310139d57b Merge pull request #1936 from aclerici38/chart/cosign
feat(chart): add cosign signing to chart OCI artifact
2026-03-06 09:29:07 -08:00
Ben McClelland
f3bb1acd3b Merge pull request #1935 from aclerici38/route
feat(chart): add HTTPRoute configuration
2026-03-06 09:28:21 -08:00
Ben McClelland
fbff3f6365 fix: update deprecated StandardOutput/StandardError type
Fix warnings from newer systemd:
Standard output type syslog is obsolete,
 automatically updating to journal.

This updates the stdout/stderr to journal output type which is
what is getting set anyways after the syslog type has been
deprecated.

No expected behavior change with this other than quieting
warnings.
2026-03-06 08:39:26 -08:00
Jack Henschel
b47ef4e05d feat(chart): enable persistence by default, discuss more in README 2026-03-06 17:35:00 +01:00
Anthony Clerici
db956fb477 feat: add cosign signing to chart OCI artifact 2026-03-06 02:55:23 -08:00
Anthony Clerici
3b76df1917 chore: consistent comments 2026-03-06 02:24:47 -08:00
Anthony Clerici
baf5cbf1d2 feat(chart): add HTTPRoute configuration 2026-03-06 02:13:11 -08:00
Ben McClelland
0f92d0ef4f Merge pull request #1916 from versity/ben/azure-test-falures
azure test failure fixes
2026-03-05 17:07:41 -08:00
Ben McClelland
bcb7bc5f9a Merge pull request #1922 from versity/test/update_remove_some_utils
test: some util file updates, changes, removals
2026-03-05 17:07:25 -08:00
Ben McClelland
6281391bb9 Merge pull request #1920 from versity/sis/posix-object-metadata
fix: change the way object metadata is stored in posix
2026-03-05 17:07:05 -08:00
Ben McClelland
570723a5d9 Merge pull request #1924 from jacksgt/feat-helm-chart
feat: add Helm chart for versitygw
2026-03-05 14:08:27 -08:00
niksis02
97bb70509f fix: change the way object metadata is stored in posix
Fixes #1909

Previously, the mapping between object metadata and posix object was as follows: for each metadata key, we stored a separate xattr with the `user.X-Amz-Meta.<key>` prefix. This resulted in syscall overhead when storing and deleting large numbers of metadata keys.
In addition, very long metadata keys caused failures because most posix filesystems limit xattr key lengths to 127–255 bytes, while S3 does not enforce such a per-key limit.

The logic has now been changed so that all object metadata is stored in a single xattr, `user.metadata`, as a JSON key/value object. For backward compatibility, metadata GET operations still fall back to the old mechanism (`metadata key -> xattr key`) when `user.metadata` is not present.

A new CLI utility has been added to convert all legacy object metadata to the new metadata format within the provided directory.

**Example usage:**

```
versitygw utils convert-xattr-metadata path/to/bucket
```

or

```
versitygw utils cxm path/to/bucket
```

It is recommended to run this command on bucket directories to convert all legacy metadata for every object in the bucket.
2026-03-06 01:44:14 +04:00
Ben McClelland
1595d2cf7f Merge pull request #1929 from versity/ben/webui-policy
fix: webui pass correct arguments to request() in putBucketPolicy
2026-03-04 18:49:06 -08:00
Ben McClelland
11f3f53bd3 Merge pull request #1927 from versity/ben/webui-ipv6
fix: bracket IPv6 addresses in auto-detected webui gateway URLs
2026-03-04 18:48:53 -08:00
Jack Henschel
af1a99c4dc feat: add Helm chart for versitygw 2026-03-04 21:02:33 +01:00