Update some stuff, now everything must work

This commit is contained in:
Nikolai Rodionov 2023-01-18 13:28:57 +01:00
parent ce0a54a08b
commit 18fd9d827b
6 changed files with 56 additions and 8 deletions

View File

@ -41,7 +41,8 @@ jobs:
platforms: linux/amd64,linux/arm64
push: true
tags: |
ghcr.io/${{ github.action_repository }}:stable
ghcr.io/${{ github.repository }}:stable
ghcr.io/${{ github.repository }}:latest
labels: |
action_id=${{ github.action }}
action_link=${{ env.LINK }}

View File

@ -44,7 +44,7 @@ jobs:
platforms: linux/amd64,linux/arm64
push: true
tags: |
ghcr.io/${{ github.action_repository }}:${{ env.TAG }}
ghcr.io/${{ github.repository }}:${{ env.TAG }}
labels: |
action_id=${{ github.action }}
action_link=${{ env.LINK }}

View File

@ -7,6 +7,7 @@ RUN cargo build --release
FROM alpine:3.17.1
COPY --from=builder /src/target/release/clin /bin/clin
RUN apk update && apk add openssl --no-cache
RUN apk update && apk add --no-cache libressl-dev libc6-compat
RUN chmod +x /bin/clin
WORKDIR /workdir
ENTRYPOINT ["/bin/clin"]

View File

@ -2,8 +2,54 @@
> It's actually not and installer, but a downloader, clin just sounds better than cldow IMHO
# What's it about?
To be done
It's just a tool to make downloading binaries for different platforms easier.
## For example
If you want to build a docker image, but you want to make it available on different platforms. But your tool needs other tools as dependencies, e.g. `helm`.
To install helm on Alpine you need to use curl, wget, or something. You need to choose a version, an operating system, and an architecture. For me, it was obvious that you must be able to use `uname -m`...
```BASH
uname -m
aarch64
uname -m
x86_64
uname -m
arm64
```
While release naming is also not very consecutive
- release_example.amd-macos.zip
- another-release-for-amd64-macos.zip
- linux-aarch64-release.zip
# How to install?
To be done
## Install
### Download
Get executable from github releases
Prebuilt binaries exist for **Linux x86_64** and **MacOS arm64** and **x86_64**
Don't forget to add the binary to $PATH
```
$ curl https://raw.githubusercontent.com/allanger/clever-install/main/scripts/download_clin.sh | bash
$ clin -h
```
### Docker
You can use the `latest` or a `tagged` docker image
```
$ docker pull ghcr.io/allanger/clever-install:latest
$ docker run ghcr.io/allanger/clever-install:latest clin -h
```
### Build from source
1. Build binary
```
$ cargo build --release
```
2. Run `gum help`
# How to use?
To be done

View File

@ -1,7 +1,7 @@
#!/bin/bash
echo 'renaming clin to clin-$VERSION-$SYSTEM format'
mkdir -p release
echo "version - $clin_VERSION"
echo "version - $CLIN_VERSION"
for BUILD in build*; do
SYSTEM=$(echo $BUILD | sed -e 's/build-//g')
echo "system - $SYSTEM"

View File

@ -11,9 +11,9 @@ use std::{
process::exit,
};
/// Check you helm releaseas managed by Argo
/// Maybe not that clever, but at least not dumb. Download binaries for defferent architectures easier
#[derive(Parser)]
#[clap(author = "allanger <allanger@zohomail.com>", version, about, long_about = None)]
#[clap(author = "allanger <allanger@zohomail.com>", version, about, long_about = None, arg_required_else_help(true))]
struct Args {
/// A templated link for downloading
#[clap(short, long, env = "CLIN_LINK")]