mirror of
https://github.com/janet-lang/janet
synced 2024-12-24 23:40:27 +00:00
9cda44f443
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much. - Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs [Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/) Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
63 lines
1.7 KiB
YAML
63 lines
1.7 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v*.*.*"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
|
|
release:
|
|
permissions:
|
|
contents: write # for softprops/action-gh-release to create GitHub release
|
|
name: Build release binaries
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ ubuntu-latest, macos-latest ]
|
|
steps:
|
|
- name: Checkout the repository
|
|
uses: actions/checkout@master
|
|
- name: Set the version
|
|
run: echo "version=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
|
|
- name: Set the platform
|
|
run: echo "platform=$(tr '[A-Z]' '[a-z]' <<< $RUNNER_OS)" >> $GITHUB_ENV
|
|
- name: Compile the project
|
|
run: make clean && make
|
|
- name: Build the artifact
|
|
run: JANET_DIST_DIR=janet-${{ env.version }}-${{ env.platform }} make build/janet-${{ env.version }}-${{ env.platform }}-x64.tar.gz
|
|
- name: Draft the release
|
|
uses: softprops/action-gh-release@v1
|
|
with:
|
|
draft: true
|
|
files: |
|
|
build/*.gz
|
|
build/janet.h
|
|
build/c/janet.c
|
|
build/c/shell.c
|
|
|
|
release-windows:
|
|
permissions:
|
|
contents: write # for softprops/action-gh-release to create GitHub release
|
|
name: Build release binaries for windows
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: Checkout the repository
|
|
uses: actions/checkout@master
|
|
- name: Setup MSVC
|
|
uses: ilammy/msvc-dev-cmd@v1
|
|
- name: Build the project
|
|
shell: cmd
|
|
run: build_win all
|
|
- name: Draft the release
|
|
uses: softprops/action-gh-release@v1
|
|
with:
|
|
draft: true
|
|
files: |
|
|
./dist/*.zip
|
|
./*.zip
|
|
./*.msi
|