question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Cannot disable release body append mechanism when updating an existing release

See original GitHub issue

If you update the release from multiple jobs then the body is appended and the behavior cannot be controlled. Here is where the problem is: https://github.com/softprops/action-gh-release/blob/master/src/github.ts#L171

Why is this a problem?

Some projects need to be built on multiple architectures and multiple operating systems. For example, compile on x64-windows, x86-windows, x64-linux, x64-osx. Such project is run on 4 different jobs, uses a matrix configuration -> each job creates a release with a unique artifact.

What I want to accomplish is to have a single release with multiple binaries for the same architecture with git log as the body of the release. But instead I get this:

image

My config looks like this:

      - name: Release
        uses: softprops/action-gh-release@v1
        if: startsWith(github.ref, 'refs/tags/')
        with:
          body: ${{ steps.create_changelog.outputs.log }} # comes from "git log"
          files: ${{ steps.create_artifact.outputs.path }}
          draft: false
          prerelease: false
          name: Release ${{ steps.get_release_name.outputs.tag }}
          tag_name: ${{ steps.get_release_name.outputs.tag }}
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Would it be possible to implement something like this?

with:
  append: false

Issue Analytics

  • State:open
  • Created 3 years ago
  • Reactions:2
  • Comments:8 (3 by maintainers)

github_iconTop GitHub Comments

3reactions
softpropscommented, Jul 4, 2020

That seems doable, yes

Some projects need to be built on multiple architectures and multiple operating systems. For example, compile on x64-windows, x86-windows, x64-linux, x64-osx. Such project is run on 4 different jobs, uses a matrix configuration -> each job creates a release with a unique artifact.

A few alternatives that require no change to to this action

  • You could leverage upload and download artifacts actions. Have multiple jobs that build release artifacts use upload-artifact then in a separate job that depends on those, download the artifacts and run the gh release action just once

  • use an if filter to conditionally set release notes for one of your architectures assuming all release notes are the same and an flipped if for the remainder

0reactions
robkoopercommented, Oct 31, 2021

My use case is that my artifacts are large (100Mb - 200Mb each). Having 3 of them will get me over my free 500Mb limit when using upload/download artifacts.

I will use the if statement approach to create release-notes only for one build.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Prevent updates to stack resources - AWS CloudFormation
Prevent stack resources from being unintentionally updated or deleted during a stack update by using AWS CloudFormation stack policies.
Read more >
Element.innerHTML - Web APIs | MDN
The Element property innerHTML gets or sets the HTML or XML markup contained within the element.
Read more >
Xcode 14 Release Notes | Apple Developer Documentation
Workaround: Build AppIntents code with Xcode 14 beta 6, or on a Mac running macOS Monterey 12 with Xcode 14. Xcode 14 cannot...
Read more >
BlogIt / ReleaseHistory - PmWiki
Release History Table of Contents 1.9.5 (1-Apr-2016) Release Summary Release ... Add mechanism to bulk administer comments (delete, block, un/approve).
Read more >
API import restrictions and known issues - Azure
OpenAPI version 2. OpenAPI version 2 support is limited to JSON format only. ... OpenAPI import, update, and export mechanisms. General.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found