# Upgrading PullRequest Proxy

There are two ways to upgrade HackerOne PullRequest Proxy

1. <mark style="background-color:yellow;">**RECOMMENDED**</mark> Configure the PullRequest Proxy installation for auto-upgrade. These can be initiated from the HackerOne Code dashboard.
2. Manual installation. New versions are provided by HackerOne staff as a tarball package.

{% hint style="info" %}
**HackerOne recommends configuring for auto-upgrade so new service features, optimizations are i**mmediately available.
{% endhint %}

### Manual Upgrade

To manually upgrade, you'll first have to stop PullRequest Proxy service from running:

```
systemctl stop pullrequest-proxy
```

Now, go ahead and switch to the `pullrequest` user and install the new package over top of the old one:

```
su pullrequest
cd $HOME
curl <proxy_url> --output - | tar zxvf -
exit
```

Now, a simple `start` for the service should bring in the new version:

```
systemctl start pullrequest-proxy
```

### Auto-Upgrade

Auto-Upgrade is feature included in PullRequest Proxy. It uses the existing environment to manage multiple versions of the proxy software. As such, it's a convenient way for the PullRequest application to upgrade your proxy to the latest release automatically without having to schedule downtime to perform the manual upgrade.

As this feature is enabled by default, most users won't have to perform any action to take advantage of it. However, if you do not want the proxy to upgrade automatically, you may turn this feature off from your organization's status page on <https://app.pullrequest.com>:

<figure><img src="/files/ueTNMCqJYMrILfBaLEVc" alt=""><figcaption></figcaption></figure>

If you decide to disable auto-upgrade, you will still be able to take advantage of its functionality when a new upgrade is available, but it will require you to push the "Start Upgrade" button.

<figure><img src="/files/aXPl7uHq4CGOHdzr9Ndq" alt=""><figcaption></figcaption></figure>

Auto-upgrade is very quick and should have a minimal effect, if any, on your organization's workflow. As such, we recommend that it be enabled. In this way, we can automatically roll out bug fixes and new features to on-premise customers without needing to schedule a maintenance window.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pullrequest.com/on-premise-server/upgrading-the-pullrequest-proxy.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
