Skip to content
/ release Public
forked from kubernetes/release

Release infrastructure for Kubernetes and related components

License

Notifications You must be signed in to change notification settings

pswica/release

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kubernetes Release

This repo contains the tooling and infrastructure to create Kubernetes releases from the kubernetes/kubernetes main repository.

Intro

There are several scripts and helpers in this repository a release manager will find useful when managing all kinds of releases (alpha, beta, official, rc) across branches.

Tools

Most tools in this repo run by default in mock mode to allow for ease in development and testing.

Tools Description
gcbmgr Google Cloud Builder Manager:

This is the main entry point for release managers for producing releases. All release types can be staged and later released using this method.
anago Release Tool:

The main driver for creating staged builds and releases. This is what runs inside GCB after a job is submitted using gcbmgr.
branchff Fast-forward branching helper :

A tool used to pull new patches onto the release branch.

find_green_build

Asks Jenkins for a good build to use.

release-notes

Scrape GitHub for release notes. See Release Notes Gathering for more information.

prin

To show release tags of a particular PR or commit.

changelog-update

Updates CHANGELOG.md version entries by rescanning github for text and label changes.

push-build.sh

Pushes a developer build or CI Jenkins build up to GCS.

script-template

Generates a script template in the kubernetes/release ecosystem.

For information on how to use gcbmgr, anago and branchff, see the Branch Manager Handbook

Release Notes Gathering

For more extensive build and usage documentation for the release-notes tool, see the documentation.

Once the tool is installed, use -h or --help to see the command usage:

$ release-notes -h
Usage of release-notes:
  -end-sha string
        The commit hash to end at
  -format string
        The format for notes output (options: markdown, json) (default "markdown")
  -github-token string
        A personal GitHub access token (required)
  -output string
        The path to the where the release notes will be printed
  -start-sha string
        The commit hash to start at

Building Linux Packages

For Debian

You can build the deb packages in a Docker container like this:

docker build --tag=debian-packager debian
docker run --volume="$(pwd)/debian:/src" debian-packager

The build runs for a while, after it's done you will find the output in debian/bin.

For Fedora, CentOS, Red Hat Enterprise Linux

You can build the rpm packages in a Docker container with:

cd rpm
./docker-build.sh

Resulting rpms, and a pre-generated yum repository will be generated in rpm/output/x86_64.

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

About

Release infrastructure for Kubernetes and related components

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 84.6%
  • Go 13.1%
  • Python 1.9%
  • Other 0.4%