Skip to content

Commit

Permalink
Add list of Cloud IP addresses for whitelisting and uv.lock (#1193)
Browse files Browse the repository at this point in the history
* Add list of Cloud IP addresses for whitelisting

* uv.lock dependency file

* Typo
  • Loading branch information
sfc-gh-dmatthews authored Nov 29, 2024
1 parent a297f50 commit d1b7050
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -61,13 +61,17 @@ In the above example, `streamlit` is pinned to version `1.24.1`, `pandas` must b

### Other Python package managers

There are other Python package managers in addition to `pip`. If you want to consider alternatives to using a `requirements.txt` file, Community Cloud will look for and use the first dependency file it finds in the following order:
There are other Python package managers in addition to `pip`. If you want to consider alternatives to using a `requirements.txt` file, Community Cloud will use the first dependency file it finds. Community Cloud will search the directory where your entrypoint file is, then it will search the root of your repository. In each location, dependency files are prioritized in the following order:

<table style={{ textAlign: 'center' }}>
<tr>
<th style={{ fontSize: '1.2em' }}> Recognized Filename</th>
<th style={{ fontSize: '1.2em' }}>Python Package Manager</th>
</tr>
<tr>
<td style={{ fontSize: '1em' }}><code>uv.lock</code></td>
<td style={{ fontSize: '1em' }}><a href="https://docs.astral.sh/uv/concepts/projects/sync/" target="_blank">uv</a></td>
</tr>
<tr>
<td style={{ fontSize: '1em' }}><code>Pipfile</code></td>
<td style={{ fontSize: '1em' }}><a href="https://pipenv-fork.readthedocs.io/en/latest/basics.html" target="_blank">pipenv</a></td>
Expand All @@ -78,17 +82,19 @@ There are other Python package managers in addition to `pip`. If you want to con
</tr>
<tr>
<td style={{ fontSize: '1em' }}><code>requirements.txt</code></td>
<td style={{ fontSize: '1em' }}><a href="https://pip.pypa.io/en/stable/user_guide/#requirements-files" target="_blank">pip</a></td>
<td style={{ fontSize: '1em' }}><a href="https://pip.pypa.io/en/stable/user_guide/#requirements-files" target="_blank">pip</a><sup>&dagger;</sup></td>
</tr>
<tr>
<td style={{ fontSize: '1em' }}><code>pyproject.toml</code></td>
<td style={{ fontSize: '1em' }}><a href="https://python-poetry.org/docs/basic-usage/" target="_blank">poetry</a></td>
</tr>
</table>

&dagger; For efficiency, Community Cloud will attempt to process `requirements.txt` with `uv`, but will fall back to `pip` if needed. `uv` is generally faster and more efficient than `pip`.

<Warning>

You should only use one requirements file for your app. If you include more than one (e.g. `requirements.txt` and `Pipfile`), only the first file encountered will be used as described above. Additionally, Streamlit will first look in the directory of your Streamlit app; however, if no requirements file is found, Streamlit will then look at the root of the repo.
You should only use one dependency file for your app. If you include more than one (e.g. `requirements.txt` and `environment.yaml`), only the first file encountered will be used as described above, with any dependency file in your entrypoint file's directory taking precedence over any dependency file in the root of your repository.

</Warning>

Expand Down
31 changes: 31 additions & 0 deletions content/deploy/community-cloud/status-and-limitations.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,37 @@ enableXsrfProtection = true
gatherUsageStats = true
```

## IP addresses

If you need to whitelist IP addresses for a connection, Community Cloud is currently served from the following IP addresses:

<Warning>

These IP addresses may change at any time without notice.

</Warning>

<div style={{ display: "flex", flexWrap: "wrap", flexDirection: "row", alignItems: "start" }}>
<div style={{ width: "150px" }}>35.230.127.150</div>
<div style={{ width: "150px" }}>35.203.151.101</div>
<div style={{ width: "150px" }}>34.19.100.134</div>
<div style={{ width: "150px" }}>34.83.176.217</div>
<div style={{ width: "150px" }}>35.230.58.211</div>
<div style={{ width: "150px" }}>35.203.187.165</div>
<div style={{ width: "150px" }}>35.185.209.55</div>
<div style={{ width: "150px" }}>34.127.88.74</div>
<div style={{ width: "150px" }}>34.127.0.121</div>
<div style={{ width: "150px" }}>35.230.78.192</div>
<div style={{ width: "150px" }}>35.247.110.67</div>
<div style={{ width: "150px" }}>35.197.92.111</div>
<div style={{ width: "150px" }}>34.168.247.159</div>
<div style={{ width: "150px" }}>35.230.56.30</div>
<div style={{ width: "150px" }}>34.127.33.101</div>
<div style={{ width: "150px" }}>35.227.190.87</div>
<div style={{ width: "150px" }}>35.199.156.97</div>
<div style={{ width: "150px" }}>34.82.135.155</div>
</div>

## Other limitations

- When you print something to the Cloud logs, you may need to do a `sys.stdout.flush()` before it shows up.
Expand Down

0 comments on commit d1b7050

Please sign in to comment.