initial json 1.1 support
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
f21ce40186
commit
5c29120a44
|
@ -101,7 +101,8 @@ TODO List:
|
||||||
(new 2021-05-29. I will proceed in this order unless I get other requests)
|
(new 2021-05-29. I will proceed in this order unless I get other requests)
|
||||||
* ✓ Implement [AWS query protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-query-protocol.html). This is the protocol in use by sts.getcalleridentity. Total service count 18
|
* ✓ Implement [AWS query protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-query-protocol.html). This is the protocol in use by sts.getcalleridentity. Total service count 18
|
||||||
* ✓ Implement [AWS Json 1.0 protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-json-1_0-protocol.html). Includes dynamodb. Total service count 18
|
* ✓ Implement [AWS Json 1.0 protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-json-1_0-protocol.html). Includes dynamodb. Total service count 18
|
||||||
* Implement [AWS Json 1.1 protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-json-1_1-protocol.html). Includes ecs. Total service count 105
|
* ✓ Implement [AWS Json 1.1 protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-json-1_1-protocol.html). Includes ecs. Total service count 105
|
||||||
|
* Implement [AWS Rest Json 1 protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-restjson1-protocol.html). Includes lambda. Total service count 127
|
||||||
* Implement [AWS restXml protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-restxml-protocol.html). Includes S3. Total service count 4. This may be blocked due to the same issue as EC2.
|
* Implement [AWS restXml protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-restxml-protocol.html). Includes S3. Total service count 4. This may be blocked due to the same issue as EC2.
|
||||||
* Implement [AWS EC2 query protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-ec2-query-protocol.html). Includes EC2. Total service count 1. This is currently blocked, probably on self-hosted compiler coming in zig 0.9.0 (January 2022) due to compiler bug discovered. More details and llvm ir log can be found in the [XML branch](https://git.lerch.org/lobo/aws-sdk-for-zig/src/branch/xml).
|
* Implement [AWS EC2 query protocol](https://awslabs.github.io/smithy/1.0/spec/aws/aws-ec2-query-protocol.html). Includes EC2. Total service count 1. This is currently blocked, probably on self-hosted compiler coming in zig 0.9.0 (January 2022) due to compiler bug discovered. More details and llvm ir log can be found in the [XML branch](https://git.lerch.org/lobo/aws-sdk-for-zig/src/branch/xml).
|
||||||
|
|
||||||
|
|
19
src/main.zig
19
src/main.zig
|
@ -29,6 +29,8 @@ const Tests = enum {
|
||||||
ec2_query_no_input,
|
ec2_query_no_input,
|
||||||
json_1_0_query_with_input,
|
json_1_0_query_with_input,
|
||||||
json_1_0_query_no_input,
|
json_1_0_query_no_input,
|
||||||
|
json_1_1_query_with_input,
|
||||||
|
json_1_1_query_no_input,
|
||||||
};
|
};
|
||||||
|
|
||||||
pub fn main() anyerror!void {
|
pub fn main() anyerror!void {
|
||||||
|
@ -67,7 +69,7 @@ pub fn main() anyerror!void {
|
||||||
var client = aws.Aws.init(allocator);
|
var client = aws.Aws.init(allocator);
|
||||||
defer client.deinit();
|
defer client.deinit();
|
||||||
|
|
||||||
const services = aws.Services(.{ .sts, .ec2, .dynamo_db }){};
|
const services = aws.Services(.{ .sts, .ec2, .dynamo_db, .ecs }){};
|
||||||
|
|
||||||
for (tests.items) |t| {
|
for (tests.items) |t| {
|
||||||
std.log.info("===== Start Test: {s} =====", .{@tagName(t)});
|
std.log.info("===== Start Test: {s} =====", .{@tagName(t)});
|
||||||
|
@ -89,7 +91,6 @@ pub fn main() anyerror!void {
|
||||||
std.log.info("access key: {s}", .{access.response.credentials.?.access_key_id});
|
std.log.info("access key: {s}", .{access.response.credentials.?.access_key_id});
|
||||||
},
|
},
|
||||||
.json_1_0_query_with_input => {
|
.json_1_0_query_with_input => {
|
||||||
// TODO: Find test without sensitive info
|
|
||||||
const tables = try client.call(services.dynamo_db.list_tables.Request{
|
const tables = try client.call(services.dynamo_db.list_tables.Request{
|
||||||
.limit = 1,
|
.limit = 1,
|
||||||
}, options);
|
}, options);
|
||||||
|
@ -102,6 +103,20 @@ pub fn main() anyerror!void {
|
||||||
defer limits.deinit();
|
defer limits.deinit();
|
||||||
std.log.info("account read capacity limit: {d}", .{limits.response.account_max_read_capacity_units});
|
std.log.info("account read capacity limit: {d}", .{limits.response.account_max_read_capacity_units});
|
||||||
},
|
},
|
||||||
|
.json_1_1_query_with_input => {
|
||||||
|
const clusters = try client.call(services.ecs.list_clusters.Request{
|
||||||
|
.max_results = 1,
|
||||||
|
}, options);
|
||||||
|
defer clusters.deinit();
|
||||||
|
std.log.info("request id: {s}", .{clusters.response_metadata.request_id});
|
||||||
|
std.log.info("account has clusters: {b}", .{clusters.response.cluster_arns.?.len > 0});
|
||||||
|
},
|
||||||
|
.json_1_1_query_no_input => {
|
||||||
|
const clusters = try client.call(services.ecs.list_clusters.Request{}, options);
|
||||||
|
defer clusters.deinit();
|
||||||
|
std.log.info("request id: {s}", .{clusters.response_metadata.request_id});
|
||||||
|
std.log.info("account has clusters: {b}", .{clusters.response.cluster_arns.?.len > 0});
|
||||||
|
},
|
||||||
.ec2_query_no_input => {
|
.ec2_query_no_input => {
|
||||||
std.log.err("EC2 Test disabled due to compiler bug", .{});
|
std.log.err("EC2 Test disabled due to compiler bug", .{});
|
||||||
// const instances = try client.call(services.ec2.describe_instances.Request{}, options);
|
// const instances = try client.call(services.ec2.describe_instances.Request{}, options);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user