Trevor Brown
778ab34a6f
feat(golang-rewrite): create RunCallback
method for Plugin
struct
...
* Create `plugins.New` function, updating existing code to use it
* Add another test for `hook.Run` function
* Enable `plugin_add_command.bats` tests for Go implementation of asdf
* Add `RunCallback` method to `Plugin` struct
* Update `plugins.Add` function to run `post-plugin-add` plugin callback script
* Handle Bash expression and scripts properly in `execute` package so `$@` is always set
2024-12-18 11:32:01 -05:00
Trevor Brown
963c04c742
Merge pull request #45 from asdf-vm/tb/command-exec
...
feat(golang-rewrite): create hooks
2024-12-18 11:32:01 -05:00
Trevor Brown
cb813f65ef
Merge pull request #44 from asdf-vm/tb/use-plugin-index
...
feat(golang-rewrite): use plugin index
2024-12-18 11:32:01 -05:00
Trevor Brown
771f18493f
feat(golang-rewrite): create hooks
...
* Update tests for config package to use assert package
* Create Config.GetHook method
* Create execute package for running Bash commands
* Create hook package for running asdf hooks
* Run plugin add hooks
2024-12-18 11:32:01 -05:00
Trevor Brown
a5d7ebf8bc
Merge pull request #42 from asdf-vm/tb/git-code-refactor
...
feat(golang-rewrite): move all Git code to git package
2024-12-18 11:32:01 -05:00
Trevor Brown
8394e858fe
feat(golang-rewrite): use plugin index
...
* Create `pluginindex.Build` function
* Use `pluginindex` when no plugin URL provided for plugin add command
* Get more `plugin_add_command` BATS tests passing against Golang version
* Only use `pluginindex` when it is not disabled
* Update error message so it matches legacy format
* Add staticcheck.conf
2024-12-18 11:32:01 -05:00
Trevor Brown
89ec687da9
Merge pull request #40 from asdf-vm/tb/plugin-repository
...
feat(golang-rewrite): create pluginindex package
2024-12-18 11:32:01 -05:00
Trevor Brown
cb49b64a5a
feat(golang-rewrite): move all Git code to git package
...
* Move plugins/git package to /git.
* Update repoer interface in pluginindex package to match interface in git package
* Use git package's Repo struct in pluginindex package
2024-12-18 11:32:01 -05:00
Trevor Brown
0aba948c65
Merge pull request #36 from asdf-vm/tb/plugin-update-cmd
...
feat(golang-rewrite): create plugin update command
2024-12-18 11:32:01 -05:00
Trevor Brown
202cdae831
feat(golang-rewrite): create pluginindex package
...
* Switch to non-verbose test output in Makefile
* Create pluginindex package with PluginIndex struct with methods for updating index and retrieving plugin URLs
* Create IndexRepo interface to allow for easy testing out cloning real Git repository.
2024-12-18 11:32:01 -05:00
Trevor Brown
c4800443bd
feat(golang-rewrite): create plugin update command
2024-12-18 11:32:01 -05:00
Trevor Brown
a6a27e4812
Merge pull request #38 from asdf-vm/tb/setup-gofumpt
...
chore(golang-rewrite): setup gofumpt
2024-12-18 11:32:00 -05:00
Trevor Brown
636620524e
Merge pull request #35 from asdf-vm/tb/plugin-git-package
...
feat(golang-rewrite): create plugins/git package to store plugin Git operations
2024-12-18 11:32:00 -05:00
Trevor Brown
c85155f69d
chore(golang-rewrite): setup gofumpt
...
* Install and run gofumpt in Golang lint workflow
* Remove golangci-lint
* Run gofumpt and fix revive linter errors
2024-12-18 11:32:00 -05:00
Trevor Brown
3ffeec2ea0
Merge pull request #33 from asdf-vm/tb/default-config-refactor
...
chore(golang-rewrite): default settings refactor
2024-12-18 11:32:00 -05:00
Trevor Brown
325cd3334b
feat(golang-rewrite): create plugins/git package to store plugin Git operations
2024-12-18 11:32:00 -05:00
Trevor Brown
e4c2b482a6
chore(golang-rewrite): rename files for plugins and cmd packages
2024-12-18 11:32:00 -05:00
Trevor Brown
0ce1de3834
chore(golang-rewrite): default settings refactor
2024-12-18 11:32:00 -05:00
Trevor Brown
037cf36dab
Merge pull request #32 from asdf-vm/tb/workflow-improvements
...
chore(golang-rewrite): Github workflow improvements
2024-12-18 11:32:00 -05:00
Trevor Brown
c10d22fa27
Merge pull request #31 from asdf-vm/tb/add-makefile
...
feat(golang-rewrite): create Makefile
2024-12-18 11:32:00 -05:00
Trevor Brown
5406f3eca1
chore(golang-rewrite): Github workflow improvements
...
* Add golangci-lint to lint workflow
* Remove failing Bash test jobs
* Add golangci lint config
* Fix revive command in Makefile
* Fix revive warnings
2024-12-18 11:32:00 -05:00
Trevor Brown
a3f16b24a1
Merge pull request #30 from asdf-vm/tb/plugin-remove-command
...
feat(golang-rewrite): create plugin remove command
2024-12-18 11:32:00 -05:00
Trevor Brown
9097696a4f
feat(golang-rewrite): create Makefile
...
* Address Go linter warnings
* Fix Github workflow
2024-12-18 11:32:00 -05:00
Trevor Brown
4741147821
Merge pull request #29 from asdf-vm/tb/plugin-list-command
...
feat(golang-rewrite): create plugin list command
2024-12-18 11:32:00 -05:00
Trevor Brown
2b02f51fa1
feat(golang-rewrite): create plugin remove command
...
* Simplify BATS test Golang code
* Update plugin add test to new command format
* Correctly set `ASDF_DATA_DIR` for BATS tests
* Rename `PluginAdd` function to `Add`
* Create `plugin.Remove` function
* Make plugin remove command invoke `plugin.Remove` function
2024-12-18 11:32:00 -05:00
Trevor Brown
b49e01beee
Merge pull request #28 from asdf-vm/tb/plugin-add-command-2
...
feat(golang-rewrite): create pluginAddCommand function for plugin add command action
2024-12-18 11:32:00 -05:00
Trevor Brown
ad0907a74d
feat(golang-rewrite): create plugin list command
...
* remove underscores from function names (addresses warnings from revive linter)
* create installMockPluginRepo function
* implement plugin list command
2024-12-18 11:32:00 -05:00
Trevor Brown
43f20587b5
Merge pull request #26 from asdf-vm/tb/plugin-add-command
...
feat(golang-rewrite): PluginAdd function
2024-12-18 11:32:00 -05:00
Trevor Brown
26b91aa828
feat(golang-rewrite): create pluginAddCommand function for plugin add command action
2024-12-18 11:32:00 -05:00
Trevor Brown
f9e25b06fb
Merge pull request #25 from asdf-vm/tb/plugin-command-placeholders
...
feat(golang-rewrite): add placeholders for plugin subcommands
2024-12-18 11:32:00 -05:00
Trevor Brown
15e1f06f37
feat(golang-rewrite): PluginAdd function
...
* Add go-git as a dependency
* Remove plugins dir from gitignore
* Move config code to config package
* Create validatePluginName function
* Create PluginDirectory function
* Create PluginExists function
* Implement PluginAdd function
* Add testify as a dependency
* Write test for PluginAdd happy path
2024-12-18 11:32:00 -05:00
Trevor Brown
faa56e4eb2
Merge pull request #24 from asdf-vm/tb/config-api
...
feat(golang-rewrite): add config methods
2024-12-18 11:32:00 -05:00
Trevor Brown
b40beb6039
feat(golang-rewrite): add placeholders for plugin subcommands
...
* Switch from cobra to urfave/cli
* Create placeholder plugin command structs
2024-12-18 11:32:00 -05:00
Trevor Brown
60207d8a6e
Merge pull request #16 from asdf-vm/dependabot/github_actions/actions/checkout-4
...
chore(deps): bump actions/checkout from 3 to 4
2024-12-18 11:32:00 -05:00
Trevor Brown
8ad3472abc
feat(golang-rewrite): add config methods
...
* Create PluginRepoCheckDuration struct to represent config value
* Make some functions private
* write basic tests for Config methods
* Add Loaded field to Settings struct
* Define constants for config default values
2024-12-18 11:32:00 -05:00
Trevor Brown
6b5f3624c0
Merge pull request #23 from asdf-vm/tb/setup-config
...
feat(golang-rewrite): create settings and config structs for loading config
2024-12-18 11:32:00 -05:00
dependabot[bot]
57f2c97f86
chore(deps): bump actions/checkout from 3 to 4
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-12-18 11:32:00 -05:00
Trevor Brown
f0cb04c91a
Merge pull request #22 from asdf-vm/tb/workflow-fix
...
fix(golang-rewrite): update detect-changes logic for Golang tests
2024-12-18 11:32:00 -05:00
Trevor Brown
07b5813566
feat(golang-rewrite): create settings and config structs for loading config
...
* rename commands package to cmd
* add go-ini as a dependency
* write code to parse asdfrc file into Settings struct
* add go-envconfig as a dependency
* add go-homedir as a dependency
* implement first version of LoadConfig function to load environment variables into Config struct
2024-12-18 11:32:00 -05:00
Trevor Brown
e19fb9e276
Merge pull request #21 from asdf-vm/tb/cli-arg-parsing
...
feat(golang-rewrite): setup Cobra for command line interface
2024-12-18 11:32:00 -05:00
Trevor Brown
88af4eea00
fix(golang-rewrite): update detect-changes logic for Golang tests
2024-12-18 11:32:00 -05:00
Trevor Brown
5105fbf824
Merge pull request #20 from asdf-vm/tb/bats-tests-golang
...
feat(golang-rewrite): run BATS integration tests for Golang implementation
2024-12-18 11:32:00 -05:00
Trevor Brown
d06d71f9f6
feat(golang-rewrite): add boilerplate for cobra CLI commands
2024-12-18 11:32:00 -05:00
Trevor Brown
5db7d3181c
Merge pull request #19 from asdf-vm/tb/attempt-to-fix-goreleaser-3
...
fix(golang-rewrite): attempt to fix goreleaser GitHub workflow
2024-12-18 11:32:00 -05:00
Trevor Brown
163d6b4b46
fix(golang-rewrite): comment out all BATS tests
2024-12-18 11:32:00 -05:00
Trevor Brown
7d5281a8a9
feat(golang-rewrite): add cobra library as dependency
2024-12-18 11:32:00 -05:00
Trevor Brown
04f9c5fe7d
Merge pull request #15 from asdf-vm/tb/attempt-to-fix-goreleaser-2
...
fix(golang-rewrite): try to get goreleaser action to generate snapsho…
2024-12-18 11:32:00 -05:00
Trevor Brown
1b3c42699a
fix(golang-rewrite): attempt to fix goreleaser GitHub workflow
2024-12-18 11:32:00 -05:00
Trevor Brown
3f17a80fbe
fix(golang-rewrite): fix dependencies script on linux
2024-12-18 11:32:00 -05:00
Trevor Brown
cfc473fb5c
Merge pull request #14 from asdf-vm/tb/attempt-to-fix-goreleaser
...
fix(golang-rewrite): try to fix goreleaser
2024-12-18 11:32:00 -05:00