mirror of https://github.com/zulip/zulip.git
integrations/perforce: Migrate docs to Markdown.
This commit is contained in:
parent
ed388ed320
commit
4ad951f256
|
@ -1,71 +0,0 @@
|
||||||
<p>
|
|
||||||
Zulip supports integration with Perforce as a
|
|
||||||
<a href="http://www.perforce.com/perforce/doc.current/manuals/p4sag/chapter.scripting.html">trigger</a>
|
|
||||||
that fires once a changelist is submitted and committed. To do this:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>
|
|
||||||
Download and install our <a href="/api">Python bindings</a> on the
|
|
||||||
server that hosts your Perforce depot. The Perforce trigger will be
|
|
||||||
installed to a location like
|
|
||||||
<code>/usr/local/share/zulip/integrations/perforce</code>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Open <code>integrations/perforce/zulip_perforce_config.py</code> in
|
|
||||||
your favorite editor, change the <code>ZULIP_USER</code> and
|
|
||||||
<code>ZULIP_API_KEY</code> variables at the top of the file to the
|
|
||||||
credentials for the bot you'd like to use for this integration.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>You should also change <code>ZULIP_SITE</code> to {{ external_api_path_subdomain }}</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
If you have a P4Web viewer set up, you may change <code>P4_WEB</code>
|
|
||||||
to point at the base URL of the server. If this is configured, then
|
|
||||||
the changelist number of each commit will be converted to a hyperlink
|
|
||||||
that displays the commit details on P4Web.
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
Edit your
|
|
||||||
<a href="http://www.perforce.com/perforce/doc.current/manuals/p4sag/chapter.scripting.html#d0e14583">trigger table</a>
|
|
||||||
with <code>p4 triggers</code> and add an entry something like the
|
|
||||||
following:
|
|
||||||
|
|
||||||
<pre>notify_zulip change-commit //depot/... "/usr/local/share/zulip/integrations/perforce/zulip_change-commit.py %change% %changeroot%"</pre>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>By default, this hook will send to streams of the form
|
|
||||||
<code>depot_subdirectory-commits</code>. So, a changelist that modifies
|
|
||||||
files in <code>//depot/foo/bar/baz</code> will result in a message to
|
|
||||||
stream <code>foo-commits</code>. Messages about changelists that modify
|
|
||||||
files in the depot root or files in multiple direct subdirectories of
|
|
||||||
the depot root will be sent to <code>depot-commits</code>. If you'd
|
|
||||||
prefer different behavior, such as all commits across your depot going
|
|
||||||
to one stream, change it now in <code>zulip_perforce_config.py</code>.
|
|
||||||
Make sure that everyone interested in getting these post-commit Zulips
|
|
||||||
is subscribed to the relevant streams!
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
By default, this hook will send a message to Zulip even if the
|
|
||||||
destination stream does not yet exist. Messages to nonexistent
|
|
||||||
streams prompt the Zulip Notification Bot to inform the bot's
|
|
||||||
owner by private message that they may wish to create the stream.
|
|
||||||
If this behaviour is undesirable, for example with a large and busy
|
|
||||||
Perforce server, change the <code>ZULIP_IGNORE_MISSING_STREAM</code>
|
|
||||||
variable in <code>zulip_perforce_config.py</code> to <code>True</code>.
|
|
||||||
This will change the hook's behaviour to first check whether the
|
|
||||||
destination stream exists and silently drop messages if it does not.
|
|
||||||
</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<b>Congratulations! You're done!</b><br/> When you commit to your
|
|
||||||
Perforce depot the team can see updates in real time in
|
|
||||||
Zulip:
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<img class="screenshot" src="/static/images/integrations/perforce/001.png"/>
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
Zulip supports integration with Perforce as a [trigger][1]
|
||||||
|
that fires once a changelist is submitted and committed.
|
||||||
|
To do this:
|
||||||
|
|
||||||
|
[1]: http://www.perforce.com/perforce/doc.current/manuals/p4sag/chapter.scripting.html
|
||||||
|
|
||||||
|
{!download-python-bindings.md!}
|
||||||
|
|
||||||
|
The Perforce trigger will be installed to a location like
|
||||||
|
`/usr/local/share/zulip/integrations/perforce`.
|
||||||
|
|
||||||
|
{!change-zulip-config-file.md!}
|
||||||
|
|
||||||
|
If you have a P4Web viewer set up, you may change `P4_WEB`
|
||||||
|
to point at the base URL of the server. If this is configured,
|
||||||
|
then the changelist number of each commit will be converted to
|
||||||
|
a hyperlink that displays the commit details on P4Web.
|
||||||
|
|
||||||
|
Edit your [trigger table][2] with `p4 triggers` and add an entry
|
||||||
|
something like the following:
|
||||||
|
|
||||||
|
notify_zulip change-commit //depot/... "/usr/local/share/zulip/integrations/perforce/zulip_change-commit.py %change% %changeroot%"
|
||||||
|
|
||||||
|
[2]: http://www.perforce.com/perforce/doc.current/manuals/p4sag/chapter.scripting.html#d0e14583
|
||||||
|
|
||||||
|
By default, this hook will send to streams of the form
|
||||||
|
`depot_subdirectory-commits`. So, a changelist that modifies
|
||||||
|
files in `//depot/foo/bar/baz` will result in a message to
|
||||||
|
stream `foo-commits`. Messages about changelists that modify
|
||||||
|
files in the depot root or files in multiple direct subdirectories
|
||||||
|
of the depot root will be sent to `depot-commits`.
|
||||||
|
If you'd prefer different behavior, such as all commits across your
|
||||||
|
depot going to one stream, change it now in `zulip_perforce_config.py`.
|
||||||
|
Make sure that everyone interested in getting these post-commit Zulips
|
||||||
|
is subscribed to the relevant streams!
|
||||||
|
|
||||||
|
By default, this hook will send a message to Zulip even if the
|
||||||
|
destination stream does not yet exist. Messages to nonexistent
|
||||||
|
streams prompt the Zulip Notification Bot to inform the bot's
|
||||||
|
owner by private message that they may wish to create the stream.
|
||||||
|
If this behaviour is undesirable, for example with a large and busy
|
||||||
|
Perforce server, change the `ZULIP_IGNORE_MISSING_STREAM`
|
||||||
|
variable in `zulip_perforce_config.py` to `True`.
|
||||||
|
This will change the hook's behaviour to first check whether the
|
||||||
|
destination stream exists and silently drop messages if it does not.
|
||||||
|
|
||||||
|
{!congrats.md!}
|
||||||
|
|
||||||
|
![](/static/images/integrations/perforce/001.png)
|
|
@ -458,6 +458,7 @@ def build_custom_checkers(by_lang):
|
||||||
"README.md",
|
"README.md",
|
||||||
"zerver/webhooks/helloworld/doc.md",
|
"zerver/webhooks/helloworld/doc.md",
|
||||||
"zerver/webhooks/trello/doc.md",
|
"zerver/webhooks/trello/doc.md",
|
||||||
|
"templates/zerver/integrations/perforce.md",
|
||||||
}
|
}
|
||||||
for fn in by_lang['md']:
|
for fn in by_lang['md']:
|
||||||
max_length = None
|
max_length = None
|
||||||
|
|
|
@ -295,7 +295,7 @@ INTEGRATIONS = {
|
||||||
doc='zerver/integrations/openshift.md',
|
doc='zerver/integrations/openshift.md',
|
||||||
stream_name='deployments',
|
stream_name='deployments',
|
||||||
),
|
),
|
||||||
'perforce': Integration('perforce', 'perforce', doc='zerver/integrations/perforce.html'),
|
'perforce': Integration('perforce', 'perforce', doc='zerver/integrations/perforce.md'),
|
||||||
'phabricator': Integration('phabricator', 'phabricator', doc='zerver/integrations/phabricator.md'),
|
'phabricator': Integration('phabricator', 'phabricator', doc='zerver/integrations/phabricator.md'),
|
||||||
'puppet': Integration('puppet', 'puppet', doc='zerver/integrations/puppet.md'),
|
'puppet': Integration('puppet', 'puppet', doc='zerver/integrations/puppet.md'),
|
||||||
'redmine': Integration('redmine', 'redmine', doc='zerver/integrations/redmine.md'),
|
'redmine': Integration('redmine', 'redmine', doc='zerver/integrations/redmine.md'),
|
||||||
|
|
Loading…
Reference in New Issue