lab
lab copied to clipboard
lab is a cli client of gitlab like hub
lab
lab is a cli client of gitlab like hub.
Installation
Go developer
Please getting source code and build.
go get github.com/lighttiger2505/lab
make ensure
make install
Binary download
Please run the install script:
curl -s https://raw.githubusercontent.com/lighttiger2505/lab/master/install.sh | bash
The script installs the lab
command in /usr/local/bin
. For more details, see the install.sh
source code.
Features
Usage: lab [--version] [--help] <command> [<args>]
Available commands are:
browse Browse project page
issue Create and Edit, list a issue
issue-template List issue template
job List job
lint validate .gitlab-ci.yml
merge-request Create and Edit, list a merge request
merge-request-template List merge request template
mr Create and Edit, list a merge request
pipeline List pipeline, List pipeline jobs
project List project
project-variable List project level variables
runner List CI/CD Runner
user List user
Usage
- change directory gitlab repository
- lab command accesses gitlab quickly by useing repository infomation
$ cd {gitlab repository}
- launch lab command
$ lab issue
- please input personal access token
- use the lab command you need Personal access take look here(
https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#creating-a-personal-access-token
)
Please input GitLab private token : {your token}
- use the lab command you need Personal access take look here(
Feature
Browse
Open gitlab pages on brwoser.
# Browse project page
$ lab browse
# Browse project file
$ lab browse ./README.md
# Browse sub page
$ lab browse -s issues
Operations to Issue and Merge Request
Many operations can be done with simple input.
# List issue
lab issue
# Browse issue
lab issue -b {issue ii}
# Show issue
lab issue {issue id}
# Create issue
lab issue -e
# Update issue
lab issue {issue id} -e
Configuration
auto create configuration file ~/.config/lab/config.yml
when launch lab command
Sample
default_profile: gitlab.com
profiles:
gitlab.com:
token: ********************
default_group: hoge
default_project: hoge/soge
default_assignee_id: 123
gitlab.ssl.foo.jp:
token: ********************
default_group: foo
default_project: foo/bar
default_assignee_id: 456
ToDos
- variable command
- [x] Project-level Variables
- [ ] Group-level Variables
- use template
- [x] issue template
- [x] merge request template
- [ ] pipeline actions
- [ ] cancel
- [ ] retry
- [ ] label command
- [x] project-member command
- workflow automation command
- [ ] create
- create new project and cloning repository
- [ ] fork
- create fork project and cloning repository
- [ ] flow
- create issue and create
WIP:
merge request
- create issue and create
- [ ] create
Similar tool
There are similar tools. If you prefer modern style commands like docker. This tool may be better.
Note: This tool and lighttiger2505/lab are completely different tools