From a91c0c1a3c21bdd5a5719fb861aba3b9aed60da0 Mon Sep 17 00:00:00 2001 From: Gyuho Lee Date: Fri, 4 Dec 2020 13:06:25 -0800 Subject: [PATCH 01/11] *: update CHANGELOG, vendor Signed-off-by: Gyuho Lee --- CHANGELOG/CHANGELOG-1.5.md | 21 + go.mod | 2 +- go.sum | 12 +- .../aws/aws-sdk-go/aws/endpoints/defaults.go | 225 +- .../github.com/aws/aws-sdk-go/aws/version.go | 2 +- .../aws/aws-sdk-go/service/autoscaling/api.go | 137 +- .../aws-sdk-go/service/cloudformation/api.go | 295 +- .../aws/aws-sdk-go/service/ec2/api.go | 631 +- .../aws/aws-sdk-go/service/eks/api.go | 2367 ++++- .../service/eks/eksiface/interface.go | 40 +- .../aws/aws-sdk-go/service/eks/waiters.go | 102 + .../aws/aws-sdk-go/service/elbv2/api.go | 99 +- .../aws/aws-sdk-go/service/s3/api.go | 399 +- .../service/s3/s3manager/upload_input.go | 9 + .../aws/aws-sdk-go/service/ssm/api.go | 1407 ++- .../aws/aws-sdk-go/service/ssm/errors.go | 46 + .../service/ssm/ssmiface/interface.go | 20 + vendor/golang.org/x/net/html/const.go | 2 +- vendor/golang.org/x/net/html/foreign.go | 119 +- vendor/golang.org/x/net/html/parse.go | 15 +- vendor/golang.org/x/net/html/render.go | 2 +- .../x/net/http2/client_conn_pool.go | 8 +- vendor/golang.org/x/net/http2/flow.go | 2 + .../golang.org/x/net/http2/hpack/huffman.go | 7 + vendor/golang.org/x/net/http2/http2.go | 13 +- vendor/golang.org/x/net/http2/server.go | 31 +- vendor/golang.org/x/net/http2/transport.go | 136 +- .../idna/{tables12.00.go => tables12.0.0.go} | 2 +- vendor/golang.org/x/net/idna/tables13.0.0.go | 4839 +++++++++++ .../x/net/internal/socket/cmsghdr.go | 2 +- .../x/net/internal/socket/cmsghdr_stub.go | 16 +- .../x/net/internal/socket/cmsghdr_unix.go | 21 + .../net/internal/socket/cmsghdr_zos_s390x.go | 25 + .../x/net/internal/socket/error_unix.go | 2 +- .../x/net/internal/socket/iovec_64bit.go | 2 +- .../x/net/internal/socket/iovec_stub.go | 2 +- .../x/net/internal/socket/msghdr_stub.go | 2 +- .../x/net/internal/socket/msghdr_zos_s390x.go | 36 + .../x/net/internal/socket/rawconn_msg.go | 7 +- .../x/net/internal/socket/rawconn_nomsg.go | 2 +- .../x/net/internal/socket/socket.go | 10 +- .../golang.org/x/net/internal/socket/sys.go | 14 +- .../x/net/internal/socket/sys_bsdvar.go | 23 - .../x/net/internal/socket/sys_const_zos.go | 17 + .../x/net/internal/socket/sys_darwin.go | 7 - .../x/net/internal/socket/sys_dragonfly.go | 32 - .../x/net/internal/socket/sys_linux.go | 5 - .../x/net/internal/socket/sys_linux_386.go | 2 - .../x/net/internal/socket/sys_linux_s390x.go | 2 - .../x/net/internal/socket/sys_posix.go | 2 +- .../x/net/internal/socket/sys_solaris.go | 11 - .../x/net/internal/socket/sys_stub.go | 18 +- ...{sys_go1_11_darwin.go => sys_zos_s390x.go} | 19 +- .../x/net/internal/socket/sys_zos_s390x.s | 11 + .../x/net/internal/socket/zsys_aix_ppc64.go | 5 +- .../x/net/internal/socket/zsys_darwin_386.go | 5 +- .../net/internal/socket/zsys_darwin_amd64.go | 5 +- .../x/net/internal/socket/zsys_darwin_arm.go | 5 +- .../net/internal/socket/zsys_darwin_arm64.go | 5 +- .../internal/socket/zsys_dragonfly_amd64.go | 5 +- .../x/net/internal/socket/zsys_freebsd_386.go | 5 +- .../net/internal/socket/zsys_freebsd_amd64.go | 5 +- .../x/net/internal/socket/zsys_freebsd_arm.go | 5 +- .../net/internal/socket/zsys_freebsd_arm64.go | 5 +- .../x/net/internal/socket/zsys_linux_386.go | 5 +- .../x/net/internal/socket/zsys_linux_amd64.go | 5 +- .../x/net/internal/socket/zsys_linux_arm.go | 2 - .../x/net/internal/socket/zsys_linux_arm64.go | 2 - .../x/net/internal/socket/zsys_linux_mips.go | 2 - .../net/internal/socket/zsys_linux_mips64.go | 2 - .../internal/socket/zsys_linux_mips64le.go | 2 - .../net/internal/socket/zsys_linux_mipsle.go | 2 - .../x/net/internal/socket/zsys_linux_ppc64.go | 2 - .../net/internal/socket/zsys_linux_ppc64le.go | 2 - .../net/internal/socket/zsys_linux_riscv64.go | 2 - .../x/net/internal/socket/zsys_linux_s390x.go | 2 - .../x/net/internal/socket/zsys_netbsd_386.go | 2 - .../net/internal/socket/zsys_netbsd_amd64.go | 2 - .../x/net/internal/socket/zsys_netbsd_arm.go | 2 - .../net/internal/socket/zsys_netbsd_arm64.go | 5 +- .../x/net/internal/socket/zsys_openbsd_386.go | 5 +- .../net/internal/socket/zsys_openbsd_amd64.go | 5 +- .../x/net/internal/socket/zsys_openbsd_arm.go | 5 +- .../net/internal/socket/zsys_openbsd_arm64.go | 5 +- .../net/internal/socket/zsys_solaris_amd64.go | 5 +- .../x/net/internal/socket/zsys_zos_s390x.go | 32 + vendor/golang.org/x/net/ipv4/control_stub.go | 2 +- vendor/golang.org/x/net/ipv4/control_zos.go | 86 + vendor/golang.org/x/net/ipv4/header.go | 9 +- vendor/golang.org/x/net/ipv4/helper.go | 17 +- vendor/golang.org/x/net/ipv4/payload_cmsg.go | 2 +- .../golang.org/x/net/ipv4/payload_nocmsg.go | 2 +- vendor/golang.org/x/net/ipv4/sockopt_posix.go | 2 +- vendor/golang.org/x/net/ipv4/sockopt_stub.go | 2 +- vendor/golang.org/x/net/ipv4/sys_asmreq.go | 3 + vendor/golang.org/x/net/ipv4/sys_stub.go | 2 +- vendor/golang.org/x/net/ipv4/sys_zos.go | 55 + .../golang.org/x/net/ipv4/zsys_zos_s390x.go | 80 + .../x/net/ipv6/control_rfc3542_unix.go | 2 +- vendor/golang.org/x/net/ipv6/control_stub.go | 2 +- vendor/golang.org/x/net/ipv6/control_unix.go | 2 +- vendor/golang.org/x/net/ipv6/helper.go | 1 - vendor/golang.org/x/net/ipv6/icmp_stub.go | 2 +- vendor/golang.org/x/net/ipv6/icmp_zos.go | 29 + vendor/golang.org/x/net/ipv6/payload_cmsg.go | 2 +- .../golang.org/x/net/ipv6/payload_nocmsg.go | 2 +- vendor/golang.org/x/net/ipv6/sockopt_posix.go | 2 +- vendor/golang.org/x/net/ipv6/sockopt_stub.go | 2 +- vendor/golang.org/x/net/ipv6/sys_ssmreq.go | 2 +- .../golang.org/x/net/ipv6/sys_ssmreq_stub.go | 2 +- vendor/golang.org/x/net/ipv6/sys_stub.go | 2 +- vendor/golang.org/x/net/ipv6/sys_zos.go | 70 + .../golang.org/x/net/ipv6/zsys_zos_s390x.go | 106 + vendor/golang.org/x/sys/cpu/byteorder.go | 11 +- vendor/golang.org/x/sys/cpu/cpu.go | 156 +- .../sys/cpu/{cpu_aix_ppc64.go => cpu_aix.go} | 6 +- vendor/golang.org/x/sys/cpu/cpu_arm.go | 33 + vendor/golang.org/x/sys/cpu/cpu_arm64.go | 39 +- vendor/golang.org/x/sys/cpu/cpu_linux.go | 2 +- .../golang.org/x/sys/cpu/cpu_linux_mips64x.go | 1 + .../golang.org/x/sys/cpu/cpu_linux_ppc64x.go | 2 - .../golang.org/x/sys/cpu/cpu_linux_s390x.go | 2 - vendor/golang.org/x/sys/cpu/cpu_mips64x.go | 6 + vendor/golang.org/x/sys/cpu/cpu_mipsx.go | 2 + vendor/golang.org/x/sys/cpu/cpu_other_arm.go | 9 + vendor/golang.org/x/sys/cpu/cpu_ppc64x.go | 16 + vendor/golang.org/x/sys/cpu/cpu_riscv64.go | 2 + vendor/golang.org/x/sys/cpu/cpu_s390x.go | 30 + vendor/golang.org/x/sys/cpu/cpu_wasm.go | 4 + vendor/golang.org/x/sys/cpu/cpu_x86.go | 82 +- .../golang.org/x/sys/cpu/syscall_aix_gccgo.go | 27 + .../sys/internal/unsafeheader/unsafeheader.go | 30 + .../x/sys/unix/asm_openbsd_mips64.s | 29 + vendor/golang.org/x/sys/unix/fcntl_darwin.go | 6 + vendor/golang.org/x/sys/unix/gccgo.go | 2 - vendor/golang.org/x/sys/unix/gccgo_c.c | 6 + vendor/golang.org/x/sys/unix/ioctl.go | 9 + vendor/golang.org/x/sys/unix/mkall.sh | 15 +- vendor/golang.org/x/sys/unix/mkerrors.sh | 16 +- .../x/sys/unix/sockcmsg_unix_other.go | 6 +- vendor/golang.org/x/sys/unix/syscall_bsd.go | 34 +- .../x/sys/unix/syscall_darwin.1_12.go | 4 +- .../x/sys/unix/syscall_darwin.1_13.go | 21 +- .../golang.org/x/sys/unix/syscall_darwin.go | 82 +- .../x/sys/unix/syscall_darwin_386.1_11.go | 9 - .../x/sys/unix/syscall_darwin_386.go | 15 - .../x/sys/unix/syscall_darwin_amd64.1_11.go | 9 - .../x/sys/unix/syscall_darwin_amd64.go | 15 - .../x/sys/unix/syscall_darwin_arm.1_11.go | 11 - .../x/sys/unix/syscall_darwin_arm.go | 15 - .../x/sys/unix/syscall_darwin_arm64.1_11.go | 11 - .../x/sys/unix/syscall_darwin_arm64.go | 15 - .../x/sys/unix/syscall_dragonfly.go | 15 - .../golang.org/x/sys/unix/syscall_freebsd.go | 15 - .../golang.org/x/sys/unix/syscall_illumos.go | 41 +- vendor/golang.org/x/sys/unix/syscall_linux.go | 167 +- .../x/sys/unix/syscall_linux_386.go | 2 +- .../x/sys/unix/syscall_linux_amd64.go | 2 +- .../x/sys/unix/syscall_linux_arm.go | 7 +- .../x/sys/unix/syscall_linux_arm64.go | 28 +- .../x/sys/unix/syscall_linux_gc_arm.go | 13 + .../x/sys/unix/syscall_linux_mips64x.go | 2 +- .../x/sys/unix/syscall_linux_mipsx.go | 2 +- .../x/sys/unix/syscall_linux_ppc64x.go | 2 +- .../x/sys/unix/syscall_linux_riscv64.go | 8 +- .../x/sys/unix/syscall_linux_s390x.go | 2 +- .../x/sys/unix/syscall_linux_sparc64.go | 2 +- .../golang.org/x/sys/unix/syscall_netbsd.go | 15 - .../golang.org/x/sys/unix/syscall_openbsd.go | 15 - .../x/sys/unix/syscall_openbsd_mips64.go | 35 + vendor/golang.org/x/sys/unix/syscall_unix.go | 17 +- .../x/sys/unix/zerrors_darwin_386.go | 2 + .../x/sys/unix/zerrors_darwin_amd64.go | 2 + .../x/sys/unix/zerrors_darwin_arm.go | 2 + .../x/sys/unix/zerrors_darwin_arm64.go | 2 + .../x/sys/unix/zerrors_freebsd_386.go | 6 + .../x/sys/unix/zerrors_freebsd_amd64.go | 6 + .../x/sys/unix/zerrors_freebsd_arm.go | 6 + .../x/sys/unix/zerrors_freebsd_arm64.go | 6 + vendor/golang.org/x/sys/unix/zerrors_linux.go | 193 +- .../x/sys/unix/zerrors_linux_386.go | 6 + .../x/sys/unix/zerrors_linux_amd64.go | 6 + .../x/sys/unix/zerrors_linux_arm.go | 6 + .../x/sys/unix/zerrors_linux_arm64.go | 7 + .../x/sys/unix/zerrors_linux_mips.go | 6 + .../x/sys/unix/zerrors_linux_mips64.go | 6 + .../x/sys/unix/zerrors_linux_mips64le.go | 6 + .../x/sys/unix/zerrors_linux_mipsle.go | 6 + .../x/sys/unix/zerrors_linux_ppc64.go | 6 + .../x/sys/unix/zerrors_linux_ppc64le.go | 6 + .../x/sys/unix/zerrors_linux_riscv64.go | 6 + .../x/sys/unix/zerrors_linux_s390x.go | 6 + .../x/sys/unix/zerrors_linux_sparc64.go | 6 + .../x/sys/unix/zerrors_netbsd_386.go | 6 + .../x/sys/unix/zerrors_netbsd_amd64.go | 6 + .../x/sys/unix/zerrors_netbsd_arm.go | 6 + .../x/sys/unix/zerrors_netbsd_arm64.go | 6 + .../x/sys/unix/zerrors_openbsd_386.go | 7 + .../x/sys/unix/zerrors_openbsd_amd64.go | 7 + .../x/sys/unix/zerrors_openbsd_arm.go | 7 + .../x/sys/unix/zerrors_openbsd_arm64.go | 7 + .../x/sys/unix/zerrors_openbsd_mips64.go | 1862 ++++ .../x/sys/unix/zsyscall_darwin_386.1_11.go | 1811 ---- .../x/sys/unix/zsyscall_darwin_386.go | 139 +- .../x/sys/unix/zsyscall_darwin_386.s | 14 +- .../x/sys/unix/zsyscall_darwin_amd64.1_11.go | 1811 ---- .../x/sys/unix/zsyscall_darwin_amd64.go | 139 +- .../x/sys/unix/zsyscall_darwin_amd64.s | 14 +- .../x/sys/unix/zsyscall_darwin_arm.1_11.go | 1784 ---- .../x/sys/unix/zsyscall_darwin_arm.go | 139 +- .../x/sys/unix/zsyscall_darwin_arm.s | 14 +- .../x/sys/unix/zsyscall_darwin_arm64.go | 139 +- .../x/sys/unix/zsyscall_darwin_arm64.s | 14 +- .../x/sys/unix/zsyscall_illumos_amd64.go | 29 +- .../golang.org/x/sys/unix/zsyscall_linux.go | 108 + .../x/sys/unix/zsyscall_linux_386.go | 2 +- .../x/sys/unix/zsyscall_linux_amd64.go | 2 +- .../x/sys/unix/zsyscall_linux_arm.go | 2 +- .../x/sys/unix/zsyscall_linux_arm64.go | 4 +- .../x/sys/unix/zsyscall_linux_mips.go | 2 +- .../x/sys/unix/zsyscall_linux_mips64.go | 2 +- .../x/sys/unix/zsyscall_linux_mips64le.go | 2 +- .../x/sys/unix/zsyscall_linux_mipsle.go | 2 +- .../x/sys/unix/zsyscall_linux_ppc64.go | 2 +- .../x/sys/unix/zsyscall_linux_ppc64le.go | 2 +- .../x/sys/unix/zsyscall_linux_s390x.go | 2 +- .../x/sys/unix/zsyscall_linux_sparc64.go | 2 +- ...m64.1_11.go => zsyscall_openbsd_mips64.go} | 514 +- .../x/sys/unix/zsysctl_openbsd_386.go | 3 +- .../x/sys/unix/zsysctl_openbsd_amd64.go | 1 + .../x/sys/unix/zsysctl_openbsd_arm.go | 1 + .../x/sys/unix/zsysctl_openbsd_mips64.go | 279 + .../x/sys/unix/zsysnum_darwin_386.go | 436 - .../x/sys/unix/zsysnum_darwin_amd64.go | 438 - .../x/sys/unix/zsysnum_darwin_arm.go | 436 - .../x/sys/unix/zsysnum_darwin_arm64.go | 436 - .../x/sys/unix/zsysnum_linux_386.go | 1 + .../x/sys/unix/zsysnum_linux_amd64.go | 1 + .../x/sys/unix/zsysnum_linux_arm.go | 1 + .../x/sys/unix/zsysnum_linux_arm64.go | 1 + .../x/sys/unix/zsysnum_linux_mips.go | 1 + .../x/sys/unix/zsysnum_linux_mips64.go | 1 + .../x/sys/unix/zsysnum_linux_mips64le.go | 1 + .../x/sys/unix/zsysnum_linux_mipsle.go | 1 + .../x/sys/unix/zsysnum_linux_ppc64.go | 1 + .../x/sys/unix/zsysnum_linux_ppc64le.go | 1 + .../x/sys/unix/zsysnum_linux_riscv64.go | 1 + .../x/sys/unix/zsysnum_linux_s390x.go | 1 + .../x/sys/unix/zsysnum_linux_sparc64.go | 1 + .../x/sys/unix/zsysnum_openbsd_mips64.go | 220 + .../x/sys/unix/ztypes_darwin_386.go | 4 + .../x/sys/unix/ztypes_darwin_amd64.go | 4 + .../x/sys/unix/ztypes_darwin_arm.go | 4 + .../x/sys/unix/ztypes_darwin_arm64.go | 4 + .../x/sys/unix/ztypes_freebsd_arm.go | 12 +- vendor/golang.org/x/sys/unix/ztypes_linux.go | 573 +- .../golang.org/x/sys/unix/ztypes_linux_386.go | 5 + .../x/sys/unix/ztypes_linux_amd64.go | 7 + .../golang.org/x/sys/unix/ztypes_linux_arm.go | 7 + .../x/sys/unix/ztypes_linux_arm64.go | 7 + .../x/sys/unix/ztypes_linux_mips.go | 7 + .../x/sys/unix/ztypes_linux_mips64.go | 7 + .../x/sys/unix/ztypes_linux_mips64le.go | 7 + .../x/sys/unix/ztypes_linux_mipsle.go | 7 + .../x/sys/unix/ztypes_linux_ppc64.go | 7 + .../x/sys/unix/ztypes_linux_ppc64le.go | 7 + .../x/sys/unix/ztypes_linux_riscv64.go | 7 + .../x/sys/unix/ztypes_linux_s390x.go | 7 + .../x/sys/unix/ztypes_linux_sparc64.go | 7 + .../x/sys/unix/ztypes_openbsd_mips64.go | 565 ++ .../golang.org/x/sys/windows/dll_windows.go | 29 + .../golang.org/x/sys/windows/env_windows.go | 11 +- .../x/sys/windows/memory_windows.go | 5 + .../x/sys/windows/security_windows.go | 20 +- vendor/golang.org/x/sys/windows/service.go | 2 + .../golang.org/x/sys/windows/svc/security.go | 7 +- .../golang.org/x/sys/windows/svc/service.go | 16 +- .../golang.org/x/sys/windows/svc/sys_amd64.s | 10 +- .../x/sys/windows/syscall_windows.go | 40 +- .../golang.org/x/sys/windows/types_windows.go | 12 - .../x/sys/windows/types_windows_386.go | 13 + .../x/sys/windows/types_windows_amd64.go | 12 + .../x/sys/windows/types_windows_arm.go | 13 + .../x/sys/windows/zsyscall_windows.go | 32 + .../x/text/encoding/unicode/unicode.go | 94 +- .../golang.org/x/text/transform/transform.go | 6 +- vendor/golang.org/x/text/unicode/bidi/core.go | 8 +- .../x/text/unicode/bidi/tables11.0.0.go | 2 +- .../x/text/unicode/bidi/tables12.0.0.go | 1923 ++++ .../x/text/unicode/norm/tables11.0.0.go | 2 +- .../x/text/unicode/norm/tables12.0.0.go | 7710 +++++++++++++++++ .../golang.org/x/text/width/tables11.0.0.go | 2 +- .../golang.org/x/text/width/tables12.0.0.go | 1350 +++ vendor/modules.txt | 9 +- 294 files changed, 27614 insertions(+), 9243 deletions(-) rename vendor/golang.org/x/net/idna/{tables12.00.go => tables12.0.0.go} (99%) create mode 100644 vendor/golang.org/x/net/idna/tables13.0.0.go create mode 100644 vendor/golang.org/x/net/internal/socket/cmsghdr_unix.go create mode 100644 vendor/golang.org/x/net/internal/socket/cmsghdr_zos_s390x.go create mode 100644 vendor/golang.org/x/net/internal/socket/msghdr_zos_s390x.go delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_bsdvar.go create mode 100644 vendor/golang.org/x/net/internal/socket/sys_const_zos.go delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_darwin.go delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_dragonfly.go rename vendor/golang.org/x/net/internal/socket/{sys_go1_11_darwin.go => sys_zos_s390x.go} (52%) create mode 100644 vendor/golang.org/x/net/internal/socket/sys_zos_s390x.s create mode 100644 vendor/golang.org/x/net/internal/socket/zsys_zos_s390x.go create mode 100644 vendor/golang.org/x/net/ipv4/control_zos.go create mode 100644 vendor/golang.org/x/net/ipv4/sys_zos.go create mode 100644 vendor/golang.org/x/net/ipv4/zsys_zos_s390x.go create mode 100644 vendor/golang.org/x/net/ipv6/icmp_zos.go create mode 100644 vendor/golang.org/x/net/ipv6/sys_zos.go create mode 100644 vendor/golang.org/x/net/ipv6/zsys_zos_s390x.go rename vendor/golang.org/x/sys/cpu/{cpu_aix_ppc64.go => cpu_aix.go} (89%) create mode 100644 vendor/golang.org/x/sys/cpu/cpu_other_arm.go create mode 100644 vendor/golang.org/x/sys/cpu/cpu_ppc64x.go create mode 100644 vendor/golang.org/x/sys/cpu/cpu_s390x.go create mode 100644 vendor/golang.org/x/sys/cpu/syscall_aix_gccgo.go create mode 100644 vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go create mode 100644 vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go create mode 100644 vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go create mode 100644 vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go rename vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm64.1_11.go => zsyscall_openbsd_mips64.go} (85%) create mode 100644 vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go create mode 100644 vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go create mode 100644 vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go create mode 100644 vendor/golang.org/x/text/unicode/norm/tables12.0.0.go create mode 100644 vendor/golang.org/x/text/width/tables12.0.0.go diff --git a/CHANGELOG/CHANGELOG-1.5.md b/CHANGELOG/CHANGELOG-1.5.md index c3df34742..01cf3b45b 100644 --- a/CHANGELOG/CHANGELOG-1.5.md +++ b/CHANGELOG/CHANGELOG-1.5.md @@ -1,5 +1,26 @@ + +
+ +## [v1.5.6](https://github.com/aws/aws-k8s-tester/releases/tag/v1.5.6) (2020-12) + +See [code changes](https://github.com/aws/aws-k8s-tester/compare/v1.5.5...v1.5.6). + +### `eksconfig` + +- Expose [configuration of sonobuoy worker/systemd-logs container](https://github.com/aws/aws-k8s-tester/pull/190). + +### Dependency + +- Upgrade [`github.com/aws/aws-sdk-go`](https://github.com/aws/aws-sdk-go/releases) from [`v1.35.27`](https://github.com/aws/aws-sdk-go/releases/tag/v1.35.27) to [`v1.36.2`](https://github.com/aws/aws-sdk-go/releases/tag/v1.36.2). + +### Go + +- Compile with [*Go 1.15.6*](https://golang.org/doc/devel/release.html#go1.15). + + +
diff --git a/go.mod b/go.mod index bcedbe7cf..3e7f6daf6 100644 --- a/go.mod +++ b/go.mod @@ -43,7 +43,7 @@ replace ( ) require ( - github.com/aws/aws-sdk-go v1.35.27 + github.com/aws/aws-sdk-go v1.36.2 github.com/briandowns/spinner v1.11.1 github.com/cihub/seelog v0.0.0-20170130134532-f561c5e57575 github.com/davecgh/go-spew v1.1.1 diff --git a/go.sum b/go.sum index 569933b27..3a825f248 100644 --- a/go.sum +++ b/go.sum @@ -102,8 +102,8 @@ github.com/auth0/go-jwt-middleware v0.0.0-20170425171159-5493cabe49f7/go.mod h1: github.com/aws/aws-sdk-go v1.6.10/go.mod h1:ZRmQr0FajVIyZ4ZzBYKG5P3ZqPz9IHG41ZoMu1ADI3k= github.com/aws/aws-sdk-go v1.15.11/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= github.com/aws/aws-sdk-go v1.28.2/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.35.27 h1:F0dUW+kouzchjt4X6kYfYMw1YtQPkA4pihpCDqQMrq8= -github.com/aws/aws-sdk-go v1.35.27/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k= +github.com/aws/aws-sdk-go v1.36.2 h1:UAeFPct+jHqWM+tgiqDrC9/sfbWj6wkcvpsJ+zdcsvA= +github.com/aws/aws-sdk-go v1.36.2/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/bazelbuild/bazel-gazelle v0.18.2/go.mod h1:D0ehMSbS+vesFsLGiD6JXu3mVEzOlfUl8wNnq+x/9p0= github.com/bazelbuild/bazel-gazelle v0.19.1-0.20191105222053-70208cbdc798/go.mod h1:rPwzNHUqEzngx1iVBfO/2X2npKaT3tqPqqHW6rVsn/A= github.com/bazelbuild/buildtools v0.0.0-20190731111112-f720930ceb60/go.mod h1:5JP0TXzWDHXv8qvxRC4InIazwdyDseBDbzESUMKk1yU= @@ -1082,8 +1082,8 @@ golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191004110552-13f9640d40b9/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200202094626-16171245cfb2 h1:CCH4IOTTfewWjGOlSp+zGcjutRKlBEZQ6wTn8ozI/nI= -golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20201110031124-69a78807bb2b h1:uwuIcX0g4Yl1NC5XAz37xsr2lTtcqevgzYNVt49waME= +golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190402181905-9f3314589c9a/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -1138,12 +1138,16 @@ golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200107162124-548cf772de50/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f h1:gWF768j/LaZugp8dyS4UwsslYCYz9XgFxvlgsn0n9H8= golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f h1:+Nyd8tzPX9R7BWHguqsrbFdRx3WQ/1ib8I44HXV5yTA= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/text v0.0.0-20160726164857-2910a502d2bf/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.0.0-20170915090833-1cbadb444a80/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2 h1:+DCIGbF/swA92ohVg0//6X2IVY3KZs6p9mix0ziNYJM= golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= diff --git a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go index c30391084..7f3ed4f5d 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go @@ -344,6 +344,20 @@ var awsPartition = partition{ "us-west-2": endpoint{}, }, }, + "airflow": service{ + + Endpoints: endpoints{ + "ap-northeast-1": endpoint{}, + "ap-southeast-1": endpoint{}, + "ap-southeast-2": endpoint{}, + "eu-central-1": endpoint{}, + "eu-north-1": endpoint{}, + "eu-west-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-2": endpoint{}, + }, + }, "api.detective": service{ Defaults: endpoint{ Protocols: []string{"https"}, @@ -664,6 +678,18 @@ var awsPartition = partition{ "us-west-2": endpoint{}, }, }, + "app-integrations": service{ + + Endpoints: endpoints{ + "ap-northeast-1": endpoint{}, + "ap-southeast-1": endpoint{}, + "ap-southeast-2": endpoint{}, + "eu-central-1": endpoint{}, + "eu-west-2": endpoint{}, + "us-east-1": endpoint{}, + "us-west-2": endpoint{}, + }, + }, "appflow": service{ Endpoints: endpoints{ @@ -763,6 +789,7 @@ var awsPartition = partition{ "appsync": service{ Endpoints: endpoints{ + "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, "ap-south-1": endpoint{}, @@ -775,6 +802,7 @@ var awsPartition = partition{ "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, + "me-south-1": endpoint{}, "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, @@ -785,6 +813,7 @@ var awsPartition = partition{ "athena": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -963,12 +992,11 @@ var awsPartition = partition{ PartitionEndpoint: "aws-global", IsRegionalized: boxedFalse, Defaults: endpoint{ - SSLCommonName: "service.chime.aws.amazon.com", - Protocols: []string{"https"}, + Protocols: []string{"https"}, }, Endpoints: endpoints{ "aws-global": endpoint{ - Hostname: "service.chime.aws.amazon.com", + Hostname: "chime.us-east-1.amazonaws.com", Protocols: []string{"https"}, CredentialScope: credentialScope{ Region: "us-east-1", @@ -1427,8 +1455,10 @@ var awsPartition = partition{ "ap-southeast-2": endpoint{}, "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, + "eu-north-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, + "eu-west-3": endpoint{}, "fips-us-east-1": endpoint{ Hostname: "cognito-identity-fips.us-east-1.amazonaws.com", CredentialScope: credentialScope{ @@ -1447,8 +1477,10 @@ var awsPartition = partition{ Region: "us-west-2", }, }, + "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, + "us-west-1": endpoint{}, "us-west-2": endpoint{}, }, }, @@ -1462,8 +1494,10 @@ var awsPartition = partition{ "ap-southeast-2": endpoint{}, "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, + "eu-north-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, + "eu-west-3": endpoint{}, "fips-us-east-1": endpoint{ Hostname: "cognito-idp-fips.us-east-1.amazonaws.com", CredentialScope: credentialScope{ @@ -1482,8 +1516,10 @@ var awsPartition = partition{ Region: "us-west-2", }, }, + "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, + "us-west-1": endpoint{}, "us-west-2": endpoint{}, }, }, @@ -1573,6 +1609,7 @@ var awsPartition = partition{ "config": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -1582,15 +1619,40 @@ var awsPartition = partition{ "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, "eu-north-1": endpoint{}, + "eu-south-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, - "me-south-1": endpoint{}, - "sa-east-1": endpoint{}, - "us-east-1": endpoint{}, - "us-east-2": endpoint{}, - "us-west-1": endpoint{}, - "us-west-2": endpoint{}, + "fips-us-east-1": endpoint{ + Hostname: "config-fips.us-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-1", + }, + }, + "fips-us-east-2": endpoint{ + Hostname: "config-fips.us-east-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-east-2", + }, + }, + "fips-us-west-1": endpoint{ + Hostname: "config-fips.us-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-1", + }, + }, + "fips-us-west-2": endpoint{ + Hostname: "config-fips.us-west-2.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-west-2", + }, + }, + "me-south-1": endpoint{}, + "sa-east-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-1": endpoint{}, + "us-west-2": endpoint{}, }, }, "connect": service{ @@ -1605,6 +1667,14 @@ var awsPartition = partition{ "us-west-2": endpoint{}, }, }, + "contact-lens": service{ + + Endpoints: endpoints{ + "ap-southeast-2": endpoint{}, + "us-east-1": endpoint{}, + "us-west-2": endpoint{}, + }, + }, "cur": service{ Endpoints: endpoints{ @@ -1885,6 +1955,12 @@ var awsPartition = partition{ Region: "eu-west-3", }, }, + "sa-east-1": endpoint{ + Hostname: "rds.sa-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "sa-east-1", + }, + }, "us-east-1": endpoint{ Hostname: "rds.us-east-1.amazonaws.com", CredentialScope: credentialScope{ @@ -2767,6 +2843,18 @@ var awsPartition = partition{ "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, "eu-west-3": endpoint{}, + "fips-af-south-1": endpoint{ + Hostname: "fms-fips.af-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "af-south-1", + }, + }, + "fips-ap-east-1": endpoint{ + Hostname: "fms-fips.ap-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "ap-east-1", + }, + }, "fips-ap-northeast-1": endpoint{ Hostname: "fms-fips.ap-northeast-1.amazonaws.com", CredentialScope: credentialScope{ @@ -2809,6 +2897,12 @@ var awsPartition = partition{ Region: "eu-central-1", }, }, + "fips-eu-south-1": endpoint{ + Hostname: "fms-fips.eu-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "eu-south-1", + }, + }, "fips-eu-west-1": endpoint{ Hostname: "fms-fips.eu-west-1.amazonaws.com", CredentialScope: credentialScope{ @@ -2827,6 +2921,12 @@ var awsPartition = partition{ Region: "eu-west-3", }, }, + "fips-me-south-1": endpoint{ + Hostname: "fms-fips.me-south-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "me-south-1", + }, + }, "fips-sa-east-1": endpoint{ Hostname: "fms-fips.sa-east-1.amazonaws.com", CredentialScope: credentialScope{ @@ -2996,6 +3096,7 @@ var awsPartition = partition{ "glue": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -3756,6 +3857,18 @@ var awsPartition = partition{ "us-west-2": endpoint{}, }, }, + "lookoutvision": service{ + + Endpoints: endpoints{ + "ap-northeast-1": endpoint{}, + "ap-northeast-2": endpoint{}, + "eu-central-1": endpoint{}, + "eu-west-1": endpoint{}, + "us-east-1": endpoint{}, + "us-east-2": endpoint{}, + "us-west-2": endpoint{}, + }, + }, "machinelearning": service{ Endpoints: endpoints{ @@ -5636,6 +5749,7 @@ var awsPartition = partition{ "snowball": service{ Endpoints: endpoints{ + "af-south-1": endpoint{}, "ap-east-1": endpoint{}, "ap-northeast-1": endpoint{}, "ap-northeast-2": endpoint{}, @@ -6249,11 +6363,14 @@ var awsPartition = partition{ "transcribestreaming": service{ Endpoints: endpoints{ + "ap-northeast-1": endpoint{}, + "ap-northeast-2": endpoint{}, "ap-southeast-2": endpoint{}, "ca-central-1": endpoint{}, "eu-central-1": endpoint{}, "eu-west-1": endpoint{}, "eu-west-2": endpoint{}, + "sa-east-1": endpoint{}, "us-east-1": endpoint{}, "us-east-2": endpoint{}, "us-west-2": endpoint{}, @@ -6790,7 +6907,8 @@ var awscnPartition = partition{ "appsync": service{ Endpoints: endpoints{ - "cn-north-1": endpoint{}, + "cn-north-1": endpoint{}, + "cn-northwest-1": endpoint{}, }, }, "athena": service{ @@ -6946,6 +7064,17 @@ var awscnPartition = partition{ "cn-northwest-1": endpoint{}, }, }, + "docdb": service{ + + Endpoints: endpoints{ + "cn-northwest-1": endpoint{ + Hostname: "rds.cn-northwest-1.amazonaws.com.cn", + CredentialScope: credentialScope{ + Region: "cn-northwest-1", + }, + }, + }, + }, "ds": service{ Endpoints: endpoints{ @@ -7273,12 +7402,6 @@ var awscnPartition = partition{ Region: "cn-northwest-1", }, }, - "fips-aws-cn-global": endpoint{ - Hostname: "organizations.cn-northwest-1.amazonaws.com.cn", - CredentialScope: credentialScope{ - Region: "cn-northwest-1", - }, - }, }, }, "polly": service{ @@ -7287,6 +7410,13 @@ var awscnPartition = partition{ "cn-northwest-1": endpoint{}, }, }, + "ram": service{ + + Endpoints: endpoints{ + "cn-north-1": endpoint{}, + "cn-northwest-1": endpoint{}, + }, + }, "rds": service{ Endpoints: endpoints{ @@ -7972,6 +8102,18 @@ var awsusgovPartition = partition{ "config": service{ Endpoints: endpoints{ + "fips-us-gov-east-1": endpoint{ + Hostname: "config.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, + "fips-us-gov-west-1": endpoint{ + Hostname: "config.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, "us-gov-east-1": endpoint{}, "us-gov-west-1": endpoint{}, }, @@ -8344,12 +8486,25 @@ var awsusgovPartition = partition{ Protocols: []string{"https"}, }, Endpoints: endpoints{ + "dataplane-us-gov-east-1": endpoint{ + Hostname: "greengrass-ats.iot.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, "dataplane-us-gov-west-1": endpoint{ Hostname: "greengrass-ats.iot.us-gov-west-1.amazonaws.com", CredentialScope: credentialScope{ Region: "us-gov-west-1", }, }, + "fips-us-gov-east-1": endpoint{ + Hostname: "greengrass-fips.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, + "us-gov-east-1": endpoint{}, "us-gov-west-1": endpoint{ Hostname: "greengrass.us-gov-west-1.amazonaws.com", CredentialScope: credentialScope{ @@ -8365,6 +8520,12 @@ var awsusgovPartition = partition{ }, Endpoints: endpoints{ "us-gov-east-1": endpoint{}, + "us-gov-east-1-fips": endpoint{ + Hostname: "guardduty.us-gov-east-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-east-1", + }, + }, "us-gov-west-1": endpoint{}, "us-gov-west-1-fips": endpoint{ Hostname: "guardduty.us-gov-west-1.amazonaws.com", @@ -8485,6 +8646,18 @@ var awsusgovPartition = partition{ "us-gov-west-1": endpoint{}, }, }, + "lakeformation": service{ + + Endpoints: endpoints{ + "fips-us-gov-west-1": endpoint{ + Hostname: "lakeformation-fips.us-gov-west-1.amazonaws.com", + CredentialScope: credentialScope{ + Region: "us-gov-west-1", + }, + }, + "us-gov-west-1": endpoint{}, + }, + }, "lambda": service{ Endpoints: endpoints{ @@ -9593,6 +9766,14 @@ var awsisoPartition = partition{ "us-iso-east-1": endpoint{}, }, }, + "translate": service{ + Defaults: endpoint{ + Protocols: []string{"https"}, + }, + Endpoints: endpoints{ + "us-iso-east-1": endpoint{}, + }, + }, "workspaces": service{ Endpoints: endpoints{ @@ -9667,6 +9848,12 @@ var awsisobPartition = partition{ "us-isob-east-1": endpoint{}, }, }, + "codedeploy": service{ + + Endpoints: endpoints{ + "us-isob-east-1": endpoint{}, + }, + }, "config": service{ Endpoints: endpoints{ @@ -9744,6 +9931,12 @@ var awsisobPartition = partition{ "us-isob-east-1": endpoint{}, }, }, + "es": service{ + + Endpoints: endpoints{ + "us-isob-east-1": endpoint{}, + }, + }, "events": service{ Endpoints: endpoints{ diff --git a/vendor/github.com/aws/aws-sdk-go/aws/version.go b/vendor/github.com/aws/aws-sdk-go/aws/version.go index d25efe64f..5cfdfd062 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/version.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.35.27" +const SDKVersion = "1.36.2" diff --git a/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go b/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go index 0f409dca2..b9257cfcc 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/autoscaling/api.go @@ -158,14 +158,22 @@ func (c *AutoScaling) AttachLoadBalancerTargetGroupsRequest(input *AttachLoadBal // // Attaches one or more target groups to the specified Auto Scaling group. // +// This operation is used with the following load balancer types: +// +// * Application Load Balancer - Operates at the application layer (layer +// 7) and supports HTTP and HTTPS. +// +// * Network Load Balancer - Operates at the transport layer (layer 4) and +// supports TCP, TLS, and UDP. +// +// * Gateway Load Balancer - Operates at the network layer (layer 3). +// // To describe the target groups for an Auto Scaling group, call the DescribeLoadBalancerTargetGroups // API. To detach the target group from the Auto Scaling group, call the DetachLoadBalancerTargetGroups // API. // -// With Application Load Balancers and Network Load Balancers, instances are -// registered as targets with a target group. With Classic Load Balancers, instances -// are registered with the load balancer. For more information, see Attaching -// a load balancer to your Auto Scaling group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) +// For more information, see Elastic Load Balancing and Amazon EC2 Auto Scaling +// (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) // in the Amazon EC2 Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -251,8 +259,8 @@ func (c *AutoScaling) AttachLoadBalancersRequest(input *AttachLoadBalancersInput // AttachLoadBalancers API operation for Auto Scaling. // // -// To attach an Application Load Balancer or a Network Load Balancer, use the -// AttachLoadBalancerTargetGroups API operation instead. +// To attach an Application Load Balancer, Network Load Balancer, or Gateway +// Load Balancer, use the AttachLoadBalancerTargetGroups API operation instead. // // Attaches one or more Classic Load Balancers to the specified Auto Scaling // group. Amazon EC2 Auto Scaling registers the running instances with these @@ -262,8 +270,8 @@ func (c *AutoScaling) AttachLoadBalancersRequest(input *AttachLoadBalancersInput // API. To detach the load balancer from the Auto Scaling group, call the DetachLoadBalancers // API. // -// For more information, see Attaching a load balancer to your Auto Scaling -// group (https://docs.aws.amazon.com/autoscaling/ec2/userguide/attach-load-balancer-asg.html) +// For more information, see Elastic Load Balancing and Amazon EC2 Auto Scaling +// (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) // in the Amazon EC2 Auto Scaling User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -2672,8 +2680,8 @@ func (c *AutoScaling) DescribeLoadBalancersRequest(input *DescribeLoadBalancersI // Describes the load balancers for the specified Auto Scaling group. // // This operation describes only Classic Load Balancers. If you have Application -// Load Balancers or Network Load Balancers, use the DescribeLoadBalancerTargetGroups -// API instead. +// Load Balancers, Network Load Balancers, or Gateway Load Balancers, use the +// DescribeLoadBalancerTargetGroups API instead. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -3905,8 +3913,8 @@ func (c *AutoScaling) DetachLoadBalancersRequest(input *DetachLoadBalancersInput // group. // // This operation detaches only Classic Load Balancers. If you have Application -// Load Balancers or Network Load Balancers, use the DetachLoadBalancerTargetGroups -// API instead. +// Load Balancers, Network Load Balancers, or Gateway Load Balancers, use the +// DetachLoadBalancerTargetGroups API instead. // // When you detach a load balancer, it enters the Removing state while deregistering // the instances in the group. When all instances are deregistered, then you @@ -5921,7 +5929,9 @@ type AttachLoadBalancerTargetGroupsInput struct { AutoScalingGroupName *string `min:"1" type:"string" required:"true"` // The Amazon Resource Names (ARN) of the target groups. You can specify up - // to 10 target groups. + // to 10 target groups. To get the ARN of a target group, use the Elastic Load + // Balancing DescribeTargetGroups (https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DescribeTargetGroups.html) + // API operation. // // TargetGroupARNs is a required field TargetGroupARNs []*string `type:"list" required:"true"` @@ -6580,8 +6590,8 @@ type CreateAutoScalingGroupInput struct { LifecycleHookSpecificationList []*LifecycleHookSpecification `type:"list"` // A list of Classic Load Balancers associated with this Auto Scaling group. - // For Application Load Balancers and Network Load Balancers, specify TargetGroupARNs - // instead. + // For Application Load Balancers, Network Load Balancers, and Gateway Load + // Balancers, specify the TargetGroupARNs property instead. LoadBalancerNames []*string `type:"list"` // The maximum amount of time, in seconds, that an instance can be in service. @@ -6616,13 +6626,10 @@ type CreateAutoScalingGroupInput struct { // and how the Auto Scaling group allocates instance types to fulfill On-Demand // and Spot capacities, but also the parameters that specify the instance configuration // information—the launch template and instance types. The policy can also - // include a weight for each instance type. For more information, see Auto Scaling - // groups with multiple instance types and purchase options (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html) + // include a weight for each instance type and different launch templates for + // individual instance types. For more information, see Auto Scaling groups + // with multiple instance types and purchase options (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html) // in the Amazon EC2 Auto Scaling User Guide. - // - // Conditional: You must specify either a launch template (LaunchTemplate or - // MixedInstancesPolicy) or a launch configuration (LaunchConfigurationName - // or InstanceId). MixedInstancesPolicy *MixedInstancesPolicy `type:"structure"` // Indicates whether newly launched instances are protected from termination @@ -7053,7 +7060,7 @@ type CreateLaunchConfigurationInput struct { // VPCZoneIdentifier when you create your group. // // For more information, see Configuring instance tenancy with Amazon EC2 Auto - // Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling/ec2/userguide/auto-scaling-dedicated-instances.html) + // Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-dedicated-instances.html) // in the Amazon EC2 Auto Scaling User Guide. // // Valid Values: default | dedicated @@ -11103,26 +11110,25 @@ type InstancesDistribution struct { OnDemandPercentageAboveBaseCapacity *int64 `type:"integer"` // Indicates how to allocate instances across Spot Instance pools. If the allocation - // strategy is lowest-price, the Auto Scaling group launches instances using - // the Spot pools with the lowest price, and evenly allocates your instances - // across the number of Spot pools that you specify. If the allocation strategy - // is capacity-optimized, the Auto Scaling group launches instances using Spot - // pools that are optimally chosen based on the available Spot capacity. Defaults - // to lowest-price if not specified. + // strategy is capacity-optimized (recommended), the Auto Scaling group launches + // instances using Spot pools that are optimally chosen based on the available + // Spot capacity. If the allocation strategy is lowest-price, the Auto Scaling + // group launches instances using the Spot pools with the lowest price, and + // evenly allocates your instances across the number of Spot pools that you + // specify. Defaults to lowest-price if not specified. SpotAllocationStrategy *string `type:"string"` // The number of Spot Instance pools across which to allocate your Spot Instances. // The Spot pools are determined from the different instance types in the overrides. - // Defaults to 2 if not specified. Valid only when the Spot allocation strategy - // is lowest-price. - // - // Valid Range: Minimum value of 1. Maximum value of 20. + // Valid only when the Spot allocation strategy is lowest-price. Value must + // be in the range of 1 to 20. Defaults to 2 if not specified. SpotInstancePools *int64 `type:"integer"` // The maximum price per unit hour that you are willing to pay for a Spot Instance. - // If you leave the value of this parameter blank (which is the default), the - // maximum Spot price is set at the On-Demand price. To remove a value that - // you previously set, include the parameter but leave the value blank. + // If you leave the value at its default (empty), Amazon EC2 Auto Scaling uses + // the On-Demand price as the maximum Spot price. To remove a value that you + // previously set, include the property but specify an empty string ("") for + // the value. SpotMaxPrice *string `type:"string"` } @@ -11429,9 +11435,7 @@ func (s *LaunchConfiguration) SetUserData(v string) *LaunchConfiguration { // Describes a launch template and overrides. // -// The overrides are used to override the instance type specified by the launch -// template with multiple instance types that can be used to launch On-Demand -// Instances and Spot Instances. +// You specify these parameters as part of a mixed instances policy. // // When you update the launch template or overrides, existing Amazon EC2 instances // continue to run. When scale out occurs, Amazon EC2 Auto Scaling launches @@ -11444,10 +11448,8 @@ type LaunchTemplate struct { LaunchTemplateSpecification *LaunchTemplateSpecification `type:"structure"` // Any parameters that you specify override the same parameters in the launch - // template. Currently, the only supported override is instance type. You can - // specify between 1 and 20 instance types. If not provided, Amazon EC2 Auto - // Scaling will use the instance type specified in the launch template when - // it launches an instance. + // template. If not provided, Amazon EC2 Auto Scaling uses the instance type + // specified in the launch template when it launches an instance. Overrides []*LaunchTemplateOverrides `type:"list"` } @@ -11498,20 +11500,27 @@ func (s *LaunchTemplate) SetOverrides(v []*LaunchTemplateOverrides) *LaunchTempl return s } -// Describes an override for a launch template. Currently, the only supported -// override is instance type. -// -// The maximum number of instance type overrides that can be associated with -// an Auto Scaling group is 20. +// Describes an override for a launch template. The maximum number of instance +// types that can be associated with an Auto Scaling group is 20. For more information, +// see Configuring overrides (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-override-options.html) +// in the Amazon EC2 Auto Scaling User Guide. type LaunchTemplateOverrides struct { _ struct{} `type:"structure"` // The instance type, such as m3.xlarge. You must use an instance type that - // is supported in your requested Region and Availability Zones. For information - // about available instance types, see Available instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#AvailableInstanceTypes) + // is supported in your requested Region and Availability Zones. For more information, + // see Instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) // in the Amazon Elastic Compute Cloud User Guide. InstanceType *string `min:"1" type:"string"` + // Provides the launch template to be used when launching the instance type. + // For example, some instance types might require a launch template with a different + // AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's + // defined for your mixed instances policy. For more information, see Specifying + // a different launch template for an instance type (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-launch-template-overrides.html) + // in the Amazon EC2 Auto Scaling User Guide. + LaunchTemplateSpecification *LaunchTemplateSpecification `type:"structure"` + // The number of capacity units provided by the specified instance type in terms // of virtual CPUs, memory, storage, throughput, or other relative performance // characteristic. When a Spot or On-Demand Instance is provisioned, the capacity @@ -11522,9 +11531,8 @@ type LaunchTemplateOverrides struct { // of 5 units, the instance is provisioned, and the desired capacity is exceeded // by 3 units. For more information, see Instance weighting for Amazon EC2 Auto // Scaling (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-weighting.html) - // in the Amazon EC2 Auto Scaling User Guide. - // - // Valid Range: Minimum value of 1. Maximum value of 999. + // in the Amazon EC2 Auto Scaling User Guide. Value must be in the range of + // 1 to 999. WeightedCapacity *string `min:"1" type:"string"` } @@ -11547,6 +11555,11 @@ func (s *LaunchTemplateOverrides) Validate() error { if s.WeightedCapacity != nil && len(*s.WeightedCapacity) < 1 { invalidParams.Add(request.NewErrParamMinLen("WeightedCapacity", 1)) } + if s.LaunchTemplateSpecification != nil { + if err := s.LaunchTemplateSpecification.Validate(); err != nil { + invalidParams.AddNested("LaunchTemplateSpecification", err.(request.ErrInvalidParams)) + } + } if invalidParams.Len() > 0 { return invalidParams @@ -11560,6 +11573,12 @@ func (s *LaunchTemplateOverrides) SetInstanceType(v string) *LaunchTemplateOverr return s } +// SetLaunchTemplateSpecification sets the LaunchTemplateSpecification field's value. +func (s *LaunchTemplateOverrides) SetLaunchTemplateSpecification(v *LaunchTemplateSpecification) *LaunchTemplateOverrides { + s.LaunchTemplateSpecification = v + return s +} + // SetWeightedCapacity sets the WeightedCapacity field's value. func (s *LaunchTemplateOverrides) SetWeightedCapacity(v string) *LaunchTemplateOverrides { s.WeightedCapacity = &v @@ -11580,14 +11599,18 @@ type LaunchTemplateSpecification struct { // DescribeLaunchTemplates (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html) // API operation. New launch templates can be created using the Amazon EC2 CreateLaunchTemplate // (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html) - // API. You must specify either a LaunchTemplateId or a LaunchTemplateName. + // API. + // + // Conditional: You must specify either a LaunchTemplateId or a LaunchTemplateName. LaunchTemplateId *string `min:"1" type:"string"` // The name of the launch template. To get the template name, use the Amazon // EC2 DescribeLaunchTemplates (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeLaunchTemplates.html) // API operation. New launch templates can be created using the Amazon EC2 CreateLaunchTemplate // (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html) - // API. You must specify either a LaunchTemplateId or a LaunchTemplateName. + // API. + // + // Conditional: You must specify either a LaunchTemplateId or a LaunchTemplateName. LaunchTemplateName *string `min:"3" type:"string"` // The version number, $Latest, or $Default. To get the version number, use @@ -12155,7 +12178,7 @@ func (s *MetricGranularityType) SetGranularity(v string) *MetricGranularityType // Describes a mixed instances policy for an Auto Scaling group. With mixed // instances, your Auto Scaling group can provision a combination of On-Demand // Instances and Spot Instances across multiple instance types. For more information, -// see Auto Scaling Groups with Multiple Instance Types and Purchase Options +// see Auto Scaling groups with multiple instance types and purchase options // (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html) // in the Amazon EC2 Auto Scaling User Guide. // @@ -14584,8 +14607,8 @@ type UpdateAutoScalingGroupInput struct { // An embedded object that specifies a mixed instances policy. When you make // changes to an existing policy, all optional parameters are left unchanged - // if not specified. For more information, see Auto Scaling Groups with Multiple - // Instance Types and Purchase Options (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html) + // if not specified. For more information, see Auto Scaling groups with multiple + // instance types and purchase options (https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html) // in the Amazon EC2 Auto Scaling User Guide. MixedInstancesPolicy *MixedInstancesPolicy `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go b/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go index f8b384c0a..498b77207 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/cloudformation/api.go @@ -255,6 +255,9 @@ func (c *CloudFormation) CreateChangeSetRequest(input *CreateChangeSetInput) (re // the change set by using the ExecuteChangeSet action. AWS CloudFormation doesn't // make changes until you execute the change set. // +// To create a change set for the entire stack hierachy, set IncludeNestedStacks +// to True. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -633,6 +636,11 @@ func (c *CloudFormation) DeleteChangeSetRequest(input *DeleteChangeSetInput) (re // If the call successfully completes, AWS CloudFormation successfully deleted // the change set. // +// If IncludeNestedStacks specifies True during the creation of the nested change +// set, then DeleteChangeSet will delete all change sets that belong to the +// stacks hierarchy and will also delete all change sets for nested stacks with +// the status of REVIEW_IN_PROGRESS. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -2768,6 +2776,9 @@ func (c *CloudFormation) ExecuteChangeSetRequest(input *ExecuteChangeSetInput) ( // the policy during the update. You can't specify a temporary stack policy // that overrides the current policy. // +// To create a change set for the entire stack hierachy, IncludeNestedStacks +// must have been set to True. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5966,6 +5977,15 @@ type ChangeSetSummary struct { // updated. ExecutionStatus *string `type:"string" enum:"ExecutionStatus"` + // Specifies the current setting of IncludeNestedStacks for the change set. + IncludeNestedStacks *bool `type:"boolean"` + + // The parent change set ID. + ParentChangeSetId *string `min:"1" type:"string"` + + // The root change set ID. + RootChangeSetId *string `min:"1" type:"string"` + // The ID of the stack with which the change set is associated. StackId *string `type:"string"` @@ -6021,6 +6041,24 @@ func (s *ChangeSetSummary) SetExecutionStatus(v string) *ChangeSetSummary { return s } +// SetIncludeNestedStacks sets the IncludeNestedStacks field's value. +func (s *ChangeSetSummary) SetIncludeNestedStacks(v bool) *ChangeSetSummary { + s.IncludeNestedStacks = &v + return s +} + +// SetParentChangeSetId sets the ParentChangeSetId field's value. +func (s *ChangeSetSummary) SetParentChangeSetId(v string) *ChangeSetSummary { + s.ParentChangeSetId = &v + return s +} + +// SetRootChangeSetId sets the RootChangeSetId field's value. +func (s *ChangeSetSummary) SetRootChangeSetId(v string) *ChangeSetSummary { + s.RootChangeSetId = &v + return s +} + // SetStackId sets the StackId field's value. func (s *ChangeSetSummary) SetStackId(v string) *ChangeSetSummary { s.StackId = &v @@ -6226,12 +6264,12 @@ type CreateChangeSetInput struct { // and AWS::Serverless (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) // transforms, which are macros hosted by AWS CloudFormation. This capacity // does not apply to creating change sets, and specifying it when creating - // change sets has no effect. Also, change sets do not currently support - // nested stacks. If you want to create a stack from a stack template that - // contains macros and nested stacks, you must create or update the stack - // directly from the template using the CreateStack or UpdateStack action, - // and specifying this capability. For more information on macros, see Using - // AWS CloudFormation Macros to Perform Custom Processing on Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). + // change sets has no effect. If you want to create a stack from a stack + // template that contains macros and nested stacks, you must create or update + // the stack directly from the template using the CreateStack or UpdateStack + // action, and specifying this capability. For more information on macros, + // see Using AWS CloudFormation Macros to Perform Custom Processing on Templates + // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). Capabilities []*string `type:"list"` // The name of the change set. The name must be unique among all change sets @@ -6268,6 +6306,11 @@ type CreateChangeSetInput struct { // A description to help you identify this change set. Description *string `min:"1" type:"string"` + // Creates a change set for the all nested stacks specified in the template. + // The default behavior of this action is set to False. To include nested sets + // in a change set, specify True. + IncludeNestedStacks *bool `type:"boolean"` + // The Amazon Resource Names (ARNs) of Amazon Simple Notification Service (Amazon // SNS) topics that AWS CloudFormation associates with the stack. To remove // all associated notification topics, specify an empty list. @@ -6444,6 +6487,12 @@ func (s *CreateChangeSetInput) SetDescription(v string) *CreateChangeSetInput { return s } +// SetIncludeNestedStacks sets the IncludeNestedStacks field's value. +func (s *CreateChangeSetInput) SetIncludeNestedStacks(v bool) *CreateChangeSetInput { + s.IncludeNestedStacks = &v + return s +} + // SetNotificationARNs sets the NotificationARNs field's value. func (s *CreateChangeSetInput) SetNotificationARNs(v []*string) *CreateChangeSetInput { s.NotificationARNs = v @@ -6581,16 +6630,16 @@ type CreateStackInput struct { // template, without first reviewing the resulting changes in a change set, // you must acknowledge this capability. This includes the AWS::Include (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) // and AWS::Serverless (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) - // transforms, which are macros hosted by AWS CloudFormation. Change sets - // do not currently support nested stacks. If you want to create a stack - // from a stack template that contains macros and nested stacks, you must - // create the stack directly from the template using this capability. You - // should only create stacks directly from a stack template that contains - // macros if you know what processing the macro performs. Each macro relies - // on an underlying Lambda service function for processing stack templates. - // Be aware that the Lambda function owner can update the function operation - // without AWS CloudFormation being notified. For more information, see Using - // AWS CloudFormation Macros to Perform Custom Processing on Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). + // transforms, which are macros hosted by AWS CloudFormation. If you want + // to create a stack from a stack template that contains macros and nested + // stacks, you must create the stack directly from the template using this + // capability. You should only create stacks directly from a stack template + // that contains macros if you know what processing the macro performs. Each + // macro relies on an underlying Lambda service function for processing stack + // templates. Be aware that the Lambda function owner can update the function + // operation without AWS CloudFormation being notified. For more information, + // see Using AWS CloudFormation Macros to Perform Custom Processing on Templates + // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). Capabilities []*string `type:"list"` // A unique identifier for this CreateStack request. Specify this token if you @@ -7756,9 +7805,9 @@ func (s DeleteStackSetOutput) GoString() string { } // [Service-managed permissions] The AWS Organizations accounts to which StackSets -// deploys. StackSets does not deploy stack instances to the organization master -// account, even if the master account is in your organization or in an OU in -// your organization. +// deploys. StackSets does not deploy stack instances to the organization management +// account, even if the organization management account is in your organization +// or in an OU in your organization. // // For update operations, you can specify either Accounts or OrganizationalUnitIds. // For create and delete operations, specify OrganizationalUnitIds. @@ -8058,6 +8107,9 @@ type DescribeChangeSetOutput struct { // updated. ExecutionStatus *string `type:"string" enum:"ExecutionStatus"` + // Verifies if IncludeNestedStacks is set to True. + IncludeNestedStacks *bool `type:"boolean"` + // If the output exceeds 1 MB, a string that identifies the next page of changes. // If there is no additional page, this value is null. NextToken *string `min:"1" type:"string"` @@ -8072,10 +8124,18 @@ type DescribeChangeSetOutput struct { // data type. Parameters []*Parameter `type:"list"` + // Specifies the change set ID of the parent change set in the current nested + // change set hierarchy. + ParentChangeSetId *string `min:"1" type:"string"` + // The rollback triggers for AWS CloudFormation to monitor during stack creation // and updating operations, and for the specified monitoring period afterwards. RollbackConfiguration *RollbackConfiguration `type:"structure"` + // Specifies the change set ID of the root change set in the current nested + // change set hierarchy. + RootChangeSetId *string `min:"1" type:"string"` + // The ARN of the stack that is associated with the change set. StackId *string `type:"string"` @@ -8147,6 +8207,12 @@ func (s *DescribeChangeSetOutput) SetExecutionStatus(v string) *DescribeChangeSe return s } +// SetIncludeNestedStacks sets the IncludeNestedStacks field's value. +func (s *DescribeChangeSetOutput) SetIncludeNestedStacks(v bool) *DescribeChangeSetOutput { + s.IncludeNestedStacks = &v + return s +} + // SetNextToken sets the NextToken field's value. func (s *DescribeChangeSetOutput) SetNextToken(v string) *DescribeChangeSetOutput { s.NextToken = &v @@ -8165,12 +8231,24 @@ func (s *DescribeChangeSetOutput) SetParameters(v []*Parameter) *DescribeChangeS return s } +// SetParentChangeSetId sets the ParentChangeSetId field's value. +func (s *DescribeChangeSetOutput) SetParentChangeSetId(v string) *DescribeChangeSetOutput { + s.ParentChangeSetId = &v + return s +} + // SetRollbackConfiguration sets the RollbackConfiguration field's value. func (s *DescribeChangeSetOutput) SetRollbackConfiguration(v *RollbackConfiguration) *DescribeChangeSetOutput { s.RollbackConfiguration = v return s } +// SetRootChangeSetId sets the RootChangeSetId field's value. +func (s *DescribeChangeSetOutput) SetRootChangeSetId(v string) *DescribeChangeSetOutput { + s.RootChangeSetId = &v + return s +} + // SetStackId sets the StackId field's value. func (s *DescribeChangeSetOutput) SetStackId(v string) *DescribeChangeSetOutput { s.StackId = &v @@ -11559,6 +11637,9 @@ type ListTypesInput struct { // handlers, and therefore cannot actually be provisioned. ProvisioningType *string `type:"string" enum:"ProvisioningType"` + // The type of extension. + Type *string `type:"string" enum:"RegistryType"` + // The scope at which the type is visible and usable in CloudFormation operations. // // Valid values include: @@ -11624,6 +11705,12 @@ func (s *ListTypesInput) SetProvisioningType(v string) *ListTypesInput { return s } +// SetType sets the Type field's value. +func (s *ListTypesInput) SetType(v string) *ListTypesInput { + s.Type = &v + return s +} + // SetVisibility sets the Visibility field's value. func (s *ListTypesInput) SetVisibility(v string) *ListTypesInput { s.Visibility = &v @@ -11727,6 +11814,62 @@ func (s *LoggingConfig) SetLogRoleArn(v string) *LoggingConfig { return s } +// Contains information about the module from which the resource was created, +// if the resource was created from a module included in the stack template. +// +// For more information on modules, see Using modules to encapsulate and reuse +// resource configurations (AWSCloudFormation/latest/UserGuide/modules.html) +// in the CloudFormation User Guide. +type ModuleInfo struct { + _ struct{} `type:"structure"` + + // A concantenated list of the logical IDs of the module or modules containing + // the resource. Modules are listed starting with the inner-most nested module, + // and separated by /. + // + // In the following example, the resource was created from a module, moduleA, + // that is nested inside a parent module, moduleB. + // + // moduleA/moduleB + // + // For more information, see Referencing resources in a module (AWSCloudFormation/latest/UserGuide/modules.html#module-ref-resources) + // in the CloudFormation User Guide. + LogicalIdHierarchy *string `type:"string"` + + // A concantenated list of the the module type or types containing the resource. + // Module types are listed starting with the inner-most nested module, and separated + // by /. + // + // In the following example, the resource was created from a module of type + // AWS::First::Example::MODULE, that is nested inside a parent module of type + // AWS::Second::Example::MODULE. + // + // AWS::First::Example::MODULE/AWS::Second::Example::MODULE + TypeHierarchy *string `type:"string"` +} + +// String returns the string representation +func (s ModuleInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ModuleInfo) GoString() string { + return s.String() +} + +// SetLogicalIdHierarchy sets the LogicalIdHierarchy field's value. +func (s *ModuleInfo) SetLogicalIdHierarchy(v string) *ModuleInfo { + s.LogicalIdHierarchy = &v + return s +} + +// SetTypeHierarchy sets the TypeHierarchy field's value. +func (s *ModuleInfo) SetTypeHierarchy(v string) *ModuleInfo { + s.TypeHierarchy = &v + return s +} + // The Output data type. type Output struct { _ struct{} `type:"structure"` @@ -12196,11 +12339,12 @@ type RegisterTypeInput struct { // to register, see submit (https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-cli-submit.html) // in the CloudFormation CLI User Guide. // - // As part of registering a resource provider type, CloudFormation must be able - // to access the S3 bucket which contains the schema handler package for that - // resource provider. For more information, see IAM Permissions for Registering - // a Resource Provider (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/registry.html#registry-register-permissions) - // in the AWS CloudFormation User Guide. + // The user registering the resource provider type must be able to access the + // the schema handler package in the S3 bucket. That is, the user needs to have + // GetObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html) + // permissions for the schema handler package. For more information, see Actions, + // Resources, and Condition Keys for Amazon S3 (https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazons3.html) + // in the AWS Identity and Access Management User Guide. // // SchemaHandlerPackage is a required field SchemaHandlerPackage *string `min:"1" type:"string" required:"true"` @@ -12344,9 +12488,14 @@ type ResourceChange struct { _ struct{} `type:"structure"` // The action that AWS CloudFormation takes on the resource, such as Add (adds - // a new resource), Modify (changes a resource), or Remove (deletes a resource). + // a new resource), Modify (changes a resource), Remove (deletes a resource), + // Import (imports a resource), or Dynamic (exact action for the resource cannot + // be determined). Action *string `type:"string" enum:"ChangeAction"` + // The change set ID of the nested change set. + ChangeSetId *string `min:"1" type:"string"` + // For the Modify action, a list of ResourceChangeDetail structures that describes // the changes that AWS CloudFormation will make to the resource. Details []*ResourceChangeDetail `type:"list"` @@ -12354,6 +12503,10 @@ type ResourceChange struct { // The resource's logical ID, which is defined in the stack's template. LogicalResourceId *string `type:"string"` + // Contains information about the module from which the resource was created, + // if the resource was created from a module included in the stack template. + ModuleInfo *ModuleInfo `type:"structure"` + // The resource's physical ID (resource name). Resources that you are adding // don't have physical IDs because they haven't been created. PhysicalResourceId *string `type:"string"` @@ -12396,6 +12549,12 @@ func (s *ResourceChange) SetAction(v string) *ResourceChange { return s } +// SetChangeSetId sets the ChangeSetId field's value. +func (s *ResourceChange) SetChangeSetId(v string) *ResourceChange { + s.ChangeSetId = &v + return s +} + // SetDetails sets the Details field's value. func (s *ResourceChange) SetDetails(v []*ResourceChangeDetail) *ResourceChange { s.Details = v @@ -12408,6 +12567,12 @@ func (s *ResourceChange) SetLogicalResourceId(v string) *ResourceChange { return s } +// SetModuleInfo sets the ModuleInfo field's value. +func (s *ResourceChange) SetModuleInfo(v *ModuleInfo) *ResourceChange { + s.ModuleInfo = v + return s +} + // SetPhysicalResourceId sets the PhysicalResourceId field's value. func (s *ResourceChange) SetPhysicalResourceId(v string) *ResourceChange { s.PhysicalResourceId = &v @@ -14024,6 +14189,10 @@ type StackResource struct { // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` + // Contains information about the module from which the resource was created, + // if the resource was created from a module included in the stack template. + ModuleInfo *ModuleInfo `type:"structure"` + // The name or unique identifier that corresponds to a physical instance ID // of a resource supported by AWS CloudFormation. PhysicalResourceId *string `type:"string"` @@ -14083,6 +14252,12 @@ func (s *StackResource) SetLogicalResourceId(v string) *StackResource { return s } +// SetModuleInfo sets the ModuleInfo field's value. +func (s *StackResource) SetModuleInfo(v *ModuleInfo) *StackResource { + s.ModuleInfo = v + return s +} + // SetPhysicalResourceId sets the PhysicalResourceId field's value. func (s *StackResource) SetPhysicalResourceId(v string) *StackResource { s.PhysicalResourceId = &v @@ -14153,6 +14328,10 @@ type StackResourceDetail struct { // in the AWS CloudFormation User Guide. Metadata *string `type:"string"` + // Contains information about the module from which the resource was created, + // if the resource was created from a module included in the stack template. + ModuleInfo *ModuleInfo `type:"structure"` + // The name or unique identifier that corresponds to a physical instance ID // of a resource supported by AWS CloudFormation. PhysicalResourceId *string `type:"string"` @@ -14219,6 +14398,12 @@ func (s *StackResourceDetail) SetMetadata(v string) *StackResourceDetail { return s } +// SetModuleInfo sets the ModuleInfo field's value. +func (s *StackResourceDetail) SetModuleInfo(v *ModuleInfo) *StackResourceDetail { + s.ModuleInfo = v + return s +} + // SetPhysicalResourceId sets the PhysicalResourceId field's value. func (s *StackResourceDetail) SetPhysicalResourceId(v string) *StackResourceDetail { s.PhysicalResourceId = &v @@ -14289,6 +14474,10 @@ type StackResourceDrift struct { // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` + // Contains information about the module from which the resource was created, + // if the resource was created from a module included in the stack template. + ModuleInfo *ModuleInfo `type:"structure"` + // The name or unique identifier that corresponds to a physical instance ID // of a resource supported by AWS CloudFormation. PhysicalResourceId *string `type:"string"` @@ -14366,6 +14555,12 @@ func (s *StackResourceDrift) SetLogicalResourceId(v string) *StackResourceDrift return s } +// SetModuleInfo sets the ModuleInfo field's value. +func (s *StackResourceDrift) SetModuleInfo(v *ModuleInfo) *StackResourceDrift { + s.ModuleInfo = v + return s +} + // SetPhysicalResourceId sets the PhysicalResourceId field's value. func (s *StackResourceDrift) SetPhysicalResourceId(v string) *StackResourceDrift { s.PhysicalResourceId = &v @@ -14531,6 +14726,10 @@ type StackResourceSummary struct { // LogicalResourceId is a required field LogicalResourceId *string `type:"string" required:"true"` + // Contains information about the module from which the resource was created, + // if the resource was created from a module included in the stack template. + ModuleInfo *ModuleInfo `type:"structure"` + // The name or unique identifier that corresponds to a physical instance ID // of the resource. PhysicalResourceId *string `type:"string"` @@ -14579,6 +14778,12 @@ func (s *StackResourceSummary) SetLogicalResourceId(v string) *StackResourceSumm return s } +// SetModuleInfo sets the ModuleInfo field's value. +func (s *StackResourceSummary) SetModuleInfo(v *ModuleInfo) *StackResourceSummary { + s.ModuleInfo = v + return s +} + // SetPhysicalResourceId sets the PhysicalResourceId field's value. func (s *StackResourceSummary) SetPhysicalResourceId(v string) *StackResourceSummary { s.PhysicalResourceId = &v @@ -16027,16 +16232,16 @@ type UpdateStackInput struct { // template, without first reviewing the resulting changes in a change set, // you must acknowledge this capability. This includes the AWS::Include (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/create-reusable-transform-function-snippets-and-add-to-your-template-with-aws-include-transform.html) // and AWS::Serverless (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-serverless.html) - // transforms, which are macros hosted by AWS CloudFormation. Change sets - // do not currently support nested stacks. If you want to update a stack - // from a stack template that contains macros and nested stacks, you must - // update the stack directly from the template using this capability. You - // should only update stacks directly from a stack template that contains - // macros if you know what processing the macro performs. Each macro relies - // on an underlying Lambda service function for processing stack templates. - // Be aware that the Lambda function owner can update the function operation - // without AWS CloudFormation being notified. For more information, see Using - // AWS CloudFormation Macros to Perform Custom Processing on Templates (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). + // transforms, which are macros hosted by AWS CloudFormation. If you want + // to update a stack from a stack template that contains macros and nested + // stacks, you must update the stack directly from the template using this + // capability. You should only update stacks directly from a stack template + // that contains macros if you know what processing the macro performs. Each + // macro relies on an underlying Lambda service function for processing stack + // templates. Be aware that the Lambda function owner can update the function + // operation without AWS CloudFormation being notified. For more information, + // see Using AWS CloudFormation Macros to Perform Custom Processing on Templates + // (http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-macros.html). Capabilities []*string `type:"list"` // A unique identifier for this UpdateStack request. Specify this token if you @@ -17195,6 +17400,9 @@ const ( // ChangeActionImport is a ChangeAction enum value ChangeActionImport = "Import" + + // ChangeActionDynamic is a ChangeAction enum value + ChangeActionDynamic = "Dynamic" ) // ChangeAction_Values returns all elements of the ChangeAction enum @@ -17204,6 +17412,7 @@ func ChangeAction_Values() []string { ChangeActionModify, ChangeActionRemove, ChangeActionImport, + ChangeActionDynamic, } } @@ -17217,9 +17426,18 @@ const ( // ChangeSetStatusCreateComplete is a ChangeSetStatus enum value ChangeSetStatusCreateComplete = "CREATE_COMPLETE" + // ChangeSetStatusDeletePending is a ChangeSetStatus enum value + ChangeSetStatusDeletePending = "DELETE_PENDING" + + // ChangeSetStatusDeleteInProgress is a ChangeSetStatus enum value + ChangeSetStatusDeleteInProgress = "DELETE_IN_PROGRESS" + // ChangeSetStatusDeleteComplete is a ChangeSetStatus enum value ChangeSetStatusDeleteComplete = "DELETE_COMPLETE" + // ChangeSetStatusDeleteFailed is a ChangeSetStatus enum value + ChangeSetStatusDeleteFailed = "DELETE_FAILED" + // ChangeSetStatusFailed is a ChangeSetStatus enum value ChangeSetStatusFailed = "FAILED" ) @@ -17230,7 +17448,10 @@ func ChangeSetStatus_Values() []string { ChangeSetStatusCreatePending, ChangeSetStatusCreateInProgress, ChangeSetStatusCreateComplete, + ChangeSetStatusDeletePending, + ChangeSetStatusDeleteInProgress, ChangeSetStatusDeleteComplete, + ChangeSetStatusDeleteFailed, ChangeSetStatusFailed, } } @@ -17546,12 +17767,16 @@ func RegistrationStatus_Values() []string { const ( // RegistryTypeResource is a RegistryType enum value RegistryTypeResource = "RESOURCE" + + // RegistryTypeModule is a RegistryType enum value + RegistryTypeModule = "MODULE" ) // RegistryType_Values returns all elements of the RegistryType enum func RegistryType_Values() []string { return []string{ RegistryTypeResource, + RegistryTypeModule, } } diff --git a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go index e42da3f3a..8b21f7a66 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go @@ -2039,7 +2039,7 @@ func (c *EC2) AttachVolumeRequest(input *AttachVolumeInput) (req *request.Reques // the instance with the specified device name. // // Encrypted EBS volumes must be attached to instances that support Amazon EBS -// encryption. For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// encryption. For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // After you attach an EBS volume, you must make it available. For more information, @@ -6108,7 +6108,7 @@ func (c *EC2) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Re // // You can take a snapshot of an attached volume that is in use. However, snapshots // only capture data that has been written to your EBS volume at the time the -// snapshot command is issued; this may exclude any data that has been cached +// snapshot command is issued; this might exclude any data that has been cached // by any applications or the operating system. If you can pause any file systems // on the volume long enough to take a snapshot, your snapshot should be complete. // However, if you cannot pause all file writes to the volume, you should unmount @@ -6129,7 +6129,7 @@ func (c *EC2) CreateSnapshotRequest(input *CreateSnapshotInput) (req *request.Re // in the Amazon Elastic Compute Cloud User Guide. // // For more information, see Amazon Elastic Block Store (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html) -// and Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// and Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -7423,8 +7423,7 @@ func (c *EC2) CreateVolumeRequest(input *CreateVolumeInput) (req *request.Reques // CreateVolume API operation for Amazon Elastic Compute Cloud. // // Creates an EBS volume that can be attached to an instance in the same Availability -// Zone. The volume is created in the regional endpoint that you send the HTTP -// request to. For more information see Regions and Endpoints (https://docs.aws.amazon.com/general/latest/gr/rande.html). +// Zone. // // You can create a new empty volume or restore a volume from an EBS snapshot. // Any AWS Marketplace product codes from the snapshot are propagated to the @@ -7433,7 +7432,7 @@ func (c *EC2) CreateVolumeRequest(input *CreateVolumeInput) (req *request.Reques // You can create encrypted volumes. Encrypted volumes must be attached to instances // that support Amazon EBS encryption. Volumes that are created from encrypted // snapshots are also automatically encrypted. For more information, see Amazon -// EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // You can tag your volumes during creation. For more information, see Tagging @@ -8677,11 +8676,29 @@ func (c *EC2) DeleteFleetsRequest(input *DeleteFleetsInput) (req *request.Reques // // Deletes the specified EC2 Fleet. // -// After you delete an EC2 Fleet, it launches no new instances. You must specify -// whether an EC2 Fleet should also terminate its instances. If you terminate -// the instances, the EC2 Fleet enters the deleted_terminating state. Otherwise, -// the EC2 Fleet enters the deleted_running state, and the instances continue -// to run until they are interrupted or you terminate them manually. +// After you delete an EC2 Fleet, it launches no new instances. +// +// You must specify whether a deleted EC2 Fleet should also terminate its instances. +// If you choose to terminate the instances, the EC2 Fleet enters the deleted_terminating +// state. Otherwise, the EC2 Fleet enters the deleted_running state, and the +// instances continue to run until they are interrupted or you terminate them +// manually. +// +// For instant fleets, EC2 Fleet must terminate the instances when the fleet +// is deleted. A deleted instant fleet with running instances is not supported. +// +// Restrictions +// +// * You can delete up to 25 instant fleets in a single request. If you exceed +// this number, no instant fleets are deleted and an error is returned. There +// is no restriction on the number of fleets of type maintain or request +// that can be deleted in a single request. +// +// * Up to 1000 instances can be terminated in a single request to delete +// instant fleets. +// +// For more information, see Deleting an EC2 Fleet (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#delete-fleet) +// in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -21602,7 +21619,7 @@ func (c *EC2) DescribeSnapshotAttributeRequest(input *DescribeSnapshotAttributeI // Describes the specified attribute of the specified snapshot. You can specify // only one attribute at a time. // -// For more information about EBS snapshots, see Amazon EBS Snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) +// For more information about EBS snapshots, see Amazon EBS snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -21731,7 +21748,7 @@ func (c *EC2) DescribeSnapshotsRequest(input *DescribeSnapshotsInput) (req *requ // // To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores. // -// For more information about EBS snapshots, see Amazon EBS Snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) +// For more information about EBS snapshots, see Amazon EBS snapshots (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -24112,7 +24129,7 @@ func (c *EC2) DescribeVolumeAttributeRequest(input *DescribeVolumeAttributeInput // Describes the specified attribute of the specified volume. You can specify // only one attribute at a time. // -// For more information about EBS volumes, see Amazon EBS Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumes.html) +// For more information about EBS volumes, see Amazon EBS volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -24208,19 +24225,19 @@ func (c *EC2) DescribeVolumeStatusRequest(input *DescribeVolumeStatusInput) (req // Status: Reflects the current status of the volume. The possible values are // ok, impaired , warning, or insufficient-data. If all checks pass, the overall // status of the volume is ok. If the check fails, the overall status is impaired. -// If the status is insufficient-data, then the checks may still be taking place -// on your volume at the time. We recommend that you retry the request. For -// more information about volume status, see Monitoring the status of your volumes -// (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-volume-status.html) +// If the status is insufficient-data, then the checks might still be taking +// place on your volume at the time. We recommend that you retry the request. +// For more information about volume status, see Monitoring the status of your +// volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-volume-status.html) // in the Amazon Elastic Compute Cloud User Guide. // -// Events: Reflect the cause of a volume status and may require you to take +// Events: Reflect the cause of a volume status and might require you to take // action. For example, if your volume returns an impaired status, then the // volume event might be potential-data-inconsistency. This means that your // volume has been affected by an issue with the underlying host, has all I/O -// operations disabled, and may have inconsistent data. +// operations disabled, and might have inconsistent data. // -// Actions: Reflect the actions you may have to take in response to an event. +// Actions: Reflect the actions you might have to take in response to an event. // For example, if the status of the volume is impaired and the volume event // shows potential-data-inconsistency, then the action shows enable-volume-io. // This means that you may want to enable the I/O operations for the volume @@ -24369,7 +24386,7 @@ func (c *EC2) DescribeVolumesRequest(input *DescribeVolumesInput) (req *request. // with a NextToken value that can be passed to a subsequent DescribeVolumes // request to retrieve the remaining results. // -// For more information about EBS volumes, see Amazon EBS Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumes.html) +// For more information about EBS volumes, see Amazon EBS volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumes.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -26493,7 +26510,7 @@ func (c *EC2) DisableEbsEncryptionByDefaultRequest(input *DisableEbsEncryptionBy // Disabling encryption by default does not change the encryption status of // your existing volumes. // -// For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -27660,7 +27677,7 @@ func (c *EC2) EnableEbsEncryptionByDefaultRequest(input *EnableEbsEncryptionByDe // // After you enable encryption by default, the EBS volumes that you create are // are always encrypted, either using the default CMK or the CMK that you specified -// when you created each volume. For more information, see Amazon EBS Encryption +// when you created each volume. For more information, see Amazon EBS encryption // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // @@ -29137,7 +29154,7 @@ func (c *EC2) GetEbsDefaultKmsKeyIdRequest(input *GetEbsDefaultKmsKeyIdInput) (r // for your account in this Region. You can change the default CMK for encryption // by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId. // -// For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -29215,7 +29232,7 @@ func (c *EC2) GetEbsEncryptionByDefaultRequest(input *GetEbsEncryptionByDefaultI // Describes whether EBS encryption by default is enabled for your account in // the current Region. // -// For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -31480,7 +31497,7 @@ func (c *EC2) ModifyEbsDefaultKmsKeyIdRequest(input *ModifyEbsDefaultKmsKeyIdInp // If you delete or disable the customer managed CMK that you specified for // use with encryption by default, your instances will fail to launch. // -// For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -33624,7 +33641,7 @@ func (c *EC2) ModifyVolumeRequest(input *ModifyVolumeInput) (req *request.Reques // // You can modify several parameters of an existing EBS volume, including volume // size, volume type, and IOPS capacity. If your EBS volume is attached to a -// current-generation EC2 instance type, you may be able to apply these changes +// current-generation EC2 instance type, you might be able to apply these changes // without stopping the instance or detaching the volume from it. For more information // about modifying an EBS volume running Linux, see Modifying the size, IOPS, // or type of an EBS volume on Linux (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-expand-volume.html). @@ -33645,11 +33662,11 @@ func (c *EC2) ModifyVolumeRequest(input *ModifyVolumeInput) (req *request.Reques // For information about tracking status changes using either method, see Monitoring // volume modifications (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-expand-volume.html#monitoring_mods). // -// With previous-generation instance types, resizing an EBS volume may require +// With previous-generation instance types, resizing an EBS volume might require // detaching and reattaching the volume or stopping and restarting the instance. -// For more information, see Modifying the size, IOPS, or type of an EBS volume -// on Linux (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-expand-volume.html) -// and Modifying the size, IOPS, or type of an EBS volume on Windows (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-expand-volume.html). +// For more information, see Amazon EBS Elastic Volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modify-volume.html) +// (Linux) or Amazon EBS Elastic Volumes (https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-modify-volume.html) +// (Windows). // // If you reach the maximum volume modification rate per volume limit, you will // need to wait at least six hours before applying further modifications to @@ -36879,7 +36896,7 @@ func (c *EC2) ResetEbsDefaultKmsKeyIdRequest(input *ResetEbsDefaultKmsKeyIdInput // // After resetting the default CMK to the AWS managed CMK, you can continue // to encrypt by a customer managed CMK by specifying it when you create the -// volume. For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) +// volume. For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions @@ -46627,7 +46644,7 @@ type CopySnapshotInput struct { // not enabled, enable encryption using this parameter. Otherwise, omit this // parameter. Encrypted snapshots are encrypted, even if you omit this parameter // and encryption by default is not enabled. You cannot set this parameter to - // false. For more information, see Amazon EBS Encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) + // false. For more information, see Amazon EBS encryption (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) // in the Amazon Elastic Compute Cloud User Guide. Encrypted *bool `locationName:"encrypted" type:"boolean"` @@ -46653,14 +46670,14 @@ type CopySnapshotInput struct { // When you copy an encrypted source snapshot using the Amazon EC2 Query API, // you must supply a pre-signed URL. This parameter is optional for unencrypted - // snapshots. For more information, see Query Requests (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html). + // snapshots. For more information, see Query requests (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html). // // The PresignedUrl should use the snapshot source endpoint, the CopySnapshot // action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion // parameters. The PresignedUrl must be signed using AWS Signature Version 4. // Because EBS snapshots are stored in Amazon S3, the signing algorithm for - // this parameter uses the same logic that is described in Authenticating Requests - // by Using Query Parameters (AWS Signature Version 4) (https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) + // this parameter uses the same logic that is described in Authenticating Requests: + // Using Query Parameters (AWS Signature Version 4) (https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) // in the Amazon Simple Storage Service API Reference. An invalid or improperly // signed PresignedUrl will cause the copy operation to fail asynchronously, // and the snapshot will move to an error state. @@ -48787,10 +48804,25 @@ type CreateImageInput struct { Name *string `locationName:"name" type:"string" required:"true"` // By default, Amazon EC2 attempts to shut down and reboot the instance before - // creating the image. If the 'No Reboot' option is set, Amazon EC2 doesn't - // shut down the instance before creating the image. When this option is used, - // file system integrity on the created image can't be guaranteed. + // creating the image. If the No Reboot option is set, Amazon EC2 doesn't shut + // down the instance before creating the image. When this option is used, file + // system integrity on the created image can't be guaranteed. NoReboot *bool `locationName:"noReboot" type:"boolean"` + + // The tags to apply to the AMI and snapshots on creation. You can tag the AMI, + // the snapshots, or both. + // + // * To tag the AMI, the value for ResourceType must be image. + // + // * To tag the snapshots that are created of the root volume and of other + // EBS volumes that are attached to the instance, the value for ResourceType + // must be snapshot. The same tag is applied to all of the snapshots that + // are created. + // + // If you specify other values for ResourceType, the request fails. + // + // To tag an AMI or snapshot after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html). + TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` } // String returns the string representation @@ -48855,6 +48887,12 @@ func (s *CreateImageInput) SetNoReboot(v bool) *CreateImageInput { return s } +// SetTagSpecifications sets the TagSpecifications field's value. +func (s *CreateImageInput) SetTagSpecifications(v []*TagSpecification) *CreateImageInput { + s.TagSpecifications = v + return s +} + type CreateImageOutput struct { _ struct{} `type:"structure"` @@ -52873,7 +52911,7 @@ type CreateVolumeInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` - // Specifies whether the volume should be encrypted. The effect of setting the + // Indicates whether the volume should be encrypted. The effect of setting the // encryption state to true depends on the volume origin (new or from a snapshot), // starting encryption state, ownership, and whether encryption by default is // enabled. For more information, see Encryption by default (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) @@ -52883,15 +52921,26 @@ type CreateVolumeInput struct { // EBS encryption. For more information, see Supported instance types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#EBSEncryption_supported_instances). Encrypted *bool `locationName:"encrypted" type:"boolean"` - // The number of I/O operations per second (IOPS) to provision for an io1 or - // io2 volume, with a maximum ratio of 50 IOPS/GiB for io1, and 500 IOPS/GiB - // for io2. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum - // IOPS of 64,000 is guaranteed only on Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. For more - // information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon Elastic Compute Cloud User Guide. + // The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, + // this represents the number of IOPS that are provisioned for the volume. For + // gp2 volumes, this represents the baseline performance of the volume and the + // rate at which the volume accumulates I/O credits for bursting. // - // This parameter is valid only for Provisioned IOPS SSD (io1 and io2) volumes. + // The following are the supported values for each volume type: + // + // * gp3: 3,000-16,000 IOPS + // + // * io1: 100-64,000 IOPS + // + // * io2: 100-64,000 IOPS + // + // For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built + // on the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). + // Other instance families guarantee performance up to 32,000 IOPS. + // + // This parameter is required for io1 and io2 volumes. The default for gp3 volumes + // is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard + // volumes. Iops *int64 `type:"integer"` // The identifier of the AWS Key Management Service (AWS KMS) customer master @@ -52914,10 +52963,11 @@ type CreateVolumeInput struct { // fails. KmsKeyId *string `type:"string"` - // Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, - // you can attach the volume to up to 16 Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances) - // in the same Availability Zone. For more information, see Amazon EBS Multi-Attach - // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes-multi.html) + // Indicates whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, + // you can attach the volume to up to 16 Instances built on the Nitro System + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances) + // in the same Availability Zone. This parameter is supported with io1 volumes + // only. For more information, see Amazon EBS Multi-Attach (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes-multi.html) // in the Amazon Elastic Compute Cloud User Guide. MultiAttachEnabled *bool `type:"boolean"` @@ -52925,14 +52975,19 @@ type CreateVolumeInput struct { OutpostArn *string `type:"string"` // The size of the volume, in GiBs. You must specify either a snapshot ID or - // a volume size. + // a volume size. If you specify a snapshot, the default is the snapshot size. + // You can specify a volume size that is equal to or larger than the snapshot + // size. // - // Constraints: 1-16,384 for gp2, 4-16,384 for io1 and io2, 500-16,384 for st1, - // 500-16,384 for sc1, and 1-1,024 for standard. If you specify a snapshot, - // the volume size must be equal to or larger than the snapshot size. + // The following are the supported volumes sizes for each volume type: // - // Default: If you're creating the volume from a snapshot and don't specify - // a volume size, the default is the snapshot size. + // * gp2 and gp3: 1-16,384 + // + // * io1 and io2: 4-16,384 + // + // * st1 and sc1: 125-16,384 + // + // * standard: 1-1,024 Size *int64 `type:"integer"` // The snapshot from which to create the volume. You must specify either a snapshot @@ -52942,9 +52997,27 @@ type CreateVolumeInput struct { // The tags to apply to the volume during creation. TagSpecifications []*TagSpecification `locationName:"TagSpecification" locationNameList:"item" type:"list"` - // The volume type. This can be gp2 for General Purpose SSD, io1 or io2 for - // Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, - // or standard for Magnetic volumes. + // The throughput to provision for a volume, with a maximum of 1,000 MiB/s. + // + // This parameter is valid only for gp3 volumes. + // + // Valid Range: Minimum value of 125. Maximum value of 1000. + Throughput *int64 `type:"integer"` + + // The volume type. This parameter can be one of the following values: + // + // * General Purpose SSD: gp2 | gp3 + // + // * Provisioned IOPS SSD: io1 | io2 + // + // * Throughput Optimized HDD: st1 + // + // * Cold HDD: sc1 + // + // * Magnetic: standard + // + // For more information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) + // in the Amazon Elastic Compute Cloud User Guide. // // Default: gp2 VolumeType *string `type:"string" enum:"VolumeType"` @@ -53033,6 +53106,12 @@ func (s *CreateVolumeInput) SetTagSpecifications(v []*TagSpecification) *CreateV return s } +// SetThroughput sets the Throughput field's value. +func (s *CreateVolumeInput) SetThroughput(v int64) *CreateVolumeInput { + s.Throughput = &v + return s +} + // SetVolumeType sets the VolumeType field's value. func (s *CreateVolumeInput) SetVolumeType(v string) *CreateVolumeInput { s.VolumeType = &v @@ -54808,8 +54887,14 @@ type DeleteFleetsInput struct { // FleetIds is a required field FleetIds []*string `locationName:"FleetId" type:"list" required:"true"` - // Indicates whether to terminate instances for an EC2 Fleet if it is deleted - // successfully. + // Indicates whether to terminate the instances when the EC2 Fleet is deleted. + // The default is to terminate the instances. + // + // To let the instances continue to run after the EC2 Fleet is deleted, specify + // NoTerminateInstances. Supported only for fleets of type maintain and request. + // + // For instant fleets, you cannot specify NoTerminateInstances. A deleted instant + // fleet with running instances is not supported. // // TerminateInstances is a required field TerminateInstances *bool `type:"boolean" required:"true"` @@ -68612,7 +68697,7 @@ type DescribeSnapshotsInput struct { // results in a single page along with a NextToken response element. The remaining // results of the initial request can be seen by sending another DescribeSnapshots // request with the returned NextToken value. This value can be between 5 and - // 1000; if MaxResults is given a value larger than 1000, only 1000 results + // 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results // are returned. If this parameter is not used, then DescribeSnapshots returns // all results. You cannot specify this parameter and the snapshot IDs parameter // in the same request. @@ -71154,8 +71239,8 @@ type DescribeVolumeStatusInput struct { // paginated output. When this parameter is used, the request only returns MaxResults // results in a single page along with a NextToken response element. The remaining // results of the initial request can be seen by sending another request with - // the returned NextToken value. This value can be between 5 and 1000; if MaxResults - // is given a value larger than 1000, only 1000 results are returned. If this + // the returned NextToken value. This value can be between 5 and 1,000; if MaxResults + // is given a value larger than 1,000, only 1,000 results are returned. If this // parameter is not used, then DescribeVolumeStatus returns all results. You // cannot specify this parameter and the volume IDs parameter in the same request. MaxResults *int64 `type:"integer"` @@ -71300,9 +71385,8 @@ type DescribeVolumesInput struct { // // * volume-id - The volume ID. // - // * volume-type - The Amazon EBS volume type. This can be gp2 for General - // Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 for Throughput Optimized - // HDD, sc1 for Cold HDD, or standard for Magnetic volumes. + // * volume-type - The Amazon EBS volume type (gp2 | gp3 | io1 | io2 | st1 + // | sc1| standard) Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` // The maximum number of volume results returned by DescribeVolumes in paginated @@ -75246,22 +75330,25 @@ type EbsBlockDevice struct { // This parameter is not returned by . Encrypted *bool `locationName:"encrypted" type:"boolean"` - // The number of I/O operations per second (IOPS) that the volume supports. - // For io1 and io2 volumes, this represents the number of IOPS that are provisioned - // for the volume. For gp2 volumes, this represents the baseline performance - // of the volume and the rate at which the volume accumulates I/O credits for - // bursting. For more information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon Elastic Compute Cloud User Guide. + // The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, + // this represents the number of IOPS that are provisioned for the volume. For + // gp2 volumes, this represents the baseline performance of the volume and the + // rate at which the volume accumulates I/O credits for bursting. // - // Constraints: Range is 100-16,000 IOPS for gp2 volumes and 100 to 64,000 IOPS - // for io1 and io2 volumes in most Regions. Maximum io1 and io2 IOPS of 64,000 - // is guaranteed only on Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. For more - // information, see Amazon EBS Volume Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon Elastic Compute Cloud User Guide. + // The following are the supported values for each volume type: + // + // * gp3: 3,000-16,000 IOPS + // + // * io1: 100-64,000 IOPS + // + // * io2: 100-64,000 IOPS // - // Condition: This parameter is required for requests to create io1 and io2 - // volumes; it is not used in requests to create gp2, st1, sc1, or standard + // For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built + // on the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). + // Other instance families guarantee performance up to 32,000 IOPS. + // + // This parameter is required for io1 and io2 volumes. The default for gp3 volumes + // is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard // volumes. Iops *int64 `locationName:"iops" type:"integer"` @@ -75277,23 +75364,34 @@ type EbsBlockDevice struct { // The ID of the snapshot. SnapshotId *string `locationName:"snapshotId" type:"string"` - // The size of the volume, in GiB. + // The throughput that the volume supports, in MiB/s. // - // Default: If you're creating the volume from a snapshot and don't specify - // a volume size, the default is the snapshot size. + // This parameter is valid only for gp3 volumes. // - // Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned - // IOPS SSD (io1 and io2), 500-16384 for Throughput Optimized HDD (st1), 500-16384 - // for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify - // a snapshot, the volume size must be equal to or larger than the snapshot + // Valid Range: Minimum value of 125. Maximum value of 1000. + Throughput *int64 `locationName:"throughput" type:"integer"` + + // The size of the volume, in GiBs. You must specify either a snapshot ID or + // a volume size. If you specify a snapshot, the default is the snapshot size. + // You can specify a volume size that is equal to or larger than the snapshot // size. + // + // The following are the supported volumes sizes for each volume type: + // + // * gp2 and gp3:1-16,384 + // + // * io1 and io2: 4-16,384 + // + // * st1: 500-16,384 + // + // * sc1: 500-16,384 + // + // * standard: 1-1,024 VolumeSize *int64 `locationName:"volumeSize" type:"integer"` - // The volume type. If you set the type to io1 or io2, you must also specify - // the Iops parameter. If you set the type to gp2, st1, sc1, or standard, you - // must omit the Iops parameter. - // - // Default: gp2 + // The volume type. For more information, see Amazon EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) + // in the Amazon Elastic Compute Cloud User Guide. If the volume type is io1 + // or io2, you must specify the IOPS that the volume supports. VolumeType *string `locationName:"volumeType" type:"string" enum:"VolumeType"` } @@ -75337,6 +75435,12 @@ func (s *EbsBlockDevice) SetSnapshotId(v string) *EbsBlockDevice { return s } +// SetThroughput sets the Throughput field's value. +func (s *EbsBlockDevice) SetThroughput(v int64) *EbsBlockDevice { + s.Throughput = &v + return s +} + // SetVolumeSize sets the VolumeSize field's value. func (s *EbsBlockDevice) SetVolumeSize(v int64) *EbsBlockDevice { s.VolumeSize = &v @@ -78443,9 +78547,8 @@ type FleetSpotCapacityRebalance struct { // specify launch. Only available for fleets of type maintain. // // When a replacement instance is launched, the instance marked for rebalance - // is not automatically terminated. You can terminate it, or you can wait until - // Amazon EC2 interrupts it. You are charged for both instances while they are - // running. + // is not automatically terminated. You can terminate it, or you can leave it + // running. You are charged for both instances while they are running. ReplacementStrategy *string `locationName:"replacementStrategy" type:"string" enum:"FleetReplacementStrategy"` } @@ -78479,9 +78582,8 @@ type FleetSpotCapacityRebalanceRequest struct { // specify launch. You must specify a value, otherwise you get an error. // // When a replacement instance is launched, the instance marked for rebalance - // is not automatically terminated. You can terminate it, or you can wait until - // Amazon EC2 interrupts it. You are charged for all instances while they are - // running. + // is not automatically terminated. You can terminate it, or you can leave it + // running. You are charged for all instances while they are running. ReplacementStrategy *string `type:"string" enum:"FleetReplacementStrategy"` } @@ -87689,6 +87791,9 @@ type LaunchTemplateEbsBlockDevice struct { // The ID of the snapshot. SnapshotId *string `locationName:"snapshotId" type:"string"` + // The throughput that the volume supports, in MiB/s. + Throughput *int64 `locationName:"throughput" type:"integer"` + // The size of the volume, in GiB. VolumeSize *int64 `locationName:"volumeSize" type:"integer"` @@ -87736,6 +87841,12 @@ func (s *LaunchTemplateEbsBlockDevice) SetSnapshotId(v string) *LaunchTemplateEb return s } +// SetThroughput sets the Throughput field's value. +func (s *LaunchTemplateEbsBlockDevice) SetThroughput(v int64) *LaunchTemplateEbsBlockDevice { + s.Throughput = &v + return s +} + // SetVolumeSize sets the VolumeSize field's value. func (s *LaunchTemplateEbsBlockDevice) SetVolumeSize(v int64) *LaunchTemplateEbsBlockDevice { s.VolumeSize = &v @@ -87760,15 +87871,26 @@ type LaunchTemplateEbsBlockDeviceRequest struct { // a volume from a snapshot, you can't specify an encryption value. Encrypted *bool `type:"boolean"` - // The number of I/O operations per second (IOPS) to provision for an io1 or - // io2 volume, with a maximum ratio of 50 IOPS/GiB for io1, and 500 IOPS/GiB - // for io2. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum - // IOPS of 64,000 is guaranteed only on Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. For more - // information, see Amazon EBS Volume Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon Elastic Compute Cloud User Guide. + // The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, + // this represents the number of IOPS that are provisioned for the volume. For + // gp2 volumes, this represents the baseline performance of the volume and the + // rate at which the volume accumulates I/O credits for bursting. // - // This parameter is valid only for Provisioned IOPS SSD (io1 and io2) volumes. + // The following are the supported values for each volume type: + // + // * gp3: 3,000-16,000 IOPS + // + // * io1: 100-64,000 IOPS + // + // * io2: 100-64,000 IOPS + // + // For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built + // on the Nitro System (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). + // Other instance families guarantee performance up to 32,000 IOPS. + // + // This parameter is required for io1 and io2 volumes. The default for gp3 volumes + // is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard + // volumes. Iops *int64 `type:"integer"` // The ARN of the symmetric AWS Key Management Service (AWS KMS) CMK used for @@ -87778,13 +87900,30 @@ type LaunchTemplateEbsBlockDeviceRequest struct { // The ID of the snapshot. SnapshotId *string `type:"string"` - // The size of the volume, in GiB. + // The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s. // - // Default: If you're creating the volume from a snapshot and don't specify - // a volume size, the default is the snapshot size. + // Valid Range: Minimum value of 125. Maximum value of 1000. + Throughput *int64 `type:"integer"` + + // The size of the volume, in GiBs. You must specify either a snapshot ID or + // a volume size. If you specify a snapshot, the default is the snapshot size. + // You can specify a volume size that is equal to or larger than the snapshot + // size. + // + // The following are the supported volumes sizes for each volume type: + // + // * gp2 and gp3: 1-16,384 + // + // * io1 and io2: 4-16,384 + // + // * st1 and sc1: 125-16,384 + // + // * standard: 1-1,024 VolumeSize *int64 `type:"integer"` - // The volume type. + // The volume type. The default is gp2. For more information, see Amazon EBS + // volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) + // in the Amazon Elastic Compute Cloud User Guide. VolumeType *string `type:"string" enum:"VolumeType"` } @@ -87828,6 +87967,12 @@ func (s *LaunchTemplateEbsBlockDeviceRequest) SetSnapshotId(v string) *LaunchTem return s } +// SetThroughput sets the Throughput field's value. +func (s *LaunchTemplateEbsBlockDeviceRequest) SetThroughput(v int64) *LaunchTemplateEbsBlockDeviceRequest { + s.Throughput = &v + return s +} + // SetVolumeSize sets the VolumeSize field's value. func (s *LaunchTemplateEbsBlockDeviceRequest) SetVolumeSize(v int64) *LaunchTemplateEbsBlockDeviceRequest { s.VolumeSize = &v @@ -93889,27 +94034,52 @@ type ModifyVolumeInput struct { // it is UnauthorizedOperation. DryRun *bool `type:"boolean"` - // The target IOPS rate of the volume. + // The target IOPS rate of the volume. This parameter is valid only for gp3, + // io1, and io2 volumes. + // + // The following are the supported values for each volume type: // - // This is only valid for Provisioned IOPS SSD (io1 and io2) volumes. For moreinformation, - // see Provisioned IOPS SSD (io1 and io2) volumes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html#EBSVolumeTypes_piops). + // * gp3: 3,000-16,000 IOPS + // + // * io1: 100-64,000 IOPS + // + // * io2: 100-64,000 IOPS // // Default: If no IOPS value is specified, the existing value is retained. Iops *int64 `type:"integer"` // The target size of the volume, in GiB. The target volume size must be greater - // than or equal to than the existing size of the volume. For information about - // available EBS volume sizes, see Amazon EBS Volume Types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html). + // than or equal to the existing size of the volume. + // + // The following are the supported volumes sizes for each volume type: + // + // * gp2 and gp3: 1-16,384 + // + // * io1 and io2: 4-16,384 + // + // * st1 and sc1: 125-16,384 + // + // * standard: 1-1,024 // // Default: If no size is specified, the existing size is retained. Size *int64 `type:"integer"` + // The target throughput of the volume, in MiB/s. This parameter is valid only + // for gp3 volumes. The maximum value is 1,000. + // + // Default: If no throughput value is specified, the existing value is retained. + // + // Valid Range: Minimum value of 125. Maximum value of 1000. + Throughput *int64 `type:"integer"` + // The ID of the volume. // // VolumeId is a required field VolumeId *string `type:"string" required:"true"` - // The target EBS volume type of the volume. + // The target EBS volume type of the volume. For more information, see Amazon + // EBS volume types (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) + // in the Amazon Elastic Compute Cloud User Guide. // // Default: If no type is specified, the existing type is retained. VolumeType *string `type:"string" enum:"VolumeType"` @@ -93956,6 +94126,12 @@ func (s *ModifyVolumeInput) SetSize(v int64) *ModifyVolumeInput { return s } +// SetThroughput sets the Throughput field's value. +func (s *ModifyVolumeInput) SetThroughput(v int64) *ModifyVolumeInput { + s.Throughput = &v + return s +} + // SetVolumeId sets the VolumeId field's value. func (s *ModifyVolumeInput) SetVolumeId(v string) *ModifyVolumeInput { s.VolumeId = &v @@ -98084,6 +98260,30 @@ func (s *PrincipalIdFormat) SetStatuses(v []*IdFormat) *PrincipalIdFormat { return s } +// Information about the Private DNS name for interface endpoints. +type PrivateDnsDetails struct { + _ struct{} `type:"structure"` + + // The private DNS name assigned to the VPC endpoint service. + PrivateDnsName *string `locationName:"privateDnsName" type:"string"` +} + +// String returns the string representation +func (s PrivateDnsDetails) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s PrivateDnsDetails) GoString() string { + return s.String() +} + +// SetPrivateDnsName sets the PrivateDnsName field's value. +func (s *PrivateDnsDetails) SetPrivateDnsName(v string) *PrivateDnsDetails { + s.PrivateDnsName = &v + return s +} + // Information about the private DNS name for the service endpoint. For more // information about these parameters, see VPC Endpoint Service Private DNS // Name Verification (https://docs.aws.amazon.com/vpc/latest/userguide/ndpoint-services-dns-validation.html) @@ -106941,6 +107141,9 @@ type ServiceDetail struct { // is not verified. PrivateDnsNameVerificationState *string `locationName:"privateDnsNameVerificationState" type:"string" enum:"DnsNameState"` + // The private DNS names assigned to the VPC endpoint service. + PrivateDnsNames []*PrivateDnsDetails `locationName:"privateDnsNameSet" locationNameList:"item" type:"list"` + // The ID of the endpoint service. ServiceId *string `locationName:"serviceId" type:"string"` @@ -107009,6 +107212,12 @@ func (s *ServiceDetail) SetPrivateDnsNameVerificationState(v string) *ServiceDet return s } +// SetPrivateDnsNames sets the PrivateDnsNames field's value. +func (s *ServiceDetail) SetPrivateDnsNames(v []*PrivateDnsDetails) *ServiceDetail { + s.PrivateDnsNames = v + return s +} + // SetServiceId sets the ServiceId field's value. func (s *ServiceDetail) SetServiceId(v string) *ServiceDetail { s.ServiceId = &v @@ -107704,9 +107913,8 @@ type SpotCapacityRebalance struct { // launch. // // When a replacement instance is launched, the instance marked for rebalance - // is not automatically terminated. You can terminate it, or you can wait until - // Amazon EC2 interrupts it. You are charged for all instances while they are - // running. + // is not automatically terminated. You can terminate it, or you can leave it + // running. You are charged for all instances while they are running. ReplacementStrategy *string `locationName:"replacementStrategy" type:"string" enum:"ReplacementStrategy"` } @@ -110146,15 +110354,15 @@ type TagSpecification struct { // The type of resource to tag. Currently, the resource types that support tagging // on creation are: capacity-reservation | carrier-gateway | client-vpn-endpoint // | customer-gateway | dedicated-host | dhcp-options | export-image-task | - // export-instance-task | fleet | fpga-image | host-reservation | import-image-task + // export-instance-task | fleet | fpga-image | host-reservation | image| import-image-task // | import-snapshot-task | instance | internet-gateway | ipv4pool-ec2 | ipv6pool-ec2 // | key-pair | launch-template | placement-group | prefix-list | natgateway - // | network-acl | route-table | security-group | spot-fleet-request | spot-instances-request - // | snapshot | subnet | traffic-mirror-filter | traffic-mirror-session | traffic-mirror-target - // | transit-gateway | transit-gateway-attachment | transit-gateway-route-table - // | volume |vpc | vpc-peering-connection | vpc-endpoint (for interface and - // gateway endpoints) | vpc-endpoint-service (for AWS PrivateLink) | vpc-flow-log - // | vpn-connection | vpn-gateway. + // | network-acl | route-table | security-group| snapshot | spot-fleet-request + // | spot-instances-request | snapshot | subnet | traffic-mirror-filter | traffic-mirror-session + // | traffic-mirror-target | transit-gateway | transit-gateway-attachment | + // transit-gateway-route-table | volume |vpc | vpc-peering-connection | vpc-endpoint + // (for interface and gateway endpoints) | vpc-endpoint-service (for AWS PrivateLink) + // | vpc-flow-log | vpn-connection | vpn-gateway. // // To tag a resource after it has been created, see CreateTags (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html). ResourceType *string `locationName:"resourceType" type:"string" enum:"ResourceType"` @@ -114017,22 +114225,10 @@ type Volume struct { // Indicates whether the volume was created using fast snapshot restore. FastRestored *bool `locationName:"fastRestored" type:"boolean"` - // The number of I/O operations per second (IOPS) that the volume supports. - // For Provisioned IOPS SSD volumes, this represents the number of IOPS that - // are provisioned for the volume. For General Purpose SSD volumes, this represents - // the baseline performance of the volume and the rate at which the volume accumulates - // I/O credits for bursting. For more information, see Amazon EBS volume types - // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) - // in the Amazon Elastic Compute Cloud User Guide. - // - // Constraints: Range is 100-16,000 IOPS for gp2 volumes and 100 to 64,000 IOPS - // for io1 and io2 volumes, in most Regions. The maximum IOPS for io1 and io2 - // of 64,000 is guaranteed only on Nitro-based instances (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances). - // Other instance families guarantee performance up to 32,000 IOPS. - // - // Condition: This parameter is required for requests to create io1 and io2 - // volumes; it is not used in requests to create gp2, st1, sc1, or standard - // volumes. + // The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, + // this represents the number of IOPS that are provisioned for the volume. For + // gp2 volumes, this represents the baseline performance of the volume and the + // rate at which the volume accumulates I/O credits for bursting. Iops *int64 `locationName:"iops" type:"integer"` // The Amazon Resource Name (ARN) of the AWS Key Management Service (AWS KMS) @@ -114058,12 +114254,13 @@ type Volume struct { // Any tags assigned to the volume. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` + // The throughput that the volume supports, in MiB/s. + Throughput *int64 `locationName:"throughput" type:"integer"` + // The ID of the volume. VolumeId *string `locationName:"volumeId" type:"string"` - // The volume type. This can be gp2 for General Purpose SSD, io1 or io2 for - // Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, - // or standard for Magnetic volumes. + // The volume type. VolumeType *string `locationName:"volumeType" type:"string" enum:"VolumeType"` } @@ -114155,6 +114352,12 @@ func (s *Volume) SetTags(v []*Tag) *Volume { return s } +// SetThroughput sets the Throughput field's value. +func (s *Volume) SetThroughput(v int64) *Volume { + s.Throughput = &v + return s +} + // SetVolumeId sets the VolumeId field's value. func (s *Volume) SetVolumeId(v string) *Volume { s.VolumeId = &v @@ -114294,6 +114497,9 @@ type VolumeModification struct { // The original size of the volume, in GiB. OriginalSize *int64 `locationName:"originalSize" type:"integer"` + // The original throughput of the volume, in MiB/s. + OriginalThroughput *int64 `locationName:"originalThroughput" type:"integer"` + // The original EBS volume type of the volume. OriginalVolumeType *string `locationName:"originalVolumeType" type:"string" enum:"VolumeType"` @@ -114312,6 +114518,9 @@ type VolumeModification struct { // The target size of the volume, in GiB. TargetSize *int64 `locationName:"targetSize" type:"integer"` + // The target throughput of the volume, in MiB/s. + TargetThroughput *int64 `locationName:"targetThroughput" type:"integer"` + // The target EBS volume type of the volume. TargetVolumeType *string `locationName:"targetVolumeType" type:"string" enum:"VolumeType"` @@ -114353,6 +114562,12 @@ func (s *VolumeModification) SetOriginalSize(v int64) *VolumeModification { return s } +// SetOriginalThroughput sets the OriginalThroughput field's value. +func (s *VolumeModification) SetOriginalThroughput(v int64) *VolumeModification { + s.OriginalThroughput = &v + return s +} + // SetOriginalVolumeType sets the OriginalVolumeType field's value. func (s *VolumeModification) SetOriginalVolumeType(v string) *VolumeModification { s.OriginalVolumeType = &v @@ -114389,6 +114604,12 @@ func (s *VolumeModification) SetTargetSize(v int64) *VolumeModification { return s } +// SetTargetThroughput sets the TargetThroughput field's value. +func (s *VolumeModification) SetTargetThroughput(v int64) *VolumeModification { + s.TargetThroughput = &v + return s +} + // SetTargetVolumeType sets the TargetVolumeType field's value. func (s *VolumeModification) SetTargetVolumeType(v string) *VolumeModification { s.TargetVolumeType = &v @@ -118480,6 +118701,33 @@ const ( // InstanceTypeR5a24xlarge is a InstanceType enum value InstanceTypeR5a24xlarge = "r5a.24xlarge" + // InstanceTypeR5bLarge is a InstanceType enum value + InstanceTypeR5bLarge = "r5b.large" + + // InstanceTypeR5bXlarge is a InstanceType enum value + InstanceTypeR5bXlarge = "r5b.xlarge" + + // InstanceTypeR5b2xlarge is a InstanceType enum value + InstanceTypeR5b2xlarge = "r5b.2xlarge" + + // InstanceTypeR5b4xlarge is a InstanceType enum value + InstanceTypeR5b4xlarge = "r5b.4xlarge" + + // InstanceTypeR5b8xlarge is a InstanceType enum value + InstanceTypeR5b8xlarge = "r5b.8xlarge" + + // InstanceTypeR5b12xlarge is a InstanceType enum value + InstanceTypeR5b12xlarge = "r5b.12xlarge" + + // InstanceTypeR5b16xlarge is a InstanceType enum value + InstanceTypeR5b16xlarge = "r5b.16xlarge" + + // InstanceTypeR5b24xlarge is a InstanceType enum value + InstanceTypeR5b24xlarge = "r5b.24xlarge" + + // InstanceTypeR5bMetal is a InstanceType enum value + InstanceTypeR5bMetal = "r5b.metal" + // InstanceTypeR5dLarge is a InstanceType enum value InstanceTypeR5dLarge = "r5d.large" @@ -118966,6 +119214,36 @@ const ( // InstanceTypeD28xlarge is a InstanceType enum value InstanceTypeD28xlarge = "d2.8xlarge" + // InstanceTypeD3Xlarge is a InstanceType enum value + InstanceTypeD3Xlarge = "d3.xlarge" + + // InstanceTypeD32xlarge is a InstanceType enum value + InstanceTypeD32xlarge = "d3.2xlarge" + + // InstanceTypeD34xlarge is a InstanceType enum value + InstanceTypeD34xlarge = "d3.4xlarge" + + // InstanceTypeD38xlarge is a InstanceType enum value + InstanceTypeD38xlarge = "d3.8xlarge" + + // InstanceTypeD3enXlarge is a InstanceType enum value + InstanceTypeD3enXlarge = "d3en.xlarge" + + // InstanceTypeD3en2xlarge is a InstanceType enum value + InstanceTypeD3en2xlarge = "d3en.2xlarge" + + // InstanceTypeD3en4xlarge is a InstanceType enum value + InstanceTypeD3en4xlarge = "d3en.4xlarge" + + // InstanceTypeD3en6xlarge is a InstanceType enum value + InstanceTypeD3en6xlarge = "d3en.6xlarge" + + // InstanceTypeD3en8xlarge is a InstanceType enum value + InstanceTypeD3en8xlarge = "d3en.8xlarge" + + // InstanceTypeD3en12xlarge is a InstanceType enum value + InstanceTypeD3en12xlarge = "d3en.12xlarge" + // InstanceTypeF12xlarge is a InstanceType enum value InstanceTypeF12xlarge = "f1.2xlarge" @@ -119077,6 +119355,27 @@ const ( // InstanceTypeM5ad24xlarge is a InstanceType enum value InstanceTypeM5ad24xlarge = "m5ad.24xlarge" + // InstanceTypeM5znLarge is a InstanceType enum value + InstanceTypeM5znLarge = "m5zn.large" + + // InstanceTypeM5znXlarge is a InstanceType enum value + InstanceTypeM5znXlarge = "m5zn.xlarge" + + // InstanceTypeM5zn2xlarge is a InstanceType enum value + InstanceTypeM5zn2xlarge = "m5zn.2xlarge" + + // InstanceTypeM5zn3xlarge is a InstanceType enum value + InstanceTypeM5zn3xlarge = "m5zn.3xlarge" + + // InstanceTypeM5zn6xlarge is a InstanceType enum value + InstanceTypeM5zn6xlarge = "m5zn.6xlarge" + + // InstanceTypeM5zn12xlarge is a InstanceType enum value + InstanceTypeM5zn12xlarge = "m5zn.12xlarge" + + // InstanceTypeM5znMetal is a InstanceType enum value + InstanceTypeM5znMetal = "m5zn.metal" + // InstanceTypeH12xlarge is a InstanceType enum value InstanceTypeH12xlarge = "h1.2xlarge" @@ -119304,6 +119603,9 @@ const ( // InstanceTypeM6gd16xlarge is a InstanceType enum value InstanceTypeM6gd16xlarge = "m6gd.16xlarge" + + // InstanceTypeMac1Metal is a InstanceType enum value + InstanceTypeMac1Metal = "mac1.metal" ) // InstanceType_Values returns all elements of the InstanceType enum @@ -119384,6 +119686,15 @@ func InstanceType_Values() []string { InstanceTypeR5a12xlarge, InstanceTypeR5a16xlarge, InstanceTypeR5a24xlarge, + InstanceTypeR5bLarge, + InstanceTypeR5bXlarge, + InstanceTypeR5b2xlarge, + InstanceTypeR5b4xlarge, + InstanceTypeR5b8xlarge, + InstanceTypeR5b12xlarge, + InstanceTypeR5b16xlarge, + InstanceTypeR5b24xlarge, + InstanceTypeR5bMetal, InstanceTypeR5dLarge, InstanceTypeR5dXlarge, InstanceTypeR5d2xlarge, @@ -119546,6 +119857,16 @@ func InstanceType_Values() []string { InstanceTypeD22xlarge, InstanceTypeD24xlarge, InstanceTypeD28xlarge, + InstanceTypeD3Xlarge, + InstanceTypeD32xlarge, + InstanceTypeD34xlarge, + InstanceTypeD38xlarge, + InstanceTypeD3enXlarge, + InstanceTypeD3en2xlarge, + InstanceTypeD3en4xlarge, + InstanceTypeD3en6xlarge, + InstanceTypeD3en8xlarge, + InstanceTypeD3en12xlarge, InstanceTypeF12xlarge, InstanceTypeF14xlarge, InstanceTypeF116xlarge, @@ -119583,6 +119904,13 @@ func InstanceType_Values() []string { InstanceTypeM5ad12xlarge, InstanceTypeM5ad16xlarge, InstanceTypeM5ad24xlarge, + InstanceTypeM5znLarge, + InstanceTypeM5znXlarge, + InstanceTypeM5zn2xlarge, + InstanceTypeM5zn3xlarge, + InstanceTypeM5zn6xlarge, + InstanceTypeM5zn12xlarge, + InstanceTypeM5znMetal, InstanceTypeH12xlarge, InstanceTypeH14xlarge, InstanceTypeH18xlarge, @@ -119659,6 +119987,7 @@ func InstanceType_Values() []string { InstanceTypeM6gd8xlarge, InstanceTypeM6gd12xlarge, InstanceTypeM6gd16xlarge, + InstanceTypeMac1Metal, } } @@ -122032,6 +122361,9 @@ const ( // VolumeTypeSt1 is a VolumeType enum value VolumeTypeSt1 = "st1" + + // VolumeTypeGp3 is a VolumeType enum value + VolumeTypeGp3 = "gp3" ) // VolumeType_Values returns all elements of the VolumeType enum @@ -122043,6 +122375,7 @@ func VolumeType_Values() []string { VolumeTypeGp2, VolumeTypeSc1, VolumeTypeSt1, + VolumeTypeGp3, } } diff --git a/vendor/github.com/aws/aws-sdk-go/service/eks/api.go b/vendor/github.com/aws/aws-sdk-go/service/eks/api.go index 90672748a..daeaee4c2 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/eks/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/eks/api.go @@ -13,6 +13,112 @@ import ( "github.com/aws/aws-sdk-go/private/protocol/restjson" ) +const opCreateAddon = "CreateAddon" + +// CreateAddonRequest generates a "aws/request.Request" representing the +// client's request for the CreateAddon operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateAddon for more information on using the CreateAddon +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateAddonRequest method. +// req, resp := client.CreateAddonRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddon +func (c *EKS) CreateAddonRequest(input *CreateAddonInput) (req *request.Request, output *CreateAddonOutput) { + op := &request.Operation{ + Name: opCreateAddon, + HTTPMethod: "POST", + HTTPPath: "/clusters/{name}/addons", + } + + if input == nil { + input = &CreateAddonInput{} + } + + output = &CreateAddonOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateAddon API operation for Amazon Elastic Kubernetes Service. +// +// Creates an Amazon EKS add-on. +// +// Amazon EKS add-ons help to automate the provisioning and lifecycle management +// of common operational software for Amazon EKS clusters. Amazon EKS add-ons +// can only be used with Amazon EKS clusters running version 1.18 with platform +// version eks.3 or later because add-ons rely on the Server-side Apply Kubernetes +// feature, which is only available in Kubernetes 1.18 and later. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation CreateAddon for usage and error information. +// +// Returned Error Types: +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// * ResourceInUseException +// The specified resource is in use. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/CreateAddon +func (c *EKS) CreateAddon(input *CreateAddonInput) (*CreateAddonOutput, error) { + req, out := c.CreateAddonRequest(input) + return out, req.Send() +} + +// CreateAddonWithContext is the same as CreateAddon with the addition of +// the ability to pass a context and additional request options. +// +// See CreateAddon for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) CreateAddonWithContext(ctx aws.Context, input *CreateAddonInput, opts ...request.Option) (*CreateAddonOutput, error) { + req, out := c.CreateAddonRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreateCluster = "CreateCluster" // CreateClusterRequest generates a "aws/request.Request" representing the @@ -341,7 +447,7 @@ func (c *EKS) CreateNodegroupRequest(input *CreateNodegroupInput) (req *request. // // An Amazon EKS managed node group is an Amazon EC2 Auto Scaling group and // associated Amazon EC2 instances that are managed by AWS for an Amazon EKS -// cluster. Each node group uses a version of the Amazon EKS-optimized Amazon +// cluster. Each node group uses a version of the Amazon EKS optimized Amazon // Linux 2 AMI. For more information, see Managed Node Groups (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html) // in the Amazon EKS User Guide. // @@ -400,6 +506,106 @@ func (c *EKS) CreateNodegroupWithContext(ctx aws.Context, input *CreateNodegroup return out, req.Send() } +const opDeleteAddon = "DeleteAddon" + +// DeleteAddonRequest generates a "aws/request.Request" representing the +// client's request for the DeleteAddon operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteAddon for more information on using the DeleteAddon +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteAddonRequest method. +// req, resp := client.DeleteAddonRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddon +func (c *EKS) DeleteAddonRequest(input *DeleteAddonInput) (req *request.Request, output *DeleteAddonOutput) { + op := &request.Operation{ + Name: opDeleteAddon, + HTTPMethod: "DELETE", + HTTPPath: "/clusters/{name}/addons/{addonName}", + } + + if input == nil { + input = &DeleteAddonInput{} + } + + output = &DeleteAddonOutput{} + req = c.newRequest(op, input, output) + return +} + +// DeleteAddon API operation for Amazon Elastic Kubernetes Service. +// +// Delete an Amazon EKS add-on. +// +// When you remove the add-on, it will also be deleted from the cluster. You +// can always manually start an add-on on the cluster using the Kubernetes API. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DeleteAddon for usage and error information. +// +// Returned Error Types: +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DeleteAddon +func (c *EKS) DeleteAddon(input *DeleteAddonInput) (*DeleteAddonOutput, error) { + req, out := c.DeleteAddonRequest(input) + return out, req.Send() +} + +// DeleteAddonWithContext is the same as DeleteAddon with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteAddon for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) DeleteAddonWithContext(ctx aws.Context, input *DeleteAddonInput, opts ...request.Option) (*DeleteAddonOutput, error) { + req, out := c.DeleteAddonRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteCluster = "DeleteCluster" // DeleteClusterRequest generates a "aws/request.Request" representing the @@ -708,68 +914,68 @@ func (c *EKS) DeleteNodegroupWithContext(ctx aws.Context, input *DeleteNodegroup return out, req.Send() } -const opDescribeCluster = "DescribeCluster" +const opDescribeAddon = "DescribeAddon" -// DescribeClusterRequest generates a "aws/request.Request" representing the -// client's request for the DescribeCluster operation. The "output" return +// DescribeAddonRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAddon operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DescribeCluster for more information on using the DescribeCluster +// See DescribeAddon for more information on using the DescribeAddon // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the DescribeClusterRequest method. -// req, resp := client.DescribeClusterRequest(params) +// // Example sending a request using the DescribeAddonRequest method. +// req, resp := client.DescribeAddonRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster -func (c *EKS) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddon +func (c *EKS) DescribeAddonRequest(input *DescribeAddonInput) (req *request.Request, output *DescribeAddonOutput) { op := &request.Operation{ - Name: opDescribeCluster, + Name: opDescribeAddon, HTTPMethod: "GET", - HTTPPath: "/clusters/{name}", + HTTPPath: "/clusters/{name}/addons/{addonName}", } if input == nil { - input = &DescribeClusterInput{} + input = &DescribeAddonInput{} } - output = &DescribeClusterOutput{} + output = &DescribeAddonOutput{} req = c.newRequest(op, input, output) return } -// DescribeCluster API operation for Amazon Elastic Kubernetes Service. +// DescribeAddon API operation for Amazon Elastic Kubernetes Service. // -// Returns descriptive information about an Amazon EKS cluster. -// -// The API server endpoint and certificate authority data returned by this operation -// are required for kubelet and kubectl to communicate with your Kubernetes -// API server. For more information, see Create a kubeconfig for Amazon EKS -// (https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html). -// -// The API server endpoint and certificate authority data aren't available until -// the cluster reaches the ACTIVE state. +// Describes an Amazon EKS add-on. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Kubernetes Service's -// API operation DescribeCluster for usage and error information. +// API operation DescribeAddon for usage and error information. // // Returned Error Types: +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// // * ResourceNotFoundException // The specified resource could not be found. You can view your available clusters // with ListClusters. You can view your available managed node groups with ListNodegroups. @@ -783,94 +989,88 @@ func (c *EKS) DescribeClusterRequest(input *DescribeClusterInput) (req *request. // * ServerException // These errors are usually caused by a server-side issue. // -// * ServiceUnavailableException -// The service is unavailable. Back off and retry the operation. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster -func (c *EKS) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { - req, out := c.DescribeClusterRequest(input) +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddon +func (c *EKS) DescribeAddon(input *DescribeAddonInput) (*DescribeAddonOutput, error) { + req, out := c.DescribeAddonRequest(input) return out, req.Send() } -// DescribeClusterWithContext is the same as DescribeCluster with the addition of +// DescribeAddonWithContext is the same as DescribeAddon with the addition of // the ability to pass a context and additional request options. // -// See DescribeCluster for details on how to use this API operation. +// See DescribeAddon for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *EKS) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { - req, out := c.DescribeClusterRequest(input) +func (c *EKS) DescribeAddonWithContext(ctx aws.Context, input *DescribeAddonInput, opts ...request.Option) (*DescribeAddonOutput, error) { + req, out := c.DescribeAddonRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDescribeFargateProfile = "DescribeFargateProfile" +const opDescribeAddonVersions = "DescribeAddonVersions" -// DescribeFargateProfileRequest generates a "aws/request.Request" representing the -// client's request for the DescribeFargateProfile operation. The "output" return +// DescribeAddonVersionsRequest generates a "aws/request.Request" representing the +// client's request for the DescribeAddonVersions operation. The "output" return // value will be populated with the request's response once the request completes // successfully. // // Use "Send" method on the returned Request to send the API call to the service. // the "output" return value is not valid until after Send returns without error. // -// See DescribeFargateProfile for more information on using the DescribeFargateProfile +// See DescribeAddonVersions for more information on using the DescribeAddonVersions // API call, and error handling. // // This method is useful when you want to inject custom logic or configuration // into the SDK's request lifecycle. Such as custom headers, or retry logic. // // -// // Example sending a request using the DescribeFargateProfileRequest method. -// req, resp := client.DescribeFargateProfileRequest(params) +// // Example sending a request using the DescribeAddonVersionsRequest method. +// req, resp := client.DescribeAddonVersionsRequest(params) // // err := req.Send() // if err == nil { // resp is now filled // fmt.Println(resp) // } // -// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile -func (c *EKS) DescribeFargateProfileRequest(input *DescribeFargateProfileInput) (req *request.Request, output *DescribeFargateProfileOutput) { +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersions +func (c *EKS) DescribeAddonVersionsRequest(input *DescribeAddonVersionsInput) (req *request.Request, output *DescribeAddonVersionsOutput) { op := &request.Operation{ - Name: opDescribeFargateProfile, + Name: opDescribeAddonVersions, HTTPMethod: "GET", - HTTPPath: "/clusters/{name}/fargate-profiles/{fargateProfileName}", + HTTPPath: "/addons/supported-versions", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, } if input == nil { - input = &DescribeFargateProfileInput{} + input = &DescribeAddonVersionsInput{} } - output = &DescribeFargateProfileOutput{} + output = &DescribeAddonVersionsOutput{} req = c.newRequest(op, input, output) return } -// DescribeFargateProfile API operation for Amazon Elastic Kubernetes Service. +// DescribeAddonVersions API operation for Amazon Elastic Kubernetes Service. // -// Returns descriptive information about an AWS Fargate profile. +// Describes the Kubernetes versions that the add-on can be used with. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Kubernetes Service's -// API operation DescribeFargateProfile for usage and error information. +// API operation DescribeAddonVersions for usage and error information. // // Returned Error Types: -// * InvalidParameterException -// The specified parameter is invalid. Review the available parameters for the -// API request. -// -// * ClientException -// These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. -// // * ServerException // These errors are usually caused by a server-side issue. // @@ -879,47 +1079,296 @@ func (c *EKS) DescribeFargateProfileRequest(input *DescribeFargateProfileInput) // with ListClusters. You can view your available managed node groups with ListNodegroups. // Amazon EKS clusters and node groups are Region-specific. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile -func (c *EKS) DescribeFargateProfile(input *DescribeFargateProfileInput) (*DescribeFargateProfileOutput, error) { - req, out := c.DescribeFargateProfileRequest(input) +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeAddonVersions +func (c *EKS) DescribeAddonVersions(input *DescribeAddonVersionsInput) (*DescribeAddonVersionsOutput, error) { + req, out := c.DescribeAddonVersionsRequest(input) return out, req.Send() } -// DescribeFargateProfileWithContext is the same as DescribeFargateProfile with the addition of +// DescribeAddonVersionsWithContext is the same as DescribeAddonVersions with the addition of // the ability to pass a context and additional request options. // -// See DescribeFargateProfile for details on how to use this API operation. +// See DescribeAddonVersions for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *EKS) DescribeFargateProfileWithContext(ctx aws.Context, input *DescribeFargateProfileInput, opts ...request.Option) (*DescribeFargateProfileOutput, error) { - req, out := c.DescribeFargateProfileRequest(input) +func (c *EKS) DescribeAddonVersionsWithContext(ctx aws.Context, input *DescribeAddonVersionsInput, opts ...request.Option) (*DescribeAddonVersionsOutput, error) { + req, out := c.DescribeAddonVersionsRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() } -const opDescribeNodegroup = "DescribeNodegroup" - -// DescribeNodegroupRequest generates a "aws/request.Request" representing the -// client's request for the DescribeNodegroup operation. The "output" return -// value will be populated with the request's response once the request completes -// successfully. -// -// Use "Send" method on the returned Request to send the API call to the service. -// the "output" return value is not valid until after Send returns without error. -// -// See DescribeNodegroup for more information on using the DescribeNodegroup -// API call, and error handling. +// DescribeAddonVersionsPages iterates over the pages of a DescribeAddonVersions operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. // -// This method is useful when you want to inject custom logic or configuration -// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// See DescribeAddonVersions method for more information on how to use this operation. // +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a DescribeAddonVersions operation. +// pageNum := 0 +// err := client.DescribeAddonVersionsPages(params, +// func(page *eks.DescribeAddonVersionsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *EKS) DescribeAddonVersionsPages(input *DescribeAddonVersionsInput, fn func(*DescribeAddonVersionsOutput, bool) bool) error { + return c.DescribeAddonVersionsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// DescribeAddonVersionsPagesWithContext same as DescribeAddonVersionsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) DescribeAddonVersionsPagesWithContext(ctx aws.Context, input *DescribeAddonVersionsInput, fn func(*DescribeAddonVersionsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *DescribeAddonVersionsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeAddonVersionsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*DescribeAddonVersionsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + +const opDescribeCluster = "DescribeCluster" + +// DescribeClusterRequest generates a "aws/request.Request" representing the +// client's request for the DescribeCluster operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeCluster for more information on using the DescribeCluster +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DescribeClusterRequest method. +// req, resp := client.DescribeClusterRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster +func (c *EKS) DescribeClusterRequest(input *DescribeClusterInput) (req *request.Request, output *DescribeClusterOutput) { + op := &request.Operation{ + Name: opDescribeCluster, + HTTPMethod: "GET", + HTTPPath: "/clusters/{name}", + } + + if input == nil { + input = &DescribeClusterInput{} + } + + output = &DescribeClusterOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeCluster API operation for Amazon Elastic Kubernetes Service. +// +// Returns descriptive information about an Amazon EKS cluster. +// +// The API server endpoint and certificate authority data returned by this operation +// are required for kubelet and kubectl to communicate with your Kubernetes +// API server. For more information, see Create a kubeconfig for Amazon EKS +// (https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html). +// +// The API server endpoint and certificate authority data aren't available until +// the cluster reaches the ACTIVE state. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DescribeCluster for usage and error information. +// +// Returned Error Types: +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// * ServiceUnavailableException +// The service is unavailable. Back off and retry the operation. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeCluster +func (c *EKS) DescribeCluster(input *DescribeClusterInput) (*DescribeClusterOutput, error) { + req, out := c.DescribeClusterRequest(input) + return out, req.Send() +} + +// DescribeClusterWithContext is the same as DescribeCluster with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeCluster for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) DescribeClusterWithContext(ctx aws.Context, input *DescribeClusterInput, opts ...request.Option) (*DescribeClusterOutput, error) { + req, out := c.DescribeClusterRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeFargateProfile = "DescribeFargateProfile" + +// DescribeFargateProfileRequest generates a "aws/request.Request" representing the +// client's request for the DescribeFargateProfile operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeFargateProfile for more information on using the DescribeFargateProfile +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DescribeFargateProfileRequest method. +// req, resp := client.DescribeFargateProfileRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile +func (c *EKS) DescribeFargateProfileRequest(input *DescribeFargateProfileInput) (req *request.Request, output *DescribeFargateProfileOutput) { + op := &request.Operation{ + Name: opDescribeFargateProfile, + HTTPMethod: "GET", + HTTPPath: "/clusters/{name}/fargate-profiles/{fargateProfileName}", + } + + if input == nil { + input = &DescribeFargateProfileInput{} + } + + output = &DescribeFargateProfileOutput{} + req = c.newRequest(op, input, output) + return +} + +// DescribeFargateProfile API operation for Amazon Elastic Kubernetes Service. +// +// Returns descriptive information about an AWS Fargate profile. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation DescribeFargateProfile for usage and error information. +// +// Returned Error Types: +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/DescribeFargateProfile +func (c *EKS) DescribeFargateProfile(input *DescribeFargateProfileInput) (*DescribeFargateProfileOutput, error) { + req, out := c.DescribeFargateProfileRequest(input) + return out, req.Send() +} + +// DescribeFargateProfileWithContext is the same as DescribeFargateProfile with the addition of +// the ability to pass a context and additional request options. +// +// See DescribeFargateProfile for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) DescribeFargateProfileWithContext(ctx aws.Context, input *DescribeFargateProfileInput, opts ...request.Option) (*DescribeFargateProfileOutput, error) { + req, out := c.DescribeFargateProfileRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opDescribeNodegroup = "DescribeNodegroup" + +// DescribeNodegroupRequest generates a "aws/request.Request" representing the +// client's request for the DescribeNodegroup operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DescribeNodegroup for more information on using the DescribeNodegroup +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. // -// // Example sending a request using the DescribeNodegroupRequest method. -// req, resp := client.DescribeNodegroupRequest(params) +// +// // Example sending a request using the DescribeNodegroupRequest method. +// req, resp := client.DescribeNodegroupRequest(params) // // err := req.Send() // if err == nil { // resp is now filled @@ -1095,6 +1544,161 @@ func (c *EKS) DescribeUpdateWithContext(ctx aws.Context, input *DescribeUpdateIn return out, req.Send() } +const opListAddons = "ListAddons" + +// ListAddonsRequest generates a "aws/request.Request" representing the +// client's request for the ListAddons operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListAddons for more information on using the ListAddons +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListAddonsRequest method. +// req, resp := client.ListAddonsRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddons +func (c *EKS) ListAddonsRequest(input *ListAddonsInput) (req *request.Request, output *ListAddonsOutput) { + op := &request.Operation{ + Name: opListAddons, + HTTPMethod: "GET", + HTTPPath: "/clusters/{name}/addons", + Paginator: &request.Paginator{ + InputTokens: []string{"nextToken"}, + OutputTokens: []string{"nextToken"}, + LimitToken: "maxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &ListAddonsInput{} + } + + output = &ListAddonsOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListAddons API operation for Amazon Elastic Kubernetes Service. +// +// Lists the available add-ons. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation ListAddons for usage and error information. +// +// Returned Error Types: +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/ListAddons +func (c *EKS) ListAddons(input *ListAddonsInput) (*ListAddonsOutput, error) { + req, out := c.ListAddonsRequest(input) + return out, req.Send() +} + +// ListAddonsWithContext is the same as ListAddons with the addition of +// the ability to pass a context and additional request options. +// +// See ListAddons for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) ListAddonsWithContext(ctx aws.Context, input *ListAddonsInput, opts ...request.Option) (*ListAddonsOutput, error) { + req, out := c.ListAddonsRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// ListAddonsPages iterates over the pages of a ListAddons operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See ListAddons method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a ListAddons operation. +// pageNum := 0 +// err := client.ListAddonsPages(params, +// func(page *eks.ListAddonsOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *EKS) ListAddonsPages(input *ListAddonsInput, fn func(*ListAddonsOutput, bool) bool) error { + return c.ListAddonsPagesWithContext(aws.BackgroundContext(), input, fn) +} + +// ListAddonsPagesWithContext same as ListAddonsPages except +// it takes a Context and allows setting request options on the pages. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) ListAddonsPagesWithContext(ctx aws.Context, input *ListAddonsInput, fn func(*ListAddonsOutput, bool) bool, opts ...request.Option) error { + p := request.Pagination{ + NewRequest: func() (*request.Request, error) { + var inCpy *ListAddonsInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.ListAddonsRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + + for p.Next() { + if !fn(p.Page().(*ListAddonsOutput), !p.HasNextPage()) { + break + } + } + + return p.Err() +} + const opListClusters = "ListClusters" // ListClustersRequest generates a "aws/request.Request" representing the @@ -1913,52 +2517,152 @@ func (c *EKS) UntagResourceRequest(input *UntagResourceInput) (req *request.Requ } if input == nil { - input = &UntagResourceInput{} + input = &UntagResourceInput{} + } + + output = &UntagResourceOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// UntagResource API operation for Amazon Elastic Kubernetes Service. +// +// Deletes specified tags from a resource. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation UntagResource for usage and error information. +// +// Returned Error Types: +// * BadRequestException +// This exception is thrown if the request contains a semantic error. The precise +// meaning will depend on the API, and will be documented in the error message. +// +// * NotFoundException +// A service resource associated with the request could not be found. Clients +// should not retry such requests. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UntagResource +func (c *EKS) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + return out, req.Send() +} + +// UntagResourceWithContext is the same as UntagResource with the addition of +// the ability to pass a context and additional request options. +// +// See UntagResource for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { + req, out := c.UntagResourceRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +const opUpdateAddon = "UpdateAddon" + +// UpdateAddonRequest generates a "aws/request.Request" representing the +// client's request for the UpdateAddon operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateAddon for more information on using the UpdateAddon +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateAddonRequest method. +// req, resp := client.UpdateAddonRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddon +func (c *EKS) UpdateAddonRequest(input *UpdateAddonInput) (req *request.Request, output *UpdateAddonOutput) { + op := &request.Operation{ + Name: opUpdateAddon, + HTTPMethod: "POST", + HTTPPath: "/clusters/{name}/addons/{addonName}/update", + } + + if input == nil { + input = &UpdateAddonInput{} } - output = &UntagResourceOutput{} + output = &UpdateAddonOutput{} req = c.newRequest(op, input, output) - req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) return } -// UntagResource API operation for Amazon Elastic Kubernetes Service. +// UpdateAddon API operation for Amazon Elastic Kubernetes Service. // -// Deletes specified tags from a resource. +// Updates an Amazon EKS add-on. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. // // See the AWS API reference guide for Amazon Elastic Kubernetes Service's -// API operation UntagResource for usage and error information. +// API operation UpdateAddon for usage and error information. // // Returned Error Types: -// * BadRequestException -// This exception is thrown if the request contains a semantic error. The precise -// meaning will depend on the API, and will be documented in the error message. +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. // -// * NotFoundException -// A service resource associated with the request could not be found. Clients -// should not retry such requests. +// * InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. // -// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UntagResource -func (c *EKS) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// * ResourceInUseException +// The specified resource is in use. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateAddon +func (c *EKS) UpdateAddon(input *UpdateAddonInput) (*UpdateAddonOutput, error) { + req, out := c.UpdateAddonRequest(input) return out, req.Send() } -// UntagResourceWithContext is the same as UntagResource with the addition of +// UpdateAddonWithContext is the same as UpdateAddon with the addition of // the ability to pass a context and additional request options. // -// See UntagResource for details on how to use this API operation. +// See UpdateAddon for details on how to use this API operation. // // The context must be non-nil and will be used for request cancellation. If // the context is nil a panic will occur. In the future the SDK may create // sub-contexts for http.Requests. See https://golang.org/pkg/context/ // for more information on using Contexts. -func (c *EKS) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) { - req, out := c.UntagResourceRequest(input) +func (c *EKS) UpdateAddonWithContext(ctx aws.Context, input *UpdateAddonInput, opts ...request.Option) (*UpdateAddonOutput, error) { + req, out := c.UpdateAddonRequest(input) req.SetContext(ctx) req.ApplyOptions(opts...) return out, req.Send() @@ -2340,95 +3044,355 @@ func (c *EKS) UpdateNodegroupVersionRequest(input *UpdateNodegroupVersionInput) HTTPPath: "/clusters/{name}/node-groups/{nodegroupName}/update-version", } - if input == nil { - input = &UpdateNodegroupVersionInput{} - } + if input == nil { + input = &UpdateNodegroupVersionInput{} + } + + output = &UpdateNodegroupVersionOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateNodegroupVersion API operation for Amazon Elastic Kubernetes Service. +// +// Updates the Kubernetes version or AMI version of an Amazon EKS managed node +// group. +// +// You can update a node group using a launch template only if the node group +// was originally deployed with a launch template. If you need to update a custom +// AMI in a node group that was deployed with a launch template, then update +// your custom AMI, specify the new ID in a new version of the launch template, +// and then update the node group to the new version of the launch template. +// +// If you update without a launch template, then you can update to the latest +// available AMI version of a node group's current Kubernetes version by not +// specifying a Kubernetes version in the request. You can update to the latest +// AMI version of your cluster's current Kubernetes version by specifying your +// cluster's Kubernetes version in the request. For more information, see Amazon +// EKS optimized Amazon Linux 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) +// in the Amazon EKS User Guide. +// +// You cannot roll back a node group to an earlier Kubernetes version or AMI +// version. +// +// When a node in a managed node group is terminated due to a scaling action +// or update, the pods in that node are drained first. Amazon EKS attempts to +// drain the nodes gracefully and will fail if it is unable to do so. You can +// force the update if Amazon EKS is unable to drain the nodes as a result of +// a pod disruption budget issue. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Elastic Kubernetes Service's +// API operation UpdateNodegroupVersion for usage and error information. +// +// Returned Error Types: +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * ClientException +// These errors are usually caused by a client action. Actions can include using +// an action or resource on behalf of a user that doesn't have permissions to +// use the action or resource or specifying an identifier that is not valid. +// +// * ServerException +// These errors are usually caused by a server-side issue. +// +// * ResourceInUseException +// The specified resource is in use. +// +// * ResourceNotFoundException +// The specified resource could not be found. You can view your available clusters +// with ListClusters. You can view your available managed node groups with ListNodegroups. +// Amazon EKS clusters and node groups are Region-specific. +// +// * InvalidRequestException +// The request is invalid given the state of the cluster. Check the state of +// the cluster and the associated operations. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersion +func (c *EKS) UpdateNodegroupVersion(input *UpdateNodegroupVersionInput) (*UpdateNodegroupVersionOutput, error) { + req, out := c.UpdateNodegroupVersionRequest(input) + return out, req.Send() +} + +// UpdateNodegroupVersionWithContext is the same as UpdateNodegroupVersion with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateNodegroupVersion for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) UpdateNodegroupVersionWithContext(ctx aws.Context, input *UpdateNodegroupVersionInput, opts ...request.Option) (*UpdateNodegroupVersionOutput, error) { + req, out := c.UpdateNodegroupVersionRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + +// An Amazon EKS add-on. +type Addon struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the add-on. + AddonArn *string `locationName:"addonArn" type:"string"` + + // The name of the add-on. + AddonName *string `locationName:"addonName" type:"string"` + + // The version of the add-on. + AddonVersion *string `locationName:"addonVersion" type:"string"` + + // The name of the cluster. + ClusterName *string `locationName:"clusterName" min:"1" type:"string"` + + // The date and time that the add-on was created. + CreatedAt *time.Time `locationName:"createdAt" type:"timestamp"` + + // An object that represents the health of the add-on. + Health *AddonHealth `locationName:"health" type:"structure"` + + // The date and time that the add-on was last modified. + ModifiedAt *time.Time `locationName:"modifiedAt" type:"timestamp"` + + // The Amazon Resource Name (ARN) of the IAM role that is bound to the Kubernetes + // service account used by the add-on. + ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" type:"string"` + + // The status of the add-on. + Status *string `locationName:"status" type:"string" enum:"AddonStatus"` + + // The metadata that you apply to the cluster to assist with categorization + // and organization. Each tag consists of a key and an optional value, both + // of which you define. Cluster tags do not propagate to any other resources + // associated with the cluster. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation +func (s Addon) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Addon) GoString() string { + return s.String() +} + +// SetAddonArn sets the AddonArn field's value. +func (s *Addon) SetAddonArn(v string) *Addon { + s.AddonArn = &v + return s +} + +// SetAddonName sets the AddonName field's value. +func (s *Addon) SetAddonName(v string) *Addon { + s.AddonName = &v + return s +} + +// SetAddonVersion sets the AddonVersion field's value. +func (s *Addon) SetAddonVersion(v string) *Addon { + s.AddonVersion = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *Addon) SetClusterName(v string) *Addon { + s.ClusterName = &v + return s +} + +// SetCreatedAt sets the CreatedAt field's value. +func (s *Addon) SetCreatedAt(v time.Time) *Addon { + s.CreatedAt = &v + return s +} + +// SetHealth sets the Health field's value. +func (s *Addon) SetHealth(v *AddonHealth) *Addon { + s.Health = v + return s +} + +// SetModifiedAt sets the ModifiedAt field's value. +func (s *Addon) SetModifiedAt(v time.Time) *Addon { + s.ModifiedAt = &v + return s +} + +// SetServiceAccountRoleArn sets the ServiceAccountRoleArn field's value. +func (s *Addon) SetServiceAccountRoleArn(v string) *Addon { + s.ServiceAccountRoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Addon) SetStatus(v string) *Addon { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Addon) SetTags(v map[string]*string) *Addon { + s.Tags = v + return s +} + +// The health of the add-on. +type AddonHealth struct { + _ struct{} `type:"structure"` + + // An object that represents the add-on's health issues. + Issues []*AddonIssue `locationName:"issues" type:"list"` +} + +// String returns the string representation +func (s AddonHealth) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AddonHealth) GoString() string { + return s.String() +} + +// SetIssues sets the Issues field's value. +func (s *AddonHealth) SetIssues(v []*AddonIssue) *AddonHealth { + s.Issues = v + return s +} + +// Information about an add-on. +type AddonInfo struct { + _ struct{} `type:"structure"` + + // The name of the add-on. + AddonName *string `locationName:"addonName" type:"string"` + + // An object that represents information about available add-on versions and + // compatible Kubernetes versions. + AddonVersions []*AddonVersionInfo `locationName:"addonVersions" type:"list"` + + // The type of the add-on. + Type *string `locationName:"type" type:"string"` +} + +// String returns the string representation +func (s AddonInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AddonInfo) GoString() string { + return s.String() +} + +// SetAddonName sets the AddonName field's value. +func (s *AddonInfo) SetAddonName(v string) *AddonInfo { + s.AddonName = &v + return s +} + +// SetAddonVersions sets the AddonVersions field's value. +func (s *AddonInfo) SetAddonVersions(v []*AddonVersionInfo) *AddonInfo { + s.AddonVersions = v + return s +} + +// SetType sets the Type field's value. +func (s *AddonInfo) SetType(v string) *AddonInfo { + s.Type = &v + return s +} + +// An issue related to an add-on. +type AddonIssue struct { + _ struct{} `type:"structure"` + + // A code that describes the type of issue. + Code *string `locationName:"code" type:"string" enum:"AddonIssueCode"` + + // A message that provides details about the issue and what might cause it. + Message *string `locationName:"message" type:"string"` + + // The resource IDs of the issue. + ResourceIds []*string `locationName:"resourceIds" type:"list"` +} + +// String returns the string representation +func (s AddonIssue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AddonIssue) GoString() string { + return s.String() +} - output = &UpdateNodegroupVersionOutput{} - req = c.newRequest(op, input, output) - return +// SetCode sets the Code field's value. +func (s *AddonIssue) SetCode(v string) *AddonIssue { + s.Code = &v + return s } -// UpdateNodegroupVersion API operation for Amazon Elastic Kubernetes Service. -// -// Updates the Kubernetes version or AMI version of an Amazon EKS managed node -// group. -// -// You can update a node group using a launch template only if the node group -// was originally deployed with a launch template. If you need to update a custom -// AMI in a node group that was deployed with a launch template, then update -// your custom AMI, specify the new ID in a new version of the launch template, -// and then update the node group to the new version of the launch template. -// -// If you update without a launch template, then you can update to the latest -// available AMI version of a node group's current Kubernetes version by not -// specifying a Kubernetes version in the request. You can update to the latest -// AMI version of your cluster's current Kubernetes version by specifying your -// cluster's Kubernetes version in the request. For more information, see Amazon -// EKS-Optimized Linux AMI Versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) -// in the Amazon EKS User Guide. -// -// You cannot roll back a node group to an earlier Kubernetes version or AMI -// version. -// -// When a node in a managed node group is terminated due to a scaling action -// or update, the pods in that node are drained first. Amazon EKS attempts to -// drain the nodes gracefully and will fail if it is unable to do so. You can -// force the update if Amazon EKS is unable to drain the nodes as a result of -// a pod disruption budget issue. -// -// Returns awserr.Error for service API and SDK errors. Use runtime type assertions -// with awserr.Error's Code and Message methods to get detailed information about -// the error. -// -// See the AWS API reference guide for Amazon Elastic Kubernetes Service's -// API operation UpdateNodegroupVersion for usage and error information. -// -// Returned Error Types: -// * InvalidParameterException -// The specified parameter is invalid. Review the available parameters for the -// API request. -// -// * ClientException -// These errors are usually caused by a client action. Actions can include using -// an action or resource on behalf of a user that doesn't have permissions to -// use the action or resource or specifying an identifier that is not valid. -// -// * ServerException -// These errors are usually caused by a server-side issue. -// -// * ResourceInUseException -// The specified resource is in use. -// -// * ResourceNotFoundException -// The specified resource could not be found. You can view your available clusters -// with ListClusters. You can view your available managed node groups with ListNodegroups. -// Amazon EKS clusters and node groups are Region-specific. -// -// * InvalidRequestException -// The request is invalid given the state of the cluster. Check the state of -// the cluster and the associated operations. -// -// See also, https://docs.aws.amazon.com/goto/WebAPI/eks-2017-11-01/UpdateNodegroupVersion -func (c *EKS) UpdateNodegroupVersion(input *UpdateNodegroupVersionInput) (*UpdateNodegroupVersionOutput, error) { - req, out := c.UpdateNodegroupVersionRequest(input) - return out, req.Send() +// SetMessage sets the Message field's value. +func (s *AddonIssue) SetMessage(v string) *AddonIssue { + s.Message = &v + return s } -// UpdateNodegroupVersionWithContext is the same as UpdateNodegroupVersion with the addition of -// the ability to pass a context and additional request options. -// -// See UpdateNodegroupVersion for details on how to use this API operation. -// -// The context must be non-nil and will be used for request cancellation. If -// the context is nil a panic will occur. In the future the SDK may create -// sub-contexts for http.Requests. See https://golang.org/pkg/context/ -// for more information on using Contexts. -func (c *EKS) UpdateNodegroupVersionWithContext(ctx aws.Context, input *UpdateNodegroupVersionInput, opts ...request.Option) (*UpdateNodegroupVersionOutput, error) { - req, out := c.UpdateNodegroupVersionRequest(input) - req.SetContext(ctx) - req.ApplyOptions(opts...) - return out, req.Send() +// SetResourceIds sets the ResourceIds field's value. +func (s *AddonIssue) SetResourceIds(v []*string) *AddonIssue { + s.ResourceIds = v + return s +} + +// Information about an add-on version. +type AddonVersionInfo struct { + _ struct{} `type:"structure"` + + // The version of the add-on. + AddonVersion *string `locationName:"addonVersion" type:"string"` + + // The architectures that the version supports. + Architecture []*string `locationName:"architecture" type:"list"` + + // An object that represents the compatibilities of a version. + Compatibilities []*Compatibility `locationName:"compatibilities" type:"list"` +} + +// String returns the string representation +func (s AddonVersionInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s AddonVersionInfo) GoString() string { + return s.String() +} + +// SetAddonVersion sets the AddonVersion field's value. +func (s *AddonVersionInfo) SetAddonVersion(v string) *AddonVersionInfo { + s.AddonVersion = &v + return s +} + +// SetArchitecture sets the Architecture field's value. +func (s *AddonVersionInfo) SetArchitecture(v []*string) *AddonVersionInfo { + s.Architecture = v + return s +} + +// SetCompatibilities sets the Compatibilities field's value. +func (s *AddonVersionInfo) SetCompatibilities(v []*Compatibility) *AddonVersionInfo { + s.Compatibilities = v + return s } // An Auto Scaling group that is associated with an Amazon EKS managed node @@ -2547,6 +3511,8 @@ type ClientException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + AddonName *string `locationName:"addonName" type:"string"` + // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` @@ -2630,7 +3596,7 @@ type Cluster struct { // The identity provider information for the cluster. Identity *Identity `locationName:"identity" type:"structure"` - // Network configuration settings for your cluster. + // The Kubernetes network configuration for the cluster. KubernetesNetworkConfig *KubernetesNetworkConfigResponse `locationName:"kubernetesNetworkConfig" type:"structure"` // The logging configuration for your cluster. @@ -2715,63 +3681,249 @@ func (s *Cluster) SetEndpoint(v string) *Cluster { return s } -// SetIdentity sets the Identity field's value. -func (s *Cluster) SetIdentity(v *Identity) *Cluster { - s.Identity = v +// SetIdentity sets the Identity field's value. +func (s *Cluster) SetIdentity(v *Identity) *Cluster { + s.Identity = v + return s +} + +// SetKubernetesNetworkConfig sets the KubernetesNetworkConfig field's value. +func (s *Cluster) SetKubernetesNetworkConfig(v *KubernetesNetworkConfigResponse) *Cluster { + s.KubernetesNetworkConfig = v + return s +} + +// SetLogging sets the Logging field's value. +func (s *Cluster) SetLogging(v *Logging) *Cluster { + s.Logging = v + return s +} + +// SetName sets the Name field's value. +func (s *Cluster) SetName(v string) *Cluster { + s.Name = &v + return s +} + +// SetPlatformVersion sets the PlatformVersion field's value. +func (s *Cluster) SetPlatformVersion(v string) *Cluster { + s.PlatformVersion = &v + return s +} + +// SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. +func (s *Cluster) SetResourcesVpcConfig(v *VpcConfigResponse) *Cluster { + s.ResourcesVpcConfig = v + return s +} + +// SetRoleArn sets the RoleArn field's value. +func (s *Cluster) SetRoleArn(v string) *Cluster { + s.RoleArn = &v + return s +} + +// SetStatus sets the Status field's value. +func (s *Cluster) SetStatus(v string) *Cluster { + s.Status = &v + return s +} + +// SetTags sets the Tags field's value. +func (s *Cluster) SetTags(v map[string]*string) *Cluster { + s.Tags = v + return s +} + +// SetVersion sets the Version field's value. +func (s *Cluster) SetVersion(v string) *Cluster { + s.Version = &v + return s +} + +// Compatibility information. +type Compatibility struct { + _ struct{} `type:"structure"` + + // The supported Kubernetes version of the cluster. + ClusterVersion *string `locationName:"clusterVersion" type:"string"` + + // The supported default version. + DefaultVersion *bool `locationName:"defaultVersion" type:"boolean"` + + // The supported compute platform. + PlatformVersions []*string `locationName:"platformVersions" type:"list"` +} + +// String returns the string representation +func (s Compatibility) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Compatibility) GoString() string { + return s.String() +} + +// SetClusterVersion sets the ClusterVersion field's value. +func (s *Compatibility) SetClusterVersion(v string) *Compatibility { + s.ClusterVersion = &v + return s +} + +// SetDefaultVersion sets the DefaultVersion field's value. +func (s *Compatibility) SetDefaultVersion(v bool) *Compatibility { + s.DefaultVersion = &v + return s +} + +// SetPlatformVersions sets the PlatformVersions field's value. +func (s *Compatibility) SetPlatformVersions(v []*string) *Compatibility { + s.PlatformVersions = v + return s +} + +type CreateAddonInput struct { + _ struct{} `type:"structure"` + + // The name of the add-on. The name must match one of the names returned by + // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). + // + // AddonName is a required field + AddonName *string `locationName:"addonName" type:"string" required:"true"` + + // The version of the add-on. The version must match one of the versions returned + // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + AddonVersion *string `locationName:"addonVersion" type:"string"` + + // A unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` + + // The name of the cluster to create the add-on for. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + + // How to resolve parameter value conflicts when migrating an existing add-on + // to an Amazon EKS add-on. + ResolveConflicts *string `locationName:"resolveConflicts" type:"string" enum:"ResolveConflicts"` + + // The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's + // service account. The role must be assigned the IAM permissions required by + // the add-on. If you don't specify an existing IAM role, then the add-on uses + // the permissions assigned to the node IAM role. For more information, see + // Amazon EKS node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html) + // in the Amazon EKS User Guide. + // + // To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) + // provider created for your cluster. For more information, see Enabling IAM + // roles for service accounts on your cluster (https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html) + // in the Amazon EKS User Guide. + ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" min:"1" type:"string"` + + // The metadata to apply to the cluster to assist with categorization and organization. + // Each tag consists of a key and an optional value, both of which you define. + Tags map[string]*string `locationName:"tags" min:"1" type:"map"` +} + +// String returns the string representation +func (s CreateAddonInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateAddonInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateAddonInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateAddonInput"} + if s.AddonName == nil { + invalidParams.Add(request.NewErrParamRequired("AddonName")) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.ServiceAccountRoleArn != nil && len(*s.ServiceAccountRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceAccountRoleArn", 1)) + } + if s.Tags != nil && len(s.Tags) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Tags", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddonName sets the AddonName field's value. +func (s *CreateAddonInput) SetAddonName(v string) *CreateAddonInput { + s.AddonName = &v + return s +} + +// SetAddonVersion sets the AddonVersion field's value. +func (s *CreateAddonInput) SetAddonVersion(v string) *CreateAddonInput { + s.AddonVersion = &v return s } -// SetKubernetesNetworkConfig sets the KubernetesNetworkConfig field's value. -func (s *Cluster) SetKubernetesNetworkConfig(v *KubernetesNetworkConfigResponse) *Cluster { - s.KubernetesNetworkConfig = v +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *CreateAddonInput) SetClientRequestToken(v string) *CreateAddonInput { + s.ClientRequestToken = &v return s } -// SetLogging sets the Logging field's value. -func (s *Cluster) SetLogging(v *Logging) *Cluster { - s.Logging = v +// SetClusterName sets the ClusterName field's value. +func (s *CreateAddonInput) SetClusterName(v string) *CreateAddonInput { + s.ClusterName = &v return s } -// SetName sets the Name field's value. -func (s *Cluster) SetName(v string) *Cluster { - s.Name = &v +// SetResolveConflicts sets the ResolveConflicts field's value. +func (s *CreateAddonInput) SetResolveConflicts(v string) *CreateAddonInput { + s.ResolveConflicts = &v return s } -// SetPlatformVersion sets the PlatformVersion field's value. -func (s *Cluster) SetPlatformVersion(v string) *Cluster { - s.PlatformVersion = &v +// SetServiceAccountRoleArn sets the ServiceAccountRoleArn field's value. +func (s *CreateAddonInput) SetServiceAccountRoleArn(v string) *CreateAddonInput { + s.ServiceAccountRoleArn = &v return s } -// SetResourcesVpcConfig sets the ResourcesVpcConfig field's value. -func (s *Cluster) SetResourcesVpcConfig(v *VpcConfigResponse) *Cluster { - s.ResourcesVpcConfig = v +// SetTags sets the Tags field's value. +func (s *CreateAddonInput) SetTags(v map[string]*string) *CreateAddonInput { + s.Tags = v return s } -// SetRoleArn sets the RoleArn field's value. -func (s *Cluster) SetRoleArn(v string) *Cluster { - s.RoleArn = &v - return s +type CreateAddonOutput struct { + _ struct{} `type:"structure"` + + // An Amazon EKS add-on. + Addon *Addon `locationName:"addon" type:"structure"` } -// SetStatus sets the Status field's value. -func (s *Cluster) SetStatus(v string) *Cluster { - s.Status = &v - return s +// String returns the string representation +func (s CreateAddonOutput) String() string { + return awsutil.Prettify(s) } -// SetTags sets the Tags field's value. -func (s *Cluster) SetTags(v map[string]*string) *Cluster { - s.Tags = v - return s +// GoString returns the string representation +func (s CreateAddonOutput) GoString() string { + return s.String() } -// SetVersion sets the Version field's value. -func (s *Cluster) SetVersion(v string) *Cluster { - s.Version = &v +// SetAddon sets the Addon field's value. +func (s *CreateAddonOutput) SetAddon(v *Addon) *CreateAddonOutput { + s.Addon = v return s } @@ -3094,7 +4246,7 @@ type CreateNodegroupInput struct { // The AMI type for your node group. GPU instance types should use the AL2_x86_64_GPU // AMI type. Non-GPU instances should use the AL2_x86_64 AMI type. Arm instances - // should use the AL2_ARM_64 AMI type. All types use the Amazon EKS-optimized + // should use the AL2_ARM_64 AMI type. All types use the Amazon EKS optimized // Amazon Linux 2 AMI. If you specify launchTemplate, and your launch template // uses a custom AMI, then don't specify amiType, or the node group deployment // will fail. For more information about using launch templates with Amazon @@ -3102,6 +4254,9 @@ type CreateNodegroupInput struct { // in the Amazon EKS User Guide. AmiType *string `locationName:"amiType" type:"string" enum:"AMITypes"` + // The capacity type for your node group. + CapacityType *string `locationName:"capacityType" type:"string" enum:"CapacityTypes"` + // Unique, case-sensitive identifier that you provide to ensure the idempotency // of the request. ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` @@ -3118,13 +4273,17 @@ type CreateNodegroupInput struct { // in the Amazon EKS User Guide. DiskSize *int64 `locationName:"diskSize" type:"integer"` - // The instance type to use for your node group. You can specify a single instance - // type for a node group. The default value for instanceTypes is t3.medium. - // If you choose a GPU instance type, be sure to specify AL2_x86_64_GPU with - // the amiType parameter. If you specify launchTemplate, then don't specify - // instanceTypes, or the node group deployment will fail. For more information - // about using launch templates with Amazon EKS, see Launch template support - // (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) + // Specify the instance types for a node group. If you specify a GPU instance + // type, be sure to specify AL2_x86_64_GPU with the amiType parameter. If you + // specify launchTemplate, then you can specify zero or one instance type in + // your launch template or you can specify 0-20 instance types for instanceTypes. + // If however, you specify an instance type in your launch template and specify + // any instanceTypes, the node group deployment will fail. If you don't specify + // an instance type in a launch template or for instanceTypes, then t3.medium + // is used, by default. If you specify Spot for capacityType, then we recommend + // specifying multiple values for instanceTypes. For more information, see Managed + // node group capacity types (https://docs.aws.amazon.com/managed-node-groups.html#managed-node-group-capacity-types) + // and Launch template support (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) // in the Amazon EKS User Guide. InstanceTypes []*string `locationName:"instanceTypes" type:"list"` @@ -3159,10 +4318,10 @@ type CreateNodegroupInput struct { // NodegroupName is a required field NodegroupName *string `locationName:"nodegroupName" type:"string" required:"true"` - // The AMI version of the Amazon EKS-optimized AMI to use with your node group. + // The AMI version of the Amazon EKS optimized AMI to use with your node group. // By default, the latest available AMI version for the node group's current - // Kubernetes version is used. For more information, see Amazon EKS-Optimized - // Linux AMI Versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) + // Kubernetes version is used. For more information, see Amazon EKS optimized + // Amazon Linux 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) // in the Amazon EKS User Guide. If you specify launchTemplate, and your launch // template uses a custom AMI, then don't specify releaseVersion, or the node // group deployment will fail. For more information about using launch templates @@ -3258,6 +4417,12 @@ func (s *CreateNodegroupInput) SetAmiType(v string) *CreateNodegroupInput { return s } +// SetCapacityType sets the CapacityType field's value. +func (s *CreateNodegroupInput) SetCapacityType(v string) *CreateNodegroupInput { + s.CapacityType = &v + return s +} + // SetClientRequestToken sets the ClientRequestToken field's value. func (s *CreateNodegroupInput) SetClientRequestToken(v string) *CreateNodegroupInput { s.ClientRequestToken = &v @@ -3365,6 +4530,88 @@ func (s *CreateNodegroupOutput) SetNodegroup(v *Nodegroup) *CreateNodegroupOutpu return s } +type DeleteAddonInput struct { + _ struct{} `type:"structure"` + + // The name of the add-on. The name must match one of the names returned by + // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). + // + // AddonName is a required field + AddonName *string `location:"uri" locationName:"addonName" type:"string" required:"true"` + + // The name of the cluster to delete the add-on from. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteAddonInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteAddonInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteAddonInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteAddonInput"} + if s.AddonName == nil { + invalidParams.Add(request.NewErrParamRequired("AddonName")) + } + if s.AddonName != nil && len(*s.AddonName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AddonName", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddonName sets the AddonName field's value. +func (s *DeleteAddonInput) SetAddonName(v string) *DeleteAddonInput { + s.AddonName = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *DeleteAddonInput) SetClusterName(v string) *DeleteAddonInput { + s.ClusterName = &v + return s +} + +type DeleteAddonOutput struct { + _ struct{} `type:"structure"` + + // An Amazon EKS add-on. + Addon *Addon `locationName:"addon" type:"structure"` +} + +// String returns the string representation +func (s DeleteAddonOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteAddonOutput) GoString() string { + return s.String() +} + +// SetAddon sets the Addon field's value. +func (s *DeleteAddonOutput) SetAddon(v *Addon) *DeleteAddonOutput { + s.Addon = v + return s +} + type DeleteClusterInput struct { _ struct{} `type:"structure"` @@ -3592,6 +4839,196 @@ func (s *DeleteNodegroupOutput) SetNodegroup(v *Nodegroup) *DeleteNodegroupOutpu return s } +type DescribeAddonInput struct { + _ struct{} `type:"structure"` + + // The name of the add-on. The name must match one of the names returned by + // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). + // + // AddonName is a required field + AddonName *string `location:"uri" locationName:"addonName" type:"string" required:"true"` + + // The name of the cluster. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DescribeAddonInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeAddonInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAddonInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAddonInput"} + if s.AddonName == nil { + invalidParams.Add(request.NewErrParamRequired("AddonName")) + } + if s.AddonName != nil && len(*s.AddonName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AddonName", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddonName sets the AddonName field's value. +func (s *DescribeAddonInput) SetAddonName(v string) *DescribeAddonInput { + s.AddonName = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *DescribeAddonInput) SetClusterName(v string) *DescribeAddonInput { + s.ClusterName = &v + return s +} + +type DescribeAddonOutput struct { + _ struct{} `type:"structure"` + + // An Amazon EKS add-on. + Addon *Addon `locationName:"addon" type:"structure"` +} + +// String returns the string representation +func (s DescribeAddonOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeAddonOutput) GoString() string { + return s.String() +} + +// SetAddon sets the Addon field's value. +func (s *DescribeAddonOutput) SetAddon(v *Addon) *DescribeAddonOutput { + s.Addon = v + return s +} + +type DescribeAddonVersionsInput struct { + _ struct{} `type:"structure"` + + // The name of the add-on. The name must match one of the names returned by + // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). + AddonName *string `location:"querystring" locationName:"addonName" type:"string"` + + // The Kubernetes versions that the add-on can be used with. + KubernetesVersion *string `location:"querystring" locationName:"kubernetesVersion" type:"string"` + + // The maximum number of results to return. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The nextToken value returned from a previous paginated DescribeAddonVersionsRequest + // where maxResults was used and the results exceeded the value of that parameter. + // Pagination continues from the end of the previous results that returned the + // nextToken value. + // + // This token should be treated as an opaque identifier that is used only to + // retrieve the next items in a list and not for other programmatic purposes. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s DescribeAddonVersionsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeAddonVersionsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DescribeAddonVersionsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DescribeAddonVersionsInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddonName sets the AddonName field's value. +func (s *DescribeAddonVersionsInput) SetAddonName(v string) *DescribeAddonVersionsInput { + s.AddonName = &v + return s +} + +// SetKubernetesVersion sets the KubernetesVersion field's value. +func (s *DescribeAddonVersionsInput) SetKubernetesVersion(v string) *DescribeAddonVersionsInput { + s.KubernetesVersion = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *DescribeAddonVersionsInput) SetMaxResults(v int64) *DescribeAddonVersionsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeAddonVersionsInput) SetNextToken(v string) *DescribeAddonVersionsInput { + s.NextToken = &v + return s +} + +type DescribeAddonVersionsOutput struct { + _ struct{} `type:"structure"` + + // The list of available versions with Kubernetes version compatibility. + Addons []*AddonInfo `locationName:"addons" type:"list"` + + // The nextToken value returned from a previous paginated DescribeAddonVersionsResponse + // where maxResults was used and the results exceeded the value of that parameter. + // Pagination continues from the end of the previous results that returned the + // nextToken value. + // + // This token should be treated as an opaque identifier that is used only to + // retrieve the next items in a list and not for other programmatic purposes. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s DescribeAddonVersionsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DescribeAddonVersionsOutput) GoString() string { + return s.String() +} + +// SetAddons sets the Addons field's value. +func (s *DescribeAddonVersionsOutput) SetAddons(v []*AddonInfo) *DescribeAddonVersionsOutput { + s.Addons = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *DescribeAddonVersionsOutput) SetNextToken(v string) *DescribeAddonVersionsOutput { + s.NextToken = &v + return s +} + type DescribeClusterInput struct { _ struct{} `type:"structure"` @@ -3821,6 +5258,10 @@ func (s *DescribeNodegroupOutput) SetNodegroup(v *Nodegroup) *DescribeNodegroupO type DescribeUpdateInput struct { _ struct{} `type:"structure"` + // The name of the add-on. The name must match one of the names returned by + // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). + AddonName *string `location:"querystring" locationName:"addonName" type:"string"` + // The name of the Amazon EKS cluster associated with the update. // // Name is a required field @@ -3867,6 +5308,12 @@ func (s *DescribeUpdateInput) Validate() error { return nil } +// SetAddonName sets the AddonName field's value. +func (s *DescribeUpdateInput) SetAddonName(v string) *DescribeUpdateInput { + s.AddonName = &v + return s +} + // SetName sets the Name field's value. func (s *DescribeUpdateInput) SetName(v string) *DescribeUpdateInput { s.Name = &v @@ -4172,6 +5619,8 @@ type InvalidParameterException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + AddonName *string `locationName:"addonName" type:"string"` + // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` @@ -4238,6 +5687,8 @@ type InvalidRequestException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + AddonName *string `locationName:"addonName" type:"string"` + // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` @@ -4301,16 +5752,20 @@ type Issue struct { // A brief description of the error. // - // * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group associated - // with the managed node group. You may be able to recreate an Auto Scaling - // group with the same settings to recover. + // * AccessDenied: Amazon EKS or one or more of your managed nodes is failing + // to authenticate or authorize with your Kubernetes cluster API server. // - // * Ec2SecurityGroupNotFound: We couldn't find the cluster security group - // for the cluster. You must recreate your cluster. + // * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing failures + // while attempting to launch instances. // - // * Ec2SecurityGroupDeletionFailure: We could not delete the remote access - // security group for your managed node group. Remove any dependencies from - // the security group. + // * AutoScalingGroupNotFound: We couldn't find the Auto Scaling group associated + // with the managed node group. You may be able to recreate an Auto Scaling + // group with the same settings to recover. + // + // * ClusterUnreachable: Amazon EKS or one or more of your managed nodes + // is unable to to communicate with your Kubernetes cluster API server. This + // can happen if there are network disruptions or if API servers are timing + // out processing requests. // // * Ec2LaunchTemplateNotFound: We couldn't find the Amazon EC2 launch template // for your managed node group. You may be able to recreate a launch template @@ -4321,6 +5776,13 @@ type Issue struct { // created. You may be able to revert to the version that Amazon EKS created // to recover. // + // * Ec2SecurityGroupDeletionFailure: We could not delete the remote access + // security group for your managed node group. Remove any dependencies from + // the security group. + // + // * Ec2SecurityGroupNotFound: We couldn't find the cluster security group + // for the cluster. You must recreate your cluster. + // // * Ec2SubnetInvalidConfiguration: One or more Amazon EC2 subnets specified // for a node group do not automatically assign public IP addresses to instances // launched into it. If you want your instances to be assigned a public IP @@ -4337,14 +5799,6 @@ type Issue struct { // node group. You may be able to recreate an IAM role with the same settings // to recover. // - // * AsgInstanceLaunchFailures: Your Auto Scaling group is experiencing failures - // while attempting to launch instances. - // - // * NodeCreationFailure: Your launched instances are unable to register - // with your Amazon EKS cluster. Common causes of this failure are insufficient - // worker node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html) - // permissions or lack of outbound internet access for the nodes. - // // * InstanceLimitExceeded: Your AWS account is unable to launch any more // instances of the specified instance type. You may be able to request an // Amazon EC2 instance limit increase to recover. @@ -4353,11 +5807,13 @@ type Issue struct { // your managed node group does not have enough available IP addresses for // new nodes. // - // * AccessDenied: Amazon EKS or one or more of your managed nodes is unable - // to communicate with your cluster API server. - // // * InternalFailure: These errors are usually caused by an Amazon EKS server-side // issue. + // + // * NodeCreationFailure: Your launched instances are unable to register + // with your Amazon EKS cluster. Common causes of this failure are insufficient + // worker node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/worker_node_IAM_role.html) + // permissions or lack of outbound internet access for the nodes. Code *string `locationName:"code" type:"string" enum:"NodegroupIssueCode"` // The error message associated with the issue. @@ -4439,9 +5895,10 @@ type KubernetesNetworkConfigResponse struct { _ struct{} `type:"structure"` // The CIDR block that Kubernetes service IP addresses are assigned from. If - // you didn't specify a CIDR block, then Kubernetes assigns addresses from either - // the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. If this was specified, then - // it was specified when the cluster was created and it cannot be changed. + // you didn't specify a CIDR block when you created the cluster, then Kubernetes + // assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. + // If this was specified, then it was specified when the cluster was created + // and it cannot be changed. ServiceIpv4Cidr *string `locationName:"serviceIpv4Cidr" type:"string"` } @@ -4516,6 +5973,118 @@ func (s *LaunchTemplateSpecification) SetVersion(v string) *LaunchTemplateSpecif return s } +type ListAddonsInput struct { + _ struct{} `type:"structure"` + + // The name of the cluster. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + + // The maximum number of add-on results returned by ListAddonsRequest in paginated + // output. When you use this parameter, ListAddonsRequest returns only maxResults + // results in a single page along with a nextToken response element. You can + // see the remaining results of the initial request by sending another ListAddonsRequest + // request with the returned nextToken value. This value can be between 1 and + // 100. If you don't use this parameter, ListAddonsRequest returns up to 100 + // results and a nextToken value, if applicable. + MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"` + + // The nextToken value returned from a previous paginated ListAddonsRequest + // where maxResults was used and the results exceeded the value of that parameter. + // Pagination continues from the end of the previous results that returned the + // nextToken value. + // + // This token should be treated as an opaque identifier that is used only to + // retrieve the next items in a list and not for other programmatic purposes. + NextToken *string `location:"querystring" locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListAddonsInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListAddonsInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListAddonsInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListAddonsInput"} + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetClusterName sets the ClusterName field's value. +func (s *ListAddonsInput) SetClusterName(v string) *ListAddonsInput { + s.ClusterName = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListAddonsInput) SetMaxResults(v int64) *ListAddonsInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAddonsInput) SetNextToken(v string) *ListAddonsInput { + s.NextToken = &v + return s +} + +type ListAddonsOutput struct { + _ struct{} `type:"structure"` + + // A list of available add-ons. + Addons []*string `locationName:"addons" type:"list"` + + // The nextToken value returned from a previous paginated ListAddonsResponse + // where maxResults was used and the results exceeded the value of that parameter. + // Pagination continues from the end of the previous results that returned the + // nextToken value. + // + // This token should be treated as an opaque identifier that is used only to + // retrieve the next items in a list and not for other programmatic purposes. + NextToken *string `locationName:"nextToken" type:"string"` +} + +// String returns the string representation +func (s ListAddonsOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListAddonsOutput) GoString() string { + return s.String() +} + +// SetAddons sets the Addons field's value. +func (s *ListAddonsOutput) SetAddons(v []*string) *ListAddonsOutput { + s.Addons = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListAddonsOutput) SetNextToken(v string) *ListAddonsOutput { + s.NextToken = &v + return s +} + type ListClustersInput struct { _ struct{} `type:"structure"` @@ -4891,6 +6460,9 @@ func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForRe type ListUpdatesInput struct { _ struct{} `type:"structure"` + // The names of the installed add-ons that have available updates. + AddonName *string `location:"querystring" locationName:"addonName" type:"string"` + // The maximum number of update results returned by ListUpdates in paginated // output. When you use this parameter, ListUpdates returns only maxResults // results in a single page along with a nextToken response element. You can @@ -4944,6 +6516,12 @@ func (s *ListUpdatesInput) Validate() error { return nil } +// SetAddonName sets the AddonName field's value. +func (s *ListUpdatesInput) SetAddonName(v string) *ListUpdatesInput { + s.AddonName = &v + return s +} + // SetMaxResults sets the MaxResults field's value. func (s *ListUpdatesInput) SetMaxResults(v int64) *ListUpdatesInput { s.MaxResults = &v @@ -5073,6 +6651,9 @@ type Nodegroup struct { // template, this is the AMI type that was specified in the node group configuration. AmiType *string `locationName:"amiType" type:"string" enum:"AMITypes"` + // The capacity type of your managed node group. + CapacityType *string `locationName:"capacityType" type:"string" enum:"CapacityTypes"` + // The name of the cluster that the managed node group resides in. ClusterName *string `locationName:"clusterName" type:"string"` @@ -5122,7 +6703,7 @@ type Nodegroup struct { // If the node group was deployed using a launch template with a custom AMI, // then this is the AMI ID that was specified in the launch template. For node // groups that weren't deployed using a launch template, this is the version - // of the Amazon EKS-optimized AMI that the node group was deployed with. + // of the Amazon EKS optimized AMI that the node group was deployed with. ReleaseVersion *string `locationName:"releaseVersion" type:"string"` // If the node group wasn't deployed with a launch template, then this is the @@ -5171,6 +6752,12 @@ func (s *Nodegroup) SetAmiType(v string) *Nodegroup { return s } +// SetCapacityType sets the CapacityType field's value. +func (s *Nodegroup) SetCapacityType(v string) *Nodegroup { + s.CapacityType = &v + return s +} + // SetClusterName sets the ClusterName field's value. func (s *Nodegroup) SetClusterName(v string) *Nodegroup { s.ClusterName = &v @@ -5568,6 +7155,8 @@ type ResourceInUseException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + AddonName *string `locationName:"addonName" type:"string"` + // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` @@ -5694,6 +7283,8 @@ type ResourceNotFoundException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + AddonName *string `locationName:"addonName" type:"string"` + // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` @@ -5759,6 +7350,8 @@ type ServerException struct { _ struct{} `type:"structure"` RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + AddonName *string `locationName:"addonName" type:"string"` + // The Amazon EKS cluster associated with the exception. ClusterName *string `locationName:"clusterName" type:"string"` @@ -6157,6 +7750,140 @@ func (s *Update) SetType(v string) *Update { return s } +type UpdateAddonInput struct { + _ struct{} `type:"structure"` + + // The name of the add-on. The name must match one of the names returned by + // ListAddons (https://docs.aws.amazon.com/eks/latest/APIReference/API_ListAddons.html). + // + // AddonName is a required field + AddonName *string `location:"uri" locationName:"addonName" type:"string" required:"true"` + + // The version of the add-on. The version must match one of the versions returned + // by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html). + AddonVersion *string `locationName:"addonVersion" type:"string"` + + // Unique, case-sensitive identifier that you provide to ensure the idempotency + // of the request. + ClientRequestToken *string `locationName:"clientRequestToken" type:"string" idempotencyToken:"true"` + + // The name of the cluster. + // + // ClusterName is a required field + ClusterName *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"` + + // How to resolve parameter value conflicts when applying the new version of + // the add-on to the cluster. + ResolveConflicts *string `locationName:"resolveConflicts" type:"string" enum:"ResolveConflicts"` + + // The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's + // service account. The role must be assigned the IAM permissions required by + // the add-on. If you don't specify an existing IAM role, then the add-on uses + // the permissions assigned to the node IAM role. For more information, see + // Amazon EKS node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html) + // in the Amazon EKS User Guide. + // + // To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) + // provider created for your cluster. For more information, see Enabling IAM + // roles for service accounts on your cluster (https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html) + // in the Amazon EKS User Guide. + ServiceAccountRoleArn *string `locationName:"serviceAccountRoleArn" min:"1" type:"string"` +} + +// String returns the string representation +func (s UpdateAddonInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateAddonInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateAddonInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateAddonInput"} + if s.AddonName == nil { + invalidParams.Add(request.NewErrParamRequired("AddonName")) + } + if s.AddonName != nil && len(*s.AddonName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("AddonName", 1)) + } + if s.ClusterName == nil { + invalidParams.Add(request.NewErrParamRequired("ClusterName")) + } + if s.ClusterName != nil && len(*s.ClusterName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ClusterName", 1)) + } + if s.ServiceAccountRoleArn != nil && len(*s.ServiceAccountRoleArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ServiceAccountRoleArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAddonName sets the AddonName field's value. +func (s *UpdateAddonInput) SetAddonName(v string) *UpdateAddonInput { + s.AddonName = &v + return s +} + +// SetAddonVersion sets the AddonVersion field's value. +func (s *UpdateAddonInput) SetAddonVersion(v string) *UpdateAddonInput { + s.AddonVersion = &v + return s +} + +// SetClientRequestToken sets the ClientRequestToken field's value. +func (s *UpdateAddonInput) SetClientRequestToken(v string) *UpdateAddonInput { + s.ClientRequestToken = &v + return s +} + +// SetClusterName sets the ClusterName field's value. +func (s *UpdateAddonInput) SetClusterName(v string) *UpdateAddonInput { + s.ClusterName = &v + return s +} + +// SetResolveConflicts sets the ResolveConflicts field's value. +func (s *UpdateAddonInput) SetResolveConflicts(v string) *UpdateAddonInput { + s.ResolveConflicts = &v + return s +} + +// SetServiceAccountRoleArn sets the ServiceAccountRoleArn field's value. +func (s *UpdateAddonInput) SetServiceAccountRoleArn(v string) *UpdateAddonInput { + s.ServiceAccountRoleArn = &v + return s +} + +type UpdateAddonOutput struct { + _ struct{} `type:"structure"` + + // An object representing an asynchronous update. + Update *Update `locationName:"update" type:"structure"` +} + +// String returns the string representation +func (s UpdateAddonOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateAddonOutput) GoString() string { + return s.String() +} + +// SetUpdate sets the Update field's value. +func (s *UpdateAddonOutput) SetUpdate(v *Update) *UpdateAddonOutput { + s.Update = v + return s +} + type UpdateClusterConfigInput struct { _ struct{} `type:"structure"` @@ -6522,10 +8249,10 @@ type UpdateNodegroupVersionInput struct { // NodegroupName is a required field NodegroupName *string `location:"uri" locationName:"nodegroupName" type:"string" required:"true"` - // The AMI version of the Amazon EKS-optimized AMI to use for the update. By + // The AMI version of the Amazon EKS optimized AMI to use for the update. By // default, the latest available AMI version for the node group's Kubernetes - // version is used. For more information, see Amazon EKS-Optimized Linux AMI - // Versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) + // version is used. For more information, see Amazon EKS optimized Amazon Linux + // 2 AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html) // in the Amazon EKS User Guide. If you specify launchTemplate, and your launch // template uses a custom AMI, then don't specify releaseVersion, or the node // group update will fail. For more information about using launch templates @@ -6712,7 +8439,15 @@ type VpcConfigRequest struct { // Specify one or more security groups for the cross-account elastic network // interfaces that Amazon EKS creates to use to allow communication between // your worker nodes and the Kubernetes control plane. If you don't specify - // a security group, the default security group for your VPC is used. + // any security groups, then familiarize yourself with the difference between + // Amazon EKS defaults for clusters deployed with Kubernetes: + // + // * 1.14 Amazon EKS platform version eks.2 and earlier + // + // * 1.14 Amazon EKS platform version eks.3 and later + // + // For more information, see Amazon EKS security group considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) + // in the Amazon EKS User Guide . SecurityGroupIds []*string `locationName:"securityGroupIds" type:"list"` // Specify subnets for your Amazon EKS worker nodes. Amazon EKS creates cross-account @@ -6880,6 +8615,86 @@ func AMITypes_Values() []string { } } +const ( + // AddonIssueCodeAccessDenied is a AddonIssueCode enum value + AddonIssueCodeAccessDenied = "AccessDenied" + + // AddonIssueCodeInternalFailure is a AddonIssueCode enum value + AddonIssueCodeInternalFailure = "InternalFailure" + + // AddonIssueCodeClusterUnreachable is a AddonIssueCode enum value + AddonIssueCodeClusterUnreachable = "ClusterUnreachable" + + // AddonIssueCodeInsufficientNumberOfReplicas is a AddonIssueCode enum value + AddonIssueCodeInsufficientNumberOfReplicas = "InsufficientNumberOfReplicas" + + // AddonIssueCodeConfigurationConflict is a AddonIssueCode enum value + AddonIssueCodeConfigurationConflict = "ConfigurationConflict" +) + +// AddonIssueCode_Values returns all elements of the AddonIssueCode enum +func AddonIssueCode_Values() []string { + return []string{ + AddonIssueCodeAccessDenied, + AddonIssueCodeInternalFailure, + AddonIssueCodeClusterUnreachable, + AddonIssueCodeInsufficientNumberOfReplicas, + AddonIssueCodeConfigurationConflict, + } +} + +const ( + // AddonStatusCreating is a AddonStatus enum value + AddonStatusCreating = "CREATING" + + // AddonStatusActive is a AddonStatus enum value + AddonStatusActive = "ACTIVE" + + // AddonStatusCreateFailed is a AddonStatus enum value + AddonStatusCreateFailed = "CREATE_FAILED" + + // AddonStatusUpdating is a AddonStatus enum value + AddonStatusUpdating = "UPDATING" + + // AddonStatusDeleting is a AddonStatus enum value + AddonStatusDeleting = "DELETING" + + // AddonStatusDeleteFailed is a AddonStatus enum value + AddonStatusDeleteFailed = "DELETE_FAILED" + + // AddonStatusDegraded is a AddonStatus enum value + AddonStatusDegraded = "DEGRADED" +) + +// AddonStatus_Values returns all elements of the AddonStatus enum +func AddonStatus_Values() []string { + return []string{ + AddonStatusCreating, + AddonStatusActive, + AddonStatusCreateFailed, + AddonStatusUpdating, + AddonStatusDeleting, + AddonStatusDeleteFailed, + AddonStatusDegraded, + } +} + +const ( + // CapacityTypesOnDemand is a CapacityTypes enum value + CapacityTypesOnDemand = "ON_DEMAND" + + // CapacityTypesSpot is a CapacityTypes enum value + CapacityTypesSpot = "SPOT" +) + +// CapacityTypes_Values returns all elements of the CapacityTypes enum +func CapacityTypes_Values() []string { + return []string{ + CapacityTypesOnDemand, + CapacityTypesSpot, + } +} + const ( // ClusterStatusCreating is a ClusterStatus enum value ClusterStatusCreating = "CREATING" @@ -6944,6 +8759,12 @@ const ( // ErrorCodeClusterUnreachable is a ErrorCode enum value ErrorCodeClusterUnreachable = "ClusterUnreachable" + + // ErrorCodeInsufficientNumberOfReplicas is a ErrorCode enum value + ErrorCodeInsufficientNumberOfReplicas = "InsufficientNumberOfReplicas" + + // ErrorCodeConfigurationConflict is a ErrorCode enum value + ErrorCodeConfigurationConflict = "ConfigurationConflict" ) // ErrorCode_Values returns all elements of the ErrorCode enum @@ -6961,6 +8782,8 @@ func ErrorCode_Values() []string { ErrorCodePodEvictionFailure, ErrorCodeInsufficientFreeAddresses, ErrorCodeClusterUnreachable, + ErrorCodeInsufficientNumberOfReplicas, + ErrorCodeConfigurationConflict, } } @@ -7136,6 +8959,22 @@ func NodegroupStatus_Values() []string { } } +const ( + // ResolveConflictsOverwrite is a ResolveConflicts enum value + ResolveConflictsOverwrite = "OVERWRITE" + + // ResolveConflictsNone is a ResolveConflicts enum value + ResolveConflictsNone = "NONE" +) + +// ResolveConflicts_Values returns all elements of the ResolveConflicts enum +func ResolveConflicts_Values() []string { + return []string{ + ResolveConflictsOverwrite, + ResolveConflictsNone, + } +} + const ( // UpdateParamTypeVersion is a UpdateParamType enum value UpdateParamTypeVersion = "Version" @@ -7172,6 +9011,15 @@ const ( // UpdateParamTypePublicAccessCidrs is a UpdateParamType enum value UpdateParamTypePublicAccessCidrs = "PublicAccessCidrs" + + // UpdateParamTypeAddonVersion is a UpdateParamType enum value + UpdateParamTypeAddonVersion = "AddonVersion" + + // UpdateParamTypeServiceAccountRoleArn is a UpdateParamType enum value + UpdateParamTypeServiceAccountRoleArn = "ServiceAccountRoleArn" + + // UpdateParamTypeResolveConflicts is a UpdateParamType enum value + UpdateParamTypeResolveConflicts = "ResolveConflicts" ) // UpdateParamType_Values returns all elements of the UpdateParamType enum @@ -7189,6 +9037,9 @@ func UpdateParamType_Values() []string { UpdateParamTypeMinSize, UpdateParamTypeReleaseVersion, UpdateParamTypePublicAccessCidrs, + UpdateParamTypeAddonVersion, + UpdateParamTypeServiceAccountRoleArn, + UpdateParamTypeResolveConflicts, } } @@ -7228,6 +9079,9 @@ const ( // UpdateTypeConfigUpdate is a UpdateType enum value UpdateTypeConfigUpdate = "ConfigUpdate" + + // UpdateTypeAddonUpdate is a UpdateType enum value + UpdateTypeAddonUpdate = "AddonUpdate" ) // UpdateType_Values returns all elements of the UpdateType enum @@ -7237,5 +9091,6 @@ func UpdateType_Values() []string { UpdateTypeEndpointAccessUpdate, UpdateTypeLoggingUpdate, UpdateTypeConfigUpdate, + UpdateTypeAddonUpdate, } } diff --git a/vendor/github.com/aws/aws-sdk-go/service/eks/eksiface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/eks/eksiface/interface.go index ece993ac7..02dfe4001 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/eks/eksiface/interface.go +++ b/vendor/github.com/aws/aws-sdk-go/service/eks/eksiface/interface.go @@ -26,7 +26,7 @@ import ( // // myFunc uses an SDK service client to make a request to // // Amazon Elastic Kubernetes Service. // func myFunc(svc eksiface.EKSAPI) bool { -// // Make svc.CreateCluster request +// // Make svc.CreateAddon request // } // // func main() { @@ -42,7 +42,7 @@ import ( // type mockEKSClient struct { // eksiface.EKSAPI // } -// func (m *mockEKSClient) CreateCluster(input *eks.CreateClusterInput) (*eks.CreateClusterOutput, error) { +// func (m *mockEKSClient) CreateAddon(input *eks.CreateAddonInput) (*eks.CreateAddonOutput, error) { // // mock response/functionality // } // @@ -60,6 +60,10 @@ import ( // and waiters. Its suggested to use the pattern above for testing, or using // tooling to generate mocks to satisfy the interfaces. type EKSAPI interface { + CreateAddon(*eks.CreateAddonInput) (*eks.CreateAddonOutput, error) + CreateAddonWithContext(aws.Context, *eks.CreateAddonInput, ...request.Option) (*eks.CreateAddonOutput, error) + CreateAddonRequest(*eks.CreateAddonInput) (*request.Request, *eks.CreateAddonOutput) + CreateCluster(*eks.CreateClusterInput) (*eks.CreateClusterOutput, error) CreateClusterWithContext(aws.Context, *eks.CreateClusterInput, ...request.Option) (*eks.CreateClusterOutput, error) CreateClusterRequest(*eks.CreateClusterInput) (*request.Request, *eks.CreateClusterOutput) @@ -72,6 +76,10 @@ type EKSAPI interface { CreateNodegroupWithContext(aws.Context, *eks.CreateNodegroupInput, ...request.Option) (*eks.CreateNodegroupOutput, error) CreateNodegroupRequest(*eks.CreateNodegroupInput) (*request.Request, *eks.CreateNodegroupOutput) + DeleteAddon(*eks.DeleteAddonInput) (*eks.DeleteAddonOutput, error) + DeleteAddonWithContext(aws.Context, *eks.DeleteAddonInput, ...request.Option) (*eks.DeleteAddonOutput, error) + DeleteAddonRequest(*eks.DeleteAddonInput) (*request.Request, *eks.DeleteAddonOutput) + DeleteCluster(*eks.DeleteClusterInput) (*eks.DeleteClusterOutput, error) DeleteClusterWithContext(aws.Context, *eks.DeleteClusterInput, ...request.Option) (*eks.DeleteClusterOutput, error) DeleteClusterRequest(*eks.DeleteClusterInput) (*request.Request, *eks.DeleteClusterOutput) @@ -84,6 +92,17 @@ type EKSAPI interface { DeleteNodegroupWithContext(aws.Context, *eks.DeleteNodegroupInput, ...request.Option) (*eks.DeleteNodegroupOutput, error) DeleteNodegroupRequest(*eks.DeleteNodegroupInput) (*request.Request, *eks.DeleteNodegroupOutput) + DescribeAddon(*eks.DescribeAddonInput) (*eks.DescribeAddonOutput, error) + DescribeAddonWithContext(aws.Context, *eks.DescribeAddonInput, ...request.Option) (*eks.DescribeAddonOutput, error) + DescribeAddonRequest(*eks.DescribeAddonInput) (*request.Request, *eks.DescribeAddonOutput) + + DescribeAddonVersions(*eks.DescribeAddonVersionsInput) (*eks.DescribeAddonVersionsOutput, error) + DescribeAddonVersionsWithContext(aws.Context, *eks.DescribeAddonVersionsInput, ...request.Option) (*eks.DescribeAddonVersionsOutput, error) + DescribeAddonVersionsRequest(*eks.DescribeAddonVersionsInput) (*request.Request, *eks.DescribeAddonVersionsOutput) + + DescribeAddonVersionsPages(*eks.DescribeAddonVersionsInput, func(*eks.DescribeAddonVersionsOutput, bool) bool) error + DescribeAddonVersionsPagesWithContext(aws.Context, *eks.DescribeAddonVersionsInput, func(*eks.DescribeAddonVersionsOutput, bool) bool, ...request.Option) error + DescribeCluster(*eks.DescribeClusterInput) (*eks.DescribeClusterOutput, error) DescribeClusterWithContext(aws.Context, *eks.DescribeClusterInput, ...request.Option) (*eks.DescribeClusterOutput, error) DescribeClusterRequest(*eks.DescribeClusterInput) (*request.Request, *eks.DescribeClusterOutput) @@ -100,6 +119,13 @@ type EKSAPI interface { DescribeUpdateWithContext(aws.Context, *eks.DescribeUpdateInput, ...request.Option) (*eks.DescribeUpdateOutput, error) DescribeUpdateRequest(*eks.DescribeUpdateInput) (*request.Request, *eks.DescribeUpdateOutput) + ListAddons(*eks.ListAddonsInput) (*eks.ListAddonsOutput, error) + ListAddonsWithContext(aws.Context, *eks.ListAddonsInput, ...request.Option) (*eks.ListAddonsOutput, error) + ListAddonsRequest(*eks.ListAddonsInput) (*request.Request, *eks.ListAddonsOutput) + + ListAddonsPages(*eks.ListAddonsInput, func(*eks.ListAddonsOutput, bool) bool) error + ListAddonsPagesWithContext(aws.Context, *eks.ListAddonsInput, func(*eks.ListAddonsOutput, bool) bool, ...request.Option) error + ListClusters(*eks.ListClustersInput) (*eks.ListClustersOutput, error) ListClustersWithContext(aws.Context, *eks.ListClustersInput, ...request.Option) (*eks.ListClustersOutput, error) ListClustersRequest(*eks.ListClustersInput) (*request.Request, *eks.ListClustersOutput) @@ -140,6 +166,10 @@ type EKSAPI interface { UntagResourceWithContext(aws.Context, *eks.UntagResourceInput, ...request.Option) (*eks.UntagResourceOutput, error) UntagResourceRequest(*eks.UntagResourceInput) (*request.Request, *eks.UntagResourceOutput) + UpdateAddon(*eks.UpdateAddonInput) (*eks.UpdateAddonOutput, error) + UpdateAddonWithContext(aws.Context, *eks.UpdateAddonInput, ...request.Option) (*eks.UpdateAddonOutput, error) + UpdateAddonRequest(*eks.UpdateAddonInput) (*request.Request, *eks.UpdateAddonOutput) + UpdateClusterConfig(*eks.UpdateClusterConfigInput) (*eks.UpdateClusterConfigOutput, error) UpdateClusterConfigWithContext(aws.Context, *eks.UpdateClusterConfigInput, ...request.Option) (*eks.UpdateClusterConfigOutput, error) UpdateClusterConfigRequest(*eks.UpdateClusterConfigInput) (*request.Request, *eks.UpdateClusterConfigOutput) @@ -156,6 +186,12 @@ type EKSAPI interface { UpdateNodegroupVersionWithContext(aws.Context, *eks.UpdateNodegroupVersionInput, ...request.Option) (*eks.UpdateNodegroupVersionOutput, error) UpdateNodegroupVersionRequest(*eks.UpdateNodegroupVersionInput) (*request.Request, *eks.UpdateNodegroupVersionOutput) + WaitUntilAddonActive(*eks.DescribeAddonInput) error + WaitUntilAddonActiveWithContext(aws.Context, *eks.DescribeAddonInput, ...request.WaiterOption) error + + WaitUntilAddonDeleted(*eks.DescribeAddonInput) error + WaitUntilAddonDeletedWithContext(aws.Context, *eks.DescribeAddonInput, ...request.WaiterOption) error + WaitUntilClusterActive(*eks.DescribeClusterInput) error WaitUntilClusterActiveWithContext(aws.Context, *eks.DescribeClusterInput, ...request.WaiterOption) error diff --git a/vendor/github.com/aws/aws-sdk-go/service/eks/waiters.go b/vendor/github.com/aws/aws-sdk-go/service/eks/waiters.go index 31d2071b2..9d24b0d81 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/eks/waiters.go +++ b/vendor/github.com/aws/aws-sdk-go/service/eks/waiters.go @@ -9,6 +9,108 @@ import ( "github.com/aws/aws-sdk-go/aws/request" ) +// WaitUntilAddonActive uses the Amazon EKS API operation +// DescribeAddon to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *EKS) WaitUntilAddonActive(input *DescribeAddonInput) error { + return c.WaitUntilAddonActiveWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilAddonActiveWithContext is an extended version of WaitUntilAddonActive. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) WaitUntilAddonActiveWithContext(ctx aws.Context, input *DescribeAddonInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilAddonActive", + MaxAttempts: 60, + Delay: request.ConstantWaiterDelay(10 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.FailureWaiterState, + Matcher: request.PathWaiterMatch, Argument: "addon.status", + Expected: "CREATE_FAILED", + }, + { + State: request.SuccessWaiterState, + Matcher: request.PathWaiterMatch, Argument: "addon.status", + Expected: "ACTIVE", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeAddonInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeAddonRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + +// WaitUntilAddonDeleted uses the Amazon EKS API operation +// DescribeAddon to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *EKS) WaitUntilAddonDeleted(input *DescribeAddonInput) error { + return c.WaitUntilAddonDeletedWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilAddonDeletedWithContext is an extended version of WaitUntilAddonDeleted. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EKS) WaitUntilAddonDeletedWithContext(ctx aws.Context, input *DescribeAddonInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilAddonDeleted", + MaxAttempts: 60, + Delay: request.ConstantWaiterDelay(10 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.FailureWaiterState, + Matcher: request.PathWaiterMatch, Argument: "addon.status", + Expected: "DELETE_FAILED", + }, + { + State: request.SuccessWaiterState, + Matcher: request.ErrorWaiterMatch, + Expected: "ResourceNotFoundException", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeAddonInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeAddonRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + // WaitUntilClusterActive uses the Amazon EKS API operation // DescribeCluster to wait for a condition to be met before returning. // If the condition is not met within the max attempt window, an error will diff --git a/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go b/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go index 09539b9ab..cc0486d15 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go @@ -4185,7 +4185,8 @@ type CreateListenerInput struct { // The protocol for connections from clients to the load balancer. For Application // Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load - // Balancers, the supported protocols are TCP, TLS, UDP, and TCP_UDP. You cannot + // Balancers, the supported protocols are TCP, TLS, UDP, and TCP_UDP. You can’t + // specify the UDP or TCP_UDP protocol if dual-stack mode is enabled. You cannot // specify a protocol for a Gateway Load Balancer. Protocol *string `type:"string" enum:"ProtocolEnum"` @@ -4331,10 +4332,9 @@ type CreateLoadBalancerInput struct { // pool (CoIP pool). CustomerOwnedIpv4Pool *string `type:"string"` - // [Application Load Balancers] The type of IP addresses used by the subnets - // for your load balancer. The possible values are ipv4 (for IPv4 addresses) - // and dualstack (for IPv4 and IPv6 addresses). Internal load balancers must - // use ipv4. + // The type of IP addresses used by the subnets for your load balancer. The + // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and + // IPv6 addresses). Internal load balancers must use ipv4. IpAddressType *string `type:"string" enum:"IpAddressType"` // The name of the load balancer. @@ -4380,7 +4380,8 @@ type CreateLoadBalancerInput struct { // Zones. You can specify one Elastic IP address per subnet if you need static // IP addresses for your internet-facing load balancer. For internal load balancers, // you can specify one private IP address per subnet from the IPv4 range of - // the subnet. + // the subnet. For internet-facing load balancer, you can specify one IPv6 address + // per subnet. // // [Gateway Load Balancers] You can specify subnets from one or more Availability // Zones. You cannot specify Elastic IP addresses for your subnets. @@ -6673,6 +6674,9 @@ type LoadBalancerAddress struct { // an internal-facing load balancer. AllocationId *string `type:"string"` + // [Network Load Balancers] The IPv6 address. + IPv6Address *string `type:"string"` + // The static IP address. IpAddress *string `type:"string"` @@ -6696,6 +6700,12 @@ func (s *LoadBalancerAddress) SetAllocationId(v string) *LoadBalancerAddress { return s } +// SetIPv6Address sets the IPv6Address field's value. +func (s *LoadBalancerAddress) SetIPv6Address(v string) *LoadBalancerAddress { + s.IPv6Address = &v + return s +} + // SetIpAddress sets the IpAddress field's value. func (s *LoadBalancerAddress) SetIpAddress(v string) *LoadBalancerAddress { s.IpAddress = &v @@ -6751,6 +6761,10 @@ type LoadBalancerAttribute struct { // is true or false. The default is true. Elastic Load Balancing requires // that message header names contain only alphanumeric characters and hyphens. // + // * waf.fail_open.enabled - Indicates whether to allow a WAF-enabled load + // balancer to route requests to targets if it is unable to forward the request + // to AWS WAF. The value is true or false. The default is false. + // // The following attribute is supported by Network Load Balancers and Gateway // Load Balancers: // @@ -6899,8 +6913,9 @@ type ModifyListenerInput struct { // The protocol for connections from clients to the load balancer. Application // Load Balancers support the HTTP and HTTPS protocols. Network Load Balancers - // support the TCP, TLS, UDP, and TCP_UDP protocols. You cannot specify a protocol - // for a Gateway Load Balancer. + // support the TCP, TLS, UDP, and TCP_UDP protocols. You can’t change the + // protocol to UDP or TCP_UDP if dual-stack mode is enabled. You cannot specify + // a protocol for a Gateway Load Balancer. Protocol *string `type:"string" enum:"ProtocolEnum"` // [HTTPS and TLS listeners] The security policy that defines which protocols @@ -8108,7 +8123,8 @@ type SetIpAddressTypeInput struct { // The IP address type. The possible values are ipv4 (for IPv4 addresses) and // dualstack (for IPv4 and IPv6 addresses). Internal load balancers must use - // ipv4. + // ipv4. You can’t specify dualstack for a load balancer with a UDP or TCP_UDP + // listener. // // IpAddressType is a required field IpAddressType *string `type:"string" required:"true" enum:"IpAddressType"` @@ -8329,6 +8345,13 @@ func (s *SetSecurityGroupsOutput) SetSecurityGroupIds(v []*string) *SetSecurityG type SetSubnetsInput struct { _ struct{} `type:"structure"` + // [Network Load Balancers] The type of IP addresses used by the subnets for + // your load balancer. The possible values are ipv4 (for IPv4 addresses) and + // dualstack (for IPv4 and IPv6 addresses). You can’t specify dualstack for + // a load balancer with a UDP or TCP_UDP listener. Internal load balancers must + // use ipv4. + IpAddressType *string `type:"string" enum:"IpAddressType"` + // The Amazon Resource Name (ARN) of the load balancer. // // LoadBalancerArn is a required field @@ -8340,16 +8363,32 @@ type SetSubnetsInput struct { // [Application Load Balancers] You must specify subnets from at least two Availability // Zones. You cannot specify Elastic IP addresses for your subnets. // + // [Application Load Balancers on Outposts] You must specify one Outpost subnet. + // + // [Application Load Balancers on Local Zones] You can specify subnets from + // one or more Local Zones. + // // [Network Load Balancers] You can specify subnets from one or more Availability - // Zones. If you need static IP addresses for your internet-facing load balancer, - // you can specify one Elastic IP address per subnet. For internal load balancers, + // Zones. You can specify one Elastic IP address per subnet if you need static + // IP addresses for your internet-facing load balancer. For internal load balancers, // you can specify one private IP address per subnet from the IPv4 range of - // the subnet. + // the subnet. For internet-facing load balancer, you can specify one IPv6 address + // per subnet. SubnetMappings []*SubnetMapping `type:"list"` - // The IDs of the public subnets. You must specify subnets from at least two - // Availability Zones. You can specify only one subnet per Availability Zone. - // You must specify either subnets or subnet mappings. + // The IDs of the public subnets. You can specify only one subnet per Availability + // Zone. You must specify either subnets or subnet mappings. + // + // [Application Load Balancers] You must specify subnets from at least two Availability + // Zones. + // + // [Application Load Balancers on Outposts] You must specify one Outpost subnet. + // + // [Application Load Balancers on Local Zones] You can specify subnets from + // one or more Local Zones. + // + // [Network Load Balancers] You can specify subnets from one or more Availability + // Zones. Subnets []*string `type:"list"` } @@ -8376,6 +8415,12 @@ func (s *SetSubnetsInput) Validate() error { return nil } +// SetIpAddressType sets the IpAddressType field's value. +func (s *SetSubnetsInput) SetIpAddressType(v string) *SetSubnetsInput { + s.IpAddressType = &v + return s +} + // SetLoadBalancerArn sets the LoadBalancerArn field's value. func (s *SetSubnetsInput) SetLoadBalancerArn(v string) *SetSubnetsInput { s.LoadBalancerArn = &v @@ -8399,6 +8444,9 @@ type SetSubnetsOutput struct { // Information about the subnets. AvailabilityZones []*AvailabilityZone `type:"list"` + + // [Network Load Balancers] The IP address type. + IpAddressType *string `type:"string" enum:"IpAddressType"` } // String returns the string representation @@ -8417,6 +8465,12 @@ func (s *SetSubnetsOutput) SetAvailabilityZones(v []*AvailabilityZone) *SetSubne return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *SetSubnetsOutput) SetIpAddressType(v string) *SetSubnetsOutput { + s.IpAddressType = &v + return s +} + // Information about a source IP condition. // // You can use this condition to route based on the IP address of the source @@ -8501,6 +8555,9 @@ type SubnetMapping struct { // an internet-facing load balancer. AllocationId *string `type:"string"` + // [Network Load Balancers] The IPv6 address. + IPv6Address *string `type:"string"` + // [Network Load Balancers] The private IPv4 address for an internal load balancer. PrivateIPv4Address *string `type:"string"` @@ -8524,6 +8581,12 @@ func (s *SubnetMapping) SetAllocationId(v string) *SubnetMapping { return s } +// SetIPv6Address sets the IPv6Address field's value. +func (s *SubnetMapping) SetIPv6Address(v string) *SubnetMapping { + s.IPv6Address = &v + return s +} + // SetPrivateIPv4Address sets the PrivateIPv4Address field's value. func (s *SubnetMapping) SetPrivateIPv4Address(v string) *SubnetMapping { s.PrivateIPv4Address = &v @@ -8932,7 +8995,11 @@ type TargetGroupAttribute struct { // contains a duplicate header field name or query parameter key, the load // balancer uses the last value sent by the client. // - // The following attribute is supported only by Network Load Balancers: + // The following attributes are supported only by Network Load Balancers: + // + // * deregistration_delay.connection_termination.enabled - Indicates whether + // the load balancer terminates connections at the end of the deregistration + // timeout. The value is true or false. The default is false. // // * proxy_protocol_v2.enabled - Indicates whether Proxy Protocol version // 2 is enabled. The value is true or false. The default is false. diff --git a/vendor/github.com/aws/aws-sdk-go/service/s3/api.go b/vendor/github.com/aws/aws-sdk-go/service/s3/api.go index 2ab5d1dad..66700cce1 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/s3/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/s3/api.go @@ -392,21 +392,19 @@ func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, ou // All headers with the x-amz- prefix, including x-amz-copy-source, must be // signed. // -// Encryption -// -// The source object that you are copying can be encrypted or unencrypted. The -// source object can be encrypted with server-side encryption using AWS managed -// encryption keys (SSE-S3 or SSE-KMS) or by using a customer-provided encryption -// key. With server-side encryption, Amazon S3 encrypts your data as it writes -// it to disks in its data centers and decrypts the data when you access it. -// -// You can optionally use the appropriate encryption-related headers to request -// server-side encryption for the target object. You have the option to provide -// your own encryption key or use SSE-S3 or SSE-KMS, regardless of the form -// of server-side encryption that was used to encrypt the source object. You -// can even request encryption if the source object was not encrypted. For more -// information about server-side encryption, see Using Server-Side Encryption -// (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html). +// Server-side encryption +// +// When you perform a CopyObject operation, you can optionally use the appropriate +// encryption-related headers to encrypt the object using server-side encryption +// with AWS managed encryption keys (SSE-S3 or SSE-KMS) or a customer-provided +// encryption key. With server-side encryption, Amazon S3 encrypts your data +// as it writes it to disks in its data centers and decrypts the data when you +// access it. For more information about server-side encryption, see Using Server-Side +// Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/serv-side-encryption.html). +// +// If a target object uses SSE-KMS, you can enable an S3 Bucket Key for the +// object. For more information, see Amazon S3 Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) +// in the Amazon Simple Storage Service Developer Guide. // // Access Control List (ACL)-Specific Request Headers // @@ -4513,10 +4511,10 @@ func (c *S3) GetObjectRequest(input *GetObjectInput) (req *request.Request, outp // For more information about returning the ACL of an object, see GetObjectAcl // (https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html). // -// If the object you are retrieving is stored in the S3 Glacier, S3 Glacier -// Deep Archive, S3 Intelligent-Tiering Archive, or S3 Intelligent-Tiering Deep -// Archive storage classes, before you can retrieve the object you must first -// restore a copy using RestoreObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). +// If the object you are retrieving is stored in the S3 Glacier or S3 Glacier +// Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering +// Deep Archive tiers, before you can retrieve the object you must first restore +// a copy using RestoreObject (https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html). // Otherwise, this operation returns an InvalidObjectStateError error. For information // about restoring archived objects, see Restoring Archived Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html). // @@ -7316,13 +7314,17 @@ func (c *S3) PutBucketEncryptionRequest(input *PutBucketEncryptionInput) (req *r // PutBucketEncryption API operation for Amazon Simple Storage Service. // -// This implementation of the PUT operation uses the encryption subresource -// to set the default encryption state of an existing bucket. +// This operation uses the encryption subresource to configure default encryption +// and Amazon S3 Bucket Key for an existing bucket. // -// This implementation of the PUT operation sets default encryption for a bucket -// using server-side encryption with Amazon S3-managed keys SSE-S3 or AWS KMS -// customer master keys (CMKs) (SSE-KMS). For information about the Amazon S3 -// default encryption feature, see Amazon S3 Default Bucket Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html). +// Default encryption for a bucket can use server-side encryption with Amazon +// S3-managed keys (SSE-S3) or AWS KMS customer master keys (SSE-KMS). If you +// specify default encryption using SSE-KMS, you can also configure Amazon S3 +// Bucket Key. For information about default encryption, see Amazon S3 default +// bucket encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) +// in the Amazon Simple Storage Service Developer Guide. For more information +// about S3 Bucket Keys, see Amazon S3 Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) +// in the Amazon Simple Storage Service Developer Guide. // // This operation requires AWS Signature Version 4. For more information, see // Authenticating Requests (AWS Signature Version 4) (sig-v4-authenticating-requests.html). @@ -8346,6 +8348,10 @@ func (c *S3) PutBucketOwnershipControlsRequest(input *PutBucketOwnershipControls output = &PutBucketOwnershipControlsOutput{} req = c.newRequest(op, input, output) req.Handlers.Unmarshal.Swap(restxml.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + req.Handlers.Build.PushBackNamed(request.NamedHandler{ + Name: "contentMd5Handler", + Fn: checksum.AddBodyContentMD5Handler, + }) return } @@ -8551,15 +8557,14 @@ func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req // permission. // // Specify the replication configuration in the request body. In the replication -// configuration, you provide the name of the destination bucket where you want -// Amazon S3 to replicate objects, the IAM role that Amazon S3 can assume to -// replicate objects on your behalf, and other relevant information. +// configuration, you provide the name of the destination bucket or buckets +// where you want Amazon S3 to replicate objects, the IAM role that Amazon S3 +// can assume to replicate objects on your behalf, and other relevant information. // // A replication configuration must include at least one rule, and can contain // a maximum of 1,000. Each rule identifies a subset of objects to replicate // by filtering the objects in the source bucket. To choose additional subsets -// of objects to replicate, add a rule for each subset. All rules must specify -// the same destination bucket. +// of objects to replicate, add a rule for each subset. // // To specify a subset of the objects in the source bucket to apply a replication // rule to, add the Filter element as a child of the Rule element. You can filter @@ -8567,12 +8572,9 @@ func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req // When you add the Filter element in the configuration, you must also add the // following elements: DeleteMarkerReplication, Status, and Priority. // -// The latest version of the replication configuration XML is V2. XML V2 replication -// configurations are those that contain the Filter element for rules, and rules -// that specify S3 Replication Time Control (S3 RTC). In XML V2 replication -// configurations, Amazon S3 doesn't replicate delete markers. Therefore, you -// must set the DeleteMarkerReplication element to Disabled. For backward compatibility, -// Amazon S3 continues to support the XML V1 replication configuration. +// If you are using an earlier version of the replication configuration, Amazon +// S3 handles replication of delete markers differently. For more information, +// see Backward Compatibility (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations). // // For information about enabling versioning on a bucket, see Using Versioning // (https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html). @@ -9166,8 +9168,13 @@ func (c *S3) PutObjectRequest(input *PutObjectInput) (req *request.Request, outp // You can optionally request server-side encryption. With server-side encryption, // Amazon S3 encrypts your data as it writes it to disks in its data centers // and decrypts the data when you access it. You have the option to provide -// your own encryption key or use AWS managed encryption keys. For more information, -// see Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html). +// your own encryption key or use AWS managed encryption keys (SSE-S3 or SSE-KMS). +// For more information, see Using Server-Side Encryption (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html). +// +// If you request server-side encryption using AWS Key Management Service (SSE-KMS), +// you can enable an S3 Bucket Key at the object-level. For more information, +// see Amazon S3 Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) +// in the Amazon Simple Storage Service Developer Guide. // // Access Control List (ACL)-Specific Request Headers // @@ -9999,16 +10006,17 @@ func (c *S3) RestoreObjectRequest(input *RestoreObjectInput) (req *request.Reque // * Amazon S3 accepts a select request even if the object has already been // restored. A select request doesn’t return error response 409. // -// Restoring Archives +// Restoring objects // -// Objects that you archive to the S3 Glacier, S3 Glacier Deep Archive, S3 Intelligent-Tiering -// Archive, or S3 Intelligent-Tiering Deep Archive storage classes are not accessible -// in real time. For objects in Archive Access tier or Deep Archive Access tier -// you must first initiate a restore request, and then wait until the object -// is moved into the Frequent Access tier. For objects in S3 Glacier or S3 Glacier -// Deep Archive you must first initiate a restore request, and then wait until -// a temporary copy of the object is available. To access an archived object, -// you must restore the object for the duration (number of days) that you specify. +// Objects that you archive to the S3 Glacier or S3 Glacier Deep Archive storage +// class, and S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep +// Archive tiers are not accessible in real time. For objects in Archive Access +// or Deep Archive Access tiers you must first initiate a restore request, and +// then wait until the object is moved into the Frequent Access tier. For objects +// in S3 Glacier or S3 Glacier Deep Archive storage classes you must first initiate +// a restore request, and then wait until a temporary copy of the object is +// available. To access an archived object, you must restore the object for +// the duration (number of days) that you specify. // // To restore a specific object version, you can provide a version ID. If you // don't provide a version ID, Amazon S3 restores the current version. @@ -10018,31 +10026,31 @@ func (c *S3) RestoreObjectRequest(input *RestoreObjectInput) (req *request.Reque // request body: // // * Expedited - Expedited retrievals allow you to quickly access your data -// stored in the S3 Glacier or S3 Intelligent-Tiering Archive storage class -// when occasional urgent requests for a subset of archives are required. +// stored in the S3 Glacier storage class or S3 Intelligent-Tiering Archive +// tier when occasional urgent requests for a subset of archives are required. // For all but the largest archived objects (250 MB+), data accessed using // Expedited retrievals is typically made available within 1–5 minutes. // Provisioned capacity ensures that retrieval capacity for Expedited retrievals // is available when you need it. Expedited retrievals and provisioned capacity -// are not available for objects stored in the S3 Glacier Deep Archive or -// S3 Intelligent-Tiering Deep Archive storage class. +// are not available for objects stored in the S3 Glacier Deep Archive storage +// class or S3 Intelligent-Tiering Deep Archive tier. // // * Standard - Standard retrievals allow you to access any of your archived // objects within several hours. This is the default option for retrieval // requests that do not specify the retrieval option. Standard retrievals // typically finish within 3–5 hours for objects stored in the S3 Glacier -// or S3 Intelligent-Tiering Archive storage class. They typically finish -// within 12 hours for objects stored in the S3 Glacier Deep Archive or S3 -// Intelligent-Tiering Deep Archive storage class. Standard retrievals are -// free for objects stored in S3 Intelligent-Tiering. +// storage class or S3 Intelligent-Tiering Archive tier. They typically finish +// within 12 hours for objects stored in the S3 Glacier Deep Archive storage +// class or S3 Intelligent-Tiering Deep Archive tier. Standard retrievals +// are free for objects stored in S3 Intelligent-Tiering. // // * Bulk - Bulk retrievals are the lowest-cost retrieval option in S3 Glacier, // enabling you to retrieve large amounts, even petabytes, of data inexpensively. // Bulk retrievals typically finish within 5–12 hours for objects stored -// in the S3 Glacier or S3 Intelligent-Tiering Archive storage class. They -// typically finish within 48 hours for objects stored in the S3 Glacier -// Deep Archive or S3 Intelligent-Tiering Deep Archive storage class. Bulk -// retrievals are free for objects stored in S3 Intelligent-Tiering. +// in the S3 Glacier storage class or S3 Intelligent-Tiering Archive tier. +// They typically finish within 48 hours for objects stored in the S3 Glacier +// Deep Archive storage class or S3 Intelligent-Tiering Deep Archive tier. +// Bulk retrievals are free for objects stored in S3 Intelligent-Tiering. // // For more information about archive retrieval options and provisioned capacity // for Expedited data access, see Restoring Archived Objects (https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html) @@ -11446,7 +11454,8 @@ func (s *AnalyticsS3BucketDestination) SetPrefix(v string) *AnalyticsS3BucketDes type Bucket struct { _ struct{} `type:"structure"` - // Date the bucket was created. + // Date the bucket was created. This date can change when making changes to + // your bucket, such as editing its bucket policy. CreationDate *time.Time `type:"timestamp"` // The name of the bucket. @@ -12134,6 +12143,10 @@ type CompleteMultipartUploadOutput struct { // in the Amazon Simple Storage Service Developer Guide. Bucket *string `type:"string"` + // Indicates whether the multipart upload uses an S3 Bucket Key for server-side + // encryption with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Entity tag that identifies the newly created object's data. Objects with // different object data will have different entity tags. The entity tag is // an opaque string. The entity tag may or may not be an MD5 digest of the object @@ -12195,6 +12208,12 @@ func (s *CompleteMultipartUploadOutput) getBucket() (v string) { return *s.Bucket } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *CompleteMultipartUploadOutput) SetBucketKeyEnabled(v bool) *CompleteMultipartUploadOutput { + s.BucketKeyEnabled = &v + return s +} + // SetETag sets the ETag field's value. func (s *CompleteMultipartUploadOutput) SetETag(v string) *CompleteMultipartUploadOutput { s.ETag = &v @@ -12408,6 +12427,15 @@ type CopyObjectInput struct { // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` + // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption + // with server-side encryption using AWS KMS (SSE-KMS). Setting this header + // to true causes Amazon S3 to use an S3 Bucket Key for object encryption with + // SSE-KMS. + // + // Specifying this header with a COPY operation doesn’t affect bucket-level + // settings for S3 Bucket Key. + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` @@ -12656,6 +12684,12 @@ func (s *CopyObjectInput) getBucket() (v string) { return *s.Bucket } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *CopyObjectInput) SetBucketKeyEnabled(v bool) *CopyObjectInput { + s.BucketKeyEnabled = &v + return s +} + // SetCacheControl sets the CacheControl field's value. func (s *CopyObjectInput) SetCacheControl(v string) *CopyObjectInput { s.CacheControl = &v @@ -12922,6 +12956,10 @@ func (s CopyObjectInput) updateArnableField(v string) (interface{}, error) { type CopyObjectOutput struct { _ struct{} `type:"structure" payload:"CopyObjectResult"` + // Indicates whether the copied object uses an S3 Bucket Key for server-side + // encryption with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Container for all response elements. CopyObjectResult *CopyObjectResult `type:"structure"` @@ -12973,6 +13011,12 @@ func (s CopyObjectOutput) GoString() string { return s.String() } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *CopyObjectOutput) SetBucketKeyEnabled(v bool) *CopyObjectOutput { + s.BucketKeyEnabled = &v + return s +} + // SetCopyObjectResult sets the CopyObjectResult field's value. func (s *CopyObjectOutput) SetCopyObjectResult(v *CopyObjectResult) *CopyObjectOutput { s.CopyObjectResult = v @@ -13300,6 +13344,15 @@ type CreateMultipartUploadInput struct { // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` + // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption + // with server-side encryption using AWS KMS (SSE-KMS). Setting this header + // to true causes Amazon S3 to use an S3 Bucket Key for object encryption with + // SSE-KMS. + // + // Specifying this header with an object operation doesn’t affect bucket-level + // settings for S3 Bucket Key. + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` @@ -13470,6 +13523,12 @@ func (s *CreateMultipartUploadInput) getBucket() (v string) { return *s.Bucket } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *CreateMultipartUploadInput) SetBucketKeyEnabled(v bool) *CreateMultipartUploadInput { + s.BucketKeyEnabled = &v + return s +} + // SetCacheControl sets the CacheControl field's value. func (s *CreateMultipartUploadInput) SetCacheControl(v string) *CreateMultipartUploadInput { s.CacheControl = &v @@ -13697,6 +13756,10 @@ type CreateMultipartUploadOutput struct { // in the Amazon Simple Storage Service Developer Guide. Bucket *string `locationName:"Bucket" type:"string"` + // Indicates whether the multipart upload uses an S3 Bucket Key for server-side + // encryption with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Object key for which the multipart upload was initiated. Key *string `min:"1" type:"string"` @@ -13767,6 +13830,12 @@ func (s *CreateMultipartUploadOutput) getBucket() (v string) { return *s.Bucket } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *CreateMultipartUploadOutput) SetBucketKeyEnabled(v bool) *CreateMultipartUploadOutput { + s.BucketKeyEnabled = &v + return s +} + // SetKey sets the Key field's value. func (s *CreateMultipartUploadOutput) SetKey(v string) *CreateMultipartUploadOutput { s.Key = &v @@ -19990,6 +20059,10 @@ type GetObjectOutput struct { // Object data. Body io.ReadCloser `type:"blob"` + // Indicates whether the object uses an S3 Bucket Key for server-side encryption + // with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` @@ -20128,6 +20201,12 @@ func (s *GetObjectOutput) SetBody(v io.ReadCloser) *GetObjectOutput { return s } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *GetObjectOutput) SetBucketKeyEnabled(v bool) *GetObjectOutput { + s.BucketKeyEnabled = &v + return s +} + // SetCacheControl sets the CacheControl field's value. func (s *GetObjectOutput) SetCacheControl(v string) *GetObjectOutput { s.CacheControl = &v @@ -21435,6 +21514,10 @@ type HeadObjectOutput struct { // The archive state of the head object. ArchiveStatus *string `location:"header" locationName:"x-amz-archive-status" type:"string" enum:"ArchiveStatus"` + // Indicates whether the object uses an S3 Bucket Key for server-side encryption + // with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Specifies caching behavior along the request/reply chain. CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"` @@ -21508,13 +21591,13 @@ type HeadObjectOutput struct { PartsCount *int64 `location:"header" locationName:"x-amz-mp-parts-count" type:"integer"` // Amazon S3 can return this header if your request involves a bucket that is - // either a source or destination in a replication rule. + // either a source or a destination in a replication rule. // // In replication, you have a source bucket on which you configure replication - // and destination bucket where Amazon S3 stores object replicas. When you request - // an object (GetObject) or object metadata (HeadObject) from these buckets, - // Amazon S3 will return the x-amz-replication-status header in the response - // as follows: + // and destination bucket or buckets where Amazon S3 stores object replicas. + // When you request an object (GetObject) or object metadata (HeadObject) from + // these buckets, Amazon S3 will return the x-amz-replication-status header + // in the response as follows: // // * If requesting an object from the source bucket — Amazon S3 will return // the x-amz-replication-status header if the object in your request is eligible @@ -21526,9 +21609,17 @@ type HeadObjectOutput struct { // header with value PENDING, COMPLETED or FAILED indicating object replication // status. // - // * If requesting an object from the destination bucket — Amazon S3 will + // * If requesting an object from a destination bucket — Amazon S3 will // return the x-amz-replication-status header with value REPLICA if the object - // in your request is a replica that Amazon S3 created. + // in your request is a replica that Amazon S3 created and there is no replica + // modification replication in progress. + // + // * When replicating objects to multiple destination buckets the x-amz-replication-status + // header acts differently. The header of the source object will only return + // a value of COMPLETED when replication is successful to all destinations. + // The header will remain at value PENDING until replication has completed + // for all destinations. If one or more destinations fails replication the + // header will return FAILED. // // For more information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html). ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"` @@ -21612,6 +21703,12 @@ func (s *HeadObjectOutput) SetArchiveStatus(v string) *HeadObjectOutput { return s } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *HeadObjectOutput) SetBucketKeyEnabled(v bool) *HeadObjectOutput { + s.BucketKeyEnabled = &v + return s +} + // SetCacheControl sets the CacheControl field's value. func (s *HeadObjectOutput) SetCacheControl(v string) *HeadObjectOutput { s.CacheControl = &v @@ -29645,6 +29742,15 @@ type PutObjectInput struct { // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` + // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption + // with server-side encryption using AWS KMS (SSE-KMS). Setting this header + // to true causes Amazon S3 to use an S3 Bucket Key for object encryption with + // SSE-KMS. + // + // Specifying this header with a PUT operation doesn’t affect bucket-level + // settings for S3 Bucket Key. + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Can be used to specify caching behavior along the request/reply chain. For // more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9 // (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9). @@ -29861,6 +29967,12 @@ func (s *PutObjectInput) getBucket() (v string) { return *s.Bucket } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *PutObjectInput) SetBucketKeyEnabled(v bool) *PutObjectInput { + s.BucketKeyEnabled = &v + return s +} + // SetCacheControl sets the CacheControl field's value. func (s *PutObjectInput) SetCacheControl(v string) *PutObjectInput { s.CacheControl = &v @@ -30374,6 +30486,10 @@ func (s *PutObjectLockConfigurationOutput) SetRequestCharged(v string) *PutObjec type PutObjectOutput struct { _ struct{} `type:"structure"` + // Indicates whether the uploaded object uses an S3 Bucket Key for server-side + // encryption with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Entity tag for the uploaded object. ETag *string `location:"header" locationName:"ETag" type:"string"` @@ -30429,6 +30545,12 @@ func (s PutObjectOutput) GoString() string { return s.String() } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *PutObjectOutput) SetBucketKeyEnabled(v bool) *PutObjectOutput { + s.BucketKeyEnabled = &v + return s +} + // SetETag sets the ETag field's value. func (s *PutObjectOutput) SetETag(v string) *PutObjectOutput { s.ETag = &v @@ -31251,6 +31373,53 @@ func (s *RedirectAllRequestsTo) SetProtocol(v string) *RedirectAllRequestsTo { return s } +// A filter that you can specify for selection for modifications on replicas. +// Amazon S3 doesn't replicate replica modifications by default. In the latest +// version of replication configuration (when Filter is specified), you can +// specify this element and set the status to Enabled to replicate modifications +// on replicas. +// +// If you don't specify the Filter element, Amazon S3 assumes that the replication +// configuration is the earlier version, V1. In the earlier version, this element +// is not allowed. +type ReplicaModifications struct { + _ struct{} `type:"structure"` + + // Specifies whether Amazon S3 replicates modifications on replicas. + // + // Status is a required field + Status *string `type:"string" required:"true" enum:"ReplicaModificationsStatus"` +} + +// String returns the string representation +func (s ReplicaModifications) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ReplicaModifications) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ReplicaModifications) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ReplicaModifications"} + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetStatus sets the Status field's value. +func (s *ReplicaModifications) SetStatus(v string) *ReplicaModifications { + s.Status = &v + return s +} + // A container for replication rules. You can add up to 1,000 rules. The maximum // size of a replication configuration is 2 MB. type ReplicationConfiguration struct { @@ -31363,16 +31532,11 @@ type ReplicationRule struct { // Deprecated: Prefix has been deprecated Prefix *string `deprecated:"true" type:"string"` - // The priority associated with the rule. If you specify multiple rules in a - // replication configuration, Amazon S3 prioritizes the rules to prevent conflicts - // when filtering. If two or more rules identify the same object based on a - // specified filter, the rule with higher priority takes precedence. For example: - // - // * Same object quality prefix-based filter criteria if prefixes you specified - // in multiple rules overlap - // - // * Same object qualify tag-based filter criteria specified in multiple - // rules + // The priority indicates which rule has precedence whenever two or more replication + // rules conflict. Amazon S3 will attempt to replicate objects according to + // all replication rules. However, if there are two or more rules with the same + // destination bucket, then objects will be replicated according to the rule + // with the highest priority. The higher the number, the higher the priority. // // For more information, see Replication (https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) // in the Amazon Simple Storage Service Developer Guide. @@ -32997,6 +33161,15 @@ type ServerSideEncryptionRule struct { // bucket. If a PUT Object request doesn't specify any server-side encryption, // this default encryption will be applied. ApplyServerSideEncryptionByDefault *ServerSideEncryptionByDefault `type:"structure"` + + // Specifies whether Amazon S3 should use an S3 Bucket Key with server-side + // encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects + // are not affected. Setting the BucketKeyEnabled element to true causes Amazon + // S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled. + // + // For more information, see Amazon S3 Bucket Keys (https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) + // in the Amazon Simple Storage Service Developer Guide. + BucketKeyEnabled *bool `type:"boolean"` } // String returns the string representation @@ -33030,6 +33203,12 @@ func (s *ServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *Serv return s } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *ServerSideEncryptionRule) SetBucketKeyEnabled(v bool) *ServerSideEncryptionRule { + s.BucketKeyEnabled = &v + return s +} + // A container that describes additional filters for identifying the source // objects that you want to replicate. You can choose to enable or disable the // replication of these objects. Currently, Amazon S3 supports only the filter @@ -33038,6 +33217,17 @@ func (s *ServerSideEncryptionRule) SetApplyServerSideEncryptionByDefault(v *Serv type SourceSelectionCriteria struct { _ struct{} `type:"structure"` + // A filter that you can specify for selections for modifications on replicas. + // Amazon S3 doesn't replicate replica modifications by default. In the latest + // version of replication configuration (when Filter is specified), you can + // specify this element and set the status to Enabled to replicate modifications + // on replicas. + // + // If you don't specify the Filter element, Amazon S3 assumes that the replication + // configuration is the earlier version, V1. In the earlier version, this element + // is not allowed + ReplicaModifications *ReplicaModifications `type:"structure"` + // A container for filter information for the selection of Amazon S3 objects // encrypted with AWS KMS. If you include SourceSelectionCriteria in the replication // configuration, this element is required. @@ -33057,6 +33247,11 @@ func (s SourceSelectionCriteria) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *SourceSelectionCriteria) Validate() error { invalidParams := request.ErrInvalidParams{Context: "SourceSelectionCriteria"} + if s.ReplicaModifications != nil { + if err := s.ReplicaModifications.Validate(); err != nil { + invalidParams.AddNested("ReplicaModifications", err.(request.ErrInvalidParams)) + } + } if s.SseKmsEncryptedObjects != nil { if err := s.SseKmsEncryptedObjects.Validate(); err != nil { invalidParams.AddNested("SseKmsEncryptedObjects", err.(request.ErrInvalidParams)) @@ -33069,6 +33264,12 @@ func (s *SourceSelectionCriteria) Validate() error { return nil } +// SetReplicaModifications sets the ReplicaModifications field's value. +func (s *SourceSelectionCriteria) SetReplicaModifications(v *ReplicaModifications) *SourceSelectionCriteria { + s.ReplicaModifications = v + return s +} + // SetSseKmsEncryptedObjects sets the SseKmsEncryptedObjects field's value. func (s *SourceSelectionCriteria) SetSseKmsEncryptedObjects(v *SseKmsEncryptedObjects) *SourceSelectionCriteria { s.SseKmsEncryptedObjects = v @@ -33478,9 +33679,11 @@ type Tiering struct { // AccessTier is a required field AccessTier *string `type:"string" required:"true" enum:"IntelligentTieringAccessTier"` - // The number of days that you want your archived data to be accessible. The - // minimum number of days specified in the restore request must be at least - // 90 days. If a smaller value is specifed it will be ignored. + // The number of consecutive days of no access after which an object will be + // eligible to be transitioned to the corresponding tier. The minimum number + // of days specified for Archive Access tier must be at least 90 days and Deep + // Archive Access tier must be at least 180 days. The maximum can be up to 2 + // years (730 days). // // Days is a required field Days *int64 `type:"integer" required:"true"` @@ -34055,6 +34258,10 @@ func (s UploadPartCopyInput) updateArnableField(v string) (interface{}, error) { type UploadPartCopyOutput struct { _ struct{} `type:"structure" payload:"CopyPartResult"` + // Indicates whether the multipart upload uses an S3 Bucket Key for server-side + // encryption with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Container for all response elements. CopyPartResult *CopyPartResult `type:"structure"` @@ -34096,6 +34303,12 @@ func (s UploadPartCopyOutput) GoString() string { return s.String() } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *UploadPartCopyOutput) SetBucketKeyEnabled(v bool) *UploadPartCopyOutput { + s.BucketKeyEnabled = &v + return s +} + // SetCopyPartResult sets the CopyPartResult field's value. func (s *UploadPartCopyOutput) SetCopyPartResult(v *CopyPartResult) *UploadPartCopyOutput { s.CopyPartResult = v @@ -34373,6 +34586,10 @@ func (s UploadPartInput) updateArnableField(v string) (interface{}, error) { type UploadPartOutput struct { _ struct{} `type:"structure"` + // Indicates whether the multipart upload uses an S3 Bucket Key for server-side + // encryption with AWS KMS (SSE-KMS). + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Entity tag for the uploaded object. ETag *string `location:"header" locationName:"ETag" type:"string"` @@ -34409,6 +34626,12 @@ func (s UploadPartOutput) GoString() string { return s.String() } +// SetBucketKeyEnabled sets the BucketKeyEnabled field's value. +func (s *UploadPartOutput) SetBucketKeyEnabled(v bool) *UploadPartOutput { + s.BucketKeyEnabled = &v + return s +} + // SetETag sets the ETag field's value. func (s *UploadPartOutput) SetETag(v string) *UploadPartOutput { s.ETag = &v @@ -35469,6 +35692,22 @@ func QuoteFields_Values() []string { } } +const ( + // ReplicaModificationsStatusEnabled is a ReplicaModificationsStatus enum value + ReplicaModificationsStatusEnabled = "Enabled" + + // ReplicaModificationsStatusDisabled is a ReplicaModificationsStatus enum value + ReplicaModificationsStatusDisabled = "Disabled" +) + +// ReplicaModificationsStatus_Values returns all elements of the ReplicaModificationsStatus enum +func ReplicaModificationsStatus_Values() []string { + return []string{ + ReplicaModificationsStatusEnabled, + ReplicaModificationsStatusDisabled, + } +} + const ( // ReplicationRuleStatusEnabled is a ReplicationRuleStatus enum value ReplicationRuleStatusEnabled = "Enabled" diff --git a/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/upload_input.go b/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/upload_input.go index d1ad5400b..6cac26fa8 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/upload_input.go +++ b/vendor/github.com/aws/aws-sdk-go/service/s3/s3manager/upload_input.go @@ -43,6 +43,15 @@ type UploadInput struct { // Bucket is a required field Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"` + // Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption + // with server-side encryption using AWS KMS (SSE-KMS). Setting this header + // to true causes Amazon S3 to use an S3 Bucket Key for object encryption with + // SSE-KMS. + // + // Specifying this header with a PUT operation doesn’t affect bucket-level + // settings for S3 Bucket Key. + BucketKeyEnabled *bool `location:"header" locationName:"x-amz-server-side-encryption-bucket-key-enabled" type:"boolean"` + // Can be used to specify caching behavior along the request/reply chain. For // more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9 // (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9). diff --git a/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go b/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go index 538e40395..1318b44d3 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ssm/api.go @@ -963,6 +963,102 @@ func (c *SSM) CreateOpsItemWithContext(ctx aws.Context, input *CreateOpsItemInpu return out, req.Send() } +const opCreateOpsMetadata = "CreateOpsMetadata" + +// CreateOpsMetadataRequest generates a "aws/request.Request" representing the +// client's request for the CreateOpsMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See CreateOpsMetadata for more information on using the CreateOpsMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the CreateOpsMetadataRequest method. +// req, resp := client.CreateOpsMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsMetadata +func (c *SSM) CreateOpsMetadataRequest(input *CreateOpsMetadataInput) (req *request.Request, output *CreateOpsMetadataOutput) { + op := &request.Operation{ + Name: opCreateOpsMetadata, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &CreateOpsMetadataInput{} + } + + output = &CreateOpsMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// CreateOpsMetadata API operation for Amazon Simple Systems Manager (SSM). +// +// If you create a new application in AppManager, Systems Manager calls this +// API action to specify information about the new application, including the +// application type. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s +// API operation CreateOpsMetadata for usage and error information. +// +// Returned Error Types: +// * OpsMetadataAlreadyExistsException +// An OpsMetadata object already exists for the selected resource. +// +// * OpsMetadataTooManyUpdatesException +// The system is processing too many concurrent updates. Wait a few moments +// and try again. +// +// * OpsMetadataInvalidArgumentException +// One of the arguments passed is invalid. +// +// * OpsMetadataLimitExceededException +// Your account reached the maximum number of OpsMetadata objects allowed by +// AppManager. The maximum is 200 OpsMetadata objects. Delete one or more OpsMetadata +// object and try again. +// +// * InternalServerError +// An error occurred on the server side. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/CreateOpsMetadata +func (c *SSM) CreateOpsMetadata(input *CreateOpsMetadataInput) (*CreateOpsMetadataOutput, error) { + req, out := c.CreateOpsMetadataRequest(input) + return out, req.Send() +} + +// CreateOpsMetadataWithContext is the same as CreateOpsMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See CreateOpsMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SSM) CreateOpsMetadataWithContext(ctx aws.Context, input *CreateOpsMetadataInput, opts ...request.Option) (*CreateOpsMetadataOutput, error) { + req, out := c.CreateOpsMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opCreatePatchBaseline = "CreatePatchBaseline" // CreatePatchBaselineRequest generates a "aws/request.Request" representing the @@ -1642,6 +1738,92 @@ func (c *SSM) DeleteMaintenanceWindowWithContext(ctx aws.Context, input *DeleteM return out, req.Send() } +const opDeleteOpsMetadata = "DeleteOpsMetadata" + +// DeleteOpsMetadataRequest generates a "aws/request.Request" representing the +// client's request for the DeleteOpsMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See DeleteOpsMetadata for more information on using the DeleteOpsMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the DeleteOpsMetadataRequest method. +// req, resp := client.DeleteOpsMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsMetadata +func (c *SSM) DeleteOpsMetadataRequest(input *DeleteOpsMetadataInput) (req *request.Request, output *DeleteOpsMetadataOutput) { + op := &request.Operation{ + Name: opDeleteOpsMetadata, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &DeleteOpsMetadataInput{} + } + + output = &DeleteOpsMetadataOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler) + return +} + +// DeleteOpsMetadata API operation for Amazon Simple Systems Manager (SSM). +// +// Delete OpsMetadata related to an application. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s +// API operation DeleteOpsMetadata for usage and error information. +// +// Returned Error Types: +// * OpsMetadataNotFoundException +// The OpsMetadata object does not exist. +// +// * OpsMetadataInvalidArgumentException +// One of the arguments passed is invalid. +// +// * InternalServerError +// An error occurred on the server side. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/DeleteOpsMetadata +func (c *SSM) DeleteOpsMetadata(input *DeleteOpsMetadataInput) (*DeleteOpsMetadataOutput, error) { + req, out := c.DeleteOpsMetadataRequest(input) + return out, req.Send() +} + +// DeleteOpsMetadataWithContext is the same as DeleteOpsMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See DeleteOpsMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SSM) DeleteOpsMetadataWithContext(ctx aws.Context, input *DeleteOpsMetadataInput, opts ...request.Option) (*DeleteOpsMetadataOutput, error) { + req, out := c.DeleteOpsMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opDeleteParameter = "DeleteParameter" // DeleteParameterRequest generates a "aws/request.Request" representing the @@ -6568,6 +6750,10 @@ func (c *SSM) DescribePatchPropertiesRequest(input *DescribePatchPropertiesInput // // Valid properties: PRODUCT, PRIORITY // +// MACOS +// +// Valid properties: PRODUCT, CLASSIFICATION +// // ORACLE_LINUX // // Valid properties: PRODUCT, CLASSIFICATION, SEVERITY @@ -8272,6 +8458,91 @@ func (c *SSM) GetOpsItemWithContext(ctx aws.Context, input *GetOpsItemInput, opt return out, req.Send() } +const opGetOpsMetadata = "GetOpsMetadata" + +// GetOpsMetadataRequest generates a "aws/request.Request" representing the +// client's request for the GetOpsMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See GetOpsMetadata for more information on using the GetOpsMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the GetOpsMetadataRequest method. +// req, resp := client.GetOpsMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsMetadata +func (c *SSM) GetOpsMetadataRequest(input *GetOpsMetadataInput) (req *request.Request, output *GetOpsMetadataOutput) { + op := &request.Operation{ + Name: opGetOpsMetadata, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetOpsMetadataInput{} + } + + output = &GetOpsMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetOpsMetadata API operation for Amazon Simple Systems Manager (SSM). +// +// View operational metadata related to an application in AppManager. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s +// API operation GetOpsMetadata for usage and error information. +// +// Returned Error Types: +// * OpsMetadataNotFoundException +// The OpsMetadata object does not exist. +// +// * OpsMetadataInvalidArgumentException +// One of the arguments passed is invalid. +// +// * InternalServerError +// An error occurred on the server side. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/GetOpsMetadata +func (c *SSM) GetOpsMetadata(input *GetOpsMetadataInput) (*GetOpsMetadataOutput, error) { + req, out := c.GetOpsMetadataRequest(input) + return out, req.Send() +} + +// GetOpsMetadataWithContext is the same as GetOpsMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See GetOpsMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SSM) GetOpsMetadataWithContext(ctx aws.Context, input *GetOpsMetadataInput, opts ...request.Option) (*GetOpsMetadataOutput, error) { + req, out := c.GetOpsMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opGetOpsSummary = "GetOpsSummary" // GetOpsSummaryRequest generates a "aws/request.Request" representing the @@ -10587,6 +10858,89 @@ func (c *SSM) ListInventoryEntriesWithContext(ctx aws.Context, input *ListInvent return out, req.Send() } +const opListOpsMetadata = "ListOpsMetadata" + +// ListOpsMetadataRequest generates a "aws/request.Request" representing the +// client's request for the ListOpsMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See ListOpsMetadata for more information on using the ListOpsMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the ListOpsMetadataRequest method. +// req, resp := client.ListOpsMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsMetadata +func (c *SSM) ListOpsMetadataRequest(input *ListOpsMetadataInput) (req *request.Request, output *ListOpsMetadataOutput) { + op := &request.Operation{ + Name: opListOpsMetadata, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ListOpsMetadataInput{} + } + + output = &ListOpsMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// ListOpsMetadata API operation for Amazon Simple Systems Manager (SSM). +// +// Systems Manager calls this API action when displaying all AppManager OpsMetadata +// objects or blobs. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s +// API operation ListOpsMetadata for usage and error information. +// +// Returned Error Types: +// * OpsMetadataInvalidArgumentException +// One of the arguments passed is invalid. +// +// * InternalServerError +// An error occurred on the server side. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/ListOpsMetadata +func (c *SSM) ListOpsMetadata(input *ListOpsMetadataInput) (*ListOpsMetadataOutput, error) { + req, out := c.ListOpsMetadataRequest(input) + return out, req.Send() +} + +// ListOpsMetadataWithContext is the same as ListOpsMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See ListOpsMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SSM) ListOpsMetadataWithContext(ctx aws.Context, input *ListOpsMetadataInput, opts ...request.Option) (*ListOpsMetadataOutput, error) { + req, out := c.ListOpsMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opListResourceComplianceSummaries = "ListResourceComplianceSummaries" // ListResourceComplianceSummariesRequest generates a "aws/request.Request" representing the @@ -13799,6 +14153,99 @@ func (c *SSM) UpdateOpsItemWithContext(ctx aws.Context, input *UpdateOpsItemInpu return out, req.Send() } +const opUpdateOpsMetadata = "UpdateOpsMetadata" + +// UpdateOpsMetadataRequest generates a "aws/request.Request" representing the +// client's request for the UpdateOpsMetadata operation. The "output" return +// value will be populated with the request's response once the request completes +// successfully. +// +// Use "Send" method on the returned Request to send the API call to the service. +// the "output" return value is not valid until after Send returns without error. +// +// See UpdateOpsMetadata for more information on using the UpdateOpsMetadata +// API call, and error handling. +// +// This method is useful when you want to inject custom logic or configuration +// into the SDK's request lifecycle. Such as custom headers, or retry logic. +// +// +// // Example sending a request using the UpdateOpsMetadataRequest method. +// req, resp := client.UpdateOpsMetadataRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsMetadata +func (c *SSM) UpdateOpsMetadataRequest(input *UpdateOpsMetadataInput) (req *request.Request, output *UpdateOpsMetadataOutput) { + op := &request.Operation{ + Name: opUpdateOpsMetadata, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateOpsMetadataInput{} + } + + output = &UpdateOpsMetadataOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateOpsMetadata API operation for Amazon Simple Systems Manager (SSM). +// +// Systems Manager calls this API action when you edit OpsMetadata in AppManager. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Simple Systems Manager (SSM)'s +// API operation UpdateOpsMetadata for usage and error information. +// +// Returned Error Types: +// * OpsMetadataNotFoundException +// The OpsMetadata object does not exist. +// +// * OpsMetadataInvalidArgumentException +// One of the arguments passed is invalid. +// +// * OpsMetadataKeyLimitExceededException +// The OpsMetadata object exceeds the maximum number of OpsMetadata keys that +// you can assign to an application in AppManager. +// +// * OpsMetadataTooManyUpdatesException +// The system is processing too many concurrent updates. Wait a few moments +// and try again. +// +// * InternalServerError +// An error occurred on the server side. +// +// See also, https://docs.aws.amazon.com/goto/WebAPI/ssm-2014-11-06/UpdateOpsMetadata +func (c *SSM) UpdateOpsMetadata(input *UpdateOpsMetadataInput) (*UpdateOpsMetadataOutput, error) { + req, out := c.UpdateOpsMetadataRequest(input) + return out, req.Send() +} + +// UpdateOpsMetadataWithContext is the same as UpdateOpsMetadata with the addition of +// the ability to pass a context and additional request options. +// +// See UpdateOpsMetadata for details on how to use this API operation. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *SSM) UpdateOpsMetadataWithContext(ctx aws.Context, input *UpdateOpsMetadataInput, opts ...request.Option) (*UpdateOpsMetadataOutput, error) { + req, out := c.UpdateOpsMetadataRequest(input) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return out, req.Send() +} + const opUpdatePatchBaseline = "UpdatePatchBaseline" // UpdatePatchBaselineRequest generates a "aws/request.Request" representing the @@ -14628,7 +15075,7 @@ type AssociationDescription struct { // By default, when you create a new associations, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you - // create it. + // create it. This parameter is not supported for rate expressions. ApplyOnlyAtCronInterval *bool `type:"boolean"` // The association ID. @@ -15535,7 +15982,7 @@ type AssociationVersionInfo struct { // By default, when you create a new associations, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you - // create it. + // create it. This parameter is not supported for rate expressions. ApplyOnlyAtCronInterval *bool `type:"boolean"` // The ID created by the system when the association was created. @@ -18396,7 +18843,7 @@ type CreateAssociationBatchRequestEntry struct { // By default, when you create a new associations, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you - // create it. + // create it. This parameter is not supported for rate expressions. ApplyOnlyAtCronInterval *bool `type:"boolean"` // Specify a descriptive name for the association. @@ -18630,7 +19077,7 @@ type CreateAssociationInput struct { // By default, when you create a new associations, the system runs it immediately // after it is created and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you - // create it. + // create it. This parameter is not supported for rate expressions. ApplyOnlyAtCronInterval *bool `type:"boolean"` // Specify a descriptive name for the association. @@ -19582,6 +20029,93 @@ func (s *CreateOpsItemOutput) SetOpsItemId(v string) *CreateOpsItemOutput { return s } +type CreateOpsMetadataInput struct { + _ struct{} `type:"structure"` + + // Metadata for a new AppManager application. + Metadata map[string]*MetadataValue `min:"1" type:"map"` + + // A resource ID for a new AppManager application. + // + // ResourceId is a required field + ResourceId *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s CreateOpsMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateOpsMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *CreateOpsMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "CreateOpsMetadataInput"} + if s.Metadata != nil && len(s.Metadata) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Metadata", 1)) + } + if s.ResourceId == nil { + invalidParams.Add(request.NewErrParamRequired("ResourceId")) + } + if s.ResourceId != nil && len(*s.ResourceId) < 1 { + invalidParams.Add(request.NewErrParamMinLen("ResourceId", 1)) + } + if s.Metadata != nil { + for i, v := range s.Metadata { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Metadata", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMetadata sets the Metadata field's value. +func (s *CreateOpsMetadataInput) SetMetadata(v map[string]*MetadataValue) *CreateOpsMetadataInput { + s.Metadata = v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *CreateOpsMetadataInput) SetResourceId(v string) *CreateOpsMetadataInput { + s.ResourceId = &v + return s +} + +type CreateOpsMetadataOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the OpsMetadata Object or blob created + // by the call. + OpsMetadataArn *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s CreateOpsMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s CreateOpsMetadataOutput) GoString() string { + return s.String() +} + +// SetOpsMetadataArn sets the OpsMetadataArn field's value. +func (s *CreateOpsMetadataOutput) SetOpsMetadataArn(v string) *CreateOpsMetadataOutput { + s.OpsMetadataArn = &v + return s +} + type CreatePatchBaselineInput struct { _ struct{} `type:"structure"` @@ -20373,6 +20907,61 @@ func (s *DeleteMaintenanceWindowOutput) SetWindowId(v string) *DeleteMaintenance return s } +type DeleteOpsMetadataInput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of an OpsMetadata Object to delete. + // + // OpsMetadataArn is a required field + OpsMetadataArn *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s DeleteOpsMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteOpsMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *DeleteOpsMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "DeleteOpsMetadataInput"} + if s.OpsMetadataArn == nil { + invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn")) + } + if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetOpsMetadataArn sets the OpsMetadataArn field's value. +func (s *DeleteOpsMetadataInput) SetOpsMetadataArn(v string) *DeleteOpsMetadataInput { + s.OpsMetadataArn = &v + return s +} + +type DeleteOpsMetadataOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s DeleteOpsMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeleteOpsMetadataOutput) GoString() string { + return s.String() +} + type DeleteParameterInput struct { _ struct{} `type:"structure"` @@ -24376,7 +24965,7 @@ type DescribePatchPropertiesInput struct { OperatingSystem *string `type:"string" required:"true" enum:"OperatingSystem"` // Indicates whether to list patches for the Windows operating system or for - // Microsoft applications. Not applicable for Linux operating systems. + // Microsoft applications. Not applicable for the Linux or macOS operating systems. PatchSet *string `type:"string" enum:"PatchSet"` // The patch property for which you want to view patch details. @@ -28126,6 +28715,112 @@ func (s *GetOpsItemOutput) SetOpsItem(v *OpsItem) *GetOpsItemOutput { return s } +type GetOpsMetadataInput struct { + _ struct{} `type:"structure"` + + // The maximum number of items to return for this call. The call also returns + // a token that you can specify in a subsequent call to get the next set of + // results. + MaxResults *int64 `min:"1" type:"integer"` + + // A token to start the list. Use this token to get the next set of results. + NextToken *string `type:"string"` + + // The Amazon Resource Name (ARN) of an OpsMetadata Object to view. + // + // OpsMetadataArn is a required field + OpsMetadataArn *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetOpsMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetOpsMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetOpsMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetOpsMetadataInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.OpsMetadataArn == nil { + invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn")) + } + if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetOpsMetadataInput) SetMaxResults(v int64) *GetOpsMetadataInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetOpsMetadataInput) SetNextToken(v string) *GetOpsMetadataInput { + s.NextToken = &v + return s +} + +// SetOpsMetadataArn sets the OpsMetadataArn field's value. +func (s *GetOpsMetadataInput) SetOpsMetadataArn(v string) *GetOpsMetadataInput { + s.OpsMetadataArn = &v + return s +} + +type GetOpsMetadataOutput struct { + _ struct{} `type:"structure"` + + // OpsMetadata for an AppManager application. + Metadata map[string]*MetadataValue `min:"1" type:"map"` + + // The token for the next set of items to return. Use this token to get the + // next set of results. + NextToken *string `type:"string"` + + // The resource ID of the AppManager application. + ResourceId *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s GetOpsMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetOpsMetadataOutput) GoString() string { + return s.String() +} + +// SetMetadata sets the Metadata field's value. +func (s *GetOpsMetadataOutput) SetMetadata(v map[string]*MetadataValue) *GetOpsMetadataOutput { + s.Metadata = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetOpsMetadataOutput) SetNextToken(v string) *GetOpsMetadataOutput { + s.NextToken = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *GetOpsMetadataOutput) SetResourceId(v string) *GetOpsMetadataOutput { + s.ResourceId = &v + return s +} + type GetOpsSummaryInput struct { _ struct{} `type:"structure"` @@ -35006,6 +35701,106 @@ func (s *ListInventoryEntriesOutput) SetTypeName(v string) *ListInventoryEntries return s } +type ListOpsMetadataInput struct { + _ struct{} `type:"structure"` + + // One or more filters to limit the number of OpsMetadata objects returned by + // the call. + Filters []*OpsMetadataFilter `type:"list"` + + // The maximum number of items to return for this call. The call also returns + // a token that you can specify in a subsequent call to get the next set of + // results. + MaxResults *int64 `min:"1" type:"integer"` + + // A token to start the list. Use this token to get the next set of results. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s ListOpsMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListOpsMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ListOpsMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ListOpsMetadataInput"} + if s.MaxResults != nil && *s.MaxResults < 1 { + invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1)) + } + if s.Filters != nil { + for i, v := range s.Filters { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetFilters sets the Filters field's value. +func (s *ListOpsMetadataInput) SetFilters(v []*OpsMetadataFilter) *ListOpsMetadataInput { + s.Filters = v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *ListOpsMetadataInput) SetMaxResults(v int64) *ListOpsMetadataInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOpsMetadataInput) SetNextToken(v string) *ListOpsMetadataInput { + s.NextToken = &v + return s +} + +type ListOpsMetadataOutput struct { + _ struct{} `type:"structure"` + + // The token for the next set of items to return. Use this token to get the + // next set of results. + NextToken *string `type:"string"` + + // Returns a list of OpsMetadata objects. + OpsMetadataList []*OpsMetadata `min:"1" type:"list"` +} + +// String returns the string representation +func (s ListOpsMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ListOpsMetadataOutput) GoString() string { + return s.String() +} + +// SetNextToken sets the NextToken field's value. +func (s *ListOpsMetadataOutput) SetNextToken(v string) *ListOpsMetadataOutput { + s.NextToken = &v + return s +} + +// SetOpsMetadataList sets the OpsMetadataList field's value. +func (s *ListOpsMetadataOutput) SetOpsMetadataList(v []*OpsMetadata) *ListOpsMetadataOutput { + s.OpsMetadataList = v + return s +} + type ListResourceComplianceSummariesInput struct { _ struct{} `type:"structure"` @@ -36614,6 +37409,43 @@ func (s *MaxDocumentSizeExceeded) RequestID() string { return s.RespMetadata.RequestID } +// Metadata to assign to an AppManager application. +type MetadataValue struct { + _ struct{} `type:"structure"` + + // Metadata value to assign to an AppManager application. + Value *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s MetadataValue) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s MetadataValue) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *MetadataValue) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "MetadataValue"} + if s.Value != nil && len(*s.Value) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Value", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetValue sets the Value field's value. +func (s *MetadataValue) SetValue(v string) *MetadataValue { + s.Value = &v + return s +} + type ModifyDocumentPermissionInput struct { _ struct{} `type:"structure"` @@ -37724,6 +38556,465 @@ func (s *OpsItemSummary) SetTitle(v string) *OpsItemSummary { return s } +// Operational metadata for an application in AppManager. +type OpsMetadata struct { + _ struct{} `type:"structure"` + + // The date the OpsMetadata objects was created. + CreationDate *time.Time `type:"timestamp"` + + // The date the OpsMetadata object was last updated. + LastModifiedDate *time.Time `type:"timestamp"` + + // The user name who last updated the OpsMetadata object. + LastModifiedUser *string `type:"string"` + + // The Amazon Resource Name (ARN) of the OpsMetadata Object or blob. + OpsMetadataArn *string `min:"1" type:"string"` + + // The ID of the AppManager application. + ResourceId *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s OpsMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadata) GoString() string { + return s.String() +} + +// SetCreationDate sets the CreationDate field's value. +func (s *OpsMetadata) SetCreationDate(v time.Time) *OpsMetadata { + s.CreationDate = &v + return s +} + +// SetLastModifiedDate sets the LastModifiedDate field's value. +func (s *OpsMetadata) SetLastModifiedDate(v time.Time) *OpsMetadata { + s.LastModifiedDate = &v + return s +} + +// SetLastModifiedUser sets the LastModifiedUser field's value. +func (s *OpsMetadata) SetLastModifiedUser(v string) *OpsMetadata { + s.LastModifiedUser = &v + return s +} + +// SetOpsMetadataArn sets the OpsMetadataArn field's value. +func (s *OpsMetadata) SetOpsMetadataArn(v string) *OpsMetadata { + s.OpsMetadataArn = &v + return s +} + +// SetResourceId sets the ResourceId field's value. +func (s *OpsMetadata) SetResourceId(v string) *OpsMetadata { + s.ResourceId = &v + return s +} + +// An OpsMetadata object already exists for the selected resource. +type OpsMetadataAlreadyExistsException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OpsMetadataAlreadyExistsException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataAlreadyExistsException) GoString() string { + return s.String() +} + +func newErrorOpsMetadataAlreadyExistsException(v protocol.ResponseMetadata) error { + return &OpsMetadataAlreadyExistsException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsMetadataAlreadyExistsException) Code() string { + return "OpsMetadataAlreadyExistsException" +} + +// Message returns the exception's message. +func (s *OpsMetadataAlreadyExistsException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsMetadataAlreadyExistsException) OrigErr() error { + return nil +} + +func (s *OpsMetadataAlreadyExistsException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *OpsMetadataAlreadyExistsException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsMetadataAlreadyExistsException) RequestID() string { + return s.RespMetadata.RequestID +} + +// A filter to limit the number of OpsMetadata objects displayed. +type OpsMetadataFilter struct { + _ struct{} `type:"structure"` + + // A filter key. + // + // Key is a required field + Key *string `min:"1" type:"string" required:"true"` + + // A filter value. + // + // Values is a required field + Values []*string `min:"1" type:"list" required:"true"` +} + +// String returns the string representation +func (s OpsMetadataFilter) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataFilter) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *OpsMetadataFilter) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "OpsMetadataFilter"} + if s.Key == nil { + invalidParams.Add(request.NewErrParamRequired("Key")) + } + if s.Key != nil && len(*s.Key) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Key", 1)) + } + if s.Values == nil { + invalidParams.Add(request.NewErrParamRequired("Values")) + } + if s.Values != nil && len(s.Values) < 1 { + invalidParams.Add(request.NewErrParamMinLen("Values", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKey sets the Key field's value. +func (s *OpsMetadataFilter) SetKey(v string) *OpsMetadataFilter { + s.Key = &v + return s +} + +// SetValues sets the Values field's value. +func (s *OpsMetadataFilter) SetValues(v []*string) *OpsMetadataFilter { + s.Values = v + return s +} + +// One of the arguments passed is invalid. +type OpsMetadataInvalidArgumentException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OpsMetadataInvalidArgumentException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataInvalidArgumentException) GoString() string { + return s.String() +} + +func newErrorOpsMetadataInvalidArgumentException(v protocol.ResponseMetadata) error { + return &OpsMetadataInvalidArgumentException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsMetadataInvalidArgumentException) Code() string { + return "OpsMetadataInvalidArgumentException" +} + +// Message returns the exception's message. +func (s *OpsMetadataInvalidArgumentException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsMetadataInvalidArgumentException) OrigErr() error { + return nil +} + +func (s *OpsMetadataInvalidArgumentException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *OpsMetadataInvalidArgumentException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsMetadataInvalidArgumentException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The OpsMetadata object exceeds the maximum number of OpsMetadata keys that +// you can assign to an application in AppManager. +type OpsMetadataKeyLimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OpsMetadataKeyLimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataKeyLimitExceededException) GoString() string { + return s.String() +} + +func newErrorOpsMetadataKeyLimitExceededException(v protocol.ResponseMetadata) error { + return &OpsMetadataKeyLimitExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsMetadataKeyLimitExceededException) Code() string { + return "OpsMetadataKeyLimitExceededException" +} + +// Message returns the exception's message. +func (s *OpsMetadataKeyLimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsMetadataKeyLimitExceededException) OrigErr() error { + return nil +} + +func (s *OpsMetadataKeyLimitExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *OpsMetadataKeyLimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsMetadataKeyLimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// Your account reached the maximum number of OpsMetadata objects allowed by +// AppManager. The maximum is 200 OpsMetadata objects. Delete one or more OpsMetadata +// object and try again. +type OpsMetadataLimitExceededException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OpsMetadataLimitExceededException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataLimitExceededException) GoString() string { + return s.String() +} + +func newErrorOpsMetadataLimitExceededException(v protocol.ResponseMetadata) error { + return &OpsMetadataLimitExceededException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsMetadataLimitExceededException) Code() string { + return "OpsMetadataLimitExceededException" +} + +// Message returns the exception's message. +func (s *OpsMetadataLimitExceededException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsMetadataLimitExceededException) OrigErr() error { + return nil +} + +func (s *OpsMetadataLimitExceededException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *OpsMetadataLimitExceededException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsMetadataLimitExceededException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The OpsMetadata object does not exist. +type OpsMetadataNotFoundException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OpsMetadataNotFoundException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataNotFoundException) GoString() string { + return s.String() +} + +func newErrorOpsMetadataNotFoundException(v protocol.ResponseMetadata) error { + return &OpsMetadataNotFoundException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsMetadataNotFoundException) Code() string { + return "OpsMetadataNotFoundException" +} + +// Message returns the exception's message. +func (s *OpsMetadataNotFoundException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsMetadataNotFoundException) OrigErr() error { + return nil +} + +func (s *OpsMetadataNotFoundException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *OpsMetadataNotFoundException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsMetadataNotFoundException) RequestID() string { + return s.RespMetadata.RequestID +} + +// The system is processing too many concurrent updates. Wait a few moments +// and try again. +type OpsMetadataTooManyUpdatesException struct { + _ struct{} `type:"structure"` + RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"` + + Message_ *string `locationName:"message" type:"string"` +} + +// String returns the string representation +func (s OpsMetadataTooManyUpdatesException) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s OpsMetadataTooManyUpdatesException) GoString() string { + return s.String() +} + +func newErrorOpsMetadataTooManyUpdatesException(v protocol.ResponseMetadata) error { + return &OpsMetadataTooManyUpdatesException{ + RespMetadata: v, + } +} + +// Code returns the exception type name. +func (s *OpsMetadataTooManyUpdatesException) Code() string { + return "OpsMetadataTooManyUpdatesException" +} + +// Message returns the exception's message. +func (s *OpsMetadataTooManyUpdatesException) Message() string { + if s.Message_ != nil { + return *s.Message_ + } + return "" +} + +// OrigErr always returns nil, satisfies awserr.Error interface. +func (s *OpsMetadataTooManyUpdatesException) OrigErr() error { + return nil +} + +func (s *OpsMetadataTooManyUpdatesException) Error() string { + return fmt.Sprintf("%s: %s", s.Code(), s.Message()) +} + +// Status code returns the HTTP status code for the request's response error. +func (s *OpsMetadataTooManyUpdatesException) StatusCode() int { + return s.RespMetadata.StatusCode +} + +// RequestID returns the service's response RequestID for request. +func (s *OpsMetadataTooManyUpdatesException) RequestID() string { + return s.RespMetadata.RequestID +} + // The OpsItem data type to return. type OpsResultAttribute struct { _ struct{} `type:"structure"` @@ -38784,7 +40075,7 @@ type Patch struct { BugzillaIds []*string `type:"list"` // The Common Vulnerabilities and Exposures (CVE) ID of the patch. For example, - // CVE-1999-0067. Applies to Linux-based instances only. + // CVE-2011-3192. Applies to Linux-based instances only. CVEIds []*string `type:"list"` // The classification of the patch. For example, SecurityUpdates, Updates, or @@ -45224,7 +46515,7 @@ type UpdateAssociationInput struct { // By default, when you update an association, the system runs it immediately // after it is updated and then according to the schedule you specified. Specify // this option if you don't want an association to run immediately after you - // update it. + // update it. This parameter is not supported for rate expressions. // // Also, if you specified this option when you created the association, you // can reset it. To do so, specify the no-apply-only-at-cron-interval parameter @@ -46961,6 +48252,104 @@ func (s UpdateOpsItemOutput) GoString() string { return s.String() } +type UpdateOpsMetadataInput struct { + _ struct{} `type:"structure"` + + // The metadata keys to delete from the OpsMetadata object. + KeysToDelete []*string `min:"1" type:"list"` + + // Metadata to add to an OpsMetadata object. + MetadataToUpdate map[string]*MetadataValue `min:"1" type:"map"` + + // The Amazon Resoure Name (ARN) of the OpsMetadata Object to update. + // + // OpsMetadataArn is a required field + OpsMetadataArn *string `min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s UpdateOpsMetadataInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateOpsMetadataInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateOpsMetadataInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateOpsMetadataInput"} + if s.KeysToDelete != nil && len(s.KeysToDelete) < 1 { + invalidParams.Add(request.NewErrParamMinLen("KeysToDelete", 1)) + } + if s.MetadataToUpdate != nil && len(s.MetadataToUpdate) < 1 { + invalidParams.Add(request.NewErrParamMinLen("MetadataToUpdate", 1)) + } + if s.OpsMetadataArn == nil { + invalidParams.Add(request.NewErrParamRequired("OpsMetadataArn")) + } + if s.OpsMetadataArn != nil && len(*s.OpsMetadataArn) < 1 { + invalidParams.Add(request.NewErrParamMinLen("OpsMetadataArn", 1)) + } + if s.MetadataToUpdate != nil { + for i, v := range s.MetadataToUpdate { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "MetadataToUpdate", i), err.(request.ErrInvalidParams)) + } + } + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetKeysToDelete sets the KeysToDelete field's value. +func (s *UpdateOpsMetadataInput) SetKeysToDelete(v []*string) *UpdateOpsMetadataInput { + s.KeysToDelete = v + return s +} + +// SetMetadataToUpdate sets the MetadataToUpdate field's value. +func (s *UpdateOpsMetadataInput) SetMetadataToUpdate(v map[string]*MetadataValue) *UpdateOpsMetadataInput { + s.MetadataToUpdate = v + return s +} + +// SetOpsMetadataArn sets the OpsMetadataArn field's value. +func (s *UpdateOpsMetadataInput) SetOpsMetadataArn(v string) *UpdateOpsMetadataInput { + s.OpsMetadataArn = &v + return s +} + +type UpdateOpsMetadataOutput struct { + _ struct{} `type:"structure"` + + // The Amazon Resource Name (ARN) of the OpsMetadata Object that was updated. + OpsMetadataArn *string `min:"1" type:"string"` +} + +// String returns the string representation +func (s UpdateOpsMetadataOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateOpsMetadataOutput) GoString() string { + return s.String() +} + +// SetOpsMetadataArn sets the OpsMetadataArn field's value. +func (s *UpdateOpsMetadataOutput) SetOpsMetadataArn(v string) *UpdateOpsMetadataOutput { + s.OpsMetadataArn = &v + return s +} + type UpdatePatchBaselineInput struct { _ struct{} `type:"structure"` @@ -48579,6 +49968,9 @@ const ( // OperatingSystemDebian is a OperatingSystem enum value OperatingSystemDebian = "DEBIAN" + + // OperatingSystemMacos is a OperatingSystem enum value + OperatingSystemMacos = "MACOS" ) // OperatingSystem_Values returns all elements of the OperatingSystem enum @@ -48593,6 +49985,7 @@ func OperatingSystem_Values() []string { OperatingSystemCentos, OperatingSystemOracleLinux, OperatingSystemDebian, + OperatingSystemMacos, } } diff --git a/vendor/github.com/aws/aws-sdk-go/service/ssm/errors.go b/vendor/github.com/aws/aws-sdk-go/service/ssm/errors.go index 74b773c77..199710e71 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ssm/errors.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ssm/errors.go @@ -569,6 +569,46 @@ const ( // The specified OpsItem ID doesn't exist. Verify the ID and try again. ErrCodeOpsItemNotFoundException = "OpsItemNotFoundException" + // ErrCodeOpsMetadataAlreadyExistsException for service response error code + // "OpsMetadataAlreadyExistsException". + // + // An OpsMetadata object already exists for the selected resource. + ErrCodeOpsMetadataAlreadyExistsException = "OpsMetadataAlreadyExistsException" + + // ErrCodeOpsMetadataInvalidArgumentException for service response error code + // "OpsMetadataInvalidArgumentException". + // + // One of the arguments passed is invalid. + ErrCodeOpsMetadataInvalidArgumentException = "OpsMetadataInvalidArgumentException" + + // ErrCodeOpsMetadataKeyLimitExceededException for service response error code + // "OpsMetadataKeyLimitExceededException". + // + // The OpsMetadata object exceeds the maximum number of OpsMetadata keys that + // you can assign to an application in AppManager. + ErrCodeOpsMetadataKeyLimitExceededException = "OpsMetadataKeyLimitExceededException" + + // ErrCodeOpsMetadataLimitExceededException for service response error code + // "OpsMetadataLimitExceededException". + // + // Your account reached the maximum number of OpsMetadata objects allowed by + // AppManager. The maximum is 200 OpsMetadata objects. Delete one or more OpsMetadata + // object and try again. + ErrCodeOpsMetadataLimitExceededException = "OpsMetadataLimitExceededException" + + // ErrCodeOpsMetadataNotFoundException for service response error code + // "OpsMetadataNotFoundException". + // + // The OpsMetadata object does not exist. + ErrCodeOpsMetadataNotFoundException = "OpsMetadataNotFoundException" + + // ErrCodeOpsMetadataTooManyUpdatesException for service response error code + // "OpsMetadataTooManyUpdatesException". + // + // The system is processing too many concurrent updates. Wait a few moments + // and try again. + ErrCodeOpsMetadataTooManyUpdatesException = "OpsMetadataTooManyUpdatesException" + // ErrCodeParameterAlreadyExists for service response error code // "ParameterAlreadyExists". // @@ -882,6 +922,12 @@ var exceptionFromCode = map[string]func(protocol.ResponseMetadata) error{ "OpsItemInvalidParameterException": newErrorOpsItemInvalidParameterException, "OpsItemLimitExceededException": newErrorOpsItemLimitExceededException, "OpsItemNotFoundException": newErrorOpsItemNotFoundException, + "OpsMetadataAlreadyExistsException": newErrorOpsMetadataAlreadyExistsException, + "OpsMetadataInvalidArgumentException": newErrorOpsMetadataInvalidArgumentException, + "OpsMetadataKeyLimitExceededException": newErrorOpsMetadataKeyLimitExceededException, + "OpsMetadataLimitExceededException": newErrorOpsMetadataLimitExceededException, + "OpsMetadataNotFoundException": newErrorOpsMetadataNotFoundException, + "OpsMetadataTooManyUpdatesException": newErrorOpsMetadataTooManyUpdatesException, "ParameterAlreadyExists": newErrorParameterAlreadyExists, "ParameterLimitExceeded": newErrorParameterLimitExceeded, "ParameterMaxVersionLimitExceeded": newErrorParameterMaxVersionLimitExceeded, diff --git a/vendor/github.com/aws/aws-sdk-go/service/ssm/ssmiface/interface.go b/vendor/github.com/aws/aws-sdk-go/service/ssm/ssmiface/interface.go index c21a8a358..b1ebed82e 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ssm/ssmiface/interface.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ssm/ssmiface/interface.go @@ -96,6 +96,10 @@ type SSMAPI interface { CreateOpsItemWithContext(aws.Context, *ssm.CreateOpsItemInput, ...request.Option) (*ssm.CreateOpsItemOutput, error) CreateOpsItemRequest(*ssm.CreateOpsItemInput) (*request.Request, *ssm.CreateOpsItemOutput) + CreateOpsMetadata(*ssm.CreateOpsMetadataInput) (*ssm.CreateOpsMetadataOutput, error) + CreateOpsMetadataWithContext(aws.Context, *ssm.CreateOpsMetadataInput, ...request.Option) (*ssm.CreateOpsMetadataOutput, error) + CreateOpsMetadataRequest(*ssm.CreateOpsMetadataInput) (*request.Request, *ssm.CreateOpsMetadataOutput) + CreatePatchBaseline(*ssm.CreatePatchBaselineInput) (*ssm.CreatePatchBaselineOutput, error) CreatePatchBaselineWithContext(aws.Context, *ssm.CreatePatchBaselineInput, ...request.Option) (*ssm.CreatePatchBaselineOutput, error) CreatePatchBaselineRequest(*ssm.CreatePatchBaselineInput) (*request.Request, *ssm.CreatePatchBaselineOutput) @@ -124,6 +128,10 @@ type SSMAPI interface { DeleteMaintenanceWindowWithContext(aws.Context, *ssm.DeleteMaintenanceWindowInput, ...request.Option) (*ssm.DeleteMaintenanceWindowOutput, error) DeleteMaintenanceWindowRequest(*ssm.DeleteMaintenanceWindowInput) (*request.Request, *ssm.DeleteMaintenanceWindowOutput) + DeleteOpsMetadata(*ssm.DeleteOpsMetadataInput) (*ssm.DeleteOpsMetadataOutput, error) + DeleteOpsMetadataWithContext(aws.Context, *ssm.DeleteOpsMetadataInput, ...request.Option) (*ssm.DeleteOpsMetadataOutput, error) + DeleteOpsMetadataRequest(*ssm.DeleteOpsMetadataInput) (*request.Request, *ssm.DeleteOpsMetadataOutput) + DeleteParameter(*ssm.DeleteParameterInput) (*ssm.DeleteParameterOutput, error) DeleteParameterWithContext(aws.Context, *ssm.DeleteParameterInput, ...request.Option) (*ssm.DeleteParameterOutput, error) DeleteParameterRequest(*ssm.DeleteParameterInput) (*request.Request, *ssm.DeleteParameterOutput) @@ -434,6 +442,10 @@ type SSMAPI interface { GetOpsItemWithContext(aws.Context, *ssm.GetOpsItemInput, ...request.Option) (*ssm.GetOpsItemOutput, error) GetOpsItemRequest(*ssm.GetOpsItemInput) (*request.Request, *ssm.GetOpsItemOutput) + GetOpsMetadata(*ssm.GetOpsMetadataInput) (*ssm.GetOpsMetadataOutput, error) + GetOpsMetadataWithContext(aws.Context, *ssm.GetOpsMetadataInput, ...request.Option) (*ssm.GetOpsMetadataOutput, error) + GetOpsMetadataRequest(*ssm.GetOpsMetadataInput) (*request.Request, *ssm.GetOpsMetadataOutput) + GetOpsSummary(*ssm.GetOpsSummaryInput) (*ssm.GetOpsSummaryOutput, error) GetOpsSummaryWithContext(aws.Context, *ssm.GetOpsSummaryInput, ...request.Option) (*ssm.GetOpsSummaryOutput, error) GetOpsSummaryRequest(*ssm.GetOpsSummaryInput) (*request.Request, *ssm.GetOpsSummaryOutput) @@ -539,6 +551,10 @@ type SSMAPI interface { ListInventoryEntriesWithContext(aws.Context, *ssm.ListInventoryEntriesInput, ...request.Option) (*ssm.ListInventoryEntriesOutput, error) ListInventoryEntriesRequest(*ssm.ListInventoryEntriesInput) (*request.Request, *ssm.ListInventoryEntriesOutput) + ListOpsMetadata(*ssm.ListOpsMetadataInput) (*ssm.ListOpsMetadataOutput, error) + ListOpsMetadataWithContext(aws.Context, *ssm.ListOpsMetadataInput, ...request.Option) (*ssm.ListOpsMetadataOutput, error) + ListOpsMetadataRequest(*ssm.ListOpsMetadataInput) (*request.Request, *ssm.ListOpsMetadataOutput) + ListResourceComplianceSummaries(*ssm.ListResourceComplianceSummariesInput) (*ssm.ListResourceComplianceSummariesOutput, error) ListResourceComplianceSummariesWithContext(aws.Context, *ssm.ListResourceComplianceSummariesInput, ...request.Option) (*ssm.ListResourceComplianceSummariesOutput, error) ListResourceComplianceSummariesRequest(*ssm.ListResourceComplianceSummariesInput) (*request.Request, *ssm.ListResourceComplianceSummariesOutput) @@ -665,6 +681,10 @@ type SSMAPI interface { UpdateOpsItemWithContext(aws.Context, *ssm.UpdateOpsItemInput, ...request.Option) (*ssm.UpdateOpsItemOutput, error) UpdateOpsItemRequest(*ssm.UpdateOpsItemInput) (*request.Request, *ssm.UpdateOpsItemOutput) + UpdateOpsMetadata(*ssm.UpdateOpsMetadataInput) (*ssm.UpdateOpsMetadataOutput, error) + UpdateOpsMetadataWithContext(aws.Context, *ssm.UpdateOpsMetadataInput, ...request.Option) (*ssm.UpdateOpsMetadataOutput, error) + UpdateOpsMetadataRequest(*ssm.UpdateOpsMetadataInput) (*request.Request, *ssm.UpdateOpsMetadataOutput) + UpdatePatchBaseline(*ssm.UpdatePatchBaselineInput) (*ssm.UpdatePatchBaselineOutput, error) UpdatePatchBaselineWithContext(aws.Context, *ssm.UpdatePatchBaselineInput, ...request.Option) (*ssm.UpdatePatchBaselineOutput, error) UpdatePatchBaselineRequest(*ssm.UpdatePatchBaselineInput) (*request.Request, *ssm.UpdatePatchBaselineOutput) diff --git a/vendor/golang.org/x/net/html/const.go b/vendor/golang.org/x/net/html/const.go index 73804d347..ff7acf2d5 100644 --- a/vendor/golang.org/x/net/html/const.go +++ b/vendor/golang.org/x/net/html/const.go @@ -52,7 +52,7 @@ var isSpecialElementMap = map[string]bool{ "iframe": true, "img": true, "input": true, - "keygen": true, + "keygen": true, // "keygen" has been removed from the spec, but are kept here for backwards compatibility. "li": true, "link": true, "listing": true, diff --git a/vendor/golang.org/x/net/html/foreign.go b/vendor/golang.org/x/net/html/foreign.go index 74774c458..9da9e9dc4 100644 --- a/vendor/golang.org/x/net/html/foreign.go +++ b/vendor/golang.org/x/net/html/foreign.go @@ -161,65 +161,62 @@ var mathMLAttributeAdjustments = map[string]string{ } var svgAttributeAdjustments = map[string]string{ - "attributename": "attributeName", - "attributetype": "attributeType", - "basefrequency": "baseFrequency", - "baseprofile": "baseProfile", - "calcmode": "calcMode", - "clippathunits": "clipPathUnits", - "contentscripttype": "contentScriptType", - "contentstyletype": "contentStyleType", - "diffuseconstant": "diffuseConstant", - "edgemode": "edgeMode", - "externalresourcesrequired": "externalResourcesRequired", - "filterunits": "filterUnits", - "glyphref": "glyphRef", - "gradienttransform": "gradientTransform", - "gradientunits": "gradientUnits", - "kernelmatrix": "kernelMatrix", - "kernelunitlength": "kernelUnitLength", - "keypoints": "keyPoints", - "keysplines": "keySplines", - "keytimes": "keyTimes", - "lengthadjust": "lengthAdjust", - "limitingconeangle": "limitingConeAngle", - "markerheight": "markerHeight", - "markerunits": "markerUnits", - "markerwidth": "markerWidth", - "maskcontentunits": "maskContentUnits", - "maskunits": "maskUnits", - "numoctaves": "numOctaves", - "pathlength": "pathLength", - "patterncontentunits": "patternContentUnits", - "patterntransform": "patternTransform", - "patternunits": "patternUnits", - "pointsatx": "pointsAtX", - "pointsaty": "pointsAtY", - "pointsatz": "pointsAtZ", - "preservealpha": "preserveAlpha", - "preserveaspectratio": "preserveAspectRatio", - "primitiveunits": "primitiveUnits", - "refx": "refX", - "refy": "refY", - "repeatcount": "repeatCount", - "repeatdur": "repeatDur", - "requiredextensions": "requiredExtensions", - "requiredfeatures": "requiredFeatures", - "specularconstant": "specularConstant", - "specularexponent": "specularExponent", - "spreadmethod": "spreadMethod", - "startoffset": "startOffset", - "stddeviation": "stdDeviation", - "stitchtiles": "stitchTiles", - "surfacescale": "surfaceScale", - "systemlanguage": "systemLanguage", - "tablevalues": "tableValues", - "targetx": "targetX", - "targety": "targetY", - "textlength": "textLength", - "viewbox": "viewBox", - "viewtarget": "viewTarget", - "xchannelselector": "xChannelSelector", - "ychannelselector": "yChannelSelector", - "zoomandpan": "zoomAndPan", + "attributename": "attributeName", + "attributetype": "attributeType", + "basefrequency": "baseFrequency", + "baseprofile": "baseProfile", + "calcmode": "calcMode", + "clippathunits": "clipPathUnits", + "diffuseconstant": "diffuseConstant", + "edgemode": "edgeMode", + "filterunits": "filterUnits", + "glyphref": "glyphRef", + "gradienttransform": "gradientTransform", + "gradientunits": "gradientUnits", + "kernelmatrix": "kernelMatrix", + "kernelunitlength": "kernelUnitLength", + "keypoints": "keyPoints", + "keysplines": "keySplines", + "keytimes": "keyTimes", + "lengthadjust": "lengthAdjust", + "limitingconeangle": "limitingConeAngle", + "markerheight": "markerHeight", + "markerunits": "markerUnits", + "markerwidth": "markerWidth", + "maskcontentunits": "maskContentUnits", + "maskunits": "maskUnits", + "numoctaves": "numOctaves", + "pathlength": "pathLength", + "patterncontentunits": "patternContentUnits", + "patterntransform": "patternTransform", + "patternunits": "patternUnits", + "pointsatx": "pointsAtX", + "pointsaty": "pointsAtY", + "pointsatz": "pointsAtZ", + "preservealpha": "preserveAlpha", + "preserveaspectratio": "preserveAspectRatio", + "primitiveunits": "primitiveUnits", + "refx": "refX", + "refy": "refY", + "repeatcount": "repeatCount", + "repeatdur": "repeatDur", + "requiredextensions": "requiredExtensions", + "requiredfeatures": "requiredFeatures", + "specularconstant": "specularConstant", + "specularexponent": "specularExponent", + "spreadmethod": "spreadMethod", + "startoffset": "startOffset", + "stddeviation": "stdDeviation", + "stitchtiles": "stitchTiles", + "surfacescale": "surfaceScale", + "systemlanguage": "systemLanguage", + "tablevalues": "tableValues", + "targetx": "targetX", + "targety": "targetY", + "textlength": "textLength", + "viewbox": "viewBox", + "viewtarget": "viewTarget", + "xchannelselector": "xChannelSelector", + "ychannelselector": "yChannelSelector", + "zoomandpan": "zoomAndPan", } diff --git a/vendor/golang.org/x/net/html/parse.go b/vendor/golang.org/x/net/html/parse.go index 2cd12fc81..f91466f7c 100644 --- a/vendor/golang.org/x/net/html/parse.go +++ b/vendor/golang.org/x/net/html/parse.go @@ -728,7 +728,13 @@ func inHeadNoscriptIM(p *parser) bool { return inBodyIM(p) case a.Basefont, a.Bgsound, a.Link, a.Meta, a.Noframes, a.Style: return inHeadIM(p) - case a.Head, a.Noscript: + case a.Head: + // Ignore the token. + return true + case a.Noscript: + // Don't let the tokenizer go into raw text mode even when a