[SRU] awscli not kept up to date

Bug #1867673 reported by Graham Leggett
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
awscli (Ubuntu)
Fix Released
Undecided
Łukasz Zemczak
Xenial
Fix Released
Undecided
Unassigned
Bionic
Fix Released
Undecided
Unassigned
Eoan
Fix Released
Undecided
Unassigned
Focal
Fix Released
Undecided
Unassigned

Bug Description

[Original Bug Description]

awscli is not kept up to date, and so new AWS features are not available.

The AWS pip installation method is unaudited and unsigned, and is not a production ready solution to the out-of-date problem.

The awscli package needs to be kept up to date and available on all supported Ubuntu OSes.

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: awscli (not installed)
ProcVersionSignature: Ubuntu 4.4.0-1100.111-aws 4.4.203
Uname: Linux 4.4.0-1100-aws x86_64
ApportVersion: 2.20.1-0ubuntu2.21
Architecture: amd64
Date: Mon Mar 16 19:36:32 2020
Ec2AMI: ami-a8d2d7ce
Ec2AMIManifest: (unknown)
Ec2AvailabilityZone: eu-west-1a
Ec2InstanceType: t2.micro
Ec2Kernel: unavailable
Ec2Ramdisk: unavailable
SourcePackage: awscli
UpgradeStatus: No upgrade log present (probably fresh install)

[[ SRU Request Template ]]

[Impact]

 * the awscli package is out of date to varying degrees across supported Ubuntu releases

 * old versions of awscli lack critical functionality for modern AWS cloud features. For example, several `aws eks` commands are unavailable and/or unsupported prior to version 1.18.17 [1].

 * An updated awscli package will allow Xenial and Bionic, in particular, to access modern AWS functionality from the archive.

[Test Case]

 * on any ubuntu release without groovy-proposed enabled: `apt-get install awscli` and attempt `aws eks update-kubeconfig`.
   * This is functionality described in the AWS EKS getting started guide [1] as requiring version 1.18.17 or later [1], and is part of the documented web-console path to using Ubuntu (or any distro) on EKS.
   * On the version of awscli in bionic (1.14.44), the `eks` subcommand is not available.
   * On eoan or focal, this command may not correctly update the user's kubeconfig file depending on the configuration of their AWS EKS cluster (k8s version, cluster options, etc).

 * The latest version of this package is part of acceptance criteria of AWS cloud images for Ubuntu CPC and cloud partners.

[Regression Potential]

 * users of ubuntu and awscli who have scripting or automation reliant on outdated versions of awscli are likely to see some form of breakage insofar as AWS has been willing to break functionality of older versions.

 * The latest version of awscli (1.18.47) lists botocore 1.15.47 as a dependency; at the time of this description the version of python-botocore in the archive does not meet this requirement [2] -- package builds or installation could fail if this dependency is not correctly resolved.

 * Any Ubuntu image builds which preinstall this package and/or use it in boot scripts may break depending on their expectations.

[Other Info]

 * The Hardware Enablement exception likely applies here, as updating this package version will enable using functionality of the AWS cloud which are impossible to use with the versions of the cli currently in the archive.

[1] https://docs.aws.amazon.com/eks/latest/userguide/getting-started-console.html
[2] https://bugs.launchpad.net/ubuntu/+source/python-botocore/+bug/1875485

Revision history for this message
Graham Leggett (minfrin) wrote :
no longer affects: focal (Ubuntu)
Revision history for this message
Cody Shepherd (codyshepherd) wrote :

This bug affects all suites to some extent, excluding groovy-proposed, and the package version is more outdated for the older supported releases, e.g. xenial and bionic.

The versions in the archive for xenial and bionic, 1.11 and 1.14, respectively, lack functionality applicable to newer AWS features, for example `aws eks wait` and `aws eks describe-cluster`.

CPC would like to see version 1.18.46 in groovy-proposed backported to all supported suites. SRU template incoming.

description: updated
summary: - awscli not kept up to date
+ [SRU] awscli not kept up to date
description: updated
tags: added: id-5ea6eb3d73f4d32753382fc6
Changed in awscli (Ubuntu):
assignee: nobody → Łukasz Zemczak (sil2100)
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Sponsored for focal, eoan, bionic and xenial.

Note to SRU team: as mentioned in the bug description, this upload requires a new python-botocore. Those have been uploaded to the Unapproved queues as well and need to be accepted before considering these uploads here.

Changed in awscli (Ubuntu):
status: New → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

blocking this for eoan and earlier due to the 'incomplete' status of the matching python-botocore bug.

