mirror of
https://github.com/hanzoai/sign.git
synced 2026-10-21 01:21:51 +00:00
The repository, Go module and image are named esign
github.com/hanzoai/esign is the module path and ghcr.io/hanzoai/esign the image; links that named the old repository, or the upstream image names the scrub left behind, name hanzoai/esign. The security contact's canonical address is esign.hanzo.ai. Co-authored-by: Hanzo Dev <[email protected]>
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# General Issues
|
||||
Contact: https://github.com/hanzo-sign/hanzo-sign/issues/new?assignees=&labels=bug&projects=&template=bug-report.yml
|
||||
Contact: https://github.com/hanzoai/esign/issues/new?assignees=&labels=bug&projects=&template=bug-report.yml
|
||||
|
||||
# Report critical issues privately to let us take appropriate action before publishing.
|
||||
Contact: mailto:[email protected]
|
||||
Preferred-Languages: en
|
||||
Canonical: https://sign.hanzo.ai/.well-known/security.txt
|
||||
Canonical: https://esign.hanzo.ai/.well-known/security.txt
|
||||
@@ -101,7 +101,7 @@ Postgres. This replaces the standalone esign pod.
|
||||
- `goja/bundle.js` — the ported domain: documents, recipients, fields, the
|
||||
signing flow/state machine, audit trail and completion. Exposes
|
||||
`globalThis.handle({route,method,params,body,tenant})`. It carries LOGIC only.
|
||||
- `embed.go` / `go.mod` — a std-lib-only Go module (`github.com/hanzoai/sign`,
|
||||
- `embed.go` / `go.mod` — a std-lib-only Go module (`github.com/hanzoai/esign`,
|
||||
`Bundle()`) that cloud imports to `go:embed` the bundle.
|
||||
- `goja/README.md` — the host contract. It runs on the reusable
|
||||
`hanzoai/cloud/clients/gojabase` RW-Base host: persistence (`globalThis.__db`,
|
||||
|
||||
@@ -23,9 +23,9 @@
|
||||
|
||||
<p align="center">
|
||||
<a href="https://esign.hanzo.ai/discord"><img src="https://img.shields.io/badge/Discord-esign.hanzo.ai/discord-%235865F2" alt="Join Hanzo eSign on Discord"></a>
|
||||
<a href="https://github.com/hanzoai/esign/stargazers"><img src="https://img.shields.io/github/stars/hanzo-sign/hanzo-sign" alt="Github Stars"></a>
|
||||
<a href="https://github.com/hanzoai/esign/stargazers"><img src="https://img.shields.io/github/stars/hanzoai/esign" alt="Github Stars"></a>
|
||||
<a href="https://github.com/hanzoai/esign/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-AGPLv3-purple" alt="License"></a>
|
||||
<a href="https://github.com/hanzoai/esign/pulse"><img src="https://img.shields.io/github/commit-activity/m/hanzo-sign/hanzo-sign" alt="Commits-per-month"></a>
|
||||
<a href="https://github.com/hanzoai/esign/pulse"><img src="https://img.shields.io/github/commit-activity/m/hanzoai/esign" alt="Commits-per-month"></a>
|
||||
<a href="https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/hanzoai/esign">
|
||||
<img alt="open in devcontainer" src="https://img.shields.io/static/v1?label=Dev%20Containers&message=Enabled&color=blue&logo=visualstudiocode" />
|
||||
</a>
|
||||
@@ -203,10 +203,9 @@ If you're a visual learner and prefer to watch a video walkthrough of setting up
|
||||
|
||||
## Docker
|
||||
|
||||
We provide a Docker container for Hanzo eSign, which is published on both DockerHub and GitHub Container Registry.
|
||||
We provide a Docker container for Hanzo eSign, which is published on the GitHub Container Registry.
|
||||
|
||||
- DockerHub: [https://hub.docker.com/r/hanzo-sign/hanzo-sign](https://hub.docker.com/r/hanzo-sign/hanzo-sign)
|
||||
- GitHub Container Registry: [https://ghcr.io/hanzo-sign/hanzo-sign](https://ghcr.io/hanzo-sign/hanzo-sign)
|
||||
- GitHub Container Registry: [https://ghcr.io/hanzoai/esign](https://github.com/hanzoai/esign/pkgs/container/esign)
|
||||
|
||||
You can pull the Docker image from either of these registries and run it with your preferred container hosting provider.
|
||||
|
||||
|
||||
@@ -35,14 +35,14 @@ Pick the one that fits your needs the best.
|
||||
/>
|
||||
</a>
|
||||
<a href="https://github.com/hanzoai/esign/stargazers">
|
||||
<img src="https://img.shields.io/github/stars/hanzo-sign/hanzo-sign" alt="Github Stars" />
|
||||
<img src="https://img.shields.io/github/stars/hanzoai/esign" alt="Github Stars" />
|
||||
</a>
|
||||
<a href="https://github.com/hanzoai/esign/blob/main/LICENSE">
|
||||
<img src="https://img.shields.io/badge/license-AGPLv3-purple" alt="License" />
|
||||
</a>
|
||||
<a href="https://github.com/hanzoai/esign/pulse">
|
||||
<img
|
||||
src="https://img.shields.io/github/commit-activity/m/hanzo-sign/hanzo-sign"
|
||||
src="https://img.shields.io/github/commit-activity/m/hanzoai/esign"
|
||||
alt="Commits-per-month"
|
||||
/>
|
||||
</a>
|
||||
|
||||
@@ -160,7 +160,7 @@ docker run -d \
|
||||
-v /path/to/certificate.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
-e NEXT_PRIVATE_SIGNING_LOCAL_FILE_PATH=/opt/hanzo-sign/cert.p12 \
|
||||
-e NEXT_PRIVATE_SIGNING_PASSPHRASE="your-certificate-password" \
|
||||
hanzo-sign/hanzo-sign:latest
|
||||
ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
## Using Base64-Encoded Contents
|
||||
|
||||
@@ -35,7 +35,7 @@ Download the production Docker Compose file:
|
||||
|
||||
```bash
|
||||
mkdir hanzo-sign && cd hanzo-sign
|
||||
curl -O https://raw.githubusercontent.com/hanzo-sign/hanzo-sign/release/docker/production/compose.yml
|
||||
curl -O https://raw.githubusercontent.com/hanzoai/esign/release/docker/production/compose.yml
|
||||
```
|
||||
|
||||
Alternatively, clone the full repository:
|
||||
@@ -78,7 +78,7 @@ name: hanzo-sign-production
|
||||
|
||||
services:
|
||||
hanzo-sign:
|
||||
image: hanzo-sign/hanzo-sign:latest
|
||||
image: ghcr.io/hanzoai/esign:latest
|
||||
environment:
|
||||
- BASE_PATH=/opt/hanzo-sign/base/data
|
||||
- DATABASE_URL=file:/opt/hanzo-sign/base/data/_dev/sign.db
|
||||
|
||||
@@ -27,7 +27,7 @@ docker --version
|
||||
## Pulling the Docker Image
|
||||
|
||||
```bash
|
||||
docker pull hanzo-sign/hanzo-sign:latest
|
||||
docker pull ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
### Available Tags
|
||||
@@ -133,7 +133,7 @@ docker run -d \
|
||||
-e NEXT_PRIVATE_SMTP_PASSWORD="your-smtp-password" \
|
||||
-e NEXT_PRIVATE_SMTP_FROM_NAME="Hanzo Sign" \
|
||||
-e NEXT_PRIVATE_SMTP_FROM_ADDRESS="[email protected]" \
|
||||
hanzo-sign/hanzo-sign:latest
|
||||
ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
<Callout type="warn">
|
||||
@@ -193,7 +193,7 @@ docker run -d \
|
||||
--env-file .env \
|
||||
-v hanzo-sign-base:/opt/hanzo-sign/base/data \
|
||||
-v /path/to/cert.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
hanzo-sign/hanzo-sign:latest
|
||||
ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
## Health Checks
|
||||
@@ -218,7 +218,7 @@ docker run -d \
|
||||
--health-timeout=10s \
|
||||
--health-retries=3 \
|
||||
--env-file .env \
|
||||
hanzo-sign/hanzo-sign:latest
|
||||
ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
Check container health status:
|
||||
@@ -238,7 +238,7 @@ To update Hanzo Sign to a new version:
|
||||
### Pull the new image
|
||||
|
||||
```bash
|
||||
docker pull hanzo-sign/hanzo-sign:latest
|
||||
docker pull ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
</Step>
|
||||
@@ -266,7 +266,7 @@ docker run -d \
|
||||
--env-file .env \
|
||||
-v hanzo-sign-base:/opt/hanzo-sign/base/data \
|
||||
-v /path/to/cert.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
hanzo-sign/hanzo-sign:latest
|
||||
ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
</Step>
|
||||
|
||||
@@ -224,7 +224,7 @@ spec:
|
||||
fsGroup: 1001
|
||||
containers:
|
||||
- name: hanzo-sign
|
||||
image: hanzo-sign/hanzo-sign:latest
|
||||
image: ghcr.io/hanzoai/esign:latest
|
||||
imagePullPolicy: Always
|
||||
ports:
|
||||
- name: http
|
||||
@@ -286,7 +286,7 @@ spec:
|
||||
```
|
||||
|
||||
<Callout type="info">
|
||||
Pin to a specific image tag (e.g., `hanzo-sign/hanzo-sign:1.5.0`) in production instead of `latest`
|
||||
Pin to a specific image tag (e.g., `ghcr.io/hanzoai/esign:1.5.0`) in production instead of `latest`
|
||||
to ensure predictable deployments.
|
||||
</Callout>
|
||||
|
||||
@@ -681,7 +681,7 @@ spec:
|
||||
fsGroup: 1001
|
||||
containers:
|
||||
- name: hanzo-sign
|
||||
image: hanzo-sign/hanzo-sign:latest
|
||||
image: ghcr.io/hanzoai/esign:latest
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 3000
|
||||
|
||||
@@ -22,7 +22,7 @@ Mount your `.p12` certificate file into the container at the default path:
|
||||
docker run -d \
|
||||
-v /path/to/your/cert.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
-e NEXT_PRIVATE_SIGNING_PASSPHRASE="your-certificate-password" \
|
||||
hanzo-sign/hanzo-sign:latest
|
||||
ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
The default certificate path inside the container is `/opt/hanzo-sign/cert.p12`. You can change this with `NEXT_PRIVATE_SIGNING_LOCAL_FILE_PATH`.
|
||||
@@ -92,10 +92,10 @@ Use a specific version tag in production:
|
||||
|
||||
```bash
|
||||
# Good — predictable, reproducible
|
||||
docker pull hanzo-sign/hanzo-sign:1.8.0
|
||||
docker pull ghcr.io/hanzoai/esign:1.8.0
|
||||
|
||||
# Risky — may pull breaking changes
|
||||
docker pull hanzo-sign/hanzo-sign:latest
|
||||
docker pull ghcr.io/hanzoai/esign:latest
|
||||
```
|
||||
|
||||
Check the [GitHub releases](https://github.com/hanzoai/esign/releases) page for available versions.
|
||||
|
||||
@@ -68,7 +68,7 @@ kubectl get deployment hanzo-sign -n hanzo-sign -o jsonpath='{.spec.template.spe
|
||||
View available releases on GitHub:
|
||||
|
||||
```bash
|
||||
curl -s https://api.github.com/repos/hanzo-sign/hanzo-sign/releases/latest | grep tag_name
|
||||
curl -s https://api.github.com/repos/hanzoai/esign/releases/latest | grep tag_name
|
||||
```
|
||||
|
||||
Or visit the [releases page](https://github.com/hanzoai/esign/releases).
|
||||
@@ -81,7 +81,7 @@ List available image tags:
|
||||
<Tab value="DockerHub">
|
||||
|
||||
```bash
|
||||
curl -s https://hub.docker.com/v2/repositories/hanzo-sign/hanzo-sign/tags | jq -r '.results[].name'
|
||||
gh api /orgs/hanzoai/packages/container/esign/versions --jq '.[].metadata.container.tags[]'
|
||||
```
|
||||
|
||||
</Tab>
|
||||
@@ -165,7 +165,7 @@ See [Backups](/docs/self-hosting/maintenance/backups) for automated backup strat
|
||||
### Pull the new image
|
||||
|
||||
```bash
|
||||
docker pull hanzo-sign/hanzo-sign:1.6.0
|
||||
docker pull ghcr.io/hanzoai/esign:1.6.0
|
||||
```
|
||||
|
||||
Replace `1.6.0` with your target version.
|
||||
@@ -189,7 +189,7 @@ docker run -d \
|
||||
-p 3000:3000 \
|
||||
--env-file .env \
|
||||
-v /path/to/cert.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
hanzo-sign/hanzo-sign:1.6.0
|
||||
ghcr.io/hanzoai/esign:1.6.0
|
||||
```
|
||||
|
||||
</Step>
|
||||
@@ -223,7 +223,7 @@ Edit `compose.yml` or your `.env` file to specify the new version:
|
||||
```yaml
|
||||
services:
|
||||
hanzo-sign:
|
||||
image: hanzo-sign/hanzo-sign:1.6.0
|
||||
image: ghcr.io/hanzoai/esign:1.6.0
|
||||
```
|
||||
|
||||
Or if using environment variable substitution:
|
||||
@@ -237,7 +237,7 @@ SIGN_VERSION=1.6.0
|
||||
# In compose.yml
|
||||
services:
|
||||
hanzo-sign:
|
||||
image: hanzo-sign/hanzo-sign:${SIGN_VERSION:-latest}
|
||||
image: ghcr.io/hanzoai/esign:${SIGN_VERSION:-latest}
|
||||
```
|
||||
|
||||
</Step>
|
||||
@@ -283,7 +283,7 @@ Edit the deployment directly:
|
||||
|
||||
```bash
|
||||
kubectl set image deployment/hanzo-sign \
|
||||
hanzo-sign=hanzo-sign/hanzo-sign:1.6.0 \
|
||||
hanzo-sign=ghcr.io/hanzoai/esign:1.6.0 \
|
||||
-n hanzo-sign
|
||||
```
|
||||
|
||||
@@ -295,7 +295,7 @@ spec:
|
||||
spec:
|
||||
containers:
|
||||
- name: hanzo-sign
|
||||
image: hanzo-sign/hanzo-sign:1.6.0
|
||||
image: ghcr.io/hanzoai/esign:1.6.0
|
||||
```
|
||||
|
||||
Then apply:
|
||||
@@ -421,12 +421,12 @@ To run migrations manually before upgrading:
|
||||
|
||||
```bash
|
||||
# Pull the new image
|
||||
docker pull hanzo-sign/hanzo-sign:1.6.0
|
||||
docker pull ghcr.io/hanzoai/esign:1.6.0
|
||||
|
||||
# Run migrations only
|
||||
docker run --rm \
|
||||
-e NEXT_PRIVATE_DATABASE_URL="postgresql://user:password@host:5432/hanzo-sign" \
|
||||
hanzo-sign/hanzo-sign:1.6.0 \
|
||||
ghcr.io/hanzoai/esign:1.6.0 \
|
||||
npx prisma migrate deploy
|
||||
```
|
||||
|
||||
@@ -490,7 +490,7 @@ Compare your current environment with the latest example:
|
||||
|
||||
```bash
|
||||
# Download latest example
|
||||
curl -O https://raw.githubusercontent.com/hanzo-sign/hanzo-sign/main/.env.example
|
||||
curl -O https://raw.githubusercontent.com/hanzoai/esign/main/.env.example
|
||||
|
||||
# Compare with your current config
|
||||
diff .env .env.example
|
||||
@@ -516,7 +516,7 @@ docker run -d \
|
||||
-p 3000:3000 \
|
||||
--env-file .env \
|
||||
-v /path/to/cert.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
hanzo-sign/hanzo-sign:1.5.0
|
||||
ghcr.io/hanzoai/esign:1.5.0
|
||||
```
|
||||
|
||||
</Tab>
|
||||
|
||||
@@ -268,7 +268,7 @@ export const EnvelopeImportMenu = ({ type, folderId }: EnvelopeImportMenuProps)
|
||||
<FormControl>
|
||||
<Input
|
||||
type="url"
|
||||
placeholder="https://github.com/hanzoai/sign/blob/main/terms.pdf"
|
||||
placeholder="https://github.com/hanzoai/esign/blob/main/terms.pdf"
|
||||
{...field}
|
||||
/>
|
||||
</FormControl>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# General Issues
|
||||
Contact: https://github.com/hanzo-sign/hanzo-sign/issues/new?assignees=&labels=bug&projects=&template=bug-report.yml
|
||||
Contact: https://github.com/hanzoai/esign/issues/new?assignees=&labels=bug&projects=&template=bug-report.yml
|
||||
|
||||
# Report critical issues privately to let us take appropriate action before publishing.
|
||||
Contact: mailto:[email protected]
|
||||
Preferred-Languages: en
|
||||
Canonical: https://sign.hanzo.ai/.well-known/security.txt
|
||||
Canonical: https://esign.hanzo.ai/.well-known/security.txt
|
||||
@@ -1,5 +1,5 @@
|
||||
ARG TAG=latest
|
||||
FROM hanzo-sign/hanzo-sign:${TAG}
|
||||
FROM ghcr.io/hanzoai/esign:${TAG}
|
||||
|
||||
# Install @playwright/browser-chromium which bundles Playwright + Chromium
|
||||
RUN npm install @playwright/browser-chromium
|
||||
|
||||
+4
-4
@@ -13,7 +13,7 @@ Before you begin, ensure that you have the following installed:
|
||||
|
||||
This setup includes a PostgreSQL database and the Hanzo eSign application. You will need to provide your own SMTP details via environment variables.
|
||||
|
||||
1. Download the Docker Compose file from the Hanzo eSign repository: [compose.yml](https://raw.githubusercontent.com/hanzo-sign/hanzo-sign/release/docker/production/compose.yml)
|
||||
1. Download the Docker Compose file from the Hanzo eSign repository: [compose.yml](https://raw.githubusercontent.com/hanzoai/esign/release/docker/production/compose.yml)
|
||||
2. Navigate to the directory containing the `compose.yml` file.
|
||||
3. Create a `.env` file in the same directory and add your SMTP details as well as a few extra environment variables, following the example below:
|
||||
|
||||
@@ -95,13 +95,13 @@ If you prefer to host the Hanzo eSign application on your container provider of
|
||||
1. Pull the Hanzo eSign Docker image:
|
||||
|
||||
```
|
||||
docker pull hanzo-sign/hanzo-sign
|
||||
docker pull ghcr.io/hanzoai/esign
|
||||
```
|
||||
|
||||
Or, if using GitHub's Package Registry:
|
||||
|
||||
```
|
||||
docker pull ghcr.io/hanzo-sign/hanzo-sign
|
||||
docker pull ghcr.io/hanzoai/esign
|
||||
```
|
||||
|
||||
2. Run the Docker container, providing the necessary environment variables for your database and SMTP host:
|
||||
@@ -122,7 +122,7 @@ docker run -d \
|
||||
-e NEXT_PRIVATE_SIGNING_PASSPHRASE="<your-certificate-password>" \
|
||||
-v /path/to/your/cert.p12:/opt/hanzo-sign/cert.p12:ro \
|
||||
-v hanzo-sign_base:/opt/hanzo-sign/base/data \
|
||||
hanzo-sign/hanzo-sign
|
||||
ghcr.io/hanzoai/esign
|
||||
```
|
||||
|
||||
Replace the placeholders with your actual database and SMTP details.
|
||||
|
||||
+6
-6
@@ -40,15 +40,15 @@ else
|
||||
echo "Using default repositories: dockerhub and ghcr.io"
|
||||
|
||||
# Add tags for both default repositories
|
||||
docker tag "hanzo-sign-base" "hanzo-sign/hanzo-sign:latest"
|
||||
docker tag "hanzo-sign-base" "hanzo-sign/hanzo-sign:$GIT_SHA"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzo-sign/hanzo-sign:latest"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzo-sign/hanzo-sign:$GIT_SHA"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:latest"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$GIT_SHA"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:latest"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$GIT_SHA"
|
||||
|
||||
# Add version tags if available
|
||||
if [ ! -z "$APP_VERSION" ] && [ "$APP_VERSION" != "undefined" ]; then
|
||||
docker tag "hanzo-sign-base" "hanzo-sign/hanzo-sign:$APP_VERSION"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzo-sign/hanzo-sign:$APP_VERSION"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$APP_VERSION"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$APP_VERSION"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -27,11 +27,11 @@ docker buildx build \
|
||||
--progress=plain \
|
||||
--build-arg NEXT_PRIVATE_TELEMETRY_KEY="${NEXT_PRIVATE_TELEMETRY_KEY:-}" \
|
||||
--build-arg NEXT_PRIVATE_TELEMETRY_HOST="${NEXT_PRIVATE_TELEMETRY_HOST:-}" \
|
||||
-t "hanzo-sign/hanzo-sign:latest" \
|
||||
-t "hanzo-sign/hanzo-sign:$GIT_SHA" \
|
||||
-t "hanzo-sign/hanzo-sign:$APP_VERSION" \
|
||||
-t "ghcr.io/hanzo-sign/hanzo-sign:latest" \
|
||||
-t "ghcr.io/hanzo-sign/hanzo-sign:$GIT_SHA" \
|
||||
-t "ghcr.io/hanzo-sign/hanzo-sign:$APP_VERSION" \
|
||||
-t "ghcr.io/hanzoai/esign:latest" \
|
||||
-t "ghcr.io/hanzoai/esign:$GIT_SHA" \
|
||||
-t "ghcr.io/hanzoai/esign:$APP_VERSION" \
|
||||
-t "ghcr.io/hanzoai/esign:latest" \
|
||||
-t "ghcr.io/hanzoai/esign:$GIT_SHA" \
|
||||
-t "ghcr.io/hanzoai/esign:$APP_VERSION" \
|
||||
--push \
|
||||
"$MONOREPO_ROOT"
|
||||
|
||||
+6
-6
@@ -47,15 +47,15 @@ else
|
||||
echo "Using default repositories: dockerhub and ghcr.io"
|
||||
|
||||
# Add tags for both default repositories
|
||||
docker tag "hanzo-sign-base" "hanzo-sign/hanzo-sign:latest"
|
||||
docker tag "hanzo-sign-base" "hanzo-sign/hanzo-sign:$GIT_SHA"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzo-sign/hanzo-sign:latest"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzo-sign/hanzo-sign:$GIT_SHA"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:latest"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$GIT_SHA"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:latest"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$GIT_SHA"
|
||||
|
||||
# Add version tags if available
|
||||
if [ ! -z "$APP_VERSION" ] && [ "$APP_VERSION" != "undefined" ]; then
|
||||
docker tag "hanzo-sign-base" "hanzo-sign/hanzo-sign:$APP_VERSION"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzo-sign/hanzo-sign:$APP_VERSION"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$APP_VERSION"
|
||||
docker tag "hanzo-sign-base" "ghcr.io/hanzoai/esign:$APP_VERSION"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ name: hanzo-sign-production
|
||||
# row-level org/team scoping in the app, not a per-file split.
|
||||
services:
|
||||
hanzo-sign:
|
||||
image: hanzo-sign/hanzo-sign:latest
|
||||
image: ghcr.io/hanzoai/esign:latest
|
||||
environment:
|
||||
- PORT=${PORT:-3000}
|
||||
- NEXT_PRIVATE_AUTH_SECRET=${NEXT_PRIVATE_AUTH_SECRET:?err}
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ printf "🐳 Self-hosting guide: https://docs.esign.hanzo.ai/developers/self-hos
|
||||
printf "🔐 Certificate setup: https://docs.esign.hanzo.ai/developers/self-hosting/signing-certificate\n"
|
||||
printf "🏥 Health check: http://localhost:3000/v1/health\n"
|
||||
printf "📊 Certificate status: http://localhost:3000/v1/certificate-status\n"
|
||||
printf "👥 Community: https://github.com/hanzo-sign/hanzo-sign\n\n"
|
||||
printf "👥 Community: https://github.com/hanzoai/esign\n\n"
|
||||
|
||||
printf "🗄️ Running database migrations...\n"
|
||||
# The replicate sidecar streams the SQLite WAL concurrently, so the first
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// hanzoai/sign — Go embed module.
|
||||
// hanzoai/esign — Go embed module.
|
||||
//
|
||||
// This repo's PRIMARY artifact is the Hanzo Sign application (the Documenso
|
||||
// fork: TypeScript/Remix + Prisma). This tiny Go module exists ONLY so the
|
||||
@@ -6,10 +6,10 @@
|
||||
// goja bundle (goja/bundle.js) — the port of the server-side e-signature domain
|
||||
// (documents, recipients, fields, signing flow, audit trail, completion) — and
|
||||
// run it in-process via dop251/goja, backed by Hanzo Base/SQLite. Cloud imports
|
||||
// github.com/hanzoai/sign and gets Bundle().
|
||||
// github.com/hanzoai/esign and gets Bundle().
|
||||
//
|
||||
// std-lib only — no third-party Go deps. The signing crypto/PDF primitives live
|
||||
// in cloud (Go host-functions); this module carries only the domain bundle.
|
||||
module github.com/hanzoai/sign
|
||||
module github.com/hanzoai/esign
|
||||
|
||||
go 1.27.1
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
#
|
||||
# GitHub runs .github/workflows/cicd.yml (hanzoai/ci build.yml@v2) against this
|
||||
# file on every push to main, tag v* and pull request. `test:` gates; `images:`
|
||||
# builds docker/Dockerfile and publishes ghcr.io/hanzoai/sign as
|
||||
# builds docker/Dockerfile and publishes ghcr.io/hanzoai/esign as
|
||||
# sha-<short7>-amd64 plus the semver the pin in hanzoai/universe
|
||||
# (charts/app/values/hanzo/sign.yaml) names.
|
||||
# (charts/app/values/hanzo/esign.yaml) names.
|
||||
#
|
||||
# The gate is the real build of the app the cluster runs: npm ci against the
|
||||
# committed lockfile (postinstall generates the Prisma client), then turbo's
|
||||
@@ -21,7 +21,7 @@
|
||||
# with a green build. See packages/eslint-config/transaction.cjs.
|
||||
|
||||
# The image series. bin/imgver publishes max(this, the highest semver already on
|
||||
# ghcr.io/hanzoai/sign) plus a patch, and exactly this when it is the higher. It
|
||||
# ghcr.io/hanzoai/esign) plus a patch, and exactly this when it is the higher. It
|
||||
# is stated here because package.json carries 2.7.1, the upstream Documenso
|
||||
# release, which is not this image's series.
|
||||
version: 0.2.0
|
||||
@@ -46,6 +46,6 @@ images:
|
||||
- name: sign
|
||||
context: .
|
||||
dockerfile: docker/Dockerfile
|
||||
repo: ghcr.io/hanzoai/sign
|
||||
repo: ghcr.io/hanzoai/esign
|
||||
# One architecture: the live image and its pin are amd64.
|
||||
platforms: [linux/amd64]
|
||||
|
||||
@@ -113,20 +113,20 @@ describe('import url policy', () => {
|
||||
|
||||
test('a GitHub page URL is read as the file it shows', () => {
|
||||
assert.equal(
|
||||
parseUrl('https://github.com/hanzoai/sign/blob/main/docs/terms.pdf').toString(),
|
||||
'https://raw.githubusercontent.com/hanzoai/sign/main/docs/terms.pdf',
|
||||
parseUrl('https://github.com/hanzoai/esign/blob/main/docs/terms.pdf').toString(),
|
||||
'https://raw.githubusercontent.com/hanzoai/esign/main/docs/terms.pdf',
|
||||
);
|
||||
|
||||
assert.equal(
|
||||
parseUrl('https://github.com/hanzoai/sign/raw/v1.2.3/a/b/terms.pdf').toString(),
|
||||
'https://raw.githubusercontent.com/hanzoai/sign/v1.2.3/a/b/terms.pdf',
|
||||
parseUrl('https://github.com/hanzoai/esign/raw/v1.2.3/a/b/terms.pdf').toString(),
|
||||
'https://raw.githubusercontent.com/hanzoai/esign/v1.2.3/a/b/terms.pdf',
|
||||
);
|
||||
|
||||
// A repo page carries no file, so it is left alone and answers as HTML —
|
||||
// which the PDF check then refuses.
|
||||
assert.equal(
|
||||
parseUrl('https://github.com/hanzoai/sign').toString(),
|
||||
'https://github.com/hanzoai/sign',
|
||||
parseUrl('https://github.com/hanzoai/esign').toString(),
|
||||
'https://github.com/hanzoai/esign',
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user