forked from openSUSE/obs-service-tar_scm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtar_scm.service.in
162 lines (146 loc) · 6.77 KB
/
tar_scm.service.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
===OBS_ONLY
<service name="obs_scm">
<summary>Create a special OBS archive from a SCM</summary>
<description>This service uses a SCM client to checkout or update from a given repository. Supported are svn, git, hg and bzr. The result will archived in a format which can be stored
incremental by the OBS source server, currently a cpio format. This archive will be extracted again inside of the build root.</description>
===
===TAR_ONLY
<service name="tar_scm">
<summary>Create a tarball from SCM repository</summary>
<description>This service uses a SCM client to checkout or update from a given repository. Supported are svn, git, hg and bzr.</description>
===
<parameter name="scm">
<description>Specify SCM to use.</description>
<allowedvalue>svn</allowedvalue>
<allowedvalue>git</allowedvalue>
<allowedvalue>hg</allowedvalue>
<allowedvalue>bzr</allowedvalue>
<required/>
</parameter>
<parameter name="url">
<description>Specify URL to checkout.</description>
<required/>
</parameter>
<parameter name="subdir">
<description>Package just a subdirectory.</description>
</parameter>
<parameter name="version">
<description>Specify version to be used in tarball. Defaults to automatically detected value formatted by versionformat parameter.</description>
</parameter>
<parameter name="versionformat">
<description>
Auto-generate version from checked out source using this format
string. This parameter is used if the 'version' parameter is not
specified.
For git, the value is passed to git log --date=short --pretty=format:...
for the topmost commit, and the output from git is cleaned up to
remove some unhelpful characters. Here are some useful examples of
strings which are expanded, see the git-log documentation for more.
%ct Commit time as a UNIX timestamp, e.g. 1384855776.
This is the default.
%at Author time as a UNIX timestamp, e.g. 1384855776.
%cd Commit date in YYYYMMDD format, e.g. 20131119
%ad Author date in YYYYMMDD format, e.g. 20131119
%h Abbreviated hash, e.g. cc62c54
@PARENT_TAG@ The first tag that is reachable, e.g. v0.2.3
@TAG_OFFSET@ The commit count since @PARENT_TAG@, e.g. 9
For hg, the value is passed to hg log --template=.... See the
hg documentation for more information. The default is '{rev}'
For bzr and svn, '%r' is expanded to the revision, and is the default.
</description>
</parameter>
<parameter name="versionrewrite-pattern">
<description>
Regex used to rewrite the version which is applied post versionformat. For
example, to remove a tag prefix of "v" the regex "v(.*)" could be used.
See the versionrewrite-replacement parameter.
</description>
</parameter>
<parameter name="versionrewrite-replacement">
<description>
Replacement applied to rewrite pattern. Typically backreferences are
useful and as such defaults to \1.
</description>
</parameter>
<parameter name="versionprefix">
<description>Specify a base version as prefix.</description>
</parameter>
<parameter name="match-tag">
<description>
With this parameter you can specifiy a glob pattern to filter relevant
tags in your project e.g. if you use @PARENT_TAG@
</description>
</parameter>
<parameter name="parent-tag">
<description>
This parameter allows overriding the tag that is being used for
computing @TAG_OFFSET@.
</description>
</parameter>
<parameter name="revision">
<description>
Specify revision of source to check out.
When using git, revision may refer to any of the following:
* explicit SHA1: a1b2c3d4....
- the SHA1 must be reachable from a default clone/fetch
(generally, must be reachable from some branch or tag on the
remote).
- set by: git checkout ${SHA1}
* short branch name: "master", "devel" etc.
- set by: git checkout ${branch}
git pull
* explicit ref: refs/heads/master, refs/tags/v1.2.3,
refs/changes/49/11249/1
- set by: git fetch ${url} ${revision}:${revision}
git checkout ${revision}
</description>
</parameter>
<parameter name="filename">
<description>Specify name of package, which is used together with version to determine tarball name.</description>
</parameter>
<parameter name="extension">
<description>Specify suffix name of package, which is used together with filename to determine tarball name.</description>
</parameter>
<parameter name="exclude">
<description>Specify glob pattern to exclude when creating the tarball.</description>
</parameter>
<parameter name="include">
<description>Specify subset of files/subdirectories to pack in the tarball.</description>
</parameter>
<parameter name="extract">
<description>Specify a file/glob to be exported directly. Useful for build descriptions like spec files
which get maintained in the SCM. Can be used multiple times.</description>
</parameter>
<parameter name="package-meta">
<description>Package the metadata of SCM to allow the user or OBS to update after un-tar.</description>
<allowedvalue>yes</allowedvalue>
</parameter>
<parameter name="history-depth">
<description>Obsolete parameter which will be ignored.</description>
</parameter>
<parameter name="submodules">
<description>Specify whether to include git submodules. Default is 'enable'.</description>
<allowedvalue>enable</allowedvalue>
<allowedvalue>master</allowedvalue>
<allowedvalue>disable</allowedvalue>
</parameter>
<parameter name="sslverify">
<description>Specify Whether or not to check server certificate against installed CAs. Default is 'enable'.</description>
<allowedvalue>enable</allowedvalue>
<allowedvalue>disable</allowedvalue>
</parameter>
<parameter name="changesgenerate">
<description>Specify whether to generate changes file entries from SCM commit log since a given parent revision (see changesrevision). Default is 'disable'.</description>
<allowedvalue>enable</allowedvalue>
<allowedvalue>disable</allowedvalue>
</parameter>
<parameter name="changesauthor">
<description>Specify author of the changes file entry to be written. Defaults to first email entry in ~/.oscrc, or "obs-service-tar-scm@invalid" if there is no .oscrc found.</description>
</parameter>
<parameter name="locale">
<description>DEPRECATED - Please use "encoding" instead. Set locale while execution of service</description>
</parameter>
<parameter name="encoding">
<description>Set encoding while execution of service</description>
</parameter>
</service>