name: release on: push: tags: - 'v*' jobs: build-push: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup Kustomize uses: ./.github/actions/kustomize - name: Generate release asset run: | mkdir -p config/release cp config/default/* config/release cd config/release kustomize edit set image fluxcd/source-controller=fluxcd/source-controller:${{ github.ref }} kustomize build . > source-controller.yaml - name: Push image uses: docker/build-push-action@v1 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} repository: fluxcd/source-controller tag_with_ref: true - name: Create release id: create_release uses: actions/create-release@latest env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} release_name: ${{ github.ref }} draft: false prerelease: true body: | [CHANGELOG](https://github.com/fluxcd/source-controller/blob/master/CHANGELOG.md) - name: Upload artifacts id: upload-release-asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./config/release/source-controller.yaml asset_name: source-controller.yaml asset_content_type: text/plain