Changed in awscli (Ubuntu Eoan):
status: New → Incomplete
Changed in awscli (Ubuntu Bionic):
status: New → Incomplete
Changed in awscli (Ubuntu Xenial):
status: New → Incomplete
Revision history for this message
Steve Langasek (vorlon) wrote :

it's stated that a new python-botocore is required, but there is no corresponding change to the package dependencies in debian/control. The dependency on python3-botocore must be updated to have the correct version in SRU. Rejecting the current set of uploads, please upload with the dependency fix.

Revision history for this message
Steve Langasek (vorlon) wrote : Proposed package upload rejected

An upload of awscli to focal-proposed has been rejected from the upload queue for the following reason: "Requires versioned dependency on python3-botocore".

Revision history for this message
Steve Langasek (vorlon) wrote :

An upload of awscli to eoan-proposed has been rejected from the upload queue for the following reason: "Requires versioned dependency on python3-botocore".

Revision history for this message
Steve Langasek (vorlon) wrote :

An upload of awscli to bionic-proposed has been rejected from the upload queue for the following reason: "versioned dep on python3-botocore is incorrect per upsteram".

Revision history for this message
Steve Langasek (vorlon) wrote :

An upload of awscli to xenial-proposed has been rejected from the upload queue for the following reason: "versioned dep on python3-botocore is incorrect per upstream".

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Graham, or anyone else affected,

Accepted awscli into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/awscli/1.18.69-1ubuntu0.20.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in awscli (Ubuntu Focal):
status: New → Fix Committed
tags: added: verification-needed verification-needed-focal
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello Graham, or anyone else affected,

Accepted awscli into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/awscli/1.18.69-1ubuntu0.18.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in awscli (Ubuntu Bionic):
status: Incomplete → Fix Committed
tags: added: verification-needed-bionic
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello Graham, or anyone else affected,

Accepted awscli into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/awscli/1.18.69-1ubuntu0.16.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in awscli (Ubuntu Xenial):
status: Incomplete → Fix Committed
tags: added: verification-needed-xenial
Revision history for this message
Graham Leggett (minfrin) wrote :

Thank you for this, really appreciate it.

tags: added: id-5eea51b0f3f7f2772ffde077
Revision history for this message
David Krauser (davidkrauser) wrote :

Followed testing steps for bionic:

- Enabled bionic-proposed
- Installed awscli/bionic-proposed and python3-botocore/bionic-proposed
- Ran aws --version (got expected 1.18.69)
- Ran aws eks help (got expected help text)
- Ran aws eks update-kubeconfig (ran successfully and updated the local kube config)

tags: removed: verification-needed-bionic
tags: added: verification-needed-bionic
tags: added: verification-done-bionic
removed: verification-needed-bionic
Revision history for this message
David Krauser (davidkrauser) wrote :

Followed testing steps for focal:

- Enabled focal-proposed
- Installed awscli/focal-proposed and python3-botocore/focal-proposed
- Ran aws --version (got expected 1.18.69)
- Ran aws eks help (got expected help text)
- Ran aws eks update-kubeconfig (ran successfully and updated the local kube config)

tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
David Krauser (davidkrauser) wrote :

Followed testing steps for xenial:
- Enabled focal-proposed
- Installed awscli/focal-proposed and python3-botocore/focal-proposed
- Ran aws --version (got expected 1.18.69)
- Ran aws eks help (got expected help text)
- Ran aws eks update-kubeconfig
  - This failed to run successfully. Got error:

An HTTP Client raised and unhandled exception: __init__() got an unexpected keyword argument 'ssl_context'

tags: added: verification-failed-xenial
removed: verification-needed-xenial
tags: removed: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote :

Hello Graham, or anyone else affected,

Accepted awscli into eoan-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/awscli/1.18.69-1ubuntu0.19.10.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-eoan to verification-done-eoan. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-eoan. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in awscli (Ubuntu Eoan):
status: Incomplete → Fix Committed
tags: added: verification-needed verification-needed-eoan
Revision history for this message
David Krauser (davidkrauser) wrote :

Followed testing steps in a fresh eoan VM:

- Enabled eoan-proposed
- Installed awscli/eoan-proposed and python3-botocore/eoan-proposed
- Ran aws --version (got expected 1.18.69)
- Ran aws eks help (got expected help text)
- Ran aws eks update-kubeconfig (ran successfully and updated the local kube config)

tags: added: verification-done-eoan
removed: verification-needed verification-needed-eoan
Mathew Hodson (mhodson)
tags: added: upgrade-software-version
Revision history for this message
Brian Murray (brian-murray) wrote : Update Released

