Compare commits
9 Commits
commandHoo
...
v0.5.0
Author | SHA1 | Date | |
---|---|---|---|
291a954e9c | |||
e43eecf383 | |||
ea676fe0da | |||
e73bd9ff3b | |||
fd9426181f | |||
c25edc5d78 | |||
aebfbda64e | |||
5fe0629b0f | |||
7d6acd77b5 |
@ -1,3 +0,0 @@
|
||||
kind: Added
|
||||
body: Lists config can now go in a file. See docs for more information.
|
||||
time: 2024-08-28T14:27:30.427754114-05:00
|
@ -1,3 +0,0 @@
|
||||
kind: Added
|
||||
body: 'new commands.[name].type: script. Works just like scriptFile, but can take arguments.'
|
||||
time: 2024-10-08T22:37:33.664140846-05:00
|
@ -1,3 +0,0 @@
|
||||
kind: Added
|
||||
body: Hooks for Commands.[name]. Error, success, and final. [#12]
|
||||
time: 2024-11-14T21:01:48.823426401-06:00
|
@ -1,3 +0,0 @@
|
||||
kind: Changed
|
||||
body: GetKnownHosts is now a method of Host
|
||||
time: 2024-05-14T19:58:17.516072381-05:00
|
@ -1,3 +0,0 @@
|
||||
kind: Fixed
|
||||
body: make command logger be used for errors, not just when running the command
|
||||
time: 2024-11-14T21:13:06.404134926-06:00
|
9
.changes/v0.5.0.md
Normal file
9
.changes/v0.5.0.md
Normal file
@ -0,0 +1,9 @@
|
||||
## v0.5.0 - 2024-11-19
|
||||
### Added
|
||||
* Lists can now go in a file. See docs for more information.
|
||||
* commands.[name].type: script now opens `scriptEnvFile`.
|
||||
* Hooks for Commands.[name]. Error, success, and final. [#12]
|
||||
### Changed
|
||||
* GetKnownHosts is now a method of Host
|
||||
### Fixed
|
||||
* make command logger be used for errors, not just when running the command
|
@ -1,3 +1,4 @@
|
||||
version: 2
|
||||
before:
|
||||
hooks:
|
||||
# You may remove this if you don't use go modules.
|
||||
@ -31,9 +32,9 @@ archives:
|
||||
checksum:
|
||||
name_template: 'checksums.txt'
|
||||
snapshot:
|
||||
name_template: "{{ incpatch .Version }}-next"
|
||||
version_template: "{{ incpatch .Version }}-next"
|
||||
changelog:
|
||||
skip: false
|
||||
disable: false
|
||||
|
||||
gitea_urls:
|
||||
api: https://git.andrewnw.xyz/api/v1
|
||||
|
@ -1,5 +1,6 @@
|
||||
# This is an example .goreleaser.yml file with some sensible defaults.
|
||||
# Make sure to check the documentation at https://goreleaser.com
|
||||
version: 2
|
||||
before:
|
||||
hooks:
|
||||
# You may remove this if you don't use go modules.
|
||||
@ -32,7 +33,7 @@ archives:
|
||||
checksum:
|
||||
name_template: 'checksums.txt'
|
||||
snapshot:
|
||||
name_template: "{{ incpatch .Version }}-next"
|
||||
version_template: "{{ incpatch .Version }}-next"
|
||||
changelog:
|
||||
sort: asc
|
||||
filters:
|
||||
|
@ -7,7 +7,7 @@ import (
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
const versionStr = "0.4.0"
|
||||
const versionStr = "0.5.0"
|
||||
|
||||
var (
|
||||
versionCmd = &cobra.Command{
|
||||
|
@ -110,6 +110,7 @@ Usage:
|
||||
backy list [--list=list1,list2,... | -l list1, list2,...] [ -cmd cmd1 cmd2 cmd3...] [flags]
|
||||
|
||||
Flags:
|
||||
-c, --cmds strings Accepts comma-separated names of commands to list.
|
||||
-h, --help help for list
|
||||
-l, --lists strings Accepts comma-separated names of command lists to list.
|
||||
|
||||
|
@ -9,6 +9,11 @@ Command lists are for executing commands in sequence and getting notifications f
|
||||
|
||||
The top-level object key can be anything you want but not the same as another.
|
||||
|
||||
Lists can go in a separate file. Command lists should be in a separate file if:
|
||||
|
||||
1. key 'cmd-lists.file' is found
|
||||
2. hosts.yml or hosts.yaml is found in the same directory as the backy config file
|
||||
|
||||
```yaml
|
||||
test2:
|
||||
name: test2
|
||||
@ -51,7 +56,7 @@ An array of notification IDs to use on success and failure. Must match any of th
|
||||
|
||||
### Name
|
||||
|
||||
Name is optional for logging. If name is not defined, name will be the object's map key.
|
||||
Name is optional. If name is not defined, name will be the object's map key.
|
||||
|
||||
### Cron mode
|
||||
|
||||
|
@ -20,6 +20,13 @@ commands:
|
||||
# if host is not defined, command will be run locally
|
||||
# The host has to be defined in either the config file or the SSH Config files
|
||||
host: some-host
|
||||
hooks
|
||||
error:
|
||||
- some-other-command-when-failing
|
||||
success:
|
||||
- success-command
|
||||
final:
|
||||
- final-command
|
||||
backup-docker-container-script:
|
||||
cmd: /path/to/local/script
|
||||
# script file is input as stdin to SSH
|
||||
@ -41,6 +48,7 @@ Values available for this section:
|
||||
| `host` | If not specified, the command will execute locally. | `string` | no |
|
||||
| `scriptEnvFile` | When type is `scriptFile`, the script is appended to this file. | `string` | no |
|
||||
| `shell` | Only applicable when host is not specified | `string` | no |
|
||||
| `hooks` | Hooks are used at the end of the individual command. Must be another command. | `[]string` | no |
|
||||
|
||||
#### cmd
|
||||
|
||||
@ -93,9 +101,9 @@ Make sure to escape any shell input.
|
||||
|
||||
Path to a file.
|
||||
|
||||
When type is `scriptFile`, the script is appended to this file.
|
||||
When type is specified, the script is appended to this file.
|
||||
|
||||
This is useful for specifiing environment variables or other things so they don't have to be included in the script.
|
||||
This is useful for specifying environment variables or other things so they don't have to be included in the script.
|
||||
|
||||
### type
|
||||
|
||||
@ -116,3 +124,23 @@ For now, the variables have to be defined in an `.env` file in the same director
|
||||
If using it with host specified, the SSH server has to be configured to accept those env variables.
|
||||
|
||||
If the command is run locally, the OS's environment is added.
|
||||
|
||||
### hooks
|
||||
|
||||
Hooks are run after the command is run.
|
||||
|
||||
Errors are run if the command errors, success if it returns no error. Final hooks are run regardless of error condition.
|
||||
|
||||
Values for hooks are as follows:
|
||||
|
||||
```yaml
|
||||
command:
|
||||
hook:
|
||||
# these commands are defined elsewhere in the file
|
||||
error:
|
||||
- errcommand
|
||||
success:
|
||||
- successcommand
|
||||
final:
|
||||
- donecommand
|
||||
```
|
Reference in New Issue
Block a user