Mercurial > projects > relmon
comparison relmon_watchlist.4.xml @ 4:f28486666a4f
Add manpages for relmon and relmon_watchlist
author | Guido Berhoerster <guido+relmon@berhoerster.name> |
---|---|
date | Fri, 24 Oct 2014 22:44:39 +0200 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
3:6d87242c537e | 4:f28486666a4f |
---|---|
1 <?xml version="1.0"?> | |
2 <!-- | |
3 | |
4 Copyright (C) 2014 Guido Berhoerster <guido+relmon@berhoerster.name> | |
5 | |
6 Permission is hereby granted, free of charge, to any person obtaining | |
7 a copy of this software and associated documentation files (the | |
8 "Software"), to deal in the Software without restriction, including | |
9 without limitation the rights to use, copy, modify, merge, publish, | |
10 distribute, sublicense, and/or sell copies of the Software, and to | |
11 permit persons to whom the Software is furnished to do so, subject to | |
12 the following conditions: | |
13 | |
14 The above copyright notice and this permission notice shall be included | |
15 in all copies or substantial portions of the Software. | |
16 | |
17 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | |
18 EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | |
19 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | |
20 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY | |
21 CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | |
22 TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | |
23 SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | |
24 | |
25 --> | |
26 <refentry xmlns="http://docbook.org/ns/docbook" xml:lang="en"> | |
27 <info> | |
28 <author> | |
29 <personname> | |
30 <firstname>Guido</firstname> | |
31 <surname>Berhoerster</surname> | |
32 </personname> | |
33 <email>guido+relmon@berhoerster.name</email> | |
34 <personblurb/> | |
35 </author> | |
36 <date>24 October, 2014</date> | |
37 </info> | |
38 <refmeta> | |
39 <refentrytitle>relmon_watchlist</refentrytitle> | |
40 <manvolnum>4</manvolnum> | |
41 <refmiscinfo class="source"/> | |
42 <refmiscinfo class="version"/> | |
43 <refmiscinfo class="manual">File Formats</refmiscinfo> | |
44 </refmeta> | |
45 <refnamediv> | |
46 <refname>relmon_watchlist</refname> | |
47 <refpurpose>watchlist for software projects monitored by | |
48 <citerefentry><refentrytitle>relmon</refentrytitle><manvolnum>1</manvolnum></citerefentry></refpurpose> | |
49 </refnamediv> | |
50 <refsynopsisdiv> | |
51 <para><replaceable>relmon_watchlist</replaceable></para> | |
52 </refsynopsisdiv> | |
53 <refsect1> | |
54 <title>Description</title> | |
55 <para>A <replaceable>relmon_watchlist</replaceable> consists of entries for | |
56 each monitored software projects which control how | |
57 <command>relmon</command> crawls websites and detects new | |
58 releases.</para> | |
59 <para>Each line is either an entry or a comment, lines containing only | |
60 whitespace are ignored. A comment starts with a leading | |
61 <literal>#</literal>.</para> | |
62 <para>An entry consists of three or more fields which are seperated by | |
63 whitespace. The first field contains the name of the project which must | |
64 be unique within the watchlist. The second field contains the base URL | |
65 which is used as the starting point for crawling and must be a valid URL. | |
66 Any fields between the second and the last but one field contain advanced | |
67 regular expressions as described in | |
68 <citerefentry><refentrytitle>re_syntax</refentrytitle> | |
69 <manvolnum>n</manvolnum></citerefentry> for matching the URLs of links | |
70 to follow. All patterns are implicitly anchored to the end of the | |
71 complete URL. The last field is the version-matching regular expression | |
72 which matches URLs of links to distribution files and must contain | |
73 exactly one reporting subexpression for extracting the version | |
74 number.</para> | |
75 <para>When updating the version information for a project | |
76 <command>relmon</command> starts with retrieving the document or feed | |
77 associated with the base URL. In case there are one or more fields before | |
78 the last version-matching field, relmon will retrieve all linked | |
79 documents or feeds whose URLs are matched by the regular expression | |
80 specified in the first field after the base URL. This process is then | |
81 repeated, that is documents or feeds linked from the documents or feeds | |
82 retrieved in the previous step are retrieved if the associated URLs match | |
83 the regular expression in the subsequent field and so on, until the last | |
84 version-matching field is reached. Finally, the version-matching regular | |
85 expression specified in the last field is used to match any URLs of | |
86 distribution files linked from the documents or feeds retrieved in the | |
87 previous step and the version numbers are extracted.</para> | |
88 </refsect1> | |
89 <refsect1> | |
90 <title>Examples</title> | |
91 <example> | |
92 <title>An entry for a project which publishes distribution | |
93 files on its homepage</title> | |
94 <para>The following example is an entry for a project named | |
95 <application class="software">foo</application> which has a homepage at | |
96 <uri>http://example.org/foo/</uri> with direct links to the distribution | |
97 files, e.g. at | |
98 <uri>http://example.org/foo/foo-1.0.tar.gz</uri>:</para> | |
99 <programlisting> | |
100 foo http://example.org/foo/ /foo/foo-([\d.]+)\.tar\.gz | |
101 </programlisting> | |
102 </example> | |
103 <example> | |
104 <title>An entry for a project which publishes distribution files of | |
105 new releases through an Atom feed</title> | |
106 <para>The following example is an entry for a project named | |
107 <application class="software">bar</application> which publishes an | |
108 Atom feed at <uri>https://example.com/news.xml</uri> which contains | |
109 links to the distribution files on another host, e.g. at | |
110 <uri>http://archive.example.com/bar-1.0.tar.gz</uri>:</para> | |
111 <programlisting> | |
112 bar https://example.com/news.xml /bar-([\d.]+)\.tar\.gz | |
113 </programlisting> | |
114 </example> | |
115 <example> | |
116 <title>An entry for a project which publishes distribution files on a | |
117 file hosting website on multiple subpages</title> | |
118 <para>The following example is an entry for a project named | |
119 <application class="software">baz</application> which links to the | |
120 actual the distribution files, e.g. at | |
121 <uri>http://example.net/projects/baz/1.0/baz-1.0.tar.gz</uri>, | |
122 from several versioned subpages, e.g. at | |
123 <uri>http://example.net/projects/baz/1.0/</uri> and | |
124 <uri>http://example.net/projects/baz/1.1/</uri>, which are linked from | |
125 a common page under the URL | |
126 <uri>http://example.net/projects/baz/</uri>:</para> | |
127 <programlisting> | |
128 baz http://example.net/projects/baz/ /baz/[\d.]+/ /baz-([\d.]+)\.tar\.gz | |
129 </programlisting> | |
130 </example> | |
131 </refsect1> | |
132 <refsect1> | |
133 <title>See Also</title> | |
134 <para><citerefentry><refentrytitle>relmon</refentrytitle> | |
135 <manvolnum>1</manvolnum></citerefentry>, | |
136 <citerefentry><refentrytitle>regex</refentrytitle> | |
137 <manvolnum>5</manvolnum></citerefentry>, | |
138 <citerefentry><refentrytitle>re_syntax</refentrytitle> | |
139 <manvolnum>n</manvolnum></citerefentry></para> | |
140 </refsect1> | |
141 </refentry> |