Skip to contents

Upload package index files to S3

Usage

upload_package_index(
  s3_endpoint,
  s3_region,
  s3_bucket,
  package_name = NULL,
  local_output_dir_root = ".",
  codename = NULL,
  arch = NULL,
  s3_access_key_id = NULL,
  s3_secret_access_key = NULL,
  r_minor = NULL,
  metadata_db_type = "postgres",
  metadata_db_host = NULL,
  metadata_db_name = NULL,
  metadata_db_port = NULL,
  metadata_db_user = NULL,
  metadata_db_password = NULL,
  metadata_db_sslmode = "require"
)

Arguments

s3_endpoint

(character)
S3 endpoint

s3_region

(character)
S3 region

s3_bucket

(character)
S3 bucket name

package_name

(character)
Package name

local_output_dir_root

(character)
Path to local build root

codename

(character)
Linux distribution identifier

arch

(character)
Architecture, "amd64" or "arm64".

s3_access_key_id

(character)
S3 access key ID

s3_secret_access_key

(character)
S3 secret access key

r_minor

Optional "major.minor" string. When set, the index is written/read under the per-minor slot …/contrib/<r_minor>/ instead of the generic …/contrib/ slot.

metadata_db_type

(character)
Type of metadata database

metadata_db_host

(character)
Host value of metadata database

metadata_db_name

(character)
Name of metadata database

metadata_db_port

(integer)
Port of metadata database

metadata_db_user

(character)
User value of metadata database

metadata_db_password

(character)
User password of metadata database

metadata_db_sslmode

(character)
SSL mode for metadata database, passed to libpq as sslmode. With "verify-ca" or "verify-full" the server certificate is checked against the system CA bundle unless PGSSLROOTCERT names another root.

Details

A per-minor index (r_minor set) reads the ABI classifier cache and the flat-object safety table from the metadata database described by the metadata_db_* arguments; the generic index does not use the database. There is no default database: a per-minor call must be given at least metadata_db_host, metadata_db_name and a non-empty metadata_db_password, and stops before touching S3 otherwise. When any of the lookups fails, a per-minor call aborts and leaves the previously published index in place rather than publishing one that may serve binaries known not to load under that minor.