No description
  • Scheme 88.3%
  • Shell 6.2%
  • Python 2.9%
  • Makefile 1.9%
  • C 0.6%
  • Other 0.1%
Find a file
ober 1b07fc735f
Some checks failed
required-ci / required (push) Failing after 6m8s
Merge pull request #5
2026-09-12 21:13:02 -04:00
.forgejo Use FreeBSD Forgejo CI runner 2026-08-03 14:45:41 -06:00
.jerboa Harden AWS release evidence privacy 2026-06-25 17:38:38 -06:00
docs Harden credentials and S3 transport 2026-07-11 17:22:54 -06:00
scripts Harden AWS release evidence privacy 2026-06-25 17:38:38 -06:00
src/jerboa-aws Make SSM copy use host path syntax 2026-07-28 19:43:49 -06:00
support fix: inject (except (chezscheme) ...) in wrap-ss-to-sls.py 2026-08-06 12:58:27 -06:00
test Make SSM copy use host path syntax 2026-07-28 19:43:49 -06:00
.gitignore jpkg: complete binary package setup 2026-07-30 15:03:07 -06:00
.gitsafeignore Set up Forgejo CI/CD policy 2026-08-03 12:50:48 -06:00
.jerbuild build: build jerboa-aws with installed jerbuild (no ~/mine/jerboa dependency) 2026-05-28 18:04:01 -06:00
AGENTS.md docs(agents): add checkout hygiene policy (work dirs under ~/work, cleanup when done) 2026-09-12 19:10:52 -06:00
aws.ss Security hardening and release readiness 2026-06-23 10:48:59 -06:00
build-all.ss Add recursive SSM copy command 2026-07-28 18:37:57 -06:00
build-binary.ss Add recursive SSM copy command 2026-07-28 18:37:57 -06:00
build-jaws-cross.ss Security hardening and release readiness 2026-06-23 10:48:59 -06:00
build-jaws-freebsd-cross.ss Security hardening and release readiness 2026-06-23 10:48:59 -06:00
jerboa-aws-main.c Security hardening and release readiness 2026-06-23 10:48:59 -06:00
jpkg.lock jpkg: complete binary package setup 2026-07-30 15:03:07 -06:00
jpkg.policy.sexp jpkg: complete binary package setup 2026-07-30 15:03:07 -06:00
jpkg.sexp Use FreeBSD Forgejo CI runner 2026-08-03 14:45:41 -06:00
LICENSE Switch to MIT license 2026-07-21 13:41:54 -06:00
Makefile Update Jerboa toolchain to v0.2.8 2026-08-01 16:34:21 -06:00
pssm.ss Security hardening and release readiness 2026-06-23 10:48:59 -06:00
README.md Make SSM copy use host path syntax 2026-07-28 19:43:49 -06:00
SECURITY.md Harden credentials and S3 transport 2026-07-11 17:22:54 -06:00
VERSION fix: inject (except (chezscheme) ...) in wrap-ss-to-sls.py 2026-08-06 12:58:27 -06:00

jerboa-aws

jerboa-aws is an experimental AWS API client library and CLI for Jerboa. It supports SigV4-signed requests across S3, EC2, IAM, STS, Lambda, CloudWatch, CloudFormation, DynamoDB, SNS, SQS, SSM, RDS, ELBv2, and related services.

Status

This repository is not production-supported yet. Treat it as a private/preview tool until the release gates in ~/Release-plan.md and ~/mine/jerboa-production-readiness.md are complete.

Security

jerboa-aws handles AWS access keys, secret keys, session tokens, signed requests, resource metadata, and service responses. Use short-lived role or SSO credentials where possible, avoid long-lived IAM user keys, and do not pass secrets in argv on shared systems.

Custom S3 endpoints require HTTPS. Plain HTTP exists only for local integration tests and requires all three of a canonical 127.x.y.z literal, path-style addressing, and the explicit allow-insecure-loopback: constructor flag. The HTTP client returns redirects to the caller and never forwards signed headers or session tokens to a redirect target.

Use jerboa-aws ssm put-parameter --value-stdin for parameter values, especially SecureString; the legacy --value form warns for secure values. PSSM strips remote terminal controls in human output, supports --literal-controls for visible \xNN rendering, and honors --no-color. Use --json when lossless remote output is required.

jerboa-aws ssmcp and jerboa-aws ssm cp recursively copy with host:path syntax: host:~/save ./foo downloads and ./foo host:/tmp/foo uploads through SSM RunCommand using tar/base64 chunks. Targets must already have the SSM agent plus sh, tar, base64, mkdir, and find.

Credential handling, logging expectations, and release requirements are documented in docs/credential-handling.md. SigV4 signing uses Jerboa's bundled Rust-backed native crypto; see docs/crypto-dependencies.md.

Build And Test

make test
make binary
make release-evidence

The Makefile bootstraps a pinned Jerboa toolchain into .jerboa/bin if no usable jerbuild is available.

Release evidence is written to dist/release-evidence/ and includes tests, binary smoke output, SBOM/dependency manifests, cargo audit status when available, and repeated binary reproducibility checks.

License

Apache-2.0.