Skip to content
/ ecsv Public

Quickly check the versions of your systems running in ECS tasks across various environments

License

Notifications You must be signed in to change notification settings

dhth/ecsv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

125 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ecsv

Build Workflow Status Vulncheck Workflow Status Latest Release Commits Since Latest Release

ecsv helps you quickly check the versions of your systems running in ECS tasks across various environments.

ecsv-terminal

๐Ÿ’พ Installation

homebrew:

brew install dhth/tap/ecsv

go:

go install github.com/dhth/ecsv@latest

Or get the binaries directly from a release. Read more about verifying the authenticity of released artifacts here.

โšก๏ธ Usage

Create a configuration file that looks like the following.

env-sequence: ["qa", "staging"]
systems:
- key: service-a
  envs:
  - name: qa
    aws-config-source: profile:::qa
    aws-region: eu-central-1
    cluster: 1brd-qa
    service: service-a-fargate
    container-name: service-a-qa-Service
  - name: staging
    aws-profile: qa
    aws-config-source: profile:::staging
    aws-region: eu-central-1
    cluster: 1brd-staging
    service: service-a-fargate
    container-name: service-a-staging-Service
- key: service-b
  envs:
  - name: qa
    aws-config-source: profile:::qa
    aws-region: eu-central-1
    cluster: 1brd-qa
    service: service-b-fargate
    container-name: service-b-qa-Service
  - name: staging
    aws-config-source: profile:::staging
    aws-region: eu-central-1
    cluster: 1brd-staging
    service: service-b-fargate
    container-name: service-b-staging-Service

๐Ÿ”  Output Formats

Besides the default ANSI output, ecsv can also output data in plaintext and HTML formats.

ecsv -f table

ecsv-table

ecsv -f html > output.html

ecsv-html

Read more about outputting HTML in the examples directory.

๐Ÿ” Verifying release artifacts

In case you get the ecsv binary directly from a [release][4], you may want to verify its authenticity. Checksums are applied to all released artifacts, and the resulting checksum file is signed using cosign.

Steps to verify (replace A.B.C in the commands listed below with the version you want):

  1. Download the following files from the release:

    • ecsv_A.B.C_checksums.txt
    • ecsv_A.B.C_checksums.txt.pem
    • ecsv_A.B.C_checksums.txt.sig
  2. Verify the signature:

    cosign verify-blob ecsv_A.B.C_checksums.txt \
        --certificate ecsv_A.B.C_checksums.txt.pem \
        --signature ecsv_A.B.C_checksums.txt.sig \
        --certificate-identity-regexp 'https://github\.com/dhth/ecsv/\.github/workflows/.+' \
        --certificate-oidc-issuer "https://token.actions.githubusercontent.com"
  3. Download the compressed archive you want, and validate its checksum:

    curl -sSLO https://github.com/dhth/ecsv/releases/download/vA.B.C/ecsv_A.B.C_linux_amd64.tar.gz
    sha256sum --ignore-missing -c ecsv_A.B.C_checksums.txt
  4. If checksum validation goes through, uncompress the archive:

    tar -xzf ecsv_A.B.C_linux_amd64.tar.gz
    ./ecsv
    # profit!

โ‰ˆ Related tools

  • ecscope lets you monitor ECS resources and deployments.

About

Quickly check the versions of your systems running in ECS tasks across various environments

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •