Skip to content

Commit

Permalink
Merge branch 'main' of github.com:containrrr/shoutrrr into latest
Browse files Browse the repository at this point in the history
  • Loading branch information
piksel committed Jan 25, 2023
2 parents cbfab40 + a514bf7 commit 25aadd9
Show file tree
Hide file tree
Showing 85 changed files with 2,158 additions and 423 deletions.
14 changes: 14 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: monthly
- package-ecosystem: gomod
directory: "/"
schedule:
interval: monthly
- package-ecosystem: docker
directory: "/"
schedule:
interval: monthly
2 changes: 0 additions & 2 deletions .github/funding.yml

This file was deleted.

9 changes: 7 additions & 2 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,21 @@ on:
- main
- latest

permissions:
contents: write

jobs:
build:
name: Documentation
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v1
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: '3.x'

Expand Down
27 changes: 22 additions & 5 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,36 @@ on:
paths-ignore:
- 'docs/*'

permissions:
contents: read

jobs:
go-versions:
name: Lookup go versions
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.versions.outputs.matrix }}
steps:
- uses: actions/checkout@v3
- uses: arnested/go-version-action@v1
id: versions
build:
name: Build Shoutrrr
runs-on: ubuntu-latest
needs: go-versions
strategy:
matrix:
version: ${{ fromJSON(needs.go-versions.outputs.matrix) }}
steps:
- name: Set up Go 1.13
uses: actions/setup-go@v1
- name: Set up Go ${{ matrix.version }}
uses: actions/setup-go@v3
id: go
with:
go-version: 1.13
go-version: ${{ matrix.version }}
check-latest: true

- name: Check out code
uses: actions/checkout@v1
uses: actions/checkout@v3

- name: Build
run: CGO_ENABLED=0 go build -v .
Expand All @@ -32,6 +49,6 @@ jobs:
run: CGO_ENABLED=0 go test -v -coverprofile=coverage.out -covermode=atomic ./...

- name: Publish coverage
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
2 changes: 2 additions & 0 deletions .github/workflows/post-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ on:
- 'v[0-9]+.[0-9]+.[0-9]+'
- '**/v[0-9]+.[0-9]+.[0-9]+'

permissions: {}

jobs:
build:
name: Renew documentation
Expand Down
53 changes: 39 additions & 14 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,28 @@ on:
tags:
- v*

permissions:
contents: read

jobs:
build:
name: Build Shoutrrr
runs-on: ubuntu-latest
env:
DOCKER_CLI_EXPERIMENTAL: enabled
steps:
- name: Set up Go 1.13
uses: actions/setup-go@v1
- name: Check out code
uses: actions/checkout@v3

- uses: arnested/go-version-action@v1
id: go-version

- name: Set up Go ${{ steps.go-version.outputs.latest }}
uses: actions/setup-go@v3
id: go
with:
go-version: 1.13

- name: Check out code
uses: actions/checkout@v1
go-version: ${{ steps.go-version.outputs.latest }}
check-latest: true

- name: Build
run: CGO_ENABLED=0 go build -v .
Expand All @@ -28,16 +35,17 @@ jobs:
run: CGO_ENABLED=0 go test -v -coverprofile=coverage.out -covermode=atomic ./...

- name: Publish coverage
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}

- name: Install goreleaser
run: |
cd .. && \
wget https://github.com/goreleaser/goreleaser/releases/download/v1.6.3/goreleaser_Linux_x86_64.tar.gz && \
tar -xvf goreleaser_Linux_x86_64.tar.gz && \
./goreleaser -v
- name: Install GoReleaser
uses: goreleaser/goreleaser-action@v4
with:
install-only: true

- name: Show GoReleaser version
run: goreleaser -v

- name: Login to docker hub
uses: azure/docker-login@v1
Expand All @@ -47,7 +55,7 @@ jobs:

- name: Execute goreleaser
run: |
GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }} CGO_ENABLED=0 ../goreleaser --debug --rm-dist
GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }} CGO_ENABLED=0 goreleaser --debug --rm-dist
- name: Enable experimental docker features
run: |
Expand Down Expand Up @@ -126,3 +134,20 @@ jobs:
run: |
docker manifest push containrrr/shoutrrr:${GITHUB_REF/refs\/tags\/v/} && \
docker manifest push containrrr/shoutrrr:latest
snap:
name: Build Shoutrrr snap
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v2
name: Checkout repository
- uses: snapcore/action-build@v1
name: Build snap
id: build
- uses: snapcore/action-publish@v1
name: Release snap
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.STORE_LOGIN }}
with:
snap: ${{ steps.build.outputs.snap }}
release: edge
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
*.so
*.dylib
/shoutrrr/shoutrrr
*.snap

