Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: upgrade AWS CLI to 2.17.44 #19

Merged
merged 1 commit into from
Sep 5, 2024
Merged

Conversation

Monska85
Copy link
Contributor

@Monska85 Monska85 commented Sep 5, 2024

PR Type

Enhancement


Description

  • Upgraded AWS CLI to version 2.17.44 across all project files
  • Updated CI workflow to build and test the new AWS CLI version
  • Removed support for older AWS CLI version 2.16.7
  • Updated Makefile to include new build targets for 2.17.44 on Alpine 3.20 and 3.19
  • Updated README to reflect the latest AWS CLI version in usage example

Changes walkthrough 📝

Relevant files
Configuration changes
docker-publish.yml
Update CI workflow to build latest AWS CLI version             

.github/workflows/docker-publish.yml

  • Updated matrix tags to include AWS CLI version 2.17.44
  • Removed older AWS CLI version 2.16.7 from the build matrix
  • +4/-4     
    Enhancement
    Dockerfile
    Upgrade AWS CLI version in Dockerfile                                       

    Dockerfile

    • Updated AWS_CLI_VERSION argument to 2.17.44
    +1/-1     
    Makefile
    Update Makefile for new AWS CLI version                                   

    Makefile

  • Updated LATEST_VERSION to 2.17.44-alpine3.20
  • Added build targets for AWS CLI 2.17.44 on Alpine 3.20 and 3.19
  • Removed build targets for AWS CLI 2.16.7
  • +12/-12 
    Documentation
    README.md
    Update README with latest AWS CLI version                               

    README.md

    • Updated example Docker command to use AWS CLI version 2.17.44
    +1/-1     

    💡 PR-Agent usage:
    Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

    @sparkfabrik-ai-bot
    Copy link

    PR Reviewer Guide 🔍

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ No key issues to review

    @sparkfabrik-ai-bot
    Copy link

    sparkfabrik-ai-bot bot commented Sep 5, 2024

    PR Code Suggestions ✨

    Latest suggestions up to d197ea6

    CategorySuggestion                                                                                                                                    Score
    Maintainability
    Update the LATEST_VERSION variable to reflect the new AWS CLI version

    Consider updating the LATEST_VERSION variable to match the new AWS CLI version. This
    ensures consistency across the project and helps users quickly identify the most
    recent version.

    Makefile [4]

    +LATEST_VERSION ?= 2.17.44-alpine3.20
     
    -
    Suggestion importance[1-10]: 9

    Why: This suggestion correctly identifies the need to update the LATEST_VERSION variable to match the new AWS CLI version, which is crucial for maintaining consistency across the project.

    9
    Use variables in the matrix configuration for easier version management

    Consider using variables or a centralized configuration for version numbers in the
    matrix. This would make it easier to update versions across the entire workflow file
    and reduce the risk of inconsistencies.

    .github/workflows/docker-publish.yml [19-25]

     matrix:
    +  aws_cli_version: ['2.17.44', '2.17.7']
    +  python_version: ['3.11.9']
    +  alpine_version: ['3.20', '3.19']
       tag:
    -    # To keep the number of builds low, we only keep the latest two versions of the AWS CLI
    -    - 2.17.44-3.11.9-3.20
    -    - 2.17.44-3.11.9-3.19
    -    - 2.17.7-3.11.9-3.20
    -    - 2.17.7-3.11.9-3.19
    +    - ${{ matrix.aws_cli_version }}-${{ matrix.python_version }}-${{ matrix.alpine_version }}
     
    Suggestion importance[1-10]: 7

    Why: This suggestion offers a more maintainable approach to managing versions in the workflow file, but it's a significant change that might require careful testing and implementation.

    7
    Enhancement
    Update the default build target to use the latest version dynamically

    Update the default build target to use the latest AWS CLI version. This ensures that
    the default build process uses the most recent version when no specific version is
    specified.

    Makefile [6]

    -build: build-2.17.44-3.20
    +build: build-$(subst .,_,$(LATEST_VERSION))
     
    Suggestion importance[1-10]: 8

    Why: This suggestion provides a more dynamic approach to setting the default build target, which improves maintainability and reduces the need for manual updates when versions change.

    8
    Documentation
    Ensure consistency in Alpine versions used in the README example

    Update the example Dockerfile in the README to use the latest Alpine version
    consistently. The FROM statement uses Alpine 3.20, but the image tag suggests 3.19.
    Align these versions for clarity and consistency.

    README.md [10-12]

    +FROM ghcr.io/sparkfabrik/docker-alpine-aws-cli:2.17.44-alpine3.20 as awscli
     
    +FROM alpine:3.20
     
    Suggestion importance[1-10]: 8

    Why: This suggestion correctly identifies an inconsistency in the README example and proposes a fix that aligns with the changes made in the PR, improving documentation accuracy.

    8

    Previous suggestions

    Suggestions up to commit d197ea6
    CategorySuggestion                                                                                                                                    Score
    Best practice
    Update the LATEST_VERSION variable to reflect the new version

    Update the LATEST_VERSION variable to reflect the new latest version
    (2.17.44-alpine3.20). This ensures that the latest version is correctly referenced
    throughout the project.

    Makefile [4]

    +LATEST_VERSION ?= 2.17.44-alpine3.20
     
    -
    Suggestion importance[1-10]: 10

    Why: This suggestion is crucial for maintaining consistency throughout the project and accurately reflecting the latest version, which is a key change in this PR.

    10
    Documentation
    Update the example in the README to use the latest version consistently

    Update the example in the README to use the latest version (2.17.44-alpine3.20)
    consistently. This ensures that users are guided to use the most recent version of
    the Docker image.

    README.md [10]

    +FROM ghcr.io/sparkfabrik/docker-alpine-aws-cli:2.17.44-alpine3.20 as awscli
     
    -
    Suggestion importance[1-10]: 10

    Why: This suggestion is crucial for keeping the documentation up-to-date with the latest changes, ensuring users are guided to use the most recent version of the Docker image.

    10
    Enhancement
    Update the default build target to include all new versions

    Consider updating the build target to include both new versions (2.17.44-3.20 and
    2.17.44-3.19) instead of just one. This ensures that both new versions are built by
    default.

    Makefile [6]

    -build: build-2.17.44-3.20
    +build: build-2.17.44-3.20 build-2.17.44-3.19
     
    Suggestion importance[1-10]: 8

    Why: This suggestion improves the build process by ensuring both new versions are built by default, which is more comprehensive and consistent with the changes made in the PR.

    8
    Optimization
    Remove older versions from the build matrix to focus on the latest versions

    Consider removing the older versions (2.17.7) from the matrix to maintain only the
    latest versions. This will reduce build time and resource usage while keeping the
    workflow up-to-date.

    .github/workflows/docker-publish.yml [22-25]

     - 2.17.44-3.11.9-3.20
     - 2.17.44-3.11.9-3.19
    -- 2.17.7-3.11.9-3.20
    -- 2.17.7-3.11.9-3.19
     
    Suggestion importance[1-10]: 3

    Why: While this suggestion could optimize build time, it contradicts the comment in the code about keeping the latest two versions. The PR already updates versions without removing older ones.

    3

    @Monska85
    Copy link
    Contributor Author

    Monska85 commented Sep 5, 2024

    /improve

    @Monska85 Monska85 merged commit 0e2eb3f into main Sep 5, 2024
    5 checks passed
    @Monska85 Monska85 deleted the feat/upgrade_awscli_2.17.44 branch September 5, 2024 09:25
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    1 participant