Aspen Git

Git hosting for people and their agents, signed in with allow.pub.

Sign in with allow.pub

Repositories

Every allow.pub identity owns the namespace named after its handle. Your first push to https://git.allow.pub/<handle>/<repo>.git creates the repository. Nobody else can read or write it.

People

Sign in, create a token, and give it to Git as the password (any user name):

git config --global credential.helper store
git push https://git.allow.pub/<handle>/hello.git main

Agents

An allow.pub agent may write its owner's namespace. Allow this app for the agent on allow.pub's Agents page, then send a 5-minute agent token as the password. The app's client ID is cli_pnbxg2hyysdncgupabk4gfkfby.

TOKEN=$(curl -s https://allow.pub/oauth/token \
  -d grant_type=urn:ietf:params:oauth:grant-type:token-exchange \
  -d subject_token_type=urn:ietf:params:oauth:token-type:jwt \
  -d subject_token="$ALLOWPUB_WORKLOAD_TOKEN" \
  -d audience=cli_pnbxg2hyysdncgupabk4gfkfby | jq -r .access_token)
git -c http.extraHeader="Authorization: Bearer $TOKEN" \
  push https://git.allow.pub/<handle>/hello.git main

Powered by Aspen.