Files
2022-02-14 15:21:26 +00:00

69 lines
1.3 KiB
Markdown

# drone-diagnostics
A plugin with cli tools to diagnose issues in a build. Available here `https://hub.docker.com/r/plugins/drone-diagnostics`
## Usage
This plugin has a number of diagnosic tools installed, use the command syntax to access them.
Installed tools:
- ping
- traceroute
- dig
### Example 1
The below example skips the implicit clone step. Then displays the environment variables, then checks access to github. With ping and traceroute.
```yaml
kind: pipeline
name: default
clone:
disable: true
steps:
- name: run plugins/drone-diagnostics plugin
image: plugins/drone-diagnostics
pull: if-not-exists
commands:
- env
- ping www.github.com -w 5
- traceroute -T -p 443 www.github.com
- dig www.apple.com
- echo "end of test"
```
### Example 2
If the ftp upload fails, check connectivity to the ftp server. Useful for flakey networks.
```yaml
kind: pipeline
name: default
steps:
- name: upload to ftp server
image: alpine
commands:
- echo 'ftp rules' # perform some ftp commands
- name: run plugins/drone-diagnostics plugin
image: plugins/drone-diagnostics
pull: if-not-exists
commands:
- ping ftp.server
- echo "end of test"
when:
status:
- failure
```
## Building
Build the plugin image:
```text
docker build -t plugins/drone-diagnostics -f docker/Dockerfile .
```