vitess.io/vitess@v0.16.2/.github/workflows/create_release.yml (about)

     1  # This creates a {tar.gz,deb,rpm} file and uploads it to a release.
     2  # To trigger this, create a new release.. but make sure that you publish
     3  # it immediately and do not save it as a DRAFT.
     4  
     5  name: Release
     6  on:
     7    release:
     8      types: [created]
     9  
    10  jobs:
    11    build:
    12      name: Create Release
    13      runs-on: ubuntu-22.04
    14      steps:
    15  
    16      - name: Set up Go
    17        uses: actions/setup-go@v3
    18        with:
    19          go-version: 1.20.3
    20  
    21      - name: Tune the OS
    22        run: |
    23          sudo sysctl -w net.ipv4.ip_local_port_range="22768 65535"
    24  
    25      - name: Check out code
    26        uses: actions/checkout@v3
    27  
    28      - name: Get dependencies
    29        run: |
    30          sudo apt-get update
    31          sudo apt-get install -y make ruby ruby-dev
    32          go mod download
    33          sudo gem install fpm
    34  
    35      - name: Make Packages
    36        run: |
    37          ./tools/make-release-packages.sh
    38  
    39      - name: Upload Files
    40        uses: csexton/release-asset-action@master
    41        with:
    42          github-token: ${{ secrets.GITHUB_TOKEN }}
    43          pattern: "releases/*.{tar.gz,rpm,deb}"