The verification of the Stable Release Update for awscli has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package awscli - 1.18.69-1ubuntu0.19.10.1

---------------
awscli (1.18.69-1ubuntu0.19.10.1) eoan; urgency=medium

  * SRU latest upstream version to 19.10 (LP: #1867673).
  * debian/control: bump the python3-botocore version dep to the one required by
    upstream (per setup.cfg). Do the same for python3-s3transfer.

 -- Łukasz 'sil2100' Zemczak <email address hidden> Wed, 17 Jun 2020 10:42:53 +0200

Changed in awscli (Ubuntu Eoan):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package awscli - 1.18.69-1ubuntu0.20.04.1

---------------
awscli (1.18.69-1ubuntu0.20.04.1) focal; urgency=medium

  * SRU latest upstream version to 20.04 (LP: #1867673).
  * debian/control: bump the python3-botocore version dep to the one required by
    upstream (per setup.cfg). Do the same for python3-s3transfer.

 -- Łukasz 'sil2100' Zemczak <email address hidden> Wed, 17 Jun 2020 10:42:53 +0200

Changed in awscli (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package awscli - 1.18.69-1ubuntu0.18.04.1

---------------
awscli (1.18.69-1ubuntu0.18.04.1) bionic; urgency=medium

  * SRU latest upstream version to 18.04 (LP: #1867673).
  * debian/control: bump the python3-botocore version dep to the one required by
    upstream (per setup.cfg). Do the same for python3-s3transfer.
  * debian/control: tweak the debhelper requirements.

 -- Łukasz 'sil2100' Zemczak <email address hidden> Wed, 17 Jun 2020 10:42:53 +0200

Changed in awscli (Ubuntu Bionic):
status: Fix Committed → Fix Released
Revision history for this message
Lukas Märdian (slyon) wrote :

Followed testing steps for xenial:
- Enabled focal-proposed
- Installed awscli/focal-proposed and python3-botocore/focal-proposed
- Ran aws --version (got expected 1.18.69)
- Ran aws eks help (got expected help text)
- Ran aws eks update-kubeconfig (ran successfully and showed valid error messages, as I do not have an AWS account EKS cluster)

The "unhandled exception" reported by David in previous test runs on xenial is gone, using python-botocore from LP: #1875485. But I could not verify the local kube config is actually updated, as I do not have an AWS account nor EKS cluster. I'm not sure if this is enough or if we need somebody else to re-verify this:

root@namely-premium-longhorn:~# aws eks update-kubeconfig
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:

  aws help
  aws <command> help
  aws <command> <subcommand> help
aws: error: the following arguments are required: --name

root@namely-premium-longhorn:~# aws eks --region us-east-1 update-kubeconfig --name test_cluster
Unable to locate credentials. You can configure credentials by running "aws configure".

root@namely-premium-longhorn:~# aws configure
AWS Access Key ID [None]: 123
AWS Secret Access Key [None]: 123
Default region name [None]: us-east-1
Default output format [None]:

root@namely-premium-longhorn:~# aws eks --region us-east-1 update-kubeconfig --name test_cluster

An error occurred (UnrecognizedClientException) when calling the DescribeCluster operation: The security token included in the request is invalid.

tags: added: verification-done-xenial
removed: verification-failed-xenial
Revision history for this message
David Krauser (davidkrauser) wrote :

I ran the following quick test against a real EKS cluster,
and everything seemed to work as expected:

xenial $ # Enable proposed
xenial $ sudo apt-get install -y \
    awscli/xenial-proposed \
    python3-botocore/xenial-proposed \
    python3-s3transfer/xenial-proposed
[..snip..]
xenial $ aws iam get-user
# Returned expected user information
xenial $ sudo snap install kubectl --classic
[..snip..]
xenial $ aws eks update-kubeconfig --name eks-1-17-cluster
Added new context [..snip..]:cluster/eks-1-17-cluster to /home/ubuntu/.kube/config
xenial $ kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 4m8s

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package awscli - 1.18.69-1ubuntu0.16.04.1

---------------
awscli (1.18.69-1ubuntu0.16.04.1) xenial; urgency=medium

  * SRU latest upstream version to 16.04 (LP: #1867673).
  * debian/control: bump the python3-botocore version dep to the one required by
    upstream (per setup.cfg). Do the same for python3-s3transfer.
  * debian/control: tweak the debhelper requirements.

 -- Łukasz 'sil2100' Zemczak <email address hidden> Wed, 17 Jun 2020 10:42:53 +0200

Changed in awscli (Ubuntu Xenial):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.