name: Docker release build on: release: types: [published] jobs: build: if: github.repository == 'rclone/rclone' runs-on: ubuntu-latest name: Build image job steps: - name: Checkout master uses: actions/checkout@v2 with: fetch-depth: 0 - name: Get actual patch version id: actual_patch_version run: echo ::set-output name=ACTUAL_PATCH_VERSION::$(echo $GITHUB_REF | cut -d / -f 3 | sed 's/v//g') - name: Get actual minor version id: actual_minor_version run: echo ::set-output name=ACTUAL_MINOR_VERSION::$(echo $GITHUB_REF | cut -d / -f 3 | sed 's/v//g' | cut -d "." -f 1,2) - name: Get actual major version id: actual_major_version run: echo ::set-output name=ACTUAL_MAJOR_VERSION::$(echo $GITHUB_REF | cut -d / -f 3 | sed 's/v//g' | cut -d "." -f 1) - name: Build and publish image uses: ilteoood/docker_buildx@1.1.0 with: tag: latest,${{ steps.actual_patch_version.outputs.ACTUAL_PATCH_VERSION }},${{ steps.actual_minor_version.outputs.ACTUAL_MINOR_VERSION }},${{ steps.actual_major_version.outputs.ACTUAL_MAJOR_VERSION }} imageName: rclone/rclone platform: linux/amd64,linux/386,linux/arm64,linux/arm/v7 publish: true dockerHubUser: ${{ secrets.DOCKER_HUB_USER }} dockerHubPassword: ${{ secrets.DOCKER_HUB_PASSWORD }} build_docker_volume_plugin: if: github.repository == 'rclone/rclone' needs: build runs-on: ubuntu-latest name: Build and publish docker volume plugin steps: - name: Checkout master uses: actions/checkout@v2 with: fetch-depth: 0 - name: Set plugin parameters shell: bash run: | GITHUB_REF=${{ github.ref }} PLUGIN_IMAGE_USER=rclone PLUGIN_IMAGE_NAME=docker-volume-rclone PLUGIN_IMAGE_TAG=${GITHUB_REF#refs/tags/} PLUGIN_IMAGE=${PLUGIN_IMAGE_USER}/${PLUGIN_IMAGE_NAME}:${PLUGIN_IMAGE_TAG} PLUGIN_IMAGE_LATEST=${PLUGIN_IMAGE_USER}/${PLUGIN_IMAGE_NAME}:latest echo "PLUGIN_IMAGE_USER=${PLUGIN_IMAGE_USER}" >> $GITHUB_ENV echo "PLUGIN_IMAGE_NAME=${PLUGIN_IMAGE_NAME}" >> $GITHUB_ENV echo "PLUGIN_IMAGE_TAG=${PLUGIN_IMAGE_TAG}" >> $GITHUB_ENV echo "PLUGIN_IMAGE=${PLUGIN_IMAGE}" >> $GITHUB_ENV echo "PLUGIN_IMAGE_LATEST=${PLUGIN_IMAGE_LATEST}" >> $GITHUB_ENV - name: Build image shell: bash run: | make docker-plugin - name: Push image shell: bash run: | docker login -u ${{ secrets.DOCKER_HUB_USER }} -p ${{ secrets.DOCKER_HUB_PASSWORD }} make docker-plugin-push PLUGIN_IMAGE=${PLUGIN_IMAGE} make docker-plugin-push PLUGIN_IMAGE=${PLUGIN_IMAGE_LATEST}