Skip to content

ubi should verify checksums by default #84

@autarch

Description

@autarch

If a release has an accompanying checksum file, it'd be nice if ubi downloaded the checksums and validated them.

This will require looking at a whole bunch of projects to see what naming scheme they use for these checksums and what the files look like. At least I know how this works for my own actions-rust-release-based projects.

Some examples:

ubi

Publishes foo.tar.gz and foo.tar.gz.sha256 files.

https://gitlab.com/gitlab-org/cli/-/releases

Publishes a single checksums.txt file with all the checksums for the release.

https://github.com/golangci/golangci-lint

Publishes a single golangci-lint-1.62.2-checksums.txt file with all the checksums for the release.

https://github.com/chrishrb/go-grip

Publishes foo.tar.gz.md5 files. This files just contain the hash, with no filename.

https://github.com/goreleaser/goreleaser

Publishes foo.sbom.json files which contain a $.files element. This is an array of objects, where each object contains a .checksums object with hashes (SHA1 and SHA256) for the executable file in the release.

There's also a checksums.txt file.


If you're reading this, please feel free to add any other examples you know of that follow a pattern not covered in the list above.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions