relma

command module
v1.7.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2022 License: MIT Imports: 3 Imported by: 0

README

= relma - github RELease MAnagement cli
:toc: left
:sectnums:

image:https://github.com/jiro4989/relma/workflows/test/badge.svg[test]
image:https://codecov.io/gh/jiro4989/relma/branch/master/graph/badge.svg[codecov, link="https://codecov.io/gh/jiro4989/relma"]

`relma` is the command to manage executables in GitHub Releases. `relma` helps you to upgrade one.

image:https://user-images.githubusercontent.com/13825004/97173868-94b00000-17d4-11eb-8f59-f3ca7fdb5ae6.gif[relma.gif]

== Motivation

It is pretty useful to versioning that the package management system like  `apt` or `yum`.
But we have to manage ourselves about executables in GitHub Releases.

Examples:

[source,bash]
----
cd /tmp
wget https://github.com/jiro4989/nimjson/releases/download/v1.2.8/nimjson_linux.tar.gz
tar xzf nimjson_linux.tar.gz
mkdir -p ~/bin
install -m 0755 ./nimjson_linux/bin/nimjson ~/bin/
----

We have to run those commands if we want to upgrade one.

I want to resolve this problem.

`relma` can upgrade your executables that installed with `relma`.

== Usage

At first, you have to run `relma init` to create configuration file.

Next, executables in GitHub Releases will be installed when you run `relma init <release_url>`.
At default, symbolic links will be created in `$HOME/relma/bin`.

The entities will be stored in `$HOME/relma/releases/<owner/repo>`.

Examples:

[source,bash]
----
relma init
relma install https://github.com/jiro4989/nimjson/releases/download/v1.2.8/nimjson_linux.tar.gz
----

`$HOME/relma/releases.json` has informations of installed releases.

And you can install releases with `releases.json`.

Examples:

[source,bash]
----
relma install -f releases.json
----

Please you run below if you want to upgrade all releases.

[source,bash]
----
relma update
relma upgrade --yes
----

Please you run below if you want to upgrade specific releases.

[source,bash]
----
relma upgrade --yes <owner/repo>

# ex:
# relma upgrade --yes jiro4989/nimjson
----

`<owner/repo>` is the release name in `relma`.
Please run below if you want to check those.

[source,bash]
----
relma list
----

// バージョンを指定したい場合は以下のコマンドを実行します。
// 
// [source,bash]
// ----
// relma upgrade itchyny/mmv v0.1.2
// ----

// アップグレード可能なパッケージ一覧の確認は以下のコマンドを実行します。
// 
// [source,bash]
// ----
// relma list --upgradable
// ----

Please you run below if you want to uninstall specific releases.

[source,bash]
----
relma uninstall <owner/repo>

# ex:
# relma uninstall jiro4989/nimjson
----

== Installation

You can install `relma` if you have Go compiler.
But `relma --version` always prints `dev`.

Run below:

[source,bash]
----
go install github.com/jiro4989/relma@latest
----

Or, you can download and install from https://github.com/jiro4989/relma/releases[GitHub Releases].

== LICENSE

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
external

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL