A Concourse resource for RSS feeds
10M+
Concourse resource for RSS feeds. See the example folder for a pipeline that sends a Slack notification when a new Postgres release is available.
resource_types:
- name: rss-resource
type: registry-image
source:
repository: suhlig/concourse-rss-resource
tag: latest
url: Required. The URL of the feed. Anything that can be parsed by Ruby's RSS gem should be good.check: Extract items from the feedThe resource will fetch the feed specified in url and will version items by their pubDate attribute.
Example
As of writing this README, the PostgreSQL versions feed has a number of items with a pubDate of "Thu, 27 Oct 2016 00:00:00 +0000" (9.6.1, 9.5.5, 9.4.10, 9.3.15, 9.2.19, 9.1.24, and 9.0.23), of which 9.6.1 is the first and is being returned from check.
in: Fetch an item from the feedThe resource will select the first item of the feed that has the requested pubDate. For each attribute of the that item, it writes the attribute value to a file into the destination directory.
Example
Asked for the version with a pubDate of "Thu, 27 Oct 2016 00:00:00 +0000" on in, the resource will write the following files to the destination directory:
| File Name | Content |
|---|---|
title | 9.6.1 |
link | https://www.postgresql.org/docs/9.6/static/release-9-6-1.html |
description | 9.6.1 is the latest release in the 9.6 series. |
pubDate | Thu, 27 Oct 2016 00:00:00 +0000 |
guid | https://www.postgresql.org/docs/9.6/static/release-9-6-1.html |
You can then read these files in a task and, for example, construct a Slack notification saying which new PostgreSQL version is available.
out: Not implementedThere is no output from this resource.
bundle install
Tests assume you have a running docker daemon:
bundle exec rake
After a git push to the master branch, if the build was successful, Travis automatically pushes an updated docker image.
Content type
Image
Digest
sha256:59420c45a…
Size
152.6 MB
Last updated
2 days ago
docker pull suhlig/concourse-rss-resource