Skip to content
Paquetier

Uploading Packages

Packages can be uploaded to Paquetier via the CLI or the REST API. You need write access to a repository (either as a collaborator or admin) to upload packages.

  • Source packages.tar.gz files built with R CMD build.
  • Binary packages — Platform-specific .zip (Windows) or .tgz (macOS) files.

The simplest way to upload is with the paquetier CLI:

# Upload a source package
paquetier upload mypackage_1.0.0.tar.gz --repo my-repo

# Upload a binary package
paquetier upload mypackage_1.0.0.zip --repo my-repo \
  --type binary --os windows --arch x86_64 --r-version 4.4

See the CLI upload reference for all options.

You can also upload directly via the REST API:

curl -X POST https://paquetier.example.com/api/v1/repos/my-repo/upload \
  -H "Authorization: Bearer paquetier_your_api_key" \
  -F "package=@mypackage_1.0.0.tar.gz"

For binary uploads, include the platform metadata as query parameters or form fields.

When you upload a package, Paquetier:

  1. Extracts the DESCRIPTION file from the tarball.
  2. Parses package metadata (name, version, dependencies, license, etc.).
  3. Uploads the artifact to the repository’s S3 storage backend.
  4. Rebuilds the CRAN PACKAGES index so R clients can discover the new package immediately.
  • Each upload creates or updates a version for the package.
  • Uploading the same version again replaces the existing artifact.
  • Versions can be yanked through the web UI to soft-deprecate them without deletion.

For CI/CD pipelines, create a scoped API key with write access to the target repository and use it in your pipeline scripts.