Directories
¶
| Path | Synopsis |
|---|---|
|
client
Package client provides the `hilt client` command tree: UCAN invocations against a running Hilt service.
|
Package client provides the `hilt client` command tree: UCAN invocations against a running Hilt service. |
|
client/admin
Package admin provides the `hilt client admin` command tree.
|
Package admin provides the `hilt client admin` command tree. |
|
client/admin/provider
Package provider provides the `hilt client admin provider` command tree.
|
Package provider provides the `hilt client admin provider` command tree. |
|
client/lib
Package lib holds shared helpers for the `hilt client` command tree.
|
Package lib holds shared helpers for the `hilt client` command tree. |
|
Package integration contains an end-to-end test harness that stands up a real Hilt in-process alongside mocks of the services it talks to — a management console (REST), the Ingot S3 gateway (UCAN RPC), and the Sprue upload service (UCAN RPC) plus a mock did:plc directory — so the REST and RPC APIs can be exercised together with the real AWS S3 SDK.
|
Package integration contains an end-to-end test harness that stands up a real Hilt in-process alongside mocks of the services it talks to — a management console (REST), the Ingot S3 gateway (UCAN RPC), and the Sprue upload service (UCAN RPC) plus a mock did:plc directory — so the REST and RPC APIs can be exercised together with the real AWS S3 SDK. |
|
internal
|
|
|
pkg
|
|
|
api
Package api defines the HTTP handlers for the Hilt tenant management API (the fil-one service orchestrator "Tenant API").
|
Package api defines the HTTP handlers for the Hilt tenant management API (the fil-one service orchestrator "Tenant API"). |
|
api/service/accesskey
Package accesskey provides the S3 access-key business logic for the REST API: creation (key-pair generation + tenant→access-key delegation issuance), listing, retrieval, and revocation.
|
Package accesskey provides the S3 access-key business logic for the REST API: creation (key-pair generation + tenant→access-key delegation issuance), listing, retrieval, and revocation. |
|
api/service/tenant
Package tenant provides the tenant-management business logic for the REST API: provisioning (did:plc key generation + PLC publication + upload-service registration), status updates, and deletion (with cascade + DID deactivation).
|
Package tenant provides the tenant-management business logic for the REST API: provisioning (did:plc key generation + PLC publication + upload-service registration), status updates, and deletion (with cascade + DID deactivation). |
|
client/management
Package management provides a REST client for Hilt's tenant and access-key management API (the handlers in pkg/api).
|
Package management provides a REST client for Hilt's tenant and access-key management API (the handlers in pkg/api). |
|
commands/admin/provider
Package provider defines the /admin/provider/* UCAN commands.
|
Package provider defines the /admin/provider/* UCAN commands. |
|
commands/admin/provider/gen
command
|
|
|
config
Package config loads hilt service configuration from a config file, environment variables (HILT_ prefix), and built-in defaults.
|
Package config loads hilt service configuration from a config file, environment variables (HILT_ prefix), and built-in defaults. |
|
fx/store/memory
Package memory wires the in-memory store implementations into the application via uber-go/fx.
|
Package memory wires the in-memory store implementations into the application via uber-go/fx. |
|
fx/store/postgres
Package postgres wires the Postgres-backed store implementations into the application via uber-go/fx.
|
Package postgres wires the Postgres-backed store implementations into the application via uber-go/fx. |
|
fx/vault/hashicorp
Package hashicorp wires the HashiCorp Vault-backed vault implementation into the application via uber-go/fx.
|
Package hashicorp wires the HashiCorp Vault-backed vault implementation into the application via uber-go/fx. |
|
fx/vault/memory
Package memory wires the in-memory vault implementation into the application via uber-go/fx.
|
Package memory wires the in-memory vault implementation into the application via uber-go/fx. |
|
migrations
Package migrations embeds the hilt Postgres migrations and exposes a runner that applies them via goose.
|
Package migrations embeds the hilt Postgres migrations and exposes a runner that applies them via goose. |
|
rpc
Package rpc implements the Hilt UCAN RPC API — the S3 commands Ingot invokes on Hilt (see the Forge S3 tenant-management RFC).
|
Package rpc implements the Hilt UCAN RPC API — the S3 commands Ingot invokes on Hilt (see the Forge S3 tenant-management RFC). |
|
rpc/service/auth
Package auth provides the request authorization service for the Hilt UCAN RPC handlers: it authenticates SigV4/SigV4a signatures, resolves the access key and tenant, and enforces the provider/region constraints shared by every S3 command.
|
Package auth provides the request authorization service for the Hilt UCAN RPC handlers: it authenticates SigV4/SigV4a signatures, resolves the access key and tenant, and enforces the provider/region constraints shared by every S3 command. |
|
rpc/service/bucket
Package bucket provides the S3 bucket business logic for the UCAN RPC API: create (authenticate + create the bucket, its bucket→tenant root delegation, and Sprue space, returning the access key's proof chains), delete (verify empty via Sprue, then tear down), list, and info (a lookup returning proof chains).
|
Package bucket provides the S3 bucket business logic for the UCAN RPC API: create (authenticate + create the bucket, its bucket→tenant root delegation, and Sprue space, returning the access key's proof chains), delete (verify empty via Sprue, then tear down), list, and info (a lookup returning proof chains). |
|
s3perm
Package s3perm maps S3 permission strings (e.g.
|
Package s3perm maps S3 permission strings (e.g. |
|
sigv4
Package sigv4 verifies AWS S3 request signatures for the two schemes the Forge S3 gateway uses: AWS4-HMAC-SHA256 (SigV4) and AWS4-ECDSA-P256-SHA256 (SigV4a).
|
Package sigv4 verifies AWS S3 request signatures for the two schemes the Forge S3 gateway uses: AWS4-HMAC-SHA256 (SigV4) and AWS4-ECDSA-P256-SHA256 (SigV4a). |
|
store/accesskey/postgres
Package postgres provides a PostgreSQL-backed implementation of accesskey.Store.
|
Package postgres provides a PostgreSQL-backed implementation of accesskey.Store. |
|
store/bucket/postgres
Package postgres provides a PostgreSQL-backed implementation of bucket.Store.
|
Package postgres provides a PostgreSQL-backed implementation of bucket.Store. |
|
store/delegation/postgres
Package postgres provides a PostgreSQL-backed implementation of delegation.Store.
|
Package postgres provides a PostgreSQL-backed implementation of delegation.Store. |
|
store/provider/postgres
Package postgres provides a PostgreSQL-backed implementation of provider.Store.
|
Package postgres provides a PostgreSQL-backed implementation of provider.Store. |
|
store/tenant/postgres
Package postgres provides a PostgreSQL-backed implementation of tenant.Store.
|
Package postgres provides a PostgreSQL-backed implementation of tenant.Store. |
|
vault
Package vault defines a KMS-agnostic interface for storing the private key material Hilt manages (tenant keys, bucket keys, S3 access keys).
|
Package vault defines a KMS-agnostic interface for storing the private key material Hilt manages (tenant keys, bucket keys, S3 access keys). |
|
vault/hashicorp
Package hashicorp provides a HashiCorp Vault (KV v2) backed implementation of vault.Vault, using github.com/hashicorp/vault-client-go.
|
Package hashicorp provides a HashiCorp Vault (KV v2) backed implementation of vault.Vault, using github.com/hashicorp/vault-client-go. |
|
vault/memory
Package memory provides an in-memory implementation of vault.Vault.
|
Package memory provides an in-memory implementation of vault.Vault. |
Click to show internal directories.
Click to hide internal directories.