A Leiningen plugin that lists all the :url
s contained in your dependency graph that you can subscribe to via RSS (namely: GitHub ones), emitting Slack-friendly subscription code.
Slack features an official RSS client.
Add
[lein-subscribable-urls "0.1.0-alpha1"]
to the :plugins
vector of your :user
profile in ~/.lein/profiles.clj
.
Not compatible with Leiningen 1.x.
Run lein subscribable-urls :format {feed,curl} :recursive {true,false}
in your project directory:
$ lein subscribable-urls :format feed :recursive true
/feed https://github.com/AvisoNovate/pretty/releases.atom
/feed https://github.com/FasterXML/jackson-core/releases.atom
/feed https://github.com/bhb/expound/releases.atom
# (more...)
$ lein subscribable-urls :format curl :recursive true
curl -X POST "https://slack.com/api/chat.command?token=$TOKEN&channel=$CHANNEL_ID&command=/feed&text=https://github.com/AvisoNovate/pretty/releases.atom&pretty=1"
curl -X POST "https://slack.com/api/chat.command?token=$TOKEN&channel=$CHANNEL_ID&command=/feed&text=https://github.com/FasterXML/jackson-core/releases.atom&pretty=1"
curl -X POST "https://slack.com/api/chat.command?token=$TOKEN&channel=$CHANNEL_ID&command=/feed&text=https://github.com/bhb/expound/releases.atom&pretty=1"
# (more ...)
The :recursive
option controls whether transitive dependencies will be printed.
/feed
output directly, copying into a Slack channel, line by line.curl
output to build a simple Bbash script that executes those curl
invocations sequentially. You are responsible for setting TOKEN
and CHANNEL
beforehand.cd into your "code" dir (which can also be ~
), fire up irb
(the Ruby console), and run:
Dir['*'].select{|f| File.directory?(f) && File.exist?(f + "/project.clj")}.map{|f| `cd #{f}; lein do deps, subscribable-urls :format feed :recursive false`.split("\n") }.flatten(1).uniq.sort.each{|a| puts a}; nil
This project takes lein-licenses as a baseline. It's not a fork since its git history barely helps understanding this project's different purpose.
Copyright © 2012-2017 Phil Hagelberg and contributors Copyright © 2020- Nedap
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0
Can you improve this documentation?Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close