marcosnils/bin

Seems package_path is not refreshing

Closed this issue · 4 comments

Not sure if it's related to something specific in this repo, but package_path is not refreshing and trying to extract older binary when update is available.

i.e. config is:

"bins": {
        "/home/marko/bin/aws-nuke": {
            "path": "/home/marko/bin/aws-nuke",
            "remote_name": "aws-nuke",
            "version": "v2.18.1",
            "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
            "url": "https://github.com/rebuy-de/aws-nuke/releases/tag/v2.18.1",
            "provider": "github",
            "package_path": "aws-nuke-v2.18.1-linux-amd64"
        },

update:

   • /home/xxx/bin/aws-nuke v2.18.1 -> v2.19.0 (https://github.com/rebuy-de/aws-nuke/releases/tag/v2.19.0)

Do you want to continue? [Y/n] y
   • Getting v2.19.0 release for rebuy-de/aws-nuke
   • Starting download of https://api.github.com/repos/rebuy-de/aws-nuke/releases/assets/65889581
25.04 MiB / 25.04 MiB [------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------] 100.00% 7.74 MiB p/s 3s
   ⨯ command failed            error=No files found in tar archive. PackagePath [aws-nuke-v2.18.1-linux-amd64]

you can use bin update -p to fix this.

Bin is failing because the previous package_path was aws-nuke-v2.18.1-linux-amd64 and it can't find it in the new package.

Just released v0.14.1 which improves the error message to clarify this.

Thanks 👍 . Do you know why this is happening in this repo?

Thanks +1 . Do you know why this is happening in this repo?

Yes, because each new binary release has a different name, and bin is "trying" to find the previous binary used and it doesn't find it. Can it be a bit more smart and do a better approximation? Yes, but it's not implemented yet.

Hope that help clarifying 🙏

Gotcha, thanks for explanation!