Add example of running Facebook's SAM2 on Modal #15
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# deploys a preview version of the frontend including example changes | |
name: Preview Docs | |
on: | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
build-preview: | |
name: Build and deploy preview | |
runs-on: ubuntu-20.04 | |
env: | |
MODAL_TOKEN_ID: ${{ secrets.MODAL_MODAL_LABS_TOKEN_ID }} | |
MODAL_TOKEN_SECRET: ${{ secrets.MODAL_MODAL_LABS_TOKEN_SECRET }} | |
MODAL_ENVIRONMENT: examples | |
steps: | |
- name: Checkout modal repo | |
uses: actions/checkout@v3 | |
with: | |
repository: modal-labs/modal | |
token: ${{ secrets.GH_PAT }} | |
fetch-depth: 1 | |
path: modal | |
persist-credentials: false | |
- name: Install Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.11" | |
- name: Install base packages | |
shell: bash | |
run: | | |
pip install uv | |
uv pip install --system setuptools wheel | |
- name: Install modal development packages | |
run: | | |
uv pip install --system -r modal/requirements.dev.txt | |
- name: Checkout client repo | |
uses: actions/checkout@v3 | |
with: | |
repository: modal-labs/modal-client | |
token: ${{ secrets.GH_PAT }} | |
path: client | |
fetch-depth: 1 | |
persist-credentials: false | |
- name: Install client repo | |
run: | | |
uv pip install --system -e client | |
- name: Install node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
- name: Install node packages | |
run: npm ci --include=dev | |
working-directory: modal/frontend | |
- name: Compile protos | |
run: | | |
cd client | |
inv protoc type-stubs | |
cd ../modal | |
inv protoc | |
- name: Checkout examples repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 1 | |
path: modal/examples | |
- name: Build and deploy preview | |
id: deploy_preview | |
working-directory: modal | |
run: | | |
export DEPLOYMENT_ID=${GITHUB_SHA::7} | |
inv frontend-preview --skip-update --deployment-id $DEPLOYMENT_ID | tee output.txt | |
DEPLOYMENT_URL=$(cat output.txt | grep "$DEPLOYMENT_ID" | grep "modal.run" | tail -n 1) | |
echo "DEPLOYMENT_URL=$DEPLOYMENT_URL" >> $GITHUB_OUTPUT | |
- name: Post a comment with the preview URL | |
uses: actions/github-script@v6 | |
with: | |
github-token: ${{ secrets.GH_PAT }} | |
script: | | |
const deploymentUrl = `${{ steps.deploy_preview.outputs.DEPLOYMENT_URL }}`; | |
github.rest.issues.createComment({ | |
issue_number: context.issue.number, | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
body: `🚀 The docs preview is ready! Check it out here: ${deploymentUrl}` | |
}); |