-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* fix: don't parse flags in init This is bad practice which results in spaghetti code down the line. Moving flag parsing to the actual command execution is cleaner. See: spf13/cobra#553 * feat: add push command This new command lets users perform arbitrary actions on mass to a set of repositories and push the changes upstream.
- Loading branch information
Showing
8 changed files
with
452 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
linters: | ||
disable-all: true | ||
enable: | ||
- errcheck | ||
- gosimple | ||
- govet | ||
- ineffassign | ||
- staticcheck | ||
- unused | ||
- revive | ||
- gocritic |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,25 @@ | ||
# gul | ||
Command line based utilities for Gitlab | ||
|
||
## Available tools | ||
|
||
### file: search for repos containing a given file | ||
|
||
### file-text: search for repos with given text in a file | ||
|
||
### push: batch pushes to repositories after executing a given workflow | ||
This tool is based on the concept of workflows. Each workflow consists of directory containing the following three files: | ||
|
||
* targets.txt: list of repositories in format `namespace/project@branch` to perform the work on | ||
* job: this executable will be run on each cloned repository, changes performed by it will be committed and pushed | ||
* message.txt: commit message to be used | ||
|
||
To use the tool you first need to configure the following with `gul config`: | ||
|
||
1. Set a git user | ||
2. Set a git email | ||
3. Set a git ssh.domain | ||
|
||
## Notes | ||
Code here is really radioactive, I tried to integrate some linting into it to keep from going | ||
too spaghetti, but there are no unit tests, just real life testing, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.