Directories
¶
| Path | Synopsis |
|---|---|
|
client
Package client provides the `hilt client` command tree: UCAN invocations and partner Tenant REST API calls against a running Hilt service.
|
Package client provides the `hilt client` command tree: UCAN invocations and partner Tenant REST API calls against a running Hilt service. |
|
client/accesskey
Package accesskey provides the `hilt client access-key` command tree: partner operations on a tenant's access keys via the Tenant REST API, authenticated with the partner key from config (auth.partner_key) or the HILT_PARTNER_KEY env var.
|
Package accesskey provides the `hilt client access-key` command tree: partner operations on a tenant's access keys via the Tenant REST API, authenticated with the partner key from config (auth.partner_key) or the HILT_PARTNER_KEY env var. |
|
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. |
|
client/tenant
Package tenant provides the `hilt client tenant` command tree: partner operations on the Tenant REST API, authenticated with the partner key from config (auth.partner_key) or the HILT_PARTNER_KEY env var.
|
Package tenant provides the `hilt client tenant` command tree: partner operations on the Tenant REST API, authenticated with the partner key from config (auth.partner_key) or the HILT_PARTNER_KEY env var. |
|
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). |
|
build
Package build provides the version and build metadata for the running binary, set with ldflags at build time and falling back to version.json and the VCS revision embedded by the compiler for development builds.
|
Package build provides the version and build metadata for the running binary, set with ldflags at build time and falling back to version.json and the VCS revision embedded by the compiler for development builds. |
|
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.