Skip to content
elixir-cloud-aaiPublic

About

Pubgrade is a decoupled, publish-subscribe-based continuous integration (CI) and continuous delivery (CD) microservice that allows developers to notify deploments of available updates

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

23 watching

Forks

ELIXIR On-Cloud

Pubgrade

License Build_status Docs Coverage Python GitHub_tag Docker_image

Pubgrade (Publish-Upgrade) is a publish-subscribe service that notifies deployments of new images of the software they run, brought to you by ELIXIR On-Cloud. A repository's CI publishes a new image to Pubgrade; Pubgrade notifies all deployments that subscribed to the repository's tag or branch at the same time, and records the result per subscriber. Each deployment decides what to do with a notification: Pubgrade-Sidecar, next to a Kubernetes Deployment, updates its image. Deploy Pubgrade to Kubernetes or OpenShift with its Helm chart.

Read the documentation for using the API, the deployment with the Helm chart in helm/, development, and Pubgrade-Sidecar.

Quick start

Install Pubgrade and a MongoDB into a namespace of a Kubernetes or OpenShift cluster with Helm, from a checkout of this repository, with your copy of the configuration (pubgrade/config.yaml, with your admin users) in a Secret. Keep that copy outside the checkout, so that its tokens don't end up in Git or in images you build:

git clone https://github.com/elixir-cloud-aai/Pubgrade.git && cd Pubgrade
cp pubgrade/config.yaml ~/pubgrade-config.yaml  # then add your admin users
kubectl create namespace pubgrade
kubectl create secret generic pubgrade-config -n pubgrade \
  --from-file=config.yaml="${HOME}/pubgrade-config.yaml"
helm install pubgrade helm/ -n pubgrade \
  --set pubgrade.configSecret=pubgrade-config --set hostName=<host name>

Then open the API's web interface at https://<host name>/ui/.

Citation

If you use Pubgrade, please cite it with the metadata in CITATION.cff: on GitHub, "Cite this repository" in the sidebar of the repository formats it as APA or BibTeX.

Contributing

Contributions are welcome! See Development in the documentation and the organisation's contributing guide, and mind our code of conduct.

License

This project is covered by the Apache License 2.0, also shipped with this repository.

About

Pubgrade is a decoupled, publish-subscribe-based continuous integration (CI) and continuous delivery (CD) microservice that allows developers to notify deploments of available updates

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

23 watching

Forks

Releases

Packages

Used by

Contributors

Languages