Skip to content

Plugin: publisher-generic-http

Uploads release artifacts to custom HTTP endpoints via PUT or POST.

Terminal window
semrel plugin install @semrel/generic-http

semrel plugin install downloads the binary to .semrel/plugins/ and updates .semrel.lock. Commit .semrel.lock to pin the version for your team.

version: 1
plugins:
- uses: @semrel/generic-http
args:
url: https://uploads.example.com/releases/{version}/{artifact}
method: PUT
token: ${UPLOAD_TOKEN}
artifacts: dist/myapp-linux-amd64,dist/myapp-linux-arm64
NameRequiredDefaultDescription
SEMREL_PLUGIN_URLyesUpload URL template. Supports {version} and {artifact} tokens.
SEMREL_PLUGIN_METHODnoPUTHTTP method (PUT or POST).
SEMREL_PLUGIN_TOKENnoBearer token for authenticated uploads.
SEMREL_PLUGIN_HEADERS_JSONnoJSON object with additional HTTP headers.
SEMREL_PLUGIN_ARTIFACTSnoCSV list of artifact paths.
SEMREL_PLUGIN_ARTIFACTS_JSONnoJSON array of artifact paths.
SEMREL_PLUGIN_ARTIFACTnoSingle artifact path fallback.
  • SEMREL_NEXT_VERSION
  • SEMREL_CURRENT_VERSION
  • SEMREL_TAG_NAME
  • SEMREL_DRY_RUN

For a 1.4.0 release and URL https://uploads.example.com/releases/{version}/{artifact}, each artifact is uploaded to a concrete URL such as https://uploads.example.com/releases/1.4.0/myapp-linux-amd64.