Expand description
Amazon Managed Blockchain (managedblockchain) restJson1 control plane for
fakecloud.
The full 27-operation Amazon Managed Blockchain Smithy model. Managed
Blockchain signs SigV4 with the managedblockchain scope and speaks
restJson1; every operation is a RESTful <METHOD> /... route with path
labels (e.g. POST /networks, GET /networks/{NetworkId}/members/{MemberId}),
so requests are routed by their HTTP method + @http URI template.
This is real, persisted, account-partitioned control-plane state, not a set of stubs:
- Networks.
CreateNetworkmints an-...id + ARN and stores the name, description, framework (HYPERLEDGER_FABRIC/ETHEREUM), framework version, framework configuration and voting policy. For Hyperledger Fabric it atomically creates the requested first member (m-...), returning bothNetworkIdandMemberId; the network isAVAILABLE.GetNetwork/ListNetworks(filtered by name/framework/status, paginated) round-trip. - Members. Full CRUD of
m-...members, each with Fabric framework attributes (CA endpoint + admin username) and a log-publishing config;CREATINGsettles toAVAILABLEon read,DeleteMemberflips toDELETED. - Nodes. Full CRUD of
nd-...nodes carrying instance type, availability zone, state DB and deterministically-derived framework endpoints (Fabric peer / Ethereum HTTP + WebSocket);CREATINGsettles toAVAILABLE. - Proposals + voting.
CreateProposalmintsp-..., stores the invite / removal actions, setsIN_PROGRESSand an expiration derived from the network’sProposalDurationInHours.VoteOnProposalrecords aYES/NOvote per member; when the voting policy threshold is met the proposal becomesAPPROVED(materialising each invitation into a realInvitationin the invited principal’s account, and applying removals) orREJECTED.ListProposalVotesreturns the recorded votes. - Invitations.
ListInvitationsreturns pending invitations for the account;RejectInvitationflips one toREJECTED. - Accessors.
CreateAccessormints a UUID accessor id + billing token + ARN (BILLING_TOKEN,AVAILABLE); full CRUD. - Tagging. ARN-keyed
TagResource/UntagResource/ListTagsForResource.
Model-driven validation rejects contract violations with the codes each
operation declares (InvalidRequestException, ResourceNotFoundException,
IllegalActionException).
Honest gap (documented, not stubbed): Managed Blockchain does not run a real Hyperledger Fabric or Ethereum network. fakecloud mirrors this: the ordering-service / CA / peer / JSON-RPC endpoints it returns are well-formed, deterministic URLs derived from the resource ids, but they point at no live chain – there is no orderer, CA, peer, or Ethereum RPC listening behind them. The entire control plane (networks, members, nodes, proposals, votes, invitations, accessors, tags) is real, account-partitioned and persisted; only the blockchain data plane those endpoints would front is absent.
Re-exports§
pub use service::ManagedBlockchainService;pub use service::MANAGEDBLOCKCHAIN_ACTIONS;pub use state::ManagedBlockchainData;pub use state::ManagedBlockchainSnapshot;pub use state::MANAGEDBLOCKCHAIN_SNAPSHOT_SCHEMA_VERSION;
Modules§
- persistence
- Snapshot save/load for Amazon Managed Blockchain state.
- service
- Amazon Managed Blockchain (
managedblockchain) restJson1 dispatch + handlers. - shared
- Primitives shared across the Amazon Managed Blockchain (
managedblockchain) handlers: resource-id minting, ARN synthesis, deterministic framework endpoint derivation and timestamps. Kept in one place so the create / get paths cannot diverge on wire format. - state
- Account-partitioned, serializable state for Amazon Managed Blockchain
(
managedblockchain).