Skip to content

PelicanPlatform/PelicanBuildServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Release File Server

Downloads files for a Github repositories releases and serves them by semver tag.

Usage

This website will auto update daily and provides a webhook for manual updates. Files are served by NGINX and the file update functionality is provided by FASTAPI.

Meta

/meta/metadata.json contains version mappings and update timing.

Webhook

A webhook is provided to manually toggle an update post release.

https://pelican-release-server.chtc.chtc.io/api/docs

File Scheme

Saves files by semver tag in the following directory structure:

All Releases

Per release directories, file names include the release tag.

/X.Y.Z - Directory for a single release

Tracking Releases

Directories to track the lifecycle of a release, always pointing to the latest applicable release. The files in the directories are symlinked and renamed to omit the release tag. The only file not symlinked is checksums.txt which is copied and updated to match the version-less names of the files. version.txt allows verification of the release version.

  • /X.Y - Directory for latest minor release
  • /X - Directory for latest major release
  • /latest - Directory for latest release

Build, Run, Release

Build

docker build -t release-webhook .
docker run -it -p 8080:8000 --env-file example.env -v ${PWD}/releases:/srv/releases release-webhook

Release

docker build --platform linux/amd64 -t hub.opensciencegrid.org/opensciencegrid/release-webhook:20250909 .
docker push hub.opensciencegrid.org/opensciencegrid/release-webhook:20250909

Run the NGINX server that sits in front of the webhook

docker run -it -p 80:80 --env-file example.env -v ${PWD}/releases:/srv/releases  -v ${PWD}/nginx.conf:/etc/nginx/templates/nginx.conf.template nginx

About

Pelican Release Server

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors