Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/glentiki/xbin-release-action
A GitHub Action for releasing a directory of executable binaries. Useful when using a cross compiler.
https://github.com/glentiki/xbin-release-action
Last synced: 15 days ago
JSON representation
A GitHub Action for releasing a directory of executable binaries. Useful when using a cross compiler.
- Host: GitHub
- URL: https://github.com/glentiki/xbin-release-action
- Owner: GlenTiki
- License: mit
- Created: 2020-01-23T16:01:05.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-11-20T13:44:33.000Z (2 months ago)
- Last Synced: 2025-01-05T09:22:08.945Z (16 days ago)
- Language: JavaScript
- Homepage:
- Size: 188 KB
- Stars: 4
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
## About
A GitHub Action for releasing a directory of executable binaries. Useful when using a cross compiler.
## Usage
Below is a simple snippet to cross compile a Golang app, and release it as needed.
```yaml
name: Releaseon:
push:
tags:
- 'v*'jobs:
release:
strategy:
matrix:
go_version: [1.13.x]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Build with xgo
uses: crazy-max/ghaction-xgo@v1
with:
xgo_version: latest
go_version: ${{ matrix.go_version }}
dest: build
prefix: myapp
targets: windows/386,windows/amd64,linux/386,linux/amd64,darwin/386,darwin/amd64
v: true
x: false
ldflags: -s -w
- name: Create Release
uses: actions/[email protected]
id: create_release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Upload Release Assets
uses: glentiki/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
assets_path: ./build```
## Customizing
### inputs
Following inputs can be used as `step.with` keys
| Name | Type | Required | Description |
|-----------------|---------|-----------------------|---------------------------------------------------------------|
| `upload_url` | String | `true` | Github release upload url. Supplied via create release action |
| `assets_path` | String | `true` | Path to directory of assets to upload |## Limitations
Binaries that are uploaded as release artifacts may need to made executable before usage when downloaded.
## License
MIT. See `LICENSE` for more details.