# Test binary, build with `go test -c`
# ---
Expand Down
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,26 @@ Heavily inspired by <a href="https://github.com/caronc/apprise">caronc/apprise</
</div>
<br/><br/>

## Installation

### Using the snap

```bash
$ sudo snap install shoutrrr
```

### Using the Go CLI

```bash
$ go install github.com/containrrr/shoutrrr@latest
```

### From Source

```bash
$ go build -o shoutrrr .
```

## Quick Start

### As a package
Expand Down
14 changes: 14 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Security Policy

## Supported Versions

Shoutrrr v0.x strives to be fully backwards-compatible, and hence only the latest minor will get security updates unless explicitly requested.

| Version | Supported |
| ------- | ------------------ |
| 0.6.x | :white_check_mark: |
| < 0.6 | :x: |

## Reporting a Vulnerability

Vulnerabilities can be disclosed via email to security@containrrr.dev
7 changes: 7 additions & 0 deletions docs/services/ntfy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Ntfy

Upstream docs: https://docs.ntfy.sh/publish/

## URL Format

--8<-- "docs/services/ntfy/config.md"
1 change: 1 addition & 0 deletions docs/services/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ Click on the service for a more thorough explanation. <!-- @formatter:off -->
| [Join](./join.md) | *join://shoutrrr:__`api-key`__@join/?devices=__`device1`__[,__`device2`__, ...][&icon=__`icon`__][&title=__`title`__]* |
| [Mattermost](./mattermost.md) | *mattermost://[__`username`__@]__`mattermost-host`__/__`token`__[/__`channel`__]* |
| [Matrix](./matrix.md) | *matrix://__`username`__:__`password`__@__`host`__:__`port`__/[?rooms=__`!roomID1`__[,__`roomAlias2`__]]* |
| [Ntfy](./ntfy.md) | *ntfy://__`username`__:__`password`__@ntfy.sh/__`topic`__* |
| [OpsGenie](./opsgenie.md) | *opsgenie://__`host`__/token?responders=__`responder1`__[,__`responder2`__]* |
| [Pushbullet](./pushbullet.md) | *pushbullet://__`api-token`__[/__`device`__/#__`channel`__/__`email`__]* |
| [Pushover](./pushover.md) | *pushover://shoutrrr:__`apiToken`__@__`userKey`__/?devices=__`device1`__[,__`device2`__, ...]* |
Expand Down
34 changes: 13 additions & 21 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,26 +1,18 @@
module github.com/containrrr/shoutrrr

go 1.12
go 1.16

require (
github.com/fatih/color v1.10.0
github.com/jarcoal/httpmock v1.0.4
github.com/mattn/go-colorable v0.1.8
github.com/mattn/go-isatty v0.0.12
github.com/mitchellh/mapstructure v1.2.2 // indirect
github.com/nxadm/tail v1.4.6 // indirect
github.com/onsi/ginkgo v1.14.2
github.com/onsi/gomega v1.10.1
github.com/pelletier/go-toml v1.7.0 // indirect
github.com/spf13/afero v1.2.2 // indirect
github.com/spf13/cast v1.3.1 // indirect
github.com/spf13/cobra v1.4.0
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/spf13/viper v1.6.3
github.com/stretchr/testify v1.4.0 // indirect
golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7
golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
golang.org/x/sys v0.0.0-20210113181707-4bcb84eeeb78 // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
gopkg.in/ini.v1 v1.55.0 // indirect
github.com/fatih/color v1.13.0
github.com/jarcoal/httpmock v1.2.0
github.com/mattn/go-colorable v0.1.13
github.com/mattn/go-isatty v0.0.16
github.com/onsi/ginkgo/v2 v2.4.0
github.com/onsi/gomega v1.22.1
github.com/spf13/cobra v1.6.1
github.com/spf13/viper v1.14.0
golang.org/x/net v0.1.0
golang.org/x/oauth2 v0.0.0-20221014153046-6fdb5e3db783
)

exclude golang.org/x/sys v0.1.0
Loading

0 comments on commit 25aadd9

Please sign in to comment.