| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- name: Upload release assets
- on:
- release:
- types:
- - published
- jobs:
- upload:
- runs-on: ubuntu-20.04
- strategy:
- fail-fast: false
- steps:
- - uses: aws-actions/configure-aws-credentials@v1-node16
- with:
- aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
- aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
- - name: Get packages
- run: |
- REF=${{ github.ref_name }}
- case "$REF" in
- v*)
- s3dir='emqx-ce'
- ;;
- e*)
- s3dir='emqx-ee'
- ;;
- *)
- echo "tag $REF is not supported"
- exit 1
- ;;
- esac
- aws s3 cp --recursive s3://${{ secrets.AWS_S3_BUCKET }}/$s3dir/${{ github.ref_name }} packages
- cd packages
- DEFAULT_BEAM_PLATFORM='otp24.2.1-1'
- # all packages including full-name and default-name are uploaded to s3
- # but we only upload default-name packages (and elixir) as github artifacts
- # so we rename (overwrite) non-default packages before uploading
- while read -r fname; do
- default_fname=$(echo "$fname" | sed "s/-${DEFAULT_BEAM_PLATFORM}//g")
- echo "$fname -> $default_fname"
- mv -f "$fname" "$default_fname"
- done < <(find . -maxdepth 1 -type f | grep -E "emqx(-enterprise)?-5\.[0-9]+\.[0-9]+.*-${DEFAULT_BEAM_PLATFORM}" | grep -v elixir)
- - uses: alexellis/upload-assets@0.4.0
- env:
- GITHUB_TOKEN: ${{ github.token }}
- with:
- asset_paths: '["packages/*"]'
- - name: update to emqx.io
- if: github.event_name == 'release'
- run: |
- set -e -x -u
- curl -w %{http_code} \
- --insecure \
- -H "Content-Type: application/json" \
- -H "token: ${{ secrets.EMQX_IO_TOKEN }}" \
- -X POST \
- -d "{\"repo\":\"emqx/emqx\", \"tag\": \"${{ github.ref_name }}\" }" \
- ${{ secrets.EMQX_IO_RELEASE_API }}
- - name: update homebrew packages
- if: github.event_name == 'release'
- run: |
- REF=${{ github.ref_name }}
- case "$REF" in
- v*)
- BOOL_FLAG_NAME="emqx_ce"
- ;;
- e*)
- echo "Not updating homebrew for enterprise eidition"
- exit 0
- ;;
- esac
- if [ -z $(echo $version | grep -oE "(alpha|beta|rc)\.[0-9]") ]; then
- curl --silent --show-error \
- -H "Authorization: token ${{ secrets.CI_GIT_TOKEN }}" \
- -H "Accept: application/vnd.github.v3+json" \
- -X POST \
- -d "{\"ref\":\"v1.0.4\",\"inputs\":{\"version\": \"${{ github.ref_name }}\"}}" \
- "https://api.github.com/repos/emqx/emqx-ci-helper/actions/workflows/update_emqx_homebrew.yaml/dispatches"
- fi
- upload-helm:
- runs-on: ubuntu-20.04
- if: github.event_name == 'release'
- strategy:
- fail-fast: false
- steps:
- - uses: actions/checkout@v3
- with:
- ref: ${{ github.ref }
- - uses: emqx/push-helm-action@v1
- if: startsWith(github.ref_name, 'v')
- with:
- charts_dir: "${{ github.workspace }}/deploy/charts/emqx"
- version: ${{ github.ref_name }}
- aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
- aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- aws_region: "us-west-2"
- aws_bucket_name: "repos-emqx-io"
- - uses: emqx/push-helm-action@v1
- if: startsWith(github.ref_name, 'e')
- with:
- charts_dir: "${{ github.workspace }}/deploy/charts/emqx-enterprise"
- version: ${{ github.ref_name }}
- aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
- aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- aws_region: "us-west-2"
- aws_bucket_name: "repos-emqx-io"
|