From 9492b40a374ef317441fbfc99c0733ca7034dbb8 Mon Sep 17 00:00:00 2001 From: Ivan Dyachkov Date: Tue, 24 Jan 2023 13:48:46 +0100 Subject: [PATCH 1/2] ci: automatically push packages to packagecloud.io --- .github/workflows/build_packages.yaml | 32 +++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/.github/workflows/build_packages.yaml b/.github/workflows/build_packages.yaml index 2ec7dac3e..a1d8dfee4 100644 --- a/.github/workflows/build_packages.yaml +++ b/.github/workflows/build_packages.yaml @@ -27,6 +27,7 @@ jobs: outputs: BUILD_PROFILE: ${{ steps.get_profile.outputs.BUILD_PROFILE }} IS_EXACT_TAG: ${{ steps.get_profile.outputs.IS_EXACT_TAG }} + VERSION: ${{ steps.get_profile.outputs.VERSION }} steps: - uses: actions/checkout@v3 @@ -75,6 +76,7 @@ jobs: ;; esac echo "BUILD_PROFILE=$PROFILE" >> $GITHUB_OUTPUT + echo "VERSION=$(./pkg-vsn.sh $PROFILE)" >> $GITHUB_OUTPUT - name: get_all_deps run: | make -C source deps-all @@ -349,3 +351,33 @@ jobs: fi aws s3 cp --recursive packages/$PROFILE s3://${{ secrets.AWS_S3_BUCKET }}/$s3dir/${{ github.ref_name }} aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_CLOUDFRONT_ID }} --paths "/$s3dir/${{ github.ref_name }}/*" + - name: Push to packagecloud.io + env: + PROFILE: ${{ matrix.profile }} + VERSION: ${{ needs.prepare.outputs.VERSION }} + PACKAGECLOUD_TOKEN: ${{ secrets.PACKAGECLOUD_TOKEN }} + run: | + set -eu + REPO=$PROFILE + if [ $PROFILE = 'emqx-enterprise' ]; then + REPO='emqx-enterprise5' + fi + function push() { + docker run -t --rm -e PACKAGECLOUD_TOKEN=$PACKAGECLOUD_TOKEN -v $(pwd)/$2:/w/$2 -w /w ghcr.io/emqx/package_cloud push emqx/$REPO/$1 $2 + } + push "debian/buster" "packages/$PROFILE/$PROFILE-$VERSION-debian10-amd64.deb" + push "debian/buster" "packages/$PROFILE/$PROFILE-$VERSION-debian10-arm64.deb" + push "debian/bullseye" "packages/$PROFILE/$PROFILE-$VERSION-debian11-amd64.deb" + push "debian/bullseye" packages/$PROFILE/$PROFILE-$VERSION-debian11-arm64.deb + push "ubuntu/bionic" "packages/$PROFILE/$PROFILE-$VERSION-ubuntu18.04-amd64.deb" + push "ubuntu/bionic" "packages/$PROFILE/$PROFILE-$VERSION-ubuntu18.04-arm64.deb" + push "ubuntu/focal" "packages/$PROFILE/$PROFILE-$VERSION-ubuntu20.04-amd64.deb" + push "ubuntu/focal" "packages/$PROFILE/$PROFILE-$VERSION-ubuntu20.04-arm64.deb" + push "ubuntu/jammy" "packages/$PROFILE/$PROFILE-$VERSION-ubuntu22.04-amd64.deb" + push "ubuntu/jammy" "packages/$PROFILE/$PROFILE-$VERSION-ubuntu22.04-arm64.deb" + push "el/7" "packages/$PROFILE/$PROFILE-$VERSION-el7-amd64.rpm" + push "el/7" "packages/$PROFILE/$PROFILE-$VERSION-el7-arm64.rpm" + push "el/8" "packages/$PROFILE/$PROFILE-$VERSION-el8-amd64.rpm" + push "el/8" "packages/$PROFILE/$PROFILE-$VERSION-el8-arm64.rpm" + push "el/6" "packages/$PROFILE/$PROFILE-$VERSION-amzn2-amd64.rpm" + push "el/6" "packages/$PROFILE/$PROFILE-$VERSION-amzn2-arm64.rpm" From afab2d5e85853ec602349c28a646f1d4a227bdac Mon Sep 17 00:00:00 2001 From: Ivan Dyachkov Date: Tue, 24 Jan 2023 13:49:09 +0100 Subject: [PATCH 2/2] ci: delete homebrew step --- .github/workflows/release.yaml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 3c157cf31..df26778b4 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -79,14 +79,3 @@ jobs: -X POST \ -d "{\"repo\":\"emqx/emqx\", \"tag\": \"${{ github.ref_name }}\" }" \ ${{ secrets.EMQX_IO_RELEASE_API }} - - name: update homebrew packages - if: steps.profile.outputs.profile == 'emqx' && (github.event_name == 'release' || inputs.publish_release_artefacts) - run: | - 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