You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
continuous-integration/drone/push Build is passing
Details
|
2 years ago | |
---|---|---|
docs | 2 years ago | |
.drone.yml | 2 years ago | |
.gitignore | 2 years ago | |
gitea.go | 2 years ago | |
go.mod | 2 years ago | |
go.sum | 2 years ago | |
main.go | 2 years ago | |
readme.md | 2 years ago |
readme.md
Gitea release tool
This tool is meant to remove the need to log into the Gitea website to create releases, and upload artifacts.
Building the tool
-
Clone the repo
-
Run
go build -o upload
-
If you need a statically linked binary, like for example this is being used in some specific docker containers you can compile it this way
CGO_ENABLED=0 go build -tags netgo -o upload
To use it just run it as ./upload -h or --help
for full output of the commands. More verbose instructions with examples can be found here
Todo
Done
- Write function to upload code artifacts
- when running the program and passing all the params body, draft, name, prerelease, and etc it will fail when the boolean values are passed because the current error checking for if the string values are empty is flawed. To workaround this just omit the boolean values when running the program.
- when running the --help command the error checking logs a failure to stdout because reasons (bad code)
- Generalize the tool to be used for more than just pushing releases
- Add cli commands to route requests and make the current commands sub commands, i.e. desire to delete old releases for continuous releases. Sub commands will also make it possible to not force basically all commands to be marked as required
- Add flag to rm all so tags are deleted along with releases.
- Refactor code, it all lives in a single file and it's getting pretty uglee.
- Add continuous release tag
- Make uploading artifacts understand multiple items (slice of strings vs single string implementation)
- This one may not necessarily be an issue but, when deleting a release by tag the tag itself is also not deleted. This may be a desirable function, so I may add a force or rm -a (all) flag in the future.