'Deploy Palantir Foundry integrations to cloud platforms with secrets
Scanned 9/2/2026
Install to Claude Code
npx -y skills add jeremylongshore/tons-of-skills-marketplace --skill palantir-deploy-integration --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Palantir Deploy Integration?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jeremylongshore-palantir-deploy-integration-3d8a666e)More formats (shields.io, HTML) on the badges page.
---
name: palantir-deploy-integration
description: 'Deploy Palantir Foundry integrations to cloud platforms with secrets
management.
Use when deploying Foundry-powered applications to production,
configuring platform-specific secrets, or setting up deployment pipelines.
Trigger with phrases like "deploy palantir", "foundry deploy",
"palantir production deploy", "foundry Cloud Run".
'
allowed-tools: Read, Write, Edit, Bash(gcloud:*), Bash(docker:*)
version: 1.5.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- palantir
- foundry
- deployment
- cloud
compatibility: Designed for Claude Code
---
# Palantir Deploy Integration
## Overview
Deploy Foundry-integrated applications to cloud platforms (GCP Cloud Run, AWS Lambda, Docker) with proper secrets management and health checks.
## Prerequisites
- Passing CI tests: `palantir-ci-integration`
- Production OAuth2 credentials from Developer Console
- Cloud platform CLI configured (gcloud, aws, etc.)
## Instructions
### Step 1: Dockerfile
```dockerfile
FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY src/ ./src/
EXPOSE 8080
CMD ["uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8080"]
```
### Step 2: Deploy to Google Cloud Run
```bash
set -euo pipefail
PROJECT_ID=$(gcloud config get-value project)
SERVICE_NAME="foundry-integration"
REGION="us-central1"
# Build and push container
gcloud builds submit --tag "gcr.io/$PROJECT_ID/$SERVICE_NAME"
# Deploy with secrets from Secret Manager
gcloud run deploy "$SERVICE_NAME" \
--image "gcr.io/$PROJECT_ID/$SERVICE_NAME" \
--region "$REGION" \
--set-secrets "FOUNDRY_HOSTNAME=foundry-hostname:latest" \
--set-secrets "FOUNDRY_CLIENT_ID=foundry-client-id:latest" \
--set-secrets "FOUNDRY_CLIENT_SECRET=foundry-client-secret:latest" \
--min-instances 1 \
--max-instances 10 \
--timeout 60 \
--allow-unauthenticated
```
### Step 3: Health Check Endpoint
```python
# src/main.py
from fastapi import FastAPI
import foundry, os
app = FastAPI()
@app.get("/health")
async def health():
try:
client = get_foundry_client()
list(client.ontologies.Ontology.list())
return {"status": "healthy", "foundry": "connected"}
except Exception as e:
return {"status": "degraded", "foundry": str(e)}, 503
```
### Step 4: Environment-Specific Configuration
```python
# src/config.py
import os
from dataclasses import dataclass
@dataclass
class FoundryConfig:
hostname: str
client_id: str
client_secret: str
scopes: list[str]
@classmethod
def from_env(cls) -> "FoundryConfig":
env = os.environ.get("ENVIRONMENT", "development")
scopes_map = {
"development": ["api:read-data"],
"staging": ["api:read-data", "api:write-data"],
"production": ["api:read-data", "api:write-data", "api:ontology-read"],
}
return cls(
hostname=os.environ["FOUNDRY_HOSTNAME"],
client_id=os.environ["FOUNDRY_CLIENT_ID"],
client_secret=os.environ["FOUNDRY_CLIENT_SECRET"],
scopes=scopes_map.get(env, ["api:read-data"]),
)
```
## Output
- Containerized Foundry integration deployed to cloud platform
- Secrets injected via cloud secrets manager
- Health check endpoint verifying Foundry connectivity
- Environment-specific scope configuration
## Error Handling
| Issue | Cause | Fix |
|-------|-------|-----|
| Container fails to start | Missing env vars | Verify all secrets are mounted |
| Health check fails | Foundry unreachable | Check VPC/firewall rules |
| Cold start timeout | SDK initialization slow | Set min-instances to 1 |
| Secret rotation breaks app | Old secret revoked | Deploy new secret before revoking old |
## Resources
- [Cloud Run Documentation](https://cloud.google.com/run/docs)
- [Foundry Authentication](https://www.palantir.com/docs/foundry/api/general/overview/authentication)
## Next Steps
For observability setup, see `palantir-observability`